zoukankan      html  css  js  c++  java
  • 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()
  • 相关阅读:
    poj 1262 地板覆盖问题
    混合图 (Standard IO)
    matrix
    麻将 (Standard IO)
    C#多线程编程之:异步事件调用
    使用线程池与专用线程
    C#多线程编程之:Timer(定时器)使用示例
    C#多线程编程之:异步方法调用
    WCF 快速入门
    c#实现每隔一段时间执行代码(多线程)
  • 原文地址:https://www.cnblogs.com/xiaohai123/p/13586414.html
Copyright © 2011-2022 走看看