Guillaume Desmottes
4be99ec7d5
rtph264pay: propagate the GST_BUFFER_FLAG_DELTA_UNIT flag
...
Downstream elements may be interested knowing if a RTP packet is the start
of a key frame (to implement a RTP extension as defined in the
ONVIF Streaming Spec for example).
We do this by checking the GST_BUFFER_FLAG_DELTA_UNIT flag we receive from
upstream and propagate it to the *first* RTP packet outputted to transfer this
buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=730563
2014-06-19 12:22:38 +02:00
Tim-Philipp Müller
01ee993d8d
rtph264pay: pre-allocate bufferlist of the right size
...
To avoid unnecessary re-allocs.
2014-06-18 14:54:58 +01:00
Tim-Philipp Müller
c7c72c00b1
rtph264pay: push single buffer directly, no need to wrap it in a bufferlist
...
No point in a buffer list if we just have one single
buffer to push. Fix up unit test to handle that case
as well.
2014-06-18 14:54:58 +01:00
Göran Jönsson
80967c7638
gstrtph264pay: Reset sps pps variable when state change.
...
Reset last_spspps and sps/pps arrays when state transition
GST_STATE_CHANGE_PAUSED_TO_READY.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726015
2014-04-21 12:07:20 +02:00
Göran Jönsson
53ffd9e1ca
rtph264pay: only update last_spspps time if all sps/pps got sent successfully
...
This fixes an issue with gst-rtsp-server where no sps and pps are
sent for the first intra frame, because the payloader starts working
already when receiving DESCRIBE but there is no transports so it tries
to send sps and pps, but that fails with a FLUSHING flow. But the time
for last sent sps and pps would still be set, so when PLAY arrives and
the first intra frame is to be sent there is no sps and pps sent due to
that time since last sps pps is less than spspps_interval.
https://bugzilla.gnome.org/show_bug.cgi?id=724213
2014-02-25 10:48:24 +00:00
Jonas Holmberg
0ab0421759
rtph264pay: Map inbuffer once only
...
Do not call gst_buffer_extract() twice since each call will map and
unmap the biffer.
https://bugzilla.gnome.org/show_bug.cgi?id=719434
2013-11-28 16:08:40 -05:00
Paul HENRYS
8eceb8f327
Add call to gst_rtp_h264_pay_clear_sps_pps() when receiving a STREAM_START event
...
https://bugzilla.gnome.org/show_bug.cgi?id=692787
2013-11-04 14:36:28 -05:00
Olivier Crête
4c6e636720
rtph264pay: Use the SPS/PPS handling function from the depayloader
...
Remove duplicated copies
https://bugzilla.gnome.org/show_bug.cgi?id=705553
2013-08-13 10:38:23 -04:00
David Svensson Fors
692206d3a7
rtph264pay: avoid double buffer unmap on error
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=703171
2013-06-27 17:14:11 +02:00
Wim Taymans
1f0600ee6f
Revert "rtph264pay: Restructuring to allow for adding optional caps"
...
This reverts commit 61666898cf
.
This commit changes what the set_sps_pps() function does, not it doesn't
set caps anymore (and should have been renamed). The main problem is that
not all call sites are updated and thus leak the string.
2013-05-31 15:18:48 +02:00
Wim Taymans
1516c14881
Revert "rtph264pay/depay: Add frame dimensions a payloaded caps"
...
This reverts commit 3dca756a5d
.
The H264 RTP spec has no attributes for width and height.
2013-05-31 15:11:12 +02:00
Wim Taymans
b79d217396
Revert "rtph264pay/depay: Add optional framerate caps for use in SDP"
...
This reverts commit d8825e2a5c
.
There is no framerate attribute in the h264 RTP spec.
2013-05-31 15:09:51 +02:00
Sebastian Rasmussen
d8825e2a5c
rtph264pay/depay: Add optional framerate caps for use in SDP
...
This allows for applications to format SDP attributes and still do SDP
offer/answer based on caps negotiation.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=700749
2013-05-23 21:04:17 +02:00
Sebastian Rasmussen
3dca756a5d
rtph264pay/depay: Add frame dimensions a payloaded caps
...
This allows for applications to format SDP attributes and still do SDP
offer/answer based on caps negotiation.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=700749
2013-05-23 21:04:11 +02:00
Sebastian Rasmussen
61666898cf
rtph264pay: Restructuring to allow for adding optional caps
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=700749
2013-05-23 21:04:00 +02:00
Sebastian Dröge
ae05ed4f05
rtph264pay: If the adapter is empty on EOS don't try to map its content
...
https://bugzilla.gnome.org/show_bug.cgi?id=699314
2013-05-01 15:49:45 +02:00
Ognyan Tonchev
3f8ad30cee
rtph264pay: Don't use upstream caps with peer_query_caps ()
...
Calling gst_pad_peer_query_caps () on the src pad with the caps
upstream can produce as a filter from gst_rtp_h264_pay_getcaps ()
is wrong and makes caps negotiation fail if upstream caps are not
NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=695629
2013-03-11 16:55:13 -04:00
Tim-Philipp Müller
230cf41cc9
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Patricia Muscalu
7a863e4d8d
rtph264pay: do not push unmapped data
...
Also do not use a GstBuffer after it has been pushed into the adapter.
https://bugzilla.gnome.org/show_bug.cgi?id=685213
2012-10-04 09:22:50 +01:00
Olivier Crête
bc252d29ee
rtph264pay: Make sure the caps don't have duplicated sps/pps
2012-09-21 17:36:12 -04:00
Mark Nauwelaerts
fa90dfc4df
rtph264pay: avoid crashing on NULL access in debug message
2012-09-07 15:25:52 +02:00
Olivier Crête
264bcf7d6f
rtph264pay: Make it actually work after cleanups
2012-08-08 19:49:05 -07:00
Patricia Muscalu
d38ac43a27
rtph264pay: use buffer lists
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679994
2012-07-17 10:10:14 +02:00
Tim-Philipp Müller
c6224443a4
rtph264pay: avoid some relocations
2012-07-06 19:11:02 +01:00
Tim-Philipp Müller
cffbf8cfc3
rtph264pay: remove deprecated and non-functional "profile-level-id" property
...
This is now optionally taken from downstream caps, so can be
specified via a capsfilter after the payloader.
2012-07-06 14:46:22 +01:00
Wim Taymans
6d158775bb
rtph264pay: cleanups
...
Use the caps properties for alignment and format.
Remove some old properties, we always want to use bufferlists when we can now.
2012-06-28 12:00:09 +02:00
Wim Taymans
429bda6923
h264pay: prefer AVC, it's easier to parse etc
2012-06-28 11:32:03 +02:00
Luis de Bethencourt
c81fff0471
rtp: fix build issue in gstrtph264pay.c
2012-05-24 09:29:25 +01:00
Jonas Holmberg
7bf3a1bf95
rtph264pay: Add unrestricted caps
...
If there are no profile restrictions downstream, return caps with
profile=constrained-baseline in the first structure and append
unrestricted caps as the last structure.
Fixes bug #672019
2012-05-24 10:01:19 +02:00
Tim-Philipp Müller
e09ae5736d
Use new gst_element_class_set_static_metadata()
2012-04-10 00:51:41 +01:00
Mark Nauwelaerts
e5ab3cc0a0
rtph264pay: ensure output caps are set when pushing output data
...
... even if some SPS/PPS has not passed by yet.
2012-03-26 18:38:34 +02:00
Wim Taymans
d65de434f5
rtph264pay: do DTS and PTS correctly
2012-03-13 18:07:18 +01:00
Wim Taymans
a32d944a38
fix for caps api changes
2012-03-11 19:06:37 +01:00
Olivier Crête
18899cf94d
rtph264pay: Force baseline is profile-level-id is unspecified
2012-02-21 10:51:43 +01:00
Wim Taymans
225e98d623
Merge branch 'master' into 0.11
...
Conflicts:
ext/flac/gstflacenc.c
ext/jack/gstjackaudioclient.c
ext/jack/gstjackaudiosink.c
ext/jack/gstjackaudiosrc.c
ext/pulse/plugin.c
ext/shout2/gstshout2.c
gst/matroska/matroska-mux.c
gst/rtp/gstrtph264pay.c
2012-02-10 16:23:14 +01:00
Tim-Philipp Müller
5b25f3737b
rtph264pay: add stream-format and alignment to h264 sink caps
...
We're happy to accept both byte-stream and avc, advertise
that on the sink caps and fix up _get_caps() function to
not just return "video/x-h264".
https://bugzilla.gnome.org/show_bug.cgi?id=606662
2012-02-10 14:08:55 +00:00
Wim Taymans
583d39dd8d
update for new memory API
2012-01-25 12:30:28 +01:00
Vincent Penquerc'h
c0e101e93f
various: fix pad template leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:30:27 +00:00
Matej Knopp
1e5dd9e315
Fix printf format compiler warnings on OS X / 64bit
...
https://bugzilla.gnome.org/show_bug.cgi?id=662615
2011-11-22 01:28:22 +00:00
Wim Taymans
797523efbd
_peer_get_caps() -> _peer_query_caps()
2011-11-15 18:04:44 +01:00
Wim Taymans
75dc9634eb
change getcaps to query
...
Chain up event function in payloaders.
2011-11-15 18:04:44 +01:00
Wim Taymans
249d0083cc
update for base class rename
2011-11-11 12:25:01 +01:00
Wim Taymans
7e12b58e37
update for adapter api changes
2011-11-10 18:32:58 +01:00
Wim Taymans
fbaf216d25
update for changed base classes
2011-11-10 17:23:47 +01:00
Wim Taymans
9a8a8e72c8
structure: fix for api update
2011-11-02 09:06:37 +01:00
Wim Taymans
9c14280b1d
make some more things compile again
2011-10-27 19:00:52 +02:00
Wim Taymans
fc4684f4c6
fix compilation
2011-10-27 16:03:17 +02:00
Wim Taymans
4121021bb2
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulsesink.c
ext/pulse/pulsesrc.c
gst/audioparsers/gstac3parse.c
gst/rtp/gstrtph264depay.c
gst/rtp/gstrtph264pay.c
gst/rtpmanager/gstrtpssrcdemux.c
2011-08-03 18:25:30 +02:00
Wim Taymans
3e089bd7a9
rtp: fix compilation
2011-07-26 17:45:01 +02:00
Olivier Crête
118a7cc36a
rtph264pay: Only set the marker bit on the last NALU of a multi-NALU access unit
...
An access unit could contain multiple NAL units, in that case, only the last
RTP packet of the last NALU should have its marker bit set.
https://bugzilla.gnome.org/show_bug.cgi?id=654850
2011-07-21 17:11:06 +02:00