如何解决想要通过python绑定使用Gstreamer流mp4
import gi
gi.require_version('Gst','1.0')
gi.require_version('GstRtspServer','1.0')
from gi.repository import Gst,GObject,GstRtspServer
loop = GObject.MainLoop()
GObject.threads_init()
Gst.init(None)
class RTSP_Server:
def __init__(self): # 初期化を実行
self.server = GstRtspServer.RTSPServer()
self.address = 'localhost' # アドレスを指定
self.port = '8554' # ポートを指定
#self.launch_description = '( playbin uri=file:///mnt\\c\\users\\user\\videos\\test.mp4 )'# 再生したい動画のディレクトリを指定
self.launch_description = '( filesrc location = C:\\users\\user\\videos\\test.mp4 ! decodebin ! x264enc ! rtph264pay name=pay0 pt=96 )'
# ここから先がいまいち流れがわかってないですがテストプログラム同じようなことをしている
self.server.set_address(self.address)
self.server.set_service(self.port)
self.server.connect("client-connected",self.client_connected)
self.factory = GstRtspServer.RTSPMediaFactory.new()#
self.factory.set_launch(self.launch_description)
self.factory.set_shared(True)#
#self.factory.set_transport_mode(GstRtspServer.RTSPTransportMode.PLAY)
self.mount_points = self.server.get_mount_points()#
self.mount_points.add_factory("/video",self.factory)#
self.server.attach(None)
print('Stream ready') # サーバー準備完了...?
def client_connected(self,arg1,arg2):# ここもわからず
print('Client connected') # クライアントが(何者かが接続したとき出力...?)
if __name__ == '__main__':
server = RTSP_Server()
loop.run()
我的代码运行不正常... 也许,管道配置会引起问题。
https://github.com/tamaggo/gstreamer-examples 我在git中找到了这段代码,但无法解决我的问题。
所以,请帮助我...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。