博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决FFmpeg丢失视频流及帧率过高的问题
阅读量:5864 次
发布时间:2019-06-19

本文共 1024 字,大约阅读时间需要 3 分钟。

转换参数

-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 streamsMPEG-4microsoft),

3KbpsMPEG-4 VisualMicrosoft

1 audio stream:WMA

568Kbps,WMV1;

 

只有音频

视频信息丢失,不能播放视频

 

2、总比特率模式为变量的视频,转换时间长,输出视频大,频率高(有时会导致转换程序中断,视频无法继续转换)。

出错视频异常参数

正常视频的正常参数

出错视频描述

导致的结果

Overrall bit rate mode:Variable

 

Overrall bit rate mode:Constant

频率高,文件大(是原来的2-3倍)

转换时间长,有的甚至出现“无法转换”。

 

 

问题对策

1、使用参数“ -map  0 ”,使得所有的流都参与到转换中去。

解释:视频中一般包含视频流和音频流,并且可以有多个视频流,多个音频流。FFmpeg转换视频,默认情况下,其第一个视频流、第一个音频率参与转换,其他的忽略。上述的出错视频其第一个视频流的视频比特率只有3kb,其太小,转换时将其忽略。(个人解释,不具有权威性)

2、使用参数“-r 25”,强制写入帧率,使得输出视频的帧率不过高(蹦到1000)。

解释:可能视频的总比特率为变量,所以原视频的信息(比例帧率)未能写入到输出视频中去。

转载于:https://www.cnblogs.com/yuanloo/p/4368426.html

你可能感兴趣的文章
Linux—源码包安装
查看>>
使用IO合并技巧轻松实现千万级消息推送
查看>>
xx项目性能测试的一般过程
查看>>
JDK8中ArrayList的工作原理剖析
查看>>
获取AFP共享的文件夹及其权限
查看>>
安装Ubuntu虚拟系统
查看>>
访问网站出现图片破裂
查看>>
安装gulp及相关插件
查看>>
如何在Linux用chmod来修改所有子目录中的文件属性?
查看>>
项目: Zabbix监控搭建部署
查看>>
Windows7配置python环境变量
查看>>
学习mysql
查看>>
Applet
查看>>
gNewsense设置自动登录
查看>>
poj1919--Red and Black (DFS)
查看>>
iostream与iostream.h的区别
查看>>
Java微信公众平台开发(十三)--微信JSSDK中Config配置
查看>>
移动端链接、点击事件、输入框去除背景高亮
查看>>
SQL 优化原则(转)
查看>>
神奇代码
查看>>