QMediaPlayer

  QMediaPlayer 是 Qt 框架中的一个多媒体播放器类,用于处理音频和视频文件的播放。它是 Qt Multimedia 模块的一部分,提供了一个易于使用的接口,允许您在您的 Qt 应用程序中播放各种媒体内容。

        QMediaPlayer是个壳(也可以叫框架),依赖本地解码器,视频这块默认基本上就播放个MP4甚至连MP4都不能播放,如果要支持其他格式需要下载k-lite或者LAV Filters安装即可(k-lite或者LAV Filters是指windows上的,其他系统上自行搜索,貌似嵌入式linux上依赖GStreamer(sudo apt-get install gstreamer1.0-libav ubuntu-restricted-extras),并未完整验证,报错提示 Your GStreamer installation is missing a plug-in,需要命令安装 sudo apt-get install ubuntu-restricted-extras)。如果需要做功能强劲的播放器,初学者建议用vlc、mpv,终极万能大法用ffmpeg(解码出来的视频可以用QOpenGLWidget走GPU绘制或者转成QImage绘制,音频数据可以用QAudioOutput播放)

        QMediaPlayer用法:

1. 多媒体格式支持: QMediaPlayer 支持许多常见的音频和视频文件格式,包括 MP3、WAV、OGG、MPEG、AVI 等。在 Qt 应用程序中播放各种不同类型的媒体文件。

2. 控制播放: 使用 QMediaPlayer 来控制媒体文件的播放、暂停、停止、快进、快退等操作。这使能够创建自定义的媒体播放器界面,并与用户交互。

3. 音量控制: 通过 setVolume 方法,可以设置音频的音量,以便根据需要调整音量。

4. 通知和错误处理: QMediaPlayer 提供了信号和槽机制,以便能够捕获媒体播放过程中的状态变化、错误信息等,并作出相应的处理。

5. 视频显示: 如果播放的媒体文件包含视频内容,将视频内容显示在 Qt 窗口中。为此,可以使用 QVideoWidget 或其他 Qt 组件来显示视频。

6. 媒体查询: QMediaPlayer 查询媒体文件的元数据,如标题、作者、持续时间等信息。

用例:

#include 
#include 

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    // 创建 QMediaPlayer 对象
    QMediaPlayer player;

    // 设置媒体文件路径
    player.setMedia(QUrl::fromLocalFile("/path/to/your/mediafile.mp3"));

    // 播放媒体文件
    player.play();

    return a.exec();
}

你可能感兴趣的:(QT,qt,开发语言,windows,服务器,运维)