我正在尝试使用此网站上的CLI示例播放一些音频文件:
http://pygstdocs.berlios.de/pygst-tutorial/playbin.html http://pygstdocs.berlios.de/pygst-tutorial/playbin.html
我在Windows上,在阅读文件时出错。我指定了 以下路径:
$ python cliplayer.py C:\\voice.mp3
0:00:00.125000000 3788 009DA010 ERROR basesrc
gstbasesrc.c:2834:gst_base_src_activate_pull:<source> Failed to start in
pull mode
Error: Could not open resource for reading.
..\..\..\Source\gst-plugins-base\ext\gio\gstgiosrc.c(324):
gst_gio_src_get_stream ():
/GstPlayBin2:player/GstURIDecodeBin:uridecodebin0/GstGioSrc:source:
Could not open location file:///C:/file:/C:/voice.mp3 for reading: Error
opening file: Invalid argument
我应该如何在Windows上指定文件路径?
另外,在这行代码中我需要做些什么特别的事情吗?
self.player.set_property("uri", "file://" + filepath)
谢谢!
答案 0 :(得分:9)
正如您可能怀疑的那样,这段代码编写得很糟糕:
for filepath in sys.argv[1:]:
# ...
self.player.set_property("uri", "file://" + filepath)
使用类似的东西:
'file:' + urllib.pathname2url(filepath)
和(在命令行中)以正常的Windows表示法指定文件路径,例如C:\a\b.mp3
。
答案 1 :(得分:4)
您是否注意到您的实际路径是file:///C:/file:/C:/voice.mp3
?
正确的路径应为:file:///C:/path/to/voice.mp3
。