原文:Qt与FFmpeg联合开发指南(二)——解码(2):封装和界面设计

与解码相关的主要代码在上一篇博客中已经做了介绍,本篇我们会先讨论一下如何控制解码速度再提供一个我个人的封装思路。最后回归到界面设计环节重点看一下如何保证播放器界面在缩放和拖动的过程中保证视频画面的宽高比例。 一 解码速度 播放器播放媒体文件的时候播放进度需要我们自己控制。基本的控制方法有两种: 根据FPS控制视频的播放帧率,让音频跟随。 控制音频的播放解码速度,让视频跟随。 媒体文件在编码的时候, ...

2018-04-29 13:34 6 1995 推荐指数:

查看详情

QtFFmpeg联合开发指南(一)——解码(1):功能实现

前言:对于从未接触过音视频编解码的同学来说,使用FFmpeg的学习曲线恐怕略显陡峭。本人由于工作需要,正好需要在项目中使用。因此特地将开发过程总结下来。只当提供给有兴趣的同学参考和学习。 由于FFmpeg是使用C语言开发,所有和函数调用都是面向过程的。以我目前的学习经验来说,通常我会把一个功能 ...

Sun Apr 29 08:59:00 CST 2018 2 5765
QtFFmpeg联合开发指南(四)——编码(2):完善功能和基础封装

上一章我用一个demo函数演示了基于Qt的音视频采集到编码的完整流程,最后经过测试我们也发现了代码中存在的问题。本章我们就先处理几个遗留问题,再对代码进行完善,最后把编码功能做基础封装。 一、遗留问题和解决方法 (1)如何让音视频的录制保持同步? 在我们的演示代码中之所以发现音视频录制不同步 ...

Sun May 20 09:31:00 CST 2018 1 1435
QtFFmpeg联合开发指南(三)——编码(1):代码流程演示

前两讲演示了基本的解码流程和简单功能封装,今天我们开始学习编码。编码就是封装音视频流的过程,在整个编码教程中,我会首先在一个函数中演示完成的编码流程,再解释其中存在的问题。下一讲我们会将编码功能进行封装并解释针对不同的输出环境代码上需要注意的地方。最后我们还会把之前做好的解码器添加进开发环境,实现 ...

Sun May 06 08:26:00 CST 2018 4 3798
Qt界面设计基础

一、安装Qt相关基本组件: 在ubuntu上安装,可以直接使用如下的命令来安装: 详细的安装方法可以参考这篇文章:https://blog.csdn.net/thomasqiujs/article/details/44154845 Qt Creator的初级入门视频可以参考 ...

Tue Apr 24 01:52:00 CST 2018 0 8704
Qt界面设计思路

1、新建一个widget不能在界面工具栏对其上点击布局(水平、垂直、网格等),原因是界面内部必须有子部件,可以拖进来任意一个部件,这样就可以对界面进行布局了,然后在删除拖进来的部件即可。2、定位控件的位置可以使用: a)使用setGeometry()方法定位,这种方法的好处在仅仅几个控件时使用 ...

Wed Sep 01 05:10:00 CST 2021 0 112
(一)Qt界面设计布局

Qt提供四种布局: 这种布局生成的格局比较单一,这时候需要另外两个填充控件,来生成整行或整列的格式。 注意:使用Spacers控件时,必须要放在layouts中的布局中,否则无法保存。 示例: 1、往界面拖入一个verticalLayout 2、往verticalLayout拖入 ...

Fri Mar 28 03:50:00 CST 2014 0 4389
Qt+Halcon联合开发配置

Halcon是一款优秀的商业版图像处理软件,但其在可视化方面有比较差的体验;而Qt在可视化和界面开发方面拥有很强大的功能和便捷性。自己之前做一些软件开发工作,现在又在利用Halcon进行图像处理算法开发,把两者结合使用,岂不是一件非常有趣的事情! 于是乎,从网上查了一下Qt+Halcon联合开发 ...

Fri Oct 30 23:40:00 CST 2020 0 750
(二)Qt界面设计之菜单栏

1、添加菜单项 直接输入菜单项名称,然后回车即可。 2、为菜单项设置图标 在动作编辑器上,右键选择编辑,然后添加图标 如果想在图标栏添加该菜单的快捷图标,直接将该动作项拖放只图标栏 ...

Sat Mar 29 23:32:00 CST 2014 0 4162
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM