[FFmpeg-trac] #3160(undetermined:new): ac3 silently chooses 5.1(side) channel layout

FFmpeg trac at avcodec.org
Thu Nov 21 22:52:21 CET 2013


#3160: ac3 silently chooses 5.1(side) channel layout
-------------------------------------+-------------------------------------
               Reporter:  llogan     |                  Owner:
                   Type:  defect     |                 Status:  new
               Priority:  minor      |              Component:
                Version:  git-       |  undetermined
  master                             |               Keywords:  ac3
             Blocked By:             |               Blocking:
Reproduced by developer:  0          |  Analyzed by developer:  0
-------------------------------------+-------------------------------------
 According to the AC-3 standards[1], as far as I can tell, AC-3 supports
 5.1(side) [FL+FR+FC+LFE+SL+SR] but not 5.1 [FL+FR+FC+LFE+BL+BR] channel
 layout. The standards show "L, C, R, SL, SR", but no reference to any back
 or rear channels such as BL and BR.

 ffmpeg will silently choose 5.1(side) even if 5.1 is attempted:

 {{{
 $ ffmpeg -f lavfi -i aevalsrc=0:d=1 -filter_complex
 "[0:a]asplit=6[fl][fr][fc][lfe][bl][br];[fl][fr][fc][lfe][bl][br]amerge=inputs=6,channelmap=0|1|2|3|4|5:channel_layout=5.1"
 out.ac3
 ffmpeg version N-58330-g6a7980e Copyright (c) 2000-2013 the FFmpeg
 developers
   built on Nov 21 2013 12:42:31 with gcc 4.8.2 (GCC)
   configuration: --enable-gpl
   libavutil      52. 53.100 / 52. 53.100
   libavcodec     55. 44.100 / 55. 44.100
   libavformat    55. 21.100 / 55. 21.100
   libavdevice    55.  5.100 / 55.  5.100
   libavfilter     3. 91.100 /  3. 91.100
   libswscale      2.  5.101 /  2.  5.101
   libswresample   0. 17.104 /  0. 17.104
   libpostproc    52.  3.100 / 52.  3.100
 Input #0, lavfi, from 'aevalsrc=0:d=1':
   Duration: N/A, start: 0.000000, bitrate: 2822 kb/s
     Stream #0:0: Audio: pcm_f64le, 44100 Hz, mono, dbl, 2822 kb/s
 [Parsed_amerge_1 @ 0x344fd00] No channel layout for input 1
 [Parsed_amerge_1 @ 0x344fd00] Input channel layouts overlap: output layout
 will be determined by the number of distinct input channels
 Output #0, ac3, to 'out.ac3':
   Metadata:
     encoder         : Lavf55.21.100
     Stream #0:0: Audio: ac3, 44100 Hz, 5.1, fltp, 448 kb/s
 Stream mapping:
   Stream #0:0 (pcm_f64le) -> asplit
   channelmap -> Stream #0:0 (ac3)
 Press [q] to stop, [?] for help
 size=      57kB time=00:00:01.03 bitrate= 450.5kbits/s
 video:0kB audio:57kB subtitle:0 global headers:0kB muxing overhead
 0.000000%
 }}}

 {{{
 $ ffmpeg -i out.ac3
 ffmpeg version N-58330-g6a7980e Copyright (c) 2000-2013 the FFmpeg
 developers
   built on Nov 21 2013 12:42:31 with gcc 4.8.2 (GCC)
   configuration: --enable-gpl
   libavutil      52. 53.100 / 52. 53.100
   libavcodec     55. 44.100 / 55. 44.100
   libavformat    55. 21.100 / 55. 21.100
   libavdevice    55.  5.100 / 55.  5.100
   libavfilter     3. 91.100 /  3. 91.100
   libswscale      2.  5.101 /  2.  5.101
   libswresample   0. 17.104 /  0. 17.104
   libpostproc    52.  3.100 / 52.  3.100
 [ac3 @ 0x1f33100] Estimating duration from bitrate, this may be inaccurate
 Input #0, ac3, from 'out.ac3':
   Duration: 00:00:01.04, start: 0.000000, bitrate: 448 kb/s
     Stream #0:0: Audio: ac3, 44100 Hz, 5.1(side), fltp, 448 kb/s
 At least one output file must be specified
 }}}

 The output file is correct, in my opinion, but an informative message
 indicating that 5.1(side) will be used instead is probably a good idea,
 and/or for the encoding command the console output should show 5.1(side)
 instead of 5.1.

 [1] http://www.atsc.org/cms/standards/a_52-2010.pdf (page 40, table 5.8)

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/3160>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list