Commit graph

33 commits

Author SHA1 Message Date
Sebastian Dröge
446315b36c rtsp-media: Try to get dynamic payloaders by name from their bin first
First try "pay", then "pay_%s" (where %s == pad name). And only then
fall back to the code that simply takes the first payloader that is
found.

The current code usually works (but is racy) because it will always take
the payloader that was last added (due to g_list_prepend() when adding
elements) in pad-added and that's usually the correct one. But if a new
payloader is added between pad-added and us trying to get it, we would
get the wrong payloader.
2019-07-22 19:44:28 +03:00
Tim-Philipp Müller
62d4c0b179 libs: fix API export/import and 'inconsistent linkage' on MSVC
Export rtsp-server library API in headers when we're building the
library itself, otherwise import the API from the headers.

This fixes linker warnings on Windows when building with MSVC.

Fix up some missing config.h includes when building the lib which
is needed to get the export api define from config.h

https://bugzilla.gnome.org/show_bug.cgi?id=797185
2018-09-24 09:36:21 +01:00
Tim-Philipp Müller
2eb4d1b810 Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 12:48:11 +02:00
Sebastian Dröge
3d21e8d4c8 rtsp-media-factory-uri: Fix compilation with latest GLib
rtsp-media-factory-uri.c: In function ‘rtsp_media_factory_uri_create_element’:
rtsp-media-factory-uri.c:621:17: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types]
   data->factory = g_object_ref (factory);
                 ^
2018-03-20 16:21:37 +02:00
Sebastian Rasmussen
b1b5301577 gobject-introspection: Add annotations to support language bindings
In addition a few cosmetic changes:

 * Adjust the order of arguments
 * Fix typo: occured -> occurred
 * Fix indentation after Return:-clauses

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726941
2014-03-24 00:36:42 +00:00
Tim-Philipp Müller
3766914a18 rtsp-media-factory-uri: check AAC properly for whether it's parsed or not
For AAC we need to check for framed=true instead of parsed=true.

https://bugzilla.gnome.org/show_bug.cgi?id=701384
2013-08-22 18:39:59 +01:00
Wim Taymans
0b3644a21b docs: improve docs 2013-07-11 16:57:14 +02:00
Olivier Crête
b9d111372e Document locking and its order 2013-03-11 11:07:19 +01:00
Alessandro Decina
e2a7690cb3 Add missing g_type_class_add_private in GstRTSPMediaFactoryURI 2012-11-30 06:14:49 +01:00
Wim Taymans
ad00c5e792 rtsp: make object details private
Make all object details private
Add methods to access private bits
2012-11-29 11:11:05 +01:00
Wim Taymans
d43a31055e rtsp: use gst_object_unref on GstObjects 2012-11-28 12:10:47 +01:00
Wim Taymans
8fcdca987d factory-uri: add some debug 2012-11-20 12:29:26 +01:00
Wim Taymans
8211cdfdc2 factory-uri: take ref to factory
Take a ref to the factory that we place in our list.
2012-11-20 12:10:16 +01:00
Tim-Philipp Müller
0006ca6d60 rtsp-server: don't use deprecated API 2012-11-17 00:11:27 +00:00
Tim-Philipp Müller
4dba434f16 Fix FSF address 2012-11-04 00:14:25 +00:00
Wim Taymans
de7c72dec2 rtsp: massive refactoring
Make GObjects from the remaining simple structures.
Remove GstRTSPSessionStream, it's not needed.
Rename GstRTSPMediaStream -> GstRTSPStream: It is shorter
Rename GstRTSPMediaTrans -> GstRTSPStreamTransport: It describes how
  a GstRTSPStream should be transported to a client.
Rename GstRTSPMediaFactory::get_element -> create_element because that
  more accurately describes what it does.
Make nice methods instead of poking in the structures.
Move some methods inside the relevant object source code.
Use GPtrArray to store objects instead of plain arrays, it is more
  natural and allows us to more easily clean up.
Move the allocation of udp ports to the Stream object. The Stream object
  contains the elements needed to stream the media to a client.
Improve the prepare and unprepare methods. Unprepare should now undo
  everything prepare did. Improve also async unprepare when doing EOS on
  shutdown. Make sure we always unprepare correctly.
2012-10-25 21:29:58 +02:00
Sebastian Pölsterl
e11e855ac8 rtsp-server: fixed comments and GIR annotations
https://bugzilla.gnome.org/show_bug.cgi?id=680777
2012-10-18 19:17:01 +01:00
Alessandro Decina
3a49b8e783 rtsp-media-factory-uri: don't autoplug parsers in a loop
Stop autoplugging parsers if caps have parsed=true set. Fixes autoplugging
h264parse forever.
2012-10-15 10:50:26 +02:00
David Svensson Fors
ffa3166fbd rtsp: fix compiler warnings
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676500
2012-05-22 15:37:25 +02:00
Wim Taymans
6403227471 factory: use videoconvert 2012-03-13 16:07:16 +01:00
Wim Taymans
377f6d9156 factory: change to new style caps 2012-03-13 16:02:47 +01:00
Wim Taymans
4c59e211e2 rtsp-server: port to GIO
Port to GIO
2012-03-07 15:04:29 +01:00
Wim Taymans
fde25cd9c3 rtsp-server: port some more to 0.11
Fix caps.
Remove bufferlist stuff
Update for new API.
Add queue before appsink now that preroll-queue-len is gone.
Update for request pad changes.
2011-12-09 10:53:30 +01:00
Edward Hervey
597a99e9b9 rtsp-media-factory-uri: GST_PLUGIN_FEATURE_NAME is no longer 2011-06-07 10:59:16 +02:00
Wim Taymans
80e0b0b19a media: port to new caps API 2011-05-17 09:48:13 +02:00
Wim Taymans
9e97faf2db server: improve debugging in various objects 2011-01-12 18:14:48 +01:00
Wim Taymans
186089ff1e factory-uri: use right property type 2011-01-07 11:24:39 +01:00
Wim Taymans
257bac1bab factory-uri: attempt to configure buffer-lists
Attempt to configure buffer lists in the payloader for improved performance.
2011-01-05 12:07:42 +01:00
Wim Taymans
50a71b9d86 factory-uri: add support for gstpay
Add an option to prefer gstpay over decoder + raw payloader.
2010-12-23 18:53:01 +01:00
Wim Taymans
9ce4ea165b factory-uri: rework the autoplugger.
Rewrite the autoplugger a little so that it prefers to plug demuxers and parsers
before payloaders.
2010-12-23 15:58:14 +01:00
Wim Taymans
1053860112 factory-uri: use better factory filter
Make better payloader filter based on autoplug rank and RTP use case.
2010-12-21 17:39:09 +01:00
Wim Taymans
d99a448f79 factory-uri: add colorspace and fix pt
Rework the way we pass data to the autoplugger.
When we have raw caps, plug a converter element to make pluggin to raw
payloaders more successful.
Make sure all dynamically plugged payloaders have a unique payload types.
2010-12-12 04:06:41 +01:00
Wim Taymans
7ef0bf98da factory-uri: add a factory to stream any URI
Make a factory that uses uridecodebin to decode any uri and autoplug a payloader
when we have one.
2010-12-11 18:04:34 +01:00