Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#3960 closed enhancement (fixed)

Can't parse Dolby Atmos TrueHD streams

Reported by: silverbacknet Owned by:
Priority: wish Component: avcodec
Version: git-master Keywords: thd
Cc: underground78@gmail.com Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Atmos is finally coming to Bluray discs, the release of "Transformers: Age of Extinction" on Sept 30 will be the first release including it. Seems that the TrueHD format has been tweaked to accommodate the Atmos data, and because of that, the entire track is unreadable, instead of only at least being able to read the lossless part, as a non-Atmos-enabled decoder is supposed to be able to do.

% ffprobe dolby_atmos_truehd_sample.m2ts
ffprobe version N-66289-gb76d613 Copyright (c) 2007-2014 the FFmpeg developers
  built on Sep 15 2014 22:15:40 with gcc 4.8.3 (GCC)
  configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --disable-w32thread
s --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-icon
v --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable
-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencor
e-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-l
ibschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-li
bvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-l
ibwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --ena
ble-decklink --enable-zlib
  libavutil      54.  7.100 / 54.  7.100
  libavcodec     56.  1.100 / 56.  1.100
  libavformat    56.  4.101 / 56.  4.101
  libavdevice    56.  0.100 / 56.  0.100
  libavfilter     5.  1.100 /  5.  1.100
  libswscale      3.  0.100 /  3.  0.100
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  0.100 / 53.  0.100
[truehd @ 00000000021a1500] major sync info header checksum error
    Last message repeated 19 times
[NULL @ 00000000021a1500] start time for stream 1 is not set in estimate_timings_from_pts
[NULL @ 00000000021a6620] start time for stream 9 is not set in estimate_timings_from_pts
[NULL @ 00000000021a7020] start time for stream 10 is not set in estimate_timings_from_pts
[NULL @ 00000000021a7a20] start time for stream 11 is not set in estimate_timings_from_pts
[NULL @ 00000000021a84c0] start time for stream 12 is not set in estimate_timings_from_pts
[NULL @ 00000000021a8ec0] start time for stream 13 is not set in estimate_timings_from_pts
[mpegts @ 00000000021a0de0] PES packet size mismatch
    Last message repeated 6 times
[mpegts @ 00000000021a0de0] Could not find codec parameters for stream 1 (Audio: truehd (AC-3 / 0x33
2D4341), 0 channels): unspecified sample format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 00000000021a0de0] Could not find codec parameters for stream 9 (Subtitle: hdmv_pgs_subtitl
e ([144][0][0][0] / 0x0090)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 00000000021a0de0] Could not find codec parameters for stream 10 (Subtitle: hdmv_pgs_subtit
le ([144][0][0][0] / 0x0090)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 00000000021a0de0] Could not find codec parameters for stream 11 (Subtitle: hdmv_pgs_subtit
le ([144][0][0][0] / 0x0090)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 00000000021a0de0] Could not find codec parameters for stream 12 (Subtitle: hdmv_pgs_subtit
le ([144][0][0][0] / 0x0090)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 00000000021a0de0] Could not find codec parameters for stream 13 (Subtitle: hdmv_pgs_subtit
le ([144][0][0][0] / 0x0090)): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpegts, from 'dolby_atmos_truehd_sample.m2ts':
  Duration: 00:00:19.56, start: 11.650667, bitrate: 20448 kb/s
  Program 1
    Stream #0:0[0x1011]: Video: h264 (High) (HDMV / 0x564D4448), yuv420p, 1920x1080 [SAR 1:1 DAR 16:
9], 23.98 fps, 23.98 tbr, 90k tbn, 47.95 tbc
    Stream #0:1[0x1100]: Audio: truehd (AC-3 / 0x332D4341), 0 channels
    Stream #0:2[0x1100]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Stream #0:3[0x1101]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Stream #0:4[0x1102]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, fltp, 224 kb/s
    Stream #0:5[0x1103]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Stream #0:6[0x1104]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Stream #0:7[0x1105]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Stream #0:8[0x1106]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Stream #0:9[0x1200]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)
    Stream #0:10[0x1201]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)
    Stream #0:11[0x1202]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)
    Stream #0:12[0x1203]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)
    Stream #0:13[0x1204]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)

Sample uploaded to FTP as dolby_atmos_truehd_sample.m2ts. Can also temporarily be found at http://stfcc.org/misc/dolby_atmos_truehd_sample.m2ts

Change History (9)

comment:1 follow-up: Changed 5 years ago by cehoyos

  • Keywords thd added
  • Priority changed from normal to wish
  • Reproduced by developer set
  • Type changed from defect to enhancement

Please provide a non-silent sample.

comment:2 Changed 5 years ago by heleppkes

The sample is not silent, the decoder just fails to decode anything from the TrueHD track.

Decode one of the AC3 streams instead, they'll give you audio.

comment:3 in reply to: ↑ 1 Changed 5 years ago by cehoyos

Replying to cehoyos:

Please provide a non-silent sample.

I realize that the sample is not silent, an excerpt with some real sound effects still makes sense imo.

comment:4 Changed 5 years ago by silverbacknet

That's all I have right now. Once Transformers is released, someone should be able to upload a busier segment from the THD track.

comment:5 Changed 5 years ago by Underground78

  • Cc underground78@gmail.com added

comment:6 Changed 5 years ago by Underground78

Maybe this sample can do?

comment:7 Changed 5 years ago by heleppkes

I sent a patch to the ML for this, after spending the better part of the day with a disassembler trying to understand why our header parsing was falling over.

comment:8 Changed 5 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from new to closed

Fixed by Hendrik in 36bf549b
Thank you for the sample and the fix!

comment:9 Changed 5 years ago by Isakolsson

Hello. cehoyos states that it has been fixed. I'm trying to get the Dolby Atmos sound to work for me and I noticed that LAV Filters version 0.63.0 has fixed this issue, however the closest version I can find is 0.62.0. PLEASE HELP.

Note: See TracTickets for help on using tickets.