[英]QAudioOutput strange peak sound at beginning in PyQt4
這是一個普遍的問題:如何消除聲音開始時的峰值聲音? 這是完整的代碼,因此您可以嘗試一下。 進行比較:如果我使用QSound播放相同的聲音,則不會產生峰值噪聲。 但是我不能使用QSound,因為它在Ubuntu上不起作用。
如果我在VLC之類的播放器中播放聲音,一開始就沒有噪音。 聲音如下: http : //www.file-upload.net/download-7876205/delete_2.wav.html
import struct, sys, time
from PyQt4.QtCore import QIODevice, Qt, QFile
from PyQt4.QtGui import QApplication, QWidget
from PyQt4.QtMultimedia import QAudio, QAudioDeviceInfo, QAudioFormat, QAudioOutput
class Window(QWidget):
def __init__(self, parent = None):
QWidget.__init__(self, parent)
format = QAudioFormat()
format.setChannels(1)
format.setFrequency(48000)
format.setSampleSize(16)
#format.setCodec("audio/pcm")
format.setCodec("audio/wav")
format.setByteOrder(QAudioFormat.LittleEndian)
format.setSampleType(QAudioFormat.SignedInt)
self.output = QAudioOutput(format, self)
self.file=QFile()
self.file.setFileName("C:\\delete_2.wav")
self.file.open(QIODevice.ReadOnly)
self.output.start(self.file)
#self.file.close()
if __name__ == "__main__":
app = QApplication(sys.argv)
window = Window()
#window.show()
sys.exit(app.exec_())
self.file.seek(44)
是跳過文件頭,但是44不是固定大小。 之后是音頻數據
嗯,如果有
self.file.seek(44)
后
self.file.open(...)
這種“尋求”是為了什么? 在一小段中找到它並很高興它能起作用,但是我想了解背景!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.