Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#779 closed defect (fixed)

Channels swapping when decode TrueHD 6.1

Reported by: TDiTP_ Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: thd
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Old problem with decoding of standart (and common) TrueHD 6.1-configuration:

http://img-fotki.yandex.ru/get/4526/79369042.0/0_77128_ec348211_XS.jpg

Decoding of this layout by ffmpeg Win32 Build:

D:\>ffmpeg -i 0.thd -acodec pcm_s24le 0-ffmpeg.wav
ffmpeg version N-35709-g7d531e8, Copyright (c) 2000-2011 the FFmpeg developers
  built on Dec 12 2011 13:50:00 with gcc 4.6.2
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-runtime-cpud
etect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libopencore-amrnb --enable
-libopencore-amrwb --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libop
enjpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --en
able-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx
264 --enable-libxavs --enable-libxvid --enable-zlib
  libavutil    51. 32. 0 / 51. 32. 0
  libavcodec   53. 43. 0 / 53. 43. 0
  libavformat  53. 24. 0 / 53. 24. 0
  libavdevice  53.  4. 0 / 53.  4. 0
  libavfilter   2. 53. 0 /  2. 53. 0
  libswscale    2.  1. 0 /  2.  1. 0
  libpostproc  51.  2. 0 / 51.  2. 0
[truehd @ 020D94A0] Estimating duration from bitrate, this may be inaccurate
Input #0, truehd, from '0.thd':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Audio: truehd, 48000 Hz, 7 channels (FL+FR+FC+LFE+BC+SL+SR), s32
Output #0, wav, to '0-ffmpeg.wav':
  Metadata:
    encoder         : Lavf53.24.0
    Stream #0:0: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 7 channels (FL+FR+FC+
LFE+BC+SL+SR), s32, 8064 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (truehd -> pcm_s24le)
Press [q] to stop, [?] for help
[truehd @ 020D9D00] End of stream indicated.
size=    3938kB time=00:00:04.00 bitrate=8064.1kbits/s
video:0kB audio:3938kB global headers:0kB muxing overhead 0.001686%

Swapping channels is result:

input	->	after_ffmpeg

L	->	L
C	->	C
R	->	R
LFE	->	LFE
Cs	->	SR
Ls	->	BC
Rs	->	SL

Here you can find all samples (input wavs and output TrueHD 6.1): http://www.mediafire.com/?lnkntqswa3qpd3c. PCMs were encoded by Dolby Media Producer Suite.

P.S. Exactly the same problem was in eac3to, but developer just decided to rename channels, as i can see.

Change History (2)

comment:1 Changed 5 years ago by cehoyos

  • Keywords 6.1 decode decoder removed
  • Reproduced by developer set
  • Resolution set to fixed
  • Status changed from new to closed
  • Version changed from unspecified to git-master

Should be fixed, thank you for the sample!

comment:2 Changed 4 years ago by cehoyos

  • Keywords thd added; TrueHD removed
Note: See TracTickets for help on using tickets.