Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrect detection of IMAX Enhanced for Independence Day (1996) #717

Closed
vstax opened this issue Apr 23, 2023 · 8 comments · Fixed by MediaArea/MediaInfoLib#1752
Closed

Comments

@vstax
Copy link

vstax commented Apr 23, 2023

According to the internets and my AVR, this movie has only DTS:X, not IMAX Enhanced. However mediainfo shows IMAX for some reason.
It is one of the movies where DTS:X wasn't detected until #422 was fixed. However, unlike "Charlie's Angels" in that ticket, this one is not supposed to have IMAX Enhanced.

I have 3 examples of actual IMAX Enhanced movies, here is output for them.
"Bad Boys for Life"
"Journey to the South Pacific"
"A Beautiful Planet"

Links to all the samples are sent by email.

@vstax
Copy link
Author

vstax commented Apr 24, 2023

Found an old (6+ yr) public DTS:X sample misdetected as IMAX: https://www.demolandia.net/downloads.html?id=53958226
(at least before the patch). Confirmed on my AVR that it doesn't have any IMAX Enhanced.

@JeromeMartinez
Copy link
Member

JeromeMartinez commented Apr 24, 2023

Now I doubt I can find a template for catching IMAX vs not IMAX.
I let it as is until something better for sure than what FFmpeg does.
For gathering all we have, the first 16 bytes are listed here + expected result + short name of title, I'll fill more when I have more.

02 00 08 50 28 4B 38 86 B1 00 7D 00 5B 82 6E 21 | Not MA | Not IMAX | Furious6
02 00 08 50 28 4B 38 86 B1 00 7D 00 5B 82 6E 21 | Not MA | Not IMAX | Furious7
02 00 08 50 28 4B FA 71 0D 62 02 FA 02 DC 13 71 |     MA | Not IMAX | DTSX Emulator
02 00 08 50 28 4B FA 71 0D 62 02 FA 02 DC 13 71 |     MA | Not IMAX | DTS X out of the box
F1 40 00 D0 30 28 4B 00 E1 00 02 0C F7 F7 89 A8 |     MA | IMAX     | Badboys
F1 40 00 D0 30 28 4B 00 E1 00 02 0C F7 F7 89 A8 |     MA | IMAX     | Journey
F1 40 00 D0 30 28 4B 00 E1 00 02 0C F7 F7 89 A8 |     MA | IMAX     | Planet
F1 40 00 D0 30 28 4B 04 B0 20 00 01 28 06 83 3D |     MA | Not IMAX | DTS X all around us demo
F1 40 00 D1 30 28 4B 00 E0 00 39 00 01 41 9E FE |     MA | Not IMAX | Independence
F1 40 00 D1 30 28 4B 00 E0 00 39 00 01 41 9E FE |     MA | Not IMAX | Whiskey

@vstax
Copy link
Author

vstax commented Apr 24, 2023

DTS X emulator, out of the box and all other demos from that website are not IMAX. I checked them on my AVR. They are all pretty old, in 2016 there was no IMAX Enhanced audio anyway.

If Whiskey is "Whiskey Tango Foxtrot", it's not IMAX either. Really the list of movies with IMAX Enhanced audio is extremely small. Most DTS:X movies don't have any IMAX flags. Except for 3 IMAX samples, everything in table above is plain DTS:X.

I can find more IMAX samples, I think, but I don't see any other DTS:X misdetected as IMAX by mediainfo. Anyway the original problem was that mediainfo didn't detect DTS:X channel layout in "Independence Day", seeing it as 7.1 DTS-HD, but after the change started detecting both extra DTS:X channels and IMAX Enhanced flag. While it doesn't actually have IMAX flag/metadata.

Same for "DTS X all around us", old mediainfo didn't see DTS:X extensions while new one started to see IMAX flags that aren't there.

But yeah I see that checking just first 4 bytes doesn't give the correct solution. Maybe digging into manual is the only option :-( Sorry for making you lose so much time on this.

@vstax
Copy link
Author

vstax commented Apr 24, 2023

Manual for DTS/DTS-HD, 2018 edition: https://www.etsi.org/deliver/etsi_ts/102100_102199/102114/01.05.01_60/ts_102114v010501p.pdf

Manual for extensions for storing extra channels / objects beyond 7.1 (what DTS:X uses) also exists but I don't know how much of it is it applicable to consumer format we find on media: https://www.etsi.org/deliver/etsi_ts/103400_103499/103491/01.01.01_60/ts_103491v010101p.pdf

Obviously nothing about IMAX frames there but it does have some sync word codes so maybe you can figure out something when have lots of free time...

@JeromeMartinez
Copy link
Member

So I am going to merge MediaArea/MediaInfoLib#1752, the only "false positive" would be DTS X all around us demo, better than current behavior.

@JeromeMartinez
Copy link
Member

Manual for DTS/DTS-HD, 2018 edition:

I used this one, but there is nothing in it about DTS:X (IMAX or not). XXCh theoretically accepts up to 32 additional channels but it is not used.

https://www.etsi.org/deliver/etsi_ts/103400_103499/103491/01.01.01_60/ts_103491v010101p.pdf

It seems a completely different format.

@vstax
Copy link
Author

vstax commented Apr 24, 2023

It seems a completely different format.

Yes I guess you are right. Sorry to mislead you. While it does mention DTS:X (e.g. on page 63), apparently DTS:X is the marketing name for everything: object-based formats found in movie theaters, consumer media (what we are discussing), and streaming/broadcasting, which all are different formats. This document is about streaming/broadcasting DTS:X (technical name DTS-UHD), not the consumer media DTS:X.

They are definitely related (e.g. https://developer.android.com/reference/kotlin/android/media/AudioFormat and https://www.iana.org/assignments/media-types/audio/vnd.dts.uhd show that) but yes DTS-UHD is not DTS-HD so it doesn't help here.

So I am going to merge MediaArea/MediaInfoLib#1752, the only "false positive" would be DTS X all around us demo, better than current behavior.

Makes sense, until some other obvious example or proper documentation is found.

@JeromeMartinez
Copy link
Member

Dev snapshot: Windows, macOS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants