今年过年因为疫情的关系,在工作地点过年。家里穷的连个电视都没有,春晚都看不了,怎么办??!!
QtAV是一个开源的音视频播放器,支持播放本地文件和网络流媒体。并集成了多种视频渲染方式,使用它的简单的API可以轻松的实现做一个网络电视播放器(我这里在网上找的RTMP的地址)。
更多关于QtAV的介绍,可以参考QtAV的github主页:
https://github.com/wang-bin/QtAV
下面是我基于QtAV做的简易版本的电视播放器:
QtAV播放RTMP的代码也很简单:
using namespace QtAV;
QtAV::Widgets::registerRenderers();
// 创建播放器
AVPlayer* pPlayer = new AVPlayer(this);
// 创建渲染窗口(OpenGL渲染)
OpenGLWidgetRenderer* render = new OpenGLWidgetRenderer;
// 为播放器设置渲染窗口
pPlayer->setRenderer(render);
// 播放视频(可以是网络视频流,也可以是视频文件)
pPlayer->play(url);
AVPlayer 中有很多播放控制接口,如 play() 、 pause() 、 stop() 等等。 音量控制,可以通过接口 audio() 获取 AudioOutput 类,通过该类设置音量。
void QtAVPlayerWidget::setVolume(qreal value)
{
m_volume = value;
AudioOutput* pAudioOutput = m_pAVPlayer->audio();
if (pAudioOutput)
pAudioOutput->setVolume(value);
}
软件下载:
https://download.csdn.net/download/douzhq/15178249
代码下载(VS2019 Qt5.15.2 x64)
https://download.csdn.net/download/douzhq/15178311