Sebastian Dröge
06a4e80be9
aggregator: Add function to allow subclasses to set their own latency
...
For audiomixer this is one blocksize, for videoaggregator this should
be the duration of one output frame.
2014-12-17 19:51:32 +01:00
Sebastian Dröge
27bcbf0a80
audiomixer: Make sure to not have pads being behind the current offset
...
We would break sync between the different streams then.
2014-12-17 19:37:22 +01:00
Sebastian Dröge
d4c4af699e
aggregator: Add a timeout parameter to ::aggregate()
...
When this is TRUE, we really have to produce output. This happens
in live mixing mode when we have to output something for the current
time, no matter if we have enough input or not.
2014-12-17 18:41:41 +01:00
Sebastian Dröge
e82ec36863
audiomixer: Add queues after the (live) sources in the unit test
2014-12-17 18:41:41 +01:00
Alessandro Decina
0156725480
avfvideosrc: improve timestamping and latency reporting
...
Use AVF provided timings to timestamp output buffers. Use the running time at
the time the first buffer is produced to base timestamps on. Report 1-frame
latency based on the negotiated framerate instead of hardcoding 4ms latency.
2014-12-17 12:24:05 +11:00
Raimo Järvi
96ea75d75a
dshowdecwrapper: Remove dependency on ATL
...
This fixes compiling with Visual C++ Express
that doesn't include ATL.
https://bugzilla.gnome.org/show_bug.cgi?id=677223
2014-12-16 23:17:35 +00:00
Matthew Bader
0fc55436b3
dshowsrcwrapper: Added support for image/jpeg and h264
...
https://bugzilla.gnome.org/show_bug.cgi?id=741188
2014-12-16 23:17:25 +00:00
Tim-Philipp Müller
9d79b65a55
tests: fix aggregator unit test after property renaming
2014-12-16 19:49:56 +00:00
Sebastian Dröge
2764f2baf1
audiomixer: Implement get_next_time()
2014-12-16 17:37:12 +01:00
Sebastian Dröge
852b08340e
aggregator: Some minor cleanup
2014-12-16 17:33:01 +01:00
Matthew Waters
8bf53a1226
aggregator: make the src pad task drive the pipeline for live pipelines
...
This removes the uses of GAsyncQueue and replaces it with explicit
GMutex, GCond and wakeup count which is used for the non-live case.
For live pipelines, the aggregator waits on the clock until either
data arrives on all sink pads or the expected output buffer time
arrives plus the timeout/latency at which time, the subclass
produces a buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=741146
2014-12-16 16:58:57 +01:00
Matthew Waters
a7e86751bf
videoaggregator: always try to use newer buffers
...
instead of dropping them for being too old. This ensures that
the newest buffer is always used for rendering
2014-12-16 16:49:49 +01:00
Wim Taymans
87f5574e39
rectangle: clear rectangle struct before use
2014-12-16 13:35:14 +01:00
Vincent Penquerc'h
79b56ebcc9
opusparse: fix frame size determination
...
https://bugzilla.gnome.org/show_bug.cgi?id=741321
2014-12-15 15:23:35 +00:00
Mathieu Duponchelle
631663b854
mxfdemux: Use IndexTableSegments.
...
This speeds up seeking drastically.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732294
2014-12-14 12:53:55 +01:00
Sebastian Rasmussen
01dc7edd8b
tests/aggregator: Use correct type when setting property
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741495
2014-12-14 11:29:19 +01:00
Sudip Jain
9f2cb50f54
mpegtsbase: scan more bytes to find initial PCRs
...
Fixes playback of Samsung-Colorful-Variety-1080i.ts.
https://bugzilla.gnome.org/show_bug.cgi?id=729768
2014-12-13 01:59:07 +00:00
Tim-Philipp Müller
329f0ccba1
Revert "openh264: fix to work with released versions and master of upstream"
...
This reverts commit 15394aa705
.
The latest release (v1.1) does not have pkg-config support
yet, so this plugin won't be built with the latest release.
Cerbero uses the latest release, so this makes cerbero
builds fail, which expect the plugin to be built.
We can re-commit this once there's a release that includes
pkg-config support.
2014-12-12 20:58:49 +00:00
Zaheer Abbas Merali
15394aa705
openh264: fix to work with released versions and master of upstream
2014-12-12 10:05:23 -08:00
Thibault Saunier
b3c4b8d1df
watchdog: GstElement->state is protected with the OBJECT_LOCK
...
Not the STATE_LOCK.
gst_watchdog_feed was already always called with the OBJECT_LOCK taken.
2014-12-12 11:49:42 +01:00
Thibault Saunier
aa25d0ab4c
videoaggregator: Hide some more fields from the API
...
+ Add some documentation
2014-12-12 11:49:42 +01:00
Tim-Philipp Müller
cb5c563b36
onvif: fix 'make dist'
2014-12-12 00:30:21 +00:00
Thiago Santos
75b0bac7f8
adaptivedemux: fix seek event handling
...
Properly do seeking and avoid only seeking when the segment was updated.
It would cause seeks after the stream was EOS to fail, for example.
https://bugzilla.gnome.org/show_bug.cgi?id=738920
2014-12-11 21:09:26 -03:00
Olivier Crête
8cddfe6477
rtponviftimestamp: Automatically discover the ntp-offset by default.
...
This only works if no packets are pushed in before the pipeline goes
to playing. So it helps to have a live source.
https://bugzilla.gnome.org/show_bug.cgi?id=731769
2014-12-11 16:28:43 -05:00
Guillaume Desmottes
189005184c
add rtponvifextract element
...
https://bugzilla.gnome.org/show_bug.cgi?id=731769
2014-12-11 14:00:59 -05:00
Guillaume Desmottes
b424b72df1
add rtponviftimestamp element
...
https://bugzilla.gnome.org/show_bug.cgi?id=731769
2014-12-11 14:00:59 -05:00
Wang Xin-yu (王昕宇)
15eab1ed01
glfilter: fix position/texcoord attrib index usage
...
https://bugzilla.gnome.org/show_bug.cgi?id=741231
2014-12-11 19:41:23 +11:00
Matthew Waters
15fc4b9bbe
glfiltercube: use a shader everywhere
2014-12-11 19:41:23 +11:00
Matthew Waters
f021549294
gl: fixup vao and vbo usage for legacy GL
2014-12-11 19:41:23 +11:00
Matthew Waters
1d324e259a
gleffects: don't abort when setting the effect to 0,1,2
2014-12-11 19:41:23 +11:00
Matthew Waters
996f193547
gl/examples: fixup sdl example for gluPerspective removal
2014-12-11 19:41:23 +11:00
Nick Stoughton
a344b99c98
bluez: support compile-time distinction between bluez4 and bluez5
...
Signed-off-by: Nick Stoughton <nstoughton@aether.com>
https://bugzilla.gnome.org/show_bug.cgi?id=738626
2014-12-11 09:08:47 +05:30
Thiago Santos
c8fa688d26
adaptivedemux: check the return from update_manifest correctly
...
It is a GstFlowReturn and not a boolean
2014-12-10 18:23:02 -03:00
David Waring
1c0c6b6f48
dashdemux: Change period when setting by period id.
...
Make gst_mpd_client_set_period_id set the current period index when it finds a
period with a matching period id.
https://bugzilla.gnome.org/show_bug.cgi?id=741322
2014-12-10 16:22:31 -03:00
Thiago Santos
8b63a16af0
mssdemux: fix reverse playback fragment tracking
...
Rework reverse fragment traversing with repetition fields to prevent
NULL pointer deref and avoid never advancing a fragment as the variable
is unsigned and would always be non-negative.
CID #1257627
CID #1257628
2014-12-10 15:27:49 -03:00
Alessandro Decina
4d89d7116b
vtenc: bump rank to PRIMARY
2014-12-11 00:02:26 +11:00
Alessandro Decina
21f8c96d75
vtenc: negotiate profile and level with downstream
2014-12-10 22:36:53 +11:00
Alessandro Decina
8166487a00
vtenc: report latency
2014-12-10 19:44:51 +11:00
David Waring
b03acbf584
dashdemux: Find current segment in the streams that have just been setup
...
Using demux->streams will just skip the whole loop as demux->streams will
always be NULL at that point
https://bugzilla.gnome.org/show_bug.cgi?id=741285
2014-12-09 21:08:10 -03:00
Mathieu Duponchelle
8e2964ee59
mirror: Needs remap when the mode changes.
...
This caused the user to think the mode wasn't taken into account.
2014-12-09 05:03:11 +01:00
Mathieu Duponchelle
bd5688d1ee
Revert "h264parse: expose compatible profiles to downstream"
...
This reverts commit 3910cbe7ce
.
2014-12-09 04:28:17 +01:00
Thiago Santos
d30ec9f9f7
adaptivedemux: do not try to unlock not locked mutex
...
A misplaced unlock was causing an assertion for playback with a
set stop time
2014-12-08 08:53:00 -03:00
Thiago Santos
aba9d86d08
gst-libs: build order: uridownloader before adaptivedemux
...
Otherwise make install fails
2014-12-08 08:24:17 -03:00
Sebastian Dröge
b88e4304f1
vtenc: Add properties to specify the maximum keyframe interval in frames and seconds
2014-12-05 16:33:54 +01:00
Sebastian Dröge
1a2362eb2b
vtenc: Fix conversion of the bitrate property and our internal bitrate storage
...
The property is in kbit/s and we store it in bit/s, so just multiply and
divide by 1000. No need to put a factor of 8 in there.
kVTCompressionPropertyKey_AverageBitRate is also in bit/s according to
its documentation.
2014-12-05 16:17:16 +01:00
Arun Raghavan
226a4fcea3
intervideosrc: Fix a memory leak
...
Frees the source ARGB black frame that we use to create the black frame
in our target format.
2014-12-05 14:21:31 +05:30
Sreerenj Balachandran
3910cbe7ce
h264parse: expose compatible profiles to downstream
...
Some video bitstreams report a too restrictive set of profiles. If a video
decoder was to strictly follow the indicated profile, it wouldn't support that
stream, whereas it could in theory and in practice. So we should relax the
profile restriction for allowing the decoder to get connected with parser.
https://bugzilla.gnome.org/show_bug.cgi?id=739992
2014-12-05 09:36:02 +01:00
Chun-wei Fan
788297fec3
dshowvideosink: Port to 1.0 and new GLib threading API
...
This updates the dshowvideosink to work with the GStreamer 1.0.x APIs, and
avoids the use of deprecated GLib threading API that are now used since
GLib 2.32+
https://bugzilla.gnome.org/show_bug.cgi?id=699364
2014-12-05 08:02:02 +00:00
Thiago Santos
8c49c79d7e
mssdemux: add live support
...
Implement the functions of adaptivedemux to have live support
enabled. This allows mssdemux to refresh the Manifest periodically
2014-12-04 19:52:33 -03:00
Matthew Bader
54a7bdc0be
dshowdecwrapper: Port to 1.x
...
https://bugzilla.gnome.org/show_bug.cgi?id=740945
2014-12-04 22:09:29 +01:00