2012-12-29 52 views
1

我tryying視頻從閃存錄像機轉換到MP4時的錯誤:avconv(ffmpeg的):正確的音頻編解碼器

[email protected]:/data/media/failed$ avconv -i videoStream_1356794393712_805.flv -acodec aac videoStream_1356794393712_805.mp4 
avconv version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers 
    built on Nov 6 2012 16:51:33 with gcc 4.6.3 
[libspeex @ 0x1091500] Missing Speex header, assuming defaults. 
[flv @ 0x108d7a0] Estimating duration from bitrate, this may be inaccurate 
Input #0, flv, from 'videoStream_1356794393712_805.flv': 
    Metadata: 
    creationdate : Sat Dec 29 15:20:12 
    Duration: 00:00:04.39, start: 0.000000, bitrate: N/A 
    Stream #0.0: Video: h264 (Main), yuv420p, 640x480 [PAR 1:1 DAR 4:3], 30 tbr, 1k tbn, 60 tbc 
    Stream #0.1: Audio: libspeex, 16000 Hz, 1 channels, s16 
[buffer @ 0x1093a00] w:640 h:480 pixfmt:yuv420p 
[mpeg4 @ 0x1094ce0] removing common factors from framerate 
[aac @ 0x108d120] Too many bits per frame requested 
Output #0, mp4, to 'videoStream_1356794393712_805.mp4': 
    Metadata: 
    creationdate : Sat Dec 29 15:20:12 
    Stream #0.0: Video: mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 30 tbc 
    Stream #0.1: Audio: aac, 16000 Hz, 1 channels, s16, 200 kb/s 
Stream mapping: 
    Stream #0:0 -> #0:0 (h264 -> mpeg4) 
    Stream #0:1 -> #0:1 (libspeex -> aac) 
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height 
[email protected]:/data/media/failed$ 

的Ubuntu LTS 12.04,默認的ffmpeg/avconv。
我該如何解決這個問題?

ffprobe日誌:

[email protected]:/data/media/failed$ ffprobe videoStream_1356794393712_805.flv 
avprobe version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2007-2012 the Libav developers 
    built on Nov 6 2012 16:51:33 with gcc 4.6.3 
[libspeex @ 0x1c27500] Missing Speex header, assuming defaults. 
[flv @ 0x1c237a0] Estimating duration from bitrate, this may be inaccurate 
Input #0, flv, from 'videoStream_1356794393712_805.flv': 
    Metadata: 
    creationdate : Sat Dec 29 15:20:12 
    Duration: 00:00:04.39, start: 0.000000, bitrate: N/A 
    Stream #0.0: Video: h264 (Main), yuv420p, 640x480 [PAR 1:1 DAR 4:3], 30 tbr, 1k tbn, 60 tbc 
    Stream #0.1: Audio: libspeex, 16000 Hz, 1 channels, s16 
[libspeex @ 0x1c27500] Missing Speex header, assuming defaults. 
[email protected]:/data/media/failed$ 
+0

這是[脫離堆棧溢出](http://stackoverflow.com/faq#questions)。 *也許*它可以遷移到Ask Ubuntu或超級用戶... –

回答

2

我找到了另一種解決方案。 ffmpeg應該從官方站點的鏈接下載到二進制版本(linux x64)。

Ubuntu版本在編解碼器時遇到問題。

2

我找到了解決辦法。 需要安裝這些軟件包:sudo apt-get install libavcodec-extra-53 libavdevice-extra-53 libavfilter-extra-2 libavformat-extra-53 libavutil-extra-51 libpostproc-extra-52 libswscale-extra-2

0

我在Ubuntu 14.04中使用libvo_aacenc編解碼器代替aac編解碼器解決了這個問題。你可以改變你的命令,看起來像這樣:

avconv -i videoStream_1356794393712_805.flv -c:v mpeg4 -c:a libvo_aacenc videoStream_1356794393712_805.mp4 
相關問題