您当前的位置: 首页 >  qt

令狐掌门

暂无认证

  • 1浏览

    0关注

    513博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Qt视频剪辑软件开发(四):视频双向拖动与剪辑的实现

令狐掌门 发布时间:2020-03-28 17:12:46 ,浏览量:1

        前面3篇大概介绍了音视频解码播放显示等,这篇介绍最关键的地方,视频快进seek功能。

        由于要做视频剪辑,需要调节视频的起始点,用Slider控件是比较好的选择,但是Qt提供的QSlider只能单向拖动,不能双向拖动,很遗憾,用两个QSlider又不美观。还好Qt有很多第三方拓展库,于是找到了Qt双向滑动控件QxtSpanSlider,关于该控件的使用,可以查看我的博客 Qt双向滑动控件QxtSpanSlider

        在滑动两边Slider时分别触发以下两个信号

connect(ui.timeSlider, &QxtSpanSlider::lowerPositionChanged, this, &VideoCutter::onLeftPointSeek);
connect(ui.timeSlider, &QxtSpanSlider::upperPositionChanged, this, &VideoCutter::onRightPointSeek);

       再链接ffmpeg的seek功能,即可实现双向seek快进快退。主要是调用ffmpeg API: av_seek_frame,代码如下:

bool FFmpegUtils::Seek(float pos)
{
	QMutexLocker locker(&mutex);

	if (!m_afc)
	{
		return false;
	}
	
	int64_t stamp = 0;
	stamp = p
关注
打赏
1652240117
查看更多评论
立即登录/注册

微信扫码登录

0.0771s