Opened 12 years ago

Last modified 6 years ago

#1325 open enhancement

pick suitable pcm encoder for wav container

Reported by: GG71 Owned by:
Priority: wish Component: ffmpeg
Version: git-master Keywords: pcm_s24le pcm_dvd
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Version : ffmpeg version N-40824-g31dfe20
Job : pcm_dvd --> pcm_s24le
Args[0] : -i E:\VIDEO_TS\VTS_01_1.VOB test.wav
Args[1] : -acodec pcm_s24le -i E:\VIDEO_TS\VTS_01_1.VOB test.wav
Result[Win7] : pcm_s16le
Result[Ubu] : pcm_s32le

Desc : Sourceformat (24Bit 96kHz) detected, but ffmpeg@windows switch to pcm_s16le for output. FFmpeg@ubuntu create the wav-output with 24Bit.
Set the codes pcm_s24le explicit don't help:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

Z:\Music\Ripp\DVD-A>ffmpeg -acodec pcm_s24le -i E:\VIDEO_TS\VTS_01_1.VOB test.wav
ffmpeg version N-40824-g31dfe20 Copyright (c) 2000-2012 the FFmpeg developers
  built on May 19 2012 00:49:25 with gcc 4.6.3
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-runtime-cpudetect --enable-avisynth --enab
le-bzlib --enable-frei0r --enable-libass --enable-libcelt --enable-libopencore-amrnb --enable-libopencore-amrwb --enable
-libfreetype --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopenjpeg --enable-librtmp --enable-libschro
edinger --enable-libspeex --enable-libtheora --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-
libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
  libavutil      51. 53.100 / 51. 53.100
  libavcodec     54. 21.101 / 54. 21.101
  libavformat    54.  5.100 / 54.  5.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 74.101 /  2. 74.101
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 12.100 /  0. 12.100
  libpostproc    52.  0.100 / 52.  0.100
[mpeg @ 0000000001e6eee0] max_analyze_duration 5000000 reached at 5001044
Guessed Channel Layout for  Input Stream #0.1 : stereo
Input #0, mpeg, from 'E:\VIDEO_TS\VTS_01_1.VOB':
  Duration: 00:10:59.06, start: 0.262200, bitrate: 13030 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [SAR 8:9 DAR 4:3], 7500 kb/s, 29.97 tbr, 90k tbn, 59.
94 tbc
    Stream #0:1[0xa0]: Audio: '''pcm_s24le, 96000 Hz, stereo, s32''', 4608 kb/s
[abuffer @ 000000000a0fbf20] format:s32 layout:stereo rate:96000
[aformat @ 000000000ec50d00] auto-inserting filter 'auto-inserted resampler 0' between the filter 'src' and the filter '
aformat'
[aresample @ 000000000dd40da0] r:96000Hz -> r:96000Hz
Output #0, wav, to 'test.wav':
  Metadata:
    encoder         : Lavf54.5.100
    Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 96000 Hz, stereo, s16, 3072 kb/s
Stream mapping:
  Stream #0:1 -> #0:0 ('''pcm_s24le -> pcm_s16le''')
Press [q] to stop, [?] for help
size=   85217kB time=00:03:47.24 bitrate=3072.0kbits/s
video:0kB audio:85217kB global headers:0kB muxing overhead 0.000078%
Received signal 2: terminating.

Change History (5)

comment:1 by Carl Eugen Hoyos, 12 years ago

You could try to put "-acodec pcm_s24le" in front of "test.wav" where it has the effect that you want.

Last edited 12 years ago by Carl Eugen Hoyos (previous) (diff)

comment:2 by GG71, 12 years ago

That's right, my mistake:
The codec param have to be between the input\output params.
Thanks for help.

BTW: How can I close the ticket now?!

comment:3 by Carl Eugen Hoyos, 12 years ago

Component: undeterminedFFmpeg
Keywords: windows removed
Priority: normalwish
Reproduced by developer: set
Status: newopen
Type: defectenhancement
Version: unspecifiedgit-master

I wonder if ffmpeg should always choose a suitable pcm encoder for the wav container.

comment:4 by reimar, 12 years ago

"suitable" is not really a clear definition.
16-bit is the most compatible by far, defaulting to lossless instead might be better but I'm not sure.

comment:5 by Elon Musk, 6 years ago

Summary: Different results win7 vs. linux on pcm_dvd --> pcm_s24lepick suitable pcm encoder for wav container
Note: See TracTickets for help on using tickets.