2010-02-15 10 views
7

Moja aplikacja Flex rejestruje pliki FLV tylko audio za pomocą red5 - Chciałbym przekonwertować te pliki do plików SWF, aby móc je osadzić w innych plikach SWF. (Mógłbym też przekonwertować na MP3, a następnie sam je osadzić w plikach SWF, ale wolę jednoetapowe rozwiązanie.)ffmpeg: konwertuj flv tylko audio na swf

Ktoś ma takie doświadczenie?

Co próbowałem:

Następujące polecenie ffmpeg nie naiwny:

> ffmpeg -i 3139747641.flv -vn movie.swf 
FFmpeg version SVN-r21751-snapshot, Copyright (c) 2000-2010 Fabrice Bellard, et al. 
    built on Feb 11 2010 09:15:42 with gcc 4.2.1 (SUSE Linux) 
    configuration: --enable-gpl --enable-nonfree 
    libavutil  50. 9. 0/50. 9. 0 
    libavcodec 52.53. 0/52.53. 0 
    libavformat 52.52. 0/52.52. 0 
    libavdevice 52. 2. 0/52. 2. 0 
    libswscale  0.10. 0/0.10. 0 
[flv @ 0x8a5e3a0]Could not find codec parameters (Video: 0x0000) 
[flv @ 0x8a5e3a0]Estimating duration from bitrate, this may be inaccurate 
Input #0, flv, from '3139747641.flv': 
    Metadata: 
    audiocodecid : -1 
    duration  : 0 
    videocodecid : -1 
    canSeekToEnd : true 
    Duration: 00:00:14.88, start: 0.000000, bitrate: N/A 
    Stream #0.0: Video: 0x0000, 1k tbr, 1k tbn, 1k tbc 
    Stream #0.1: Audio: nellymoser, 8000 Hz, mono, s16 
Output #0, swf, to 'movie.swf': 
    Stream #0.0: Audio: 0x0000, 8000 Hz, mono, s16, 64 kb/s 
Stream mapping: 
    Stream #0.1 -> #0.0 
Encoder (codec id 86017) not found for output stream #0.0 

Próbowałem dodanie obojętne wideo, ale to również nie powiodło się:

> ffmpeg -i dummy.mov -i 3139747641.flv movie.swf 
<!-- snip -->  
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'dummy.mov': 
    Metadata: 
    major_brand  : qt 
    minor_version : 512 
    compatible_brands: qt 
    encoder   : Lavf52.52.0 
    encoder-eng  : Lavf52.52.0 
    Duration: 00:00:00.10, start: 0.000000, bitrate: 62 kb/s 
    Stream #0.0(eng): Video: mpeg4, yuv420p, 10x10 [PAR 1:1 DAR 1:1], 1 kb/s, 10 fps, 10 tbr, 10 tbn, 10 tbc 
[flv @ 0x8a67fa0]Could not find codec parameters (Video: 0x0000) 
[flv @ 0x8a67fa0]Estimating duration from bitrate, this may be inaccurate 
Input #1, flv, from '3139747641.flv': 
    Metadata: 
    audiocodecid : -1 
    duration  : 0 
    videocodecid : -1 
    canSeekToEnd : true 
    Duration: 00:00:14.88, start: 0.000000, bitrate: N/A 
    Stream #1.0: Video: 0x0000, 1k tbr, 1k tbn, 1k tbc 
    Stream #1.1: Audio: nellymoser, 8000 Hz, mono, s16 
picture size invalid (0x0) 
Cannot allocate temp picture, check pix fmt 

Odpowiedz

3

You trzeba zainstalować libmp3lame. Ponadto, może trzeba spróbować ustawić swoją szybkość nagrywania mikrofonu do 44.

+2

Oto tutorial jak zbudować ffmpeg z libmp3lame http://stephenjungels.com/jungels .net/articles/ffmpeg-howto.html. Jest przeznaczony dla mac osx, ale w większości powinien działać na innych platformach. –

9

Zamontować unstripped i dodatkowych bibliotek

sudo apt-get install ffmpeg libavcodec-extra-53 
+4

dziękuję, to działało dla mnie. Oszczędziłeś mi sporo czasu na kopanie. Twoje zdrowie. – EricR

+0

Dziękuję bardzo :) –