Receive RTSP stream without decoding - flumotion

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Receive RTSP stream without decoding - flumotion

Hossam Khankan
rtsp-producer is a component in flumotion Streaming Server (built on gstreamer) which recives RTSP stream, decode it and serves decoded audio and video to the next component in the flow.
I want to modify this component to skip decoding; I just want to recive RTSP stream and expose the encoded A/V (audio:aac/video:h264) to the next component (which will mux them useing mp4mux before serving them through http-streamer to HTML5 webpage)
This is the RTSP component code file (rtsp.py) which generates the pipeline:

class Rtsp(feedcomponent.ParseLaunchComponent):

    def get_pipeline_string(self, properties):
        width = properties.get('width', 0)
        height = properties.get('height', 0)
        location = properties.get('location')
        framerate = properties.get('framerate', (25, 2))
        has_audio = properties.get('has-audio', True)
        if width > 0 and height > 0:
            scaling_template = (" videoscale method=1 ! "
                "video/x-raw-yuv,width=%d,height=%d !" % (width, height))
        else:
            scaling_template = ""
        if has_audio:
            audio_template = "d. ! queue ! audioconvert ! audio/x-raw-int"
        else:
            audio_template = "fakesrc silent=true ! audio/x-raw-int"
        return ("rtspsrc name=src location=%s ! decodebin name=d ! queue "
                " ! %s ffmpegcolorspace ! video/x-raw-yuv "
                " ! videorate ! video/x-raw-yuv,framerate=%d/%d ! "
                " @feeder:video@ %s ! @feeder:audio@"
                % (location, scaling_template, framerate[0],
                   framerate[1], audio_template))

How do I modify this to achieve my goal ?

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel