Windows Gstreamer的ALSA替代品?
有没有人知道在Windows上可以用的ALSA替代品,能和gstreamer一起使用?还有怎么安装它,如果需要的话,在哪里能找到它的Python绑定?谢谢!xxx
4 个回答
0
看起来在Windows系统上,SDK安装程序并没有把绑定文件安装到Python解释器能看到的地方。你可以在 sdk\bindings\python\v2.6\lib\site-packages
找到这些文件。把这个文件夹里的内容复制到你Python安装目录下的 site-packages
文件夹里,这样你就可以导入这个库了。
1
不确定这个问题现在是否还适用,但我今天遇到了完全一样的问题。我通过使用“autoaudiosink”解决了这个问题。
这样,我在下面的网站上找到了一个简单的例子,并且在Windows XP上成功运行了它。
http://www.jonobacon.org/2006/08/28/getting-started-with-gstreamer-with-python/
这是我修改后的代码版本(基本上和原来的代码一样,只是替换了alsasink)。
#!/usr/bin/python
import pygst
pygst.require("0.10")
import gst
import pygtk
import gtk
class Main:
def __init__(self):
self.pipeline = gst.Pipeline("mypipeline")
self.audiotestsrc = gst.element_factory_make("audiotestsrc", "audio")
self.pipeline.add(self.audiotestsrc)
self.sink = gst.element_factory_make("autoaudiosink", "sink")
self.pipeline.add(self.sink)
self.audiotestsrc.link(self.sink)
self.pipeline.set_state(gst.STATE_PLAYING)
start=Main()
gtk.main()
希望这对你有帮助。
3
SDL在不同平台上处理声音的方式做得还不错,它能让你不必担心具体的操作系统。PyGame是一个使用了SDL的库,可以在很多平台上运行。虽然这种抽象方式有一些限制,但也许对你来说还是够用的。
改编自一条评论。