社区
其它技术问题
帖子详情
ffmpeg如何实现倍速播放
dfssfdhjytj
2021-10-14 00:53:11
ffmpeg如何实现倍速播放 需要以api方式实现
...全文
1200
1
打赏
收藏
ffmpeg如何实现倍速播放
ffmpeg如何实现倍速播放 需要以api方式实现
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
CSDN-Ada助手
2023-01-13
打赏
举报
回复
您可以前往
CSDN问答-IT工具
发布问题, 以便更快地解决您的疑问
qt+
ffmpeg
视频
播放
器
实现
音视频
倍速
功能
参考了云天之巅的
FFMPEG
Qt视频
播放
器源码,该代码
实现
了
ffmpeg
qt音视频
播放
器功能,视频音频的
播放
、暂停、进度调节功能都齐全,非常值得参考。该
播放
器没有音视频
倍速
功能,我在网上找了很多
ffmpeg
音视频
倍速
功能资料,视频
倍速
还比较容易
实现
,但是音频
倍速
的资料太少了,费了一番功夫基本
实现
了
ffmpeg
的音频
倍速
功能。
ffplay使用
ffmpeg
滤镜
实现
倍速
播放
曾经为
实现
倍速
播放
使用过
ffmpeg
,对于音频使用atemp滤镜即可
实现
变速不变调。但是当时效果并不是特别好,和soundtouch相比处理后的音质有明显的区别,最新用新版本的
ffmpeg
滤镜重新
实现
的
倍速
播放
,发现效果变好了,已经达到了可接受的程度。所以在此分享具体
实现
。 一、
ffmpeg
滤镜
ffmpeg
倍速
滤镜一般可以用下面这几个: (1)视频 setpts=0.5*PTS (2)音频 atempo = 2.0 二、ffplay中使用滤镜 在ffplay中可以直接使用
ffmpeg
的滤镜,在这里
实现
ffmpeg
使用滤镜
实现
播放
倍速
avfilter_link 用于链接滤镜,上面的代码表示数据从 m_videoSrcFilterCtx 流向 videoSpeedCtx,再从 videoSpeedCtx 流向 m_videoSinkFilterCtx,很好理解,数据从输入滤镜开始,流向中间的滤镜,有中间的滤镜进行处理,再流向下一个滤镜,最终流入到输出滤镜。0 表示滤镜输入,输出端口的索引,有的滤镜有多个输入或输出,比如我们如果想把两段音频合并到一起,第一段音频就传入到融合滤镜的第一个端口,第二段音频传入到第二个端口。
【Qt+
FFmpeg
】解码
播放
本地视频(二)——
实现
播放
、暂停、重播、
倍速
功能
本文将介绍Qt和
ffmpeg
联合开发解码
播放
本地视频(二)——
实现
播放
、暂停、重播、
倍速
功能
Qt音视频开发:
FFmpeg
倍速
播放
实现
在界面设计方面,我们可以使用Qt自带的QMediaPlayer控件进行音视频
播放
,并通过QWidget封装
实现
倍速
播放
的效果。接下来,我们需要定义一个
FFmpeg
音视频解码器的类,用于解码器的初始化、启动、停止等操作,以及
倍速
播放
的
实现
。函数为类的构造函数,定义了QMediaPlayer和Decoder对象的初始化和连接信号槽的操作,函数,其会根据当前
播放
时间和
播放
速度自动调整视频帧队列中的帧,以
实现
倍速
播放
的效果。通过上述代码的
实现
,我们可以轻松地
实现
一个基于Qt与
FFmpeg
的
倍速
播放
功能。
其它技术问题
3,881
社区成员
9,044
社区内容
发帖
与我相关
我的任务
其它技术问题
C/C++ 其它技术问题
复制链接
扫一扫
分享
社区描述
C/C++ 其它技术问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章