HMI-56-多媒体音乐播放器 5

Posted DreamLife.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HMI-56-多媒体音乐播放器 5相关的知识,希望对你有一定的参考价值。

HMI-56-【多媒体】音乐播放器 5

​ 上一篇中实现了音乐播放的后台线程,夜里睡觉也没有睡踏实,总是感觉不合适,所以今天还是决定重新搞一下。

当前进度

​ 播放音乐将做成一个共有的类,放在Core文件里面,后面可能会还有一个,现在我想读取音乐的信息,不知道QMediaPlayer是否支持,如果不支持,是不是得搞FFmpeg了呀。顺带整理了一下Core文件夹下的代码


文章目录

关键字: HMIMultifunctionQtQMediaPlayerMusic

头文件

#ifndef MULTIMEDIAMUSICTHREAD_H
#define MULTIMEDIAMUSICTHREAD_H

#include <QThread>
#include <QObject>
#include <QMediaPlayer>
class MultimediaMusicThread : public QThread

    Q_OBJECT
public:
    explicit MultimediaMusicThread(QObject *parent = nullptr);
    /**
     * @brief play
     * @param temp
     * 播放对应音频
     */
    void play(QString temp = "qrc:/Multifunction/Resources/MultifunctionDisplay/Audio/DreamLife.wav");
    /**
     * @brief setVolume
     * @param value
     * 设置音量
     */
    void setVolume(int value = 80);
    /**
     * @brief stop
     * 停止播放
     */
    void stop();
    /**
     * @brief pause
     * 暂停
     */
    void pause();
private:
    /**
     * @brief run
     * 线程函数
     */
    void run();
private:
    QMediaPlayer* mediaPlayer;          //音频播放器
    QString mUrl = "";                  //音乐地址
;

#endif // MULTIMEDIAMUSICTHREAD_H

源文件

#include "multimediamusicthread.h"
#include <QDebug>
MultimediaMusicThread::MultimediaMusicThread(QObject *parent)
    : QThreadparent

    Q_UNUSED(parent)
    mediaPlayer = new QMediaPlayer(this,QMediaPlayer::LowLatency);


void MultimediaMusicThread::play(QString temp)

    mUrl = temp;
    this->start();


void MultimediaMusicThread::setVolume(int value)

    mediaPlayer->setVolume(value);


void MultimediaMusicThread::stop()

    mediaPlayer->stop();


void MultimediaMusicThread::pause()

    mediaPlayer->pause();


void MultimediaMusicThread::run()

    mediaPlayer->stop();
    mediaPlayer->setMedia(QUrl(mUrl));
    mediaPlayer->play();


今天就到这里了。

第三阶段成果展示

​ 目前已完成液晶仪表三种模式的初步显示,小模块后期根据精力更新了,主要还得找美术来搞资源,自己能力不够。暂未跟新计划。展示如下:

基于Qt的汽车仪表模拟 3.0

B站链接:https://www.bilibili.com/video/BV1WS4y137y1/

第二阶段成果展示

​ 目前以完成HUD界面及接口开发,液晶仪表舒适模式和运动模式的开发。展示如下:

基于Qt的汽车仪表模拟 2.0

B站链接:https://www.bilibili.com/video/BV1aq4y1t7H7/

第一阶段成果展示

​ 目前以完成HUD界面及接口开发,液晶仪表舒适模式开发。展示如下:

基于Qt的汽车仪表模拟 1.0)

B站链接:https://www.bilibili.com/video/BV1qJ411X7Gs/


说明:

本项目中所使借鉴原型来自:[吉利] 博瑞GE | 仪表HMI设计吉利汽车HMI项目

多媒体部分是来自吉利博瑞2017旗舰版界面所有权和解释权都归吉利汽车所有。

设计图的所有权和解释权都归吉利汽车所有。

本项目所有资源文件均由**打不死的小海**复刻制作。

本项目代码暂时不会开源,有需要的源码的可与我联系,左上角二维码加微信。

本项目仅限学习交流、禁止商业使用。


创作打卡挑战赛 赢取流量/现金/CSDN周边激励大奖

以上是关于HMI-56-多媒体音乐播放器 5的主要内容,如果未能解决你的问题,请参考以下文章

phonegap 媒体声音在 5 次后停止播放

怎么在html里插音乐 在html里插音乐的方法简述

HMI-54-多媒体音乐播放器 3

Android 简易音乐播放器

HMI-52-多媒体音乐播放器 1

Android媒体播放框架MediaSessionCompat介绍实践