Kha*_*ain 4 ffmpeg mencoder video-capture video-streaming audio-streaming
我正在尝试使用以下(mencoder)命令将mp4或3gp视频文件转换为Flash(flv)格式(使用Perl脚本):
mencoder test.mp4 -of lavf -ovc lavc -lavcopts vcodec=flv:vbitrate=1000:mbd=2 -fps 20.80 -ofps 20.80 -oac mp3lame -lameopts abr:br=32 -srate 22050 -o test.flv
Run Code Online (Sandbox Code Playgroud)
它运行正常,但是一些来自手机附件的文件有问题,转换后的FLV文件只有音频.
我还使用了ffmpeg命令如下:
ffmpeg -i test.mp4 -ar 22050 -acodec libmp3lame -ab 32K -r 25 -vcodec flv test.flv
Run Code Online (Sandbox Code Playgroud)
这个ffmpeg命令有助于转换为失败的flv mencoder
.
我在想一些解决方案,需要检查转换后的flv是否有音频和视频然后才会采取行动取决于它.你能帮我解决这个问题吗?
这是一些更多的信息(日志):
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xb6b9a3a0]多个编辑列表条目,可能发生a/v desync,修补程序欢迎**MUXER_LAVF ************************************* 记住:MEncoder的libavformat muxing目前已被破坏,可以在B帧存在的情况下生成INCORRECT文件.而且,由于错误,MPlayer会播放这些INCORRECT文件,好像什么都没有错!
不受支持的PixelFormat 61不支持的PixelFormat 53不支持的PixelFormat 81 [flv @ 0xb6b9a3a0]流0的编解码器不使用全局头,但容器格式需要全局头[flv @ 0xb6b9a3a0]流1的编解码器不使用全局头,但容器格式需要全局头[ flv @ 0xb6b9a3a0] pts <dts in stream 0写入帧时出错.
[flv @ 0xb6b9a3a0] pts <dts in stream 0写入帧时出错.
[flv @ 0xb6b9a3a0] pts <dts in stream 0写入帧时出错.
[flv @ 0xb6b9a3a0] pts <dts in stream 0写入帧时出错.
[flv @ 0xb6b9a3a0] pts <dts in stream 0写入帧时出错.
跳帧!
.........................
可能的解决方案是:
使用ffmpeg或ffprobe分析输出文件,
ffmpeg -i test.flv
具有A/V流的文件上的命令行输出应如下所示:
ffmpeg -i test.flv
ffmpeg version N-53818-gfca435f Copyright (c) 2000-2013 the FFmpeg developers
built on Jun 4 2013 01:41:53 with gcc 4.7.3 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-liray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enabibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enablevpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 52. 34.100 / 52. 34.100
libavcodec 55. 15.100 / 55. 15.100
libavformat 55. 8.102 / 55. 8.102
libavdevice 55. 2.100 / 55. 2.100
libavfilter 3. 74.101 / 3. 74.101
libswscale 2. 3.100 / 2. 3.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 3.100 / 52. 3.100
Input #0, flv, from 'test.flv':
Metadata:
starttime : 0
totalduration : 5162
totaldatarate : 583
bytelength : 376445710
canseekontime : true
sourcedata : BD075FAE3HH1363450117735644
purl :
pmsg :
Duration: 01:26:01.70, start: 0.000000, bitrate: 533 kb/s
Stream #0:0: Video: h264 (Main), yuv420p, 640x356, 457 kb/s, 23.98 tbr, 1k tbn, 47.95 tbc
Stream #0:1: Audio: aac, 44100 Hz, stereo, fltp, 131 kb/s
Run Code Online (Sandbox Code Playgroud)
例:
"^\s+Stream.+Video." and ^\s+Stream.+Audio.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5678 次 |
最近记录: |