解决FFmpeg丢失视频流及帧率过高的问题
2015-03-26 13:13
1776 查看
转换参数
-i sourceVideo.wmv -vcodec libx264 -preset ultrafast -profile:v baseline -acodec aac -strict experimental -s 640*480 -b 568k -ab 128k destinationVideo.mp4-vcodec libx264 采用H.264的编码方式
-preset ultrafast 快速的编码方式
-profile:v baseline 让视频提供最好的兼容方式,但会关闭很多高级特性
-acodec aac 采用AAC音频编码
-strict experimental
-s 640*480 图片的大小
-b 568k 视频码率
-ab 128k 音频码率
问题描述
1、转换多视频流视频,其视频流信息丢失,输出视频只有音频信息。出错视频异常参数 | 正常视频的正常参数 | 出错视频描述 | 导致的结果 |
3 video streams:MPEG-4(microsoft), 3Kbps,MPEG-4 Visual(Microsoft) | 1 audio stream:WMA 568Kbps,WMV1; | 只有音频 | 视频信息丢失,不能播放视频 |
出错视频异常参数 | 正常视频的正常参数 | 出错视频描述 | 导致的结果 |
Overrall bit rate mode:Variable | Overrall bit rate mode:Constant | 频率高,文件大(是原来的2-3倍) | 转换时间长,有的甚至出现“无法转换”。 |
问题对策
1、使用参数“ -map 0 ”,使得所有的流都参与到转换中去。解释:视频中一般包含视频流和音频流,并且可以有多个视频流,多个音频流。FFmpeg转换视频,默认情况下,其第一个视频流、第一个音频率参与转换,其他的忽略。上述的出错视频其第一个视频流的视频比特率只有3kb,其太小,转换时将其忽略。(个人解释,不具有权威性)
2、使用参数“-r 25”,强制写入帧率,使得输出视频的帧率不过高(蹦到1000)。
解释:可能视频的总比特率为变量,所以原视频的信息(比例帧率)未能写入到输出视频中去。
相关文章推荐
- 用FFMPEG SDK进行视频转码压缩时解决音视频不同步问题的方法
- 用FFMPEG SDK进行视频转码压缩时解决音视频不同步问题的方法(转) PTS DTS
- 解决百度编辑器在编辑视频时src丢失的问题
- 解决H5播放视频黑屏只有声音没有图像的问题,Java调用ffmpeg转码成h264的mp4格式
- 为什么Win7下鼠标唤醒和视频加速CPU占用过高?如何解决问题
- FFmpeg获取视频旋转角度rotate获取不到的问题解决
- ueditor 解决视频回显 src链接丢失问题
- ffmpeg python批处理视频文件 增加关键帧 解决seekTo不准确问题
- 用FFMPEG SDK进行视频转码压缩时解决音视频不同步问题的方法(转) PTS DTS
- 如何解决ASP使用FFMPEG进行视频截图时报出的“无法创建对象”问题
- 问题解决:FFmpeg视频编解码库,无法解析的外部信号
- 【转】用FFMPEG SDK进行视频转码压缩时解决音视频不同步问题的方法
- 解决微信小程序视频组件层级过高的问题
- 一个使用FFmpeg库读取3gp视频的例子-Android中使用FFmpeg媒体库(三).so文件编译过程问题的解决
- 利用FFmpeg将视频文件生成bmp图像帧(解决反转问题)
- 用FFMPEG SDK进行视频转码压缩时解决音视频不同步问题的方法(转) PTS DTS
- 问题解决:FFmpeg视频编解码库,无法解析的外部信号
- 使用small-video-record(ffmpeg)视频压缩框架混淆后报错问题解决
- [转载] 问题解决:FFmpeg视频编解码库,无法解析的外部信号
- ffmpeg使用记录--解决了压制的视频在安卓不播放的问题