用PyQT4和Phonon交叉淡化音频
我正在尝试让音频文件在播放时进行交叉淡入淡出,使用的是phonon库和PyQT4框架。我已经能够正确地排队播放音轨,但在淡入淡出效果上遇到了困难。我觉得我需要使用KVolumeFader这个效果。以下是我现在的代码:
def music_play(self):
self.delayedInit()
self.m_media.setCurrentSource(Phonon.MediaSource(self.playlist[self.playlist_pos]))
self.m_media.play()
def music_stop(self):
self.m_media.stop()
def delayedInit(self):
if not self.m_media:
self.m_media = Phonon.MediaObject(self)
audioOutput = Phonon.AudioOutput(Phonon.MusicCategory, self)
Phonon.createPath(self.m_media, audioOutput)
def enqueueNextSource(self):
if len(self.playlist) >= self.playlist_pos+1:
self.playlist_pos += 1
self.m_media.enqueue(Phonon.MediaSource(self.playlist[self.playlist_pos]))
else:
self.m_media.stop()
有没有人能给我一些关于如何实现这个效果的建议呢?
1 个回答
2
看起来我找到了我想要的解决办法。虽然并不是所有的phonon后端都支持这个功能,但如果把MediaObject的transitionTime设置为一个负数,就可以实现渐变效果。