[gst-devel] dynamically linking ffenc??

Eric Zhang nicolas.m.zhang at gmail.com
Mon Dec 29 04:25:19 CET 2008


Hi, gstreamer-devel:

    OK. I think you can read the source code of decodebin for reference.
Decodebin add a "typefind" element in it and "typefind" will tell it what
the caps of the source media; Then, "find_compatibles" search in the element
registry and find out elements which are compatible with this caps; At last,
"try_to_link_1" loop through the elements which "find_compatibles" found and
try to link it with source.

    So, I think if you read the source codes of "gst_decode_bin_init",
"find_compatibles" and "try_to_link_1", you can figure out the way which
makes your work done. You can find these 3 functions in gstdecodebin.c.

Eric Zhang

2008/12/26 Jyoti D <jyoti.d at allaboutif.com>

> Thanks for the response Eric.
> Basically I want my application to act as an RTSP server. So I need to
> stream the media file contents as rtp packets. For this I encode the given
> stream into its native format, for eg. if my media file is of type Mpeg4
> then I want to encode it into Mpeg4 and then use the compatible RTP
> payloader element and stream it over the server.
>
> The client may be a VLC player which should play media file.
>
> So for this I need to dynamically find encoder and rtppayloader to stream
> media content of file on the server. I need help to dynamically link the
> compatible encoder and rtppayloader.
>
> Thanks,
> Jyoti
>
>
>
> On Thu, Dec 25, 2008 at 3:03 PM, Eric Zhang <nicolas.m.zhang at gmail.com>wrote:
>
>> Hi, gstreamer-devel:
>>
>>     1. Consider "decodebin" for demux & decode your media file
>> automatically.
>>
>>     2. You mentioned "encode this file into a perticular format", so why
>> you wanna find encoder & rtppayloader dynamically ? You should link your
>> specified encoder to decodebin then link rtppayloader, that's all.
>>
>> Eric Zhang
>>
>> 2008/12/24 Jyoti D <jyoti.d at allaboutif.com>
>>
>>>  Hi all,
>>>
>>> I am writing an application where I need to do the following:
>>> 1. read a media file from the disk
>>> 2. encode this file into a particular format
>>> 3. use the rtp payloaders to send the data on to the server
>>>
>>> To my understanding to use an encode I need to demux and then decode the
>>> file data
>>> to a raw format and then encode this data using the encoder and then
>>> payload the same using rtp payloaders.
>>>
>>> Now I want to find the encoder dynamically and link with the decoder.
>>> Similarly I also need to dynamically link the rtp payloaders.
>>>
>>> But I am not able to do it. Could anyone help me regarding the same.
>>>
>>> Thanks,
>>> Jyoti
>>>
>>>
>>> ------------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>>>
>>>
>>
>>
>> ------------------------------------------------------------------------------
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>>
>>
>
>
> ------------------------------------------------------------------------------
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20081229/39be2ba4/attachment.htm>


More information about the gstreamer-devel mailing list