当我尝试用"#"播放本地文件时在我的Linux机器上的文件名中,它显示:
Error: message about my installation of GStreamer missing plugin /var/tmp/portage/media-libs/gst-plugins-base-0.10.36-r1/work/gst-plugins-base-0.10.36/gst/playback/gstplaybasebin.c(1686): gen_source_element (): /GstPlayBin:player:
No URI handler for file
我用它来设置URI:
self.player.set_property('uri', 'file://' + filepath)
其中filepath是绝对路径,例如MP3文件" / home / me /无标题#1.mp3"
是否有某种逃避或解决方法?
答案 0 :(得分:0)
filepath
应该引用网址。
使用urllib.parse.quote()
(Python 3)或urllib.quote()
(Python 2)
这就是我使用的(Python 3),它也适用于Windows:
def file_to_uri(filename):
filepath = os.path.abspath(filename)
drive, filepath = os.path.splitdrive(filepath)
filepath = urllib.parse.quote(filepath.replace(os.sep, '/'))
return 'file://%s%s' % (drive, filepath)