Sebastian Dröge
518d84c148
openh264dec: The codec can only do baseline so simplify the code a bit
...
and declare this also on the srcpad caps.
With baseline profile there are no B-frames or frame reordering.
2014-10-03 17:23:36 +03:00
Sebastian Dröge
bc8e1465dc
openh264dec: On ::finish() stop trying if the decoder returned that no output is available
2014-10-03 17:23:36 +03:00
Sebastian Dröge
088cf16bf9
openh264: Run gst-indent over everything
2014-10-03 17:23:36 +03:00
Sebastian Dröge
09f5b9acec
openh264: Remove unused codecparsers lib
2014-10-03 17:23:36 +03:00
Sebastian Dröge
68baaf19c3
openh264: Add FIXME comment about missing API in openh264
2014-10-03 17:23:36 +03:00
Sebastian Dröge
0e15f47bdf
openh264dec: Try to handle frame reordering
...
As openh264 has no way to attach any IDs to input frames that we then get on
the output frames, we have to assume that the input has valid PTS. We just
take the frame with the oldest PTS, and if there is no PTS information we take
the one with the oldest DTS.
2014-10-03 17:23:36 +03:00
Sebastian Dröge
8ae2af61ce
openh264dec: Don't drop videocodec frames if we can't decode them *yet*
...
Fixes jittery playback of streams with B frames.
2014-10-03 17:23:36 +03:00
Sebastian Dröge
1dfcdb9ce3
openh264dec: GstVideoDecoder works on frames, not sub-frames (e.g. NALs)
...
And we can just pass complete AUs to the decoder without problems.
2014-10-03 17:23:36 +03:00
Sebastian Dröge
1eb740a7c3
openh264dec: As we require NAL alignment from upstream we don't need to parse anything
2014-10-03 17:23:36 +03:00
Sebastian Dröge
0a31814ef3
openh264dec: Properly drain codec on ::finish()
2014-10-03 17:23:35 +03:00
Sebastian Dröge
10475b6793
openh264enc: Properly drain the encoder on ::finish()
2014-10-03 17:23:35 +03:00
Sebastian Dröge
8aedcc6bde
openh264enc: We always get a single frame as output, not a NAL
...
No need to accumulate NALs.
2014-10-03 17:23:35 +03:00
Sebastian Dröge
70d4e6b740
openh264enc: Fix up caps and stride handling
2014-10-03 17:23:35 +03:00
Sebastian Dröge
f3cabe3cc3
openh264enc: Add support for GstVideoMeta
...
This will allow upstream elements to work more efficiently.
2014-10-03 17:23:35 +03:00
Sebastian Dröge
2285cbaa45
openh264dec: Add support for GstVideoMeta
...
This will make operation with various sinks faster for free.
2014-10-03 17:23:35 +03:00
Sebastian Dröge
4475663569
openh264dec: Optimize frame copying a bit
2014-10-03 17:23:35 +03:00
Sebastian Dröge
4c5a504a7b
openh264dec: Don't forget to unref the input state
2014-10-03 17:23:35 +03:00
Sebastian Dröge
76b5c1c511
openh264dec: Fix various crashes on ::stop()
2014-10-03 17:23:35 +03:00
Sebastian Dröge
bc5c6a0fc9
openh264dec: Remove invalid sprops-parameter-set handling
...
This only exists on RTP caps, not H264 caps.
2014-10-03 17:23:35 +03:00
Sebastian Dröge
739a10d84e
openh264enc: Don't set caps manually
...
This will break the order of events in GStreamer.
2014-10-03 17:23:35 +03:00
Sebastian Dröge
18e7540263
openh264dec: Fix input state handling and propagation of upstream caps fields
2014-10-03 17:23:35 +03:00
Sebastian Dröge
cf4ec9b04e
openh264: Add OpenH264 based encoder/decoder elements
...
These are the openh264 elements released under the BSD-2 license
by Ericsson as part of the OpenWebRTC project.
https://github.com/EricssonResearch/openwebrtc-gst-plugins
https://bugzilla.gnome.org/show_bug.cgi?id=737788
2014-10-03 17:23:35 +03:00
Thibault Saunier
3637296ee9
videoaggregator: Do not to release VIDEO_AGGREGATOR_LOCK while setting format info
...
We should be able to always keep the VIDEO_AGGREGATOR_LOCK while
negotiating caps, this patch introduce that change.
That also implies that we do not need the SETCAPS_LOCK anymore because
now VIDEO_AGGREGATOR_LOCK guarantees that setcaps is not called from
several threads and the gst_aggregator_set_caps method is now
protected.
https://bugzilla.gnome.org/show_bug.cgi?id=735042
2014-10-03 13:18:05 +02:00
Thibault Saunier
1b4547ff93
aggregator: Take lock to ensure set_caps is not called concurently
...
Avoiding to be in an inconsistent state where we do not have
actual negotiate caps set as srccaps and leading to point where we
try to unref ->srccaps when they have already been set to NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=735042
2014-10-03 13:18:05 +02:00
Vineeth T M
14acb6fb37
gst: remove unnecessary GLIB_DISABLE_DEPRECATION_WARNINGS
...
There are unnecessary definitions for disabling deprecation warnings.
Since GLIB_DISABLE_DEPRECATION_WARNINGS is not needed anymore in these files,
removing the same.
https://bugzilla.gnome.org/show_bug.cgi?id=737559
2014-10-02 10:51:35 +03:00
Aurélien Zanelli
677d052e84
vc1parse: unref caps when it is empty in renegotiate()
...
https://bugzilla.gnome.org/show_bug.cgi?id=737724
2014-10-02 10:43:49 +03:00
Sebastian Dröge
66a4572c12
androidmedia: Fix calculation of the frame size for COLOR_FormatYUV420Planar
...
https://bugzilla.gnome.org/show_bug.cgi?id=734156
2014-10-02 10:26:43 +03:00
Sebastian Dröge
03a5bc82db
videoaggregator: Also copy over the chroma siting and colorimetry when deciding on a conversion
2014-10-01 17:22:59 +03:00
Sebastian Dröge
f2af838837
videoaggregator: Revert the last commit and handle resolutions differences properly
...
This is about converting the format, not about converting any widths and
heights. Subclasses are expected to handler different resolutions themselves,
like the videomixers already do properly.
2014-10-01 17:18:05 +03:00
Sebastian Dröge
154eb9b508
videoaggregator: GstVideoConverter currently can't rescale and will assert
...
Leads to ugly assertions instead of properly erroring out:
CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed
2014-10-01 17:11:16 +03:00
Sebastian Dröge
c4cc2dfabf
gl/cocoa: Always update our viewport if Cocoa tells us something has changed
...
The visible rect and bounds might be the same as before, but Cocoa
might've changed our viewport without us nothing. This happens if
you hide the view and show it again.
2014-10-01 16:04:36 +03:00
Sebastian Dröge
061d55f535
gl/cocoa: Handle NSView::renewGState() properly
...
Don't update the screen until we redraw, this prevents flickering during
scrolling, clipping, resizing, etc
2014-10-01 11:55:51 +03:00
Tim-Philipp Müller
3953b8e419
fluiddec: don't crash on 0-sized input buffers
...
https://bugzilla.gnome.org/show_bug.cgi?id=737658
2014-10-01 00:53:59 +01:00
Lubosz Sarnecki
cc3ca17f4c
gltransformation: requires graphene 1.0.0
2014-09-30 16:06:32 +03:00
Lubosz Sarnecki
04034b11f4
gltransformation: graphene multiplication order has changed
...
https://bugzilla.gnome.org/show_bug.cgi?id=733510
2014-09-30 22:11:35 +10:00
Matthew Waters
d1360ef2c7
glvideomixer: update element documentation
2014-09-30 20:39:36 +10:00
Matthew Waters
66e65b3333
tests/glcolorconvert: do reorder checking for rgba formats
2014-09-30 18:26:34 +10:00
Matthew Waters
dc4b4832d4
glcolorconvert: convert xRGB into ARGB properly
...
The alpha channel might not be the last component so check which one
it is in and clobber that one instead.
2014-09-30 14:46:14 +10:00
Matthew Waters
ce7226da06
tests/glmemory: add simple transfer test
...
tests transferring to/from the GL with a 1x1 RGBA pixel.
2014-09-30 01:49:42 +10:00
Matthew Waters
7b0a30343a
glmemory: unset the opposite corresponding transfer flags when mapped with write
...
fixes consistency with consecutive gst_memory_map()'s with
flags & GST_MAP_WRITE
2014-09-30 01:49:05 +10:00
Sebastian Dröge
d4ed76e4da
gl/cocoa: Update viewport according to the current clipping
...
We have to update the GL viewport if the NSView is only partially
visible. Otherwise the content of the frame will be visibly offset.
2014-09-29 14:34:42 +03:00
Jesper Larsen
1b8e76d235
tsdemux: do not discard on discont if PES start
...
If a discontinuity in the stream is detected, data is discarded until
a new PES starts. If the first packet after the discontinuity is also
the start of a PES, there is no reason to discard the packets.
https://bugzilla.gnome.org/show_bug.cgi?id=737569
2014-09-29 11:41:01 +02:00
David Waring
29f1f4533e
dash: Use GstUri to join URIs
2014-09-29 12:22:19 +03:00
Sebastian Dröge
8d92b6a364
gl/cocoa: Improve the NSApplication initialization
...
This is only for non-Cocoa apps but previously caused a 2 second
waiting during startup for Cocoa apps. This is unacceptable.
Instead we now check a bit more extensive if something actually
runs on the GLib default main context, and if not don't even
bother waiting for something to happen from there.
2014-09-29 10:57:18 +03:00
Sebastian Dröge
0cd19cbda3
gl/cocoa: NSView::drawRect() should call into reshape too
...
We a) need to render again because part of the window was
obscured and b) might need to reshape because of clipping
changes.
2014-09-29 10:57:18 +03:00
Sebastian Dröge
66cb4166d3
gl/cocoa: Call UI related API from the application main thread
2014-09-29 10:57:18 +03:00
Sebastian Dröge
2173d34462
gl/cocoa: Switch to a plain NSView subclass instead of NSOpenGLView
...
We don't and can't use NSOpenGLView as it's supposed to be used and
it gets into our way by being to clever in various situations.
2014-09-29 10:57:18 +03:00
Edward Hervey
e064d280ea
glcontext: Initialize variable
...
Avoids the following warning:
gstglcontext.c:647:58: error: 'prev' may be used uninitialized in
this function [-Werror=maybe-uninitialized]
2014-09-29 08:54:29 +02:00
Josep Torra
5b79423416
video: fix build in gst-uninstalled setup
...
Include the base video lib appropriately and resort all of them as
thaytan suggested.
2014-09-28 18:03:09 +02:00
Jan Schmidt
37c70c8efa
examples: Fix Qt/GL qglwtextureshare example for X11
...
We need to pass the X11 display to GstGL or else it will
use its own X11 Display pointer, and the GL Context won't get shared
correctly on newer X servers
2014-09-29 00:39:07 +10:00