Using AppSrc with RTSP Server

Chuck Crisler ccrisler at mutualink.net
Tue Aug 6 15:09:30 PDT 2013


If you look into rtsp-media-factory.c in the default-construct method you
will find the following:

  g_mutex_lock (factory->medias_lock);
  if (key) {
    /* we have a key, see if we find a cached media */
    media = g_hash_table_lookup (factory->medias, key);
    if (media)
      g_object_ref (media);
  }

This shows you how to get the media object from a URL. You can look at the
code to see how the hash table is built and maintained and work your code
from there.


On Tue, Aug 6, 2013 at 7:39 AM, Dexter Metzger <dexter.metzger at gmail.com>wrote:

> Thanks for the response. But it's not clear to me how I can obtain the
> RTSP Media object. The only function I can find that returns an object of
> that type is "gst_rtsp_media_factory_construct". However, the documentation
> of this function is vague and it takes a URL object (which I don't see in
> any of the examples I've been following) as a parameter. Is there another
> function or object I'm missing? If not, would you (or someone) be able to
> explain the use of gst_rtsp_media_factory_construct to me?
>
>
> On Mon, Aug 5, 2013 at 5:12 PM, Chuck Crisler <ccrisler at mutualink.net>wrote:
>
>> There isn't anything special about an RTSP server pipeline. It is just a
>> pipeline. The RTSP Media object has a pipeline pointer. You can access that
>> object and iterate the pipeline elements and do anything you want to do,
>> just like a any other pipeline. Just remember that the pipeline you specify
>> is wrapped by a gstrtpbin object.
>>
>>
>> On Mon, Aug 5, 2013 at 4:46 PM, Dexter Metzger <dexter.metzger at gmail.com>wrote:
>>
>>> Does anyone have any examples on using AppSrc with rtsp-server? This
>>> question has been asked multiple times in the past, but has never been
>>> answered. I'm unable to find any documentation describing how it can be
>>> done.
>>>
>>> The problem with RTSP server is that it envelops the pipeline,
>>> restricting access to the elements. This prevents a developer from making
>>> calls on the "appsrc" element. I found one post that describes a partial
>>> solution (
>>> http://lists.freedesktop.org/archives/gstreamer-devel/2012-November/037854.html)
>>> but it lacks a complete implementation and I'm not able to get a program
>>> working using its concepts.
>>>
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130806/38a86ce7/attachment.html>


More information about the gstreamer-devel mailing list