OK, I've officially spent 24 hours pulling my hair out trying to understand why whenever I transcode an mpg video to mpeg-4 with ffmpeg I have no sound.
input file: ffmpeg -i input.mpg gives
Code:
ffmpeg version 0.4.9-pre1, build 4718, Copyright (c) 2000-2004 Fabrice Bellard
built on Feb 11 2007 12:55:31, gcc: 3.4.2 [FreeBSD] 20040728
Input #0, mpeg, from 'input.mpg':
Duration: 00:00:15.6, bitrate: 1523 kb/s
Stream #0.0: Video: mpeg1video, 352x288, 25.00 fps
Stream #0.1: Audio: mp2, 44100 Hz, stereo, 224 kb/s
Must supply at least one output file
transcode with:
ffmpeg -i input.mpg -acodec aac -ab 224 -ar 44100 output.mov
gives
Code:
fmpeg version 0.4.9-pre1, build 4718, Copyright (c) 2000-2004 Fabrice Bellard
built on Feb 11 2007 12:55:31, gcc: 3.4.2 [FreeBSD] 20040728
Input #0, mpeg, from 'input.mpg':
Duration: 00:00:15.6, bitrate: 1523 kb/s
Stream #0.0: Video: mpeg1video, 352x288, 25.00 fps
Stream #0.1: Audio: mp2, 44100 Hz, stereo, 224 kb/s
Output #0, mov, to 'output.mov':
Stream #0.0: Video: mpeg4, 352x288, 25.00 fps, q=2-31, 200 kb/s
Stream #0.1: Audio: aac, 44100 Hz, stereo, 224 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
[mpeg4 @ 0x282dd310]removing common factors from framerate
Press [q] to stop encoding
frame= 439 q=12.9 Lsize= 1118kB time=16.7 bitrate= 547.0kbits/s
video:548kB audio:450kB global headers:0kB muxing overhead 11.954272%
looking out the output file with ffmpeg -i output.movgives:
Code:
ffmpeg version 0.4.9-pre1, build 4718, Copyright (c) 2000-2004 Fabrice Bellard
built on Feb 11 2007 12:55:31, gcc: 3.4.2 [FreeBSD] 20040728
Input #0, mov,mp4,m4a,3gp, from 'output.mov':
Duration: 00:00:17.5, bitrate: 521 kb/s
Stream #0.0: Video: mpeg4, 352x288, 25.00 fps
Stream #0.1: Audio: mpeg4aac, 44100 Hz, stereo
The resulting .mov has no sound EXCEPT in VLC, that plays it.
Now if I split the audio from the input using -vn:
ffmpeg -i input.mpg -vn -acodec aac -ab 224 -ar 44100 output.mp4
the audio track is fine, showing the mpeg4aac codec for ffmpeg is fine.
WTF gives???
plus, no matter what I set the bitrate to, it never encodes at that rate - it just does it's own thing.
Any help would be appreciated!!