我记得我看过这个问题,建立别的音频通道利用双通道应该是可以的,但我现在就想玩骚的,就硬要节选播放:
[RenPy] 纯文本查看 复制代码 init python:
def play_music(filename, channel='music', start=0, end=-1):
c = renpy.audio.audio.get_channel(channel)
file = renpy.audio.audio.load(filename)
_filename = renpy.audio.audio.AudioData(b'...', filename)
renpy.audio.renpysound.play(c.get_number(), file, _filename, start=start, end=end)
label start:
# 分段演示
$ play_music('audio/preview.ogg')
'next stop music and get pos'
$ pos = renpy.music.get_pos()
$ renpy.music.stop()
'pos: [pos]'
'next start music from the pos'
$ play_music('audio/preview.ogg', start=pos)
'stop'
$ renpy.music.stop()
# 连起来!
$ play_music('audio/preview.ogg')
'next get pos, stop old and start new'
$ pos = renpy.music.get_pos()
$ renpy.music.stop()
$ play_music('audio/preview.ogg', start=pos)
'pos: [pos]'
当然其实就是文档里play music "<from 5 to 15.5>waves.opus" 这种用法,不过可能你对字符串和浮点数的处理出了问题导致出错
我这里就是调用了renpysound里的方法,里面的参数有说明有能力可以自己去找找,但很奇怪官网并没有文档,而且节选播放这个功能也没有等价python函数调用法,所以这里就是现写了一个等价python方法,这样自由度高一点也不容易出错 |