2009-07-07 17 views
4

사람을 FLV하기 E : \ Jab Core 4 Recounters.wmv "-vcodec flv"C : \ Net Projects \ SVN \ IntegratedAlgorithmics \ src \ MediaAdmin \ MediaAdmin \ bin \ Debug \ Movies \ Jab Core 4 Recounters.flv "-ar 44100FFMPEG의 WMV 변환는 FFmpeg</p> 내가 표준 출력으로 무비 메이커에서 사용자가 내 보낸 매우 간단 WMV를 가지고</p> <p>C를 사용하여 .FLV로 변환 할 <p>를 사용

내가받는 출력/오류는

FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al. 
    configuration: --enable-gpl --enable-postproc --enable-swscale --enable-avfilt 
er --enable-avfilter-lavf --enable-pthreads --enable-avisynth --enable-libfaac - 
-enable-libfaad --enable-libmp3lame --enable-libspeex --enable-libtheora --enabl 
e-libvorbis --enable-libxvid --enable-libx264 --enable-memalign-hack 
    libavutil  49.15. 0/49.15. 0 
    libavcodec 52.20. 0/52.20. 0 
    libavformat 52.31. 0/52.31. 0 
    libavdevice 52. 1. 0/52. 1. 0 
    libavfilter 0. 4. 0/0. 4. 0 
    libswscale  0. 7. 1/0. 7. 1 
    libpostproc 51. 2. 0/51. 2. 0 
    built on Mar 16 2009 16:09:18, gcc: 4.2.4 [Sherpya] 
[wmv3 @ 0x1c0d490]Extra data: 8 bits left, value: 0 

Seems stream 1 codec frame rate differs from container frame rate: 1000.00 (1000 
/1) -> 30.00 (30/1) 
Input #0, asf, from 'E:\Jab Core 4 Recounters.wmv': 
    Duration: 00:01:55.99, start: 5.000000, bitrate: 813 kb/s 
    Stream #0.0: Audio: wmav2, 48000 Hz, stereo, s16, 192 kb/s 
    Stream #0.1: Video: wmv3, yuv420p, 640x480, 586 kb/s, 30 tbr, 1k tbn, 1k tbc 

Output #0, flv, to 'C:\Net Projects\SVN\IntegratedAlgorithmics\src\MediaAdmin\Me 
diaAdmin\bin\Debug\Movies\Jab Core 4 Recounters.flv': 
    Stream #0.0: Video: flv, yuv420p, 640x480, q=2-31, 200 kb/s, 90k tbn, 30 tbc 

    Stream #0.1: Audio: libmp3lame, 48000 Hz, stereo, s16, 64 kb/s 
Stream mapping: 
    Stream #0.1 -> #0.0 
    Stream #0.0 -> #0.1 
[wmv3 @ 0x1c0d490]Extra data: 8 bits left, value: 0 
[libmp3lame @ 0x1c0d8d0]flv does not support that sample rate, choose from (4410 
0, 22050, 11025). 
Could not write header for output file #0 (incorrect codec parameters ?) 
입니다. 내가 오류를 처음 받았을 때

내가 -ar 스위치 번째 추가

파일에 내가 가지고있는 코덱 정보는

General 
Complete name     : E:\Jab Core 4 Recounters.wmv 
Format       : Windows Media 
File size      : 11.3 MiB 
Duration       : 2mn 0s 
Overall bit rate mode   : Variable 
Overall bit rate     : 780 Kbps 
Maximum Overall bit rate   : 949 Kbps 
Encoded date      : UTC 2009-03-07 07:02:41.121 
Writing application    : 6.0.6000.16386/Windows Movie Maker 
Application      : Windows Movie Maker 6.0.6000.16386 

Video 
ID        : 2 
Format       : VC-1 
Format profile     : [email protected] 
Codec ID       : WMV3 
Codec ID/Info     : Windows Media Video 9 
Codec ID/Hint     : WMV3 
Duration       : 2mn 0s 
Bit rate mode     : Variable 
Bit rate       : 587 Kbps 
Width       : 640 pixels 
Height       : 480 pixels 
Display aspect ratio    : 4/3 
Frame rate      : 30.000 fps 
Resolution      : 24 bits 
Scan type      : Progressive 
Bits/(Pixel*Frame)    : 0.064 
Stream size      : 8.46 MiB (75%) 
Language       : en-us 

Audio 
ID        : 1 
Format       : WMA2 
Format profile     : L3 
Codec ID       : 161 
Codec ID/Info     : Windows Media Audio 2 
Description of the codec   : Windows Media Audio 9.2 - VBR Quality 90, 48 kHz, stereo 1-pass VBR 
Duration       : 2mn 0s 
Bit rate mode     : Variable 
Bit rate       : 186 Kbps 
Channel(s)      : 2 channels 
Sampling rate     : 48.0 KHz 
Resolution      : 16 bits 
Stream size      : 2.68 MiB (24%) 
Language       : en-us 

내가 함께이 문제를 가진 사람들을 많이 볼 다음과 같다 그래서 솔루션이나 어떤 아이디어는 약간의 도움이 될 수 있습니다 것을 미리

+0

질문을 포맷하십시오. 새로운 라인과 인용 부호/코드 포맷팅이 적절하다면 – colithium

+0

감사합니다. 더 좋겠지 만, cmd 라인 출력은 여전히 ​​지저분합니다. –

답변

1

에 도움이 감사 것

의 원인, 당신은 소스 오디오는 48kHz의에 있다고 볼 수 있으며, FLV 그것을 거부한다. ffmpeg는 분명히 당신의 -ar 플래그를 무시하고 있습니다. 첫 번째 단계는 오디오를 리샘플링하는 것입니다. 중간급 포맷으로 트랜스 코딩하여 샘플 레이트를 변환 한 다음 거기에서 flv로 변환 할 수 있습니다.

+0

ffmpeg에서 결국 flv로 변환 할 수있는 아이디어가 있습니까? –

+0

두 개의 ffmpeg 호출, 입력 -> 임시, 임시 -> flv. 좋은 중개자를 찾는 것이 실험의 과정이라고 생각합니다. 개인적인 선호는 비디오를 하나의 임시 파일 (MOV/AVI?)로 분리하고 오디오를 다른 임시 파일 (WAV?)로 제거하는 것입니다. 그런 다음 오디오를 수동으로 리샘플링하고 두 가지를 출력 FLV에 병합하십시오. –

8

ffmpeg에서 옵션은 관련된 입력 파일의 접두어 여야합니다. -ar 44100을 앞으로 움직이면 작동합니다.

+0

안녕하세요 - wmv 파일과 비슷한 문제가 있습니다. 시도해 보셨습니까? 작동합니까? – undefined

+0

@undefined 예, 나는 wmv 파일과 같은 문제를 발견,이 stackoverflow 질문을 발견, 그것을 해결하고, 며칠 후 여기에 쓴 – phihag

0

더 정확하게 : ffmpeg에서 옵션은 관련된 파일 인 의 접두사 여야합니다.
-ar 44100을 출력 파일 이름의 앞면 으로 옮기면 작동합니다.

2

나는 이미 질문을 알고 있지만 대답은 누군가를 도울 수 있다고 생각합니다. 당신은 오디오 샘플 속도의 문제에 직면하는 경우 다음 명령을 사용하십시오

ffmpeg -i video.avi -ar 22050 video.flv

-i input file name 
-ar audio sampling rate in Hz