[ffmpeg]将yuv编码为h264时,如何控制帧率
dwing吧
全部回复
仅看楼主
level 4
qwe111day
楼主
yuv编码为h264,如何保证视频的帧率恒定为15帧,并且保证总时长不会变长。低于15帧的要补帧,高于15帧的要弃帧。这个具体应该如何实现。(pts怎么设置)。
刚学习ffmpeg 很多东西都不懂,还请多指教
2016年07月06日 03点07分
1
level 4
qwe111day
楼主
我现在实现了将原视频由25帧变为15帧,但是总时长会变长,这个弃帧的操作应该怎么去做,怎么弃?弃哪些帧?Ծ ̮ Ծ
2016年07月06日 03点07分
2
level 1
我是周身痕
-vf fps=25,fps=15 来两个fps试试
2016年07月06日 11点07分
3
qwe111day
感谢层主
。我主要还是想用代码实现,现在有思路了,就是把都在(1/15)s内多余的帧丢弃,现在问题是我的dts好像都不太对(不知道yuv转h264的dts应该怎么弄)
2016年07月06日 11点07分
我是周身痕
@qwe111day
玩ffmpeg开发?
2016年07月06日 11点07分
我是周身痕
@qwe111day
表示只会命令行...
2016年07月06日 11点07分
qwe111day
@我是周身痕
额
2016年07月06日 11点07分
level 1
我是周身痕
ffmpeg -r 25 -i "xxx.yuv" -vf fps=15 -c:v libx264 -x264opts force-cfr=1 -vsync cfr xxx.mp4 这样应该可以了吧...
2016年07月06日 11点07分
4
qwe111day
顺便问下楼主知道这个在代码里滤镜应该怎么写么
。我其他的滤镜都可以用,就这个用不了
。可能是我写的有问题。"fps=fps=15"我是照着官网上的文档写的。但是会报错
2016年07月06日 12点07分
level 1
愿一直晃晃悠悠
楼主解决了这问题吗,我也想把ffmpeg里对视频处理的帧数改成一个确定值,求指教
2017年11月12日 08点11分
6
qwe111day
减少帧数解码之后直接丢弃就好了,要增加的话就拷贝原来的帧
2017年11月13日 01点11分
愿一直晃晃悠悠
@qwe111day
解码之后直接丢弃是改transcode这里面的代码吗?另外直接丢弃帧视频会不会变短呢?初次接触ffmpeg,谢大佬指教
2017年11月13日 11点11分
qwe111day
@愿一直晃晃悠悠
你把30fps的变为24fps每30帧丢弃6帧就好了,其实不用解码之后,你在read到这个pkt后跳过这次解码就好了
2017年11月13日 11点11分
qwe111day
@愿一直晃晃悠悠
不过最好还是解码后处理,如果遇到i帧可能有问题
2017年11月13日 11点11分
level 4
步入右值引用的码农
就和采样一样,记录当前帧的时间戳,当下一帧的时间戳到达时送编码器编码即可
2017年11月14日 00点11分
7
1