1.多媒体播放
QMediaPlayer类是QT自带的多媒体类。 实现简单的音视频播放是很简单的。1
2
3
4
5QMediaPlayer qtaudioPlayer;
qtaudioPlayer->setMedia(QUrl::fromLocalFile(filePath));
qtaudioPlayer->play();
这里的filePath如果是音频路径,就直接播放音频, 如果是视频路径就直接播放视频。
如果是服务上的音视频路径的话, 需要在前面加上一个http://头, 当然如果返回就自带http://头就不用加。
如:服务器返回一个www.test.com/test.wav1
2
3filePath = QLatin1String(http://www.test.com/test.wav);
qtaudioPlayer->setMedia(QUrl::fromLocalFile(filePath));
这样就可以直接播放网络上的音视频文件了。
2.多媒体控制
当然简单的音视频播放是很容易,在实际的播放器制作过程中,需要控制播放过程中的很多操作,QMediaPlayer 提供了很多信号,来让用户处理。
如:1
mediaStatusChanged(QMediaPlayer::MediaStatus)
这个是音视频状态改变的信号, 如:暂停, 停止, 播放,它都能直接监控1
durationChanged(qint64)
这个是播放文件数据总大小的信号, 它可以获得文件时间长度。1
positionChanged(qint64)
这个是播放到什么位置的信号, 参数是以毫秒来计算的。1
volumeChanged(int)
这个是声音调节的信号,监控当前声音的大小1
mutedChanged(bool)
这个是是否为静音的信号。
==音视频播放的过程中, 位置和总大小都是用毫秒表示的,可以进行单位换算==。