Python 简单使用QMediaPlayer,QSoundEffect,QAudioOutput
Published on 2020-08-30 19:52 in 分类: Qt , python with 萧海~
分类: Qt , python

Python 简单使用QMediaPlayer,QSoundEffect,QAudioOutput

    Python 简单使用QMediaPlayer,QSoundEffect,QAudioOutput

    from PyQt5 import QtCore, QtMultimedia, QtGui
    import PyQt5

    (1)适合于mp4,mp3
    if __name__=="__main__":
    app = PyQt5.QtWidgets.QApplication(sys.argv)
    url = PyQt5.QtCore.QUrl.fromLocalFile("yourfilepath")
    content = PyQt5.QtMultimedia.QMediaContent(url)
    player = PyQt5.QtMultimedia.QMediaPlayer()
    player.setMedia(content)
    player.play()
    sys.exit(app.exec())
    (2)适合于wav
    if __name__=="__main__":

    effect = QtMultimedia.QSoundEffect()
    effect.setSource(QUrl.fromLocalFile("./radio/7571.wav"))
    effect.setLoopCount(1)
       effect.setVolume(1)
    # effect.setLoopCount(QtMultimedia.QSoundEffect.Infinite)#无限循环
      effect.play()
    setVolume()方法可以设置播放音频时的音量大小,参数为浮点型数值。1.0代表全音量播放,0.0代表静音;播放为 play(),停止为stop()。
    (3)适合于播放PCM音频(裸流)文件,最强大的方式
    if __name__=="__main__":
    app = PyQt5.QtWidgets.QApplication(sys.argv)
    format = PyQt5.QtMultimedia.QAudioFormat()
    format.setChannelCount(1)
    format.setSampleRate(1000)
    format.setSampleSize(8)
    format.setCodec("audio/pcm")
    format.setByteOrder(QtMultimedia.QAudioFormat.LittleEndian)
    format.setSampleType(QtMultimedia.QAudioFormat.UnSignedInt)
    output = PyQt5.QtMultimedia.QAudioOutput(format)
    rfile = PyQt5.QtCore.QFile()
    rfile.setFileName("../test/19147_160913105347.adpcm")
    rfile.open(PyQt5.QtCore.QIODevice.ReadOnly)
    output.start(rfile)
    app.exec()
    posted @   萧海~  阅读(1755)  评论(0编辑  收藏  举报
    编辑推荐:
    · 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
    · AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
    · 基于Microsoft.Extensions.AI核心库实现RAG应用
    · Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
    · 开发者必知的日志记录最佳实践
    阅读排行:
    · winform 绘制太阳,地球,月球 运作规律
    · AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
    · 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
    · 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
    · 上周热点回顾(3.3-3.9)
    点击右上角即可分享
    微信分享提示
    电磁波切换