Commit graph

3784 commits

Author SHA1 Message Date
Wim Taymans
0348ee66f1 mikey: fix return values of g_return_* 2014-03-25 11:14:51 +01:00
Wim Taymans
183e441d88 rtsptransport: UDP is also default for SAVP and AVPF 2014-03-25 11:07:34 +01:00
Wim Taymans
51ca0bdf7b docs: add MIKEY docs 2014-03-24 17:12:52 +01:00
Wim Taymans
83888d6b13 mikey: add MIKEY parsing helpers
MIKEY is defined in RFC 3830 and is used to exchange SRTP encryption
parameters between a sender and a receiver in a secure way.
This library implements a subset of the features, enough to implement
RFC 4567, using MIKEY in SDP and RTSP.
2014-03-24 17:12:52 +01:00
Ognyan Tonchev
d7857325c5 rtspconnection: Fix minor memory leaks in error handling
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726642
2014-03-24 12:45:14 +01:00
Ognyan Tonchev
e0af857445 rtspconnection: Fix connection_poll()
* Only check for conditions we are interested in.
* Makes no sense to specify G_IO_ERR and G_IO_HUP in condition, they
  will always be reported if they are true.
* Do not create timed source if timeout is NULL.
* Correctly wait for sources to be dispatched, context_iteration() is
  not guaranteed to always block even if set to do so.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726641
2014-03-24 12:43:38 +01:00
Wim Taymans
bf4079277d rtpbasepayload: add pt and ssrc to stats 2014-03-20 09:19:46 +01:00
Руслан Ижбулатов
d6bd37460a rtspconnection: Silence a compiler warning
Cast the argument into (const char *) on W32, as winsock2 expects it.

https://bugzilla.gnome.org/show_bug.cgi?id=726433
2014-03-16 11:22:04 +01:00
Göran Jönsson
0b30fdbfbe rtspconnection: gst_rtsp_watch_wait_backlog
New method that wait until there is room in backlog queue.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725898
2014-03-10 17:28:40 +01:00
David Svensson Fors
6cd0d10d30 rtspconnection: GstRTSPWatch func for tunnel GET response
Add a callback in GstRTSPWatch where the response to HTTP GET for
tunneled connections can be modified.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725878
2014-03-10 10:43:03 +01:00
Wim Taymans
4898c30537 rtspdefs: add RFC 4567 headers and status code
This new Header and status code is used for SRTP
2014-03-10 10:33:28 +01:00
Matthieu Bouron
a8951c16da video-overlay-composition: add GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION 2014-03-05 20:38:45 +01:00
Ognyan Tonchev
4220442441 rtspconnection: Call closed() when GET is closed in tunneled mode
This patch adds read source on the write socket in tunneled
mode and we get a callback when client disconnects the GET
channel.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725313
2014-03-03 10:34:56 +01:00
Sebastian Rasmussen
900c204eb9 videoformat: Remove duplicate/incorrect section
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521
2014-03-02 23:41:51 +00:00
Sebastian Rasmussen
35bb1b3328 docs: Add annotations for return values
Rephrase and clarify some return value descriptions

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521
2014-03-02 23:41:18 +00:00
Sebastian Rasmussen
5b4f2ba20b docs: Fix argument and annotation typos
* colorbalance: Fix misspelled annotation
 * rtsp: Replace incorrectly documented function argument
 * sdp: Escape @ character to avoid gtk-doc warning
 * video-*: Add missing annotation colon
 * videodecoder/video-color: Fix function argument typos
 * videoutils: Remove unknown annotation field

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521
2014-03-02 23:22:51 +00:00
Tim-Philipp Müller
14b82bbc9a rtsp: fix build with older GLib versions
The gio/gnetworking.h header is only available since glib 2.36

https://bugzilla.gnome.org/show_bug.cgi?id=725206
2014-02-26 11:44:18 +00:00
Ognyan Tonchev
5445682c6a rtspconnection: Add missing include
https://bugzilla.gnome.org/show_bug.cgi?id=725206
2014-02-26 11:25:13 +00:00
Sebastian Rasmussen
d6dc1b6c46 rtpbasepayload: Let caps event also configure seqnum-offset
Previously the sequence number kept track of by GstRTPBasePayload would
only be set when going from READY to PAUSED state. This meant that a
downstream element that attempted to configure a basepayloader by
setting seqnum-offset e.g. in its sinkpad's caps template would have
trouble configuring the basepayloader. The reason was that the caps
event which arrives with the desired value for seqnum-offset did not
arrive at the basepayloader until caps negotiation took place,
significantly later than the transition from READY to PAUSED.

The result after this patch is that the default value for the
seqnum-offset property, or later set values for this property, will take
effect when going from READY to PAUSED like before. In addition the an
arriving caps event will also affect the basepayloaders configured
sequence number as the event arrives.
2014-02-24 12:10:26 +01:00
Sebastian Rasmussen
638d069c91 rtpbasepayload: Fix payload type property boundary value
The payload type field in an RTP packet header is 7 bits wide, hence the
boundary values ought to be 0x00 and 0x7f, not the previously stated
values 0x00 and 0x80.
2014-02-24 12:10:26 +01:00
Sebastian Rasmussen
3cc67ff494 rtpbasedepayload: Fix typos in comments 2014-02-24 12:10:26 +01:00
Tim-Philipp Müller
6442e76e9f docs: add GstVideoPool to docs 2014-02-23 14:42:12 +00:00
Ognyan Tonchev
ebe3530f51 rtspconnection: Remove read child source when POST is disconnected
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724720
2014-02-21 16:21:45 +01:00
Aleix Conchillo Flaqué
0a115bd31f rtspconnection: allow specifying a certificate database
Two new functions have been added,
gst_rtsp_connection_set_tls_database() and
gst_rtsp_connection_get_tls_database(). The certificate database will be
used when a certificate can't be verified with the default database.

https://bugzilla.gnome.org/show_bug.cgi?id=724393
2014-02-19 21:48:13 +01:00
Aleix Conchillo Flaqué
9121b16aa0 rtspconnection: get rid of superfluous whitespaces 2014-02-19 21:22:30 +01:00
Nicolas Dufresne
6b77971097 video: Fix NV12_64Z32 default offset and size
This was a regression introduced by f52fd7a68, where we started using
the stride to encode the dimensions in tiles. This patch simply updates
offset and size calculation as described in the documentation,
part-mediatype-video-raw.txt.
2014-02-18 13:09:21 -05:00
Rafał Mużyło
5496d09eb4 audio: map channels=1,channel-mask=0 to MONO instead of NONE
Fixes problem in audioconvert, which would end up using
a mixmatrix when converting between different mono format
because it thinks MONO positioning is different from
unpositioned channels, which is not the case in this
special case. The mixmatrix would end up being 0.0 so
audioconvert would convert to silence samples.

https://bugzilla.gnome.org/show_bug.cgi?id=724509
2014-02-18 10:41:47 +00:00
Sebastian Dröge
bc92cd8f67 audiosrc: Fix typo in docs
We read *from* the audio device, not to it.
2014-02-09 11:28:48 +01:00
Eric Trousset
2ca256acdb tagdemux: Forward TIME seeks upstream too, maybe upstream can handle that
https://bugzilla.gnome.org/show_bug.cgi?id=723597
2014-02-04 13:56:29 +01:00
Stefan Sauer
76ec6d3760 docs: doc fixes for audio library
Add sections docs for audiometa. Fix sections docs for audiochannels. Remove old
mixerutil section.
2014-02-03 09:36:43 +01:00
Thiago Santos
e00dc5b879 audioencoder: push pending events and tags before EOS
if there are tags or events pending and an EOS is received, push those
events and tags before the EOS.
2014-01-29 12:33:59 -03:00
Thiago Santos
da54836a33 videoencoder: push tags and events before eos
if any tags or events are pending, push them before pushing eos
2014-01-29 12:33:59 -03:00
Sebastian Rasmussen
125b9c19c0 rtpbasepayload: Do cosmetic changes to rtptime calculations
* Change running time type to guint64
 * Use GST_CLOCK_TIME_NONE() to check for invalid timestamps
 * Name variables so ns-based and hz-based timestamps are evident

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383
2014-01-28 14:41:41 +01:00
Sebastian Rasmussen
0142cd5e35 rtpbasepayload: Expose running-time of payloaded stream
https://bugzilla.gnome.org/show_bug.cgi?id=719415
2014-01-28 14:41:41 +01:00
Sebastian Rasmussen
865a5d1c8f rtpbasepayload: Improve documentation for perfect-rtptime
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383
2014-01-28 14:41:41 +01:00
Sebastian Rasmussen
713dfe0d70 rtpbasepayload: Fix typos in documentation for properties
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719383
2014-01-28 14:41:41 +01:00
Sebastian Rasmussen
fa393e5d60 rtpbasepayload: Add statistics property
This property allows for an atomically retrieved set of properties that
can e.g. be used to generate RTP-Info headers.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719415
2014-01-27 15:11:09 +01:00
Wim Taymans
8ac3dbc4f3 video-chroma: don't crash on NULL resamplers
Make dummy resamplers for all cases and only execute the horizontal
resampler instead of crashing.

See https://bugzilla.gnome.org/show_bug.cgi?id=722742
2014-01-23 10:45:00 +01:00
Wim Taymans
6a88d6f8cd audiobasesink: make _get_time more threadsafe
We call the _get_time function from the provided clock and we don't lock
the sink object for performance reasons. Make sure we only read and
check variables once so that they don't change while we are executing
the code.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720661
2014-01-21 11:25:18 +01:00
Nicola Murino
26e3c92093 riff: Fix G726 caps creation
https://bugzilla.gnome.org/show_bug.cgi?id=720995
2014-01-19 10:34:57 +01:00
Tim-Philipp Müller
26a57f9a89 discoverer: minor docs fix
Can use a custom main context as well if needed.
2014-01-18 15:01:58 +00:00
Sebastian Dröge
87829debe4 videodecoder: Add API to get the currently pending frame size for parsing
https://bugzilla.gnome.org/show_bug.cgi?id=719890
2014-01-18 13:54:22 +01:00
Thiago Santos
47f720a8f0 videodecoder: plug leak when frames are released on subclass stop
They end up stored in the 'pending_events' list and should be
freed after calling stop
2014-01-17 11:21:33 -03:00
Thiago Santos
695ddbd56f audiodecoder: copy rate and channels from input before fixating output caps
For default caps generation when handling gap events that are sent
before any buffer, try to use caps that are closer to what upstream
provided to avoid fixating rate or channels to 1 as default.

So there are the steps:
1) Try to set rate, channels and channel-mask from upstream if provided
2) Fixate the rate and channels to the default rate and channels from
   audio lib
3) Fixate the caps just to be sure everything is fixed
4) If no channel-mask was provided and channels > 2, use a default
   channel-mask (taken from audioconvert code)

https://bugzilla.gnome.org/show_bug.cgi?id=722144
2014-01-15 15:20:39 -03:00
Thiago Santos
95a56dbda7 audiodecoder: avoid parsing caps event if it is not used
Saves some cpu
2014-01-14 09:34:44 -03:00
Thiago Santos
8cf8332b91 audiodecoder: make sure caps is set before forwarding gap event
Before trying to generate a default fixated caps when handling a gap
event, make sure that the same strategy that is used when handling
a buffer has been attempted. Otherwise audiodecoder will ignore
upstream caps settings such as rate and channels and will likely
end with a caps with channels=1 and rate=1.

https://bugzilla.gnome.org/show_bug.cgi?id=722144
2014-01-14 09:34:44 -03:00
Sebastian Dröge
335e6e888d videoverlay: Don't mention gconf elements and add a sentence about playbin/playsink
playbin/playsink now implement the video overlay interface
2014-01-14 13:20:48 +01:00
Wim Taymans
ecac298e4e videodecoder: only copy chroma_site when known
Only overwrite the chroma-site if we have a valid value in the reference
format.
2014-01-13 17:24:01 +01:00
Wim Taymans
fba783a5fe videoutils: add some debug 2014-01-13 17:24:01 +01:00
Nicolas Dufresne
595bcfb4d7 video: Generate types for tile enumeration
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:47:23 -05:00