Commit graph

22629 commits

Author SHA1 Message Date
Julien Isorce
86ae9777ad glupload: add GST_CAPS_FEATURE_MEMORY_DMABUF
Insert before SystemMemory to advice upstream elements that it is
preferable for them to push dmabuf with the caps feature.

Examples:

/* Discard memory:DMABuf caps feature */
GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \
    filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \
    capsfilter caps="video/x-raw(memory:SystemMemory)" ! glimagesink

/* Force memory:DMABuf caps feature. */
GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \
    filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \
    capsfilter caps="video/x-raw(memory:DMABuf)" ! glimagesink

/* Auto select memory:DMABuf caps feature.  */
GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \
    filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \
    glimagesink

https://bugzilla.gnome.org/show_bug.cgi?id=774649
2017-06-30 08:31:20 +01:00
Matthew Waters
effda87a0b gl: reset gl->DrawBuffer to the necessary values
GL_COLOR_ATTACHMENT0 when a framebuffer is bound
GL_BACK if no framebuffer is bound

https://bugzilla.gnome.org/show_bug.cgi?id=784210
2017-06-29 14:59:12 +10:00
Hyunjun Ko
02ef39f48a glmemory: reset the draw buffer to GL_BACK
The draw buffer should be reset to GL_BACK since the framebuffer is already
unbound.

https://bugzilla.gnome.org/show_bug.cgi?id=784210
2017-06-29 14:59:12 +10:00
Reynaldo H. Verdejo Pinochet
2d511343cb dvb: src: use correct unit in tuning-timeout prop description
Milliseconds was wrong and made use of this timeout quite
confusing. The code uses the value as microsenconds so
any meaningful number was off by orders of magnitude.
2017-06-28 16:40:50 -07:00
Thibault Saunier
d9c61ff4aa meson: Allow using glib as a subproject 2017-06-28 11:40:17 -04:00
Thibault Saunier
7f62c6164a meson: Do not use path separator in test names
Avoiding warnings like:

    WARNING: Target "elements/audioamplify" has a path separator in its name.
2017-06-28 11:39:50 -04:00
Per-Erik Brodin
3223d605bf nvdec: Use qdata on memory instead of buffer meta
Using a meta can be problematic since the memory contained in the buffer
can be transferred to a new buffer in which case the meta would be lost.

https://bugzilla.gnome.org/show_bug.cgi?id=784235
2017-06-28 10:15:52 +03:00
Sebastian Dröge
af6db6861e mxfdemux: Include duration in response to SEEKING query 2017-06-27 15:41:48 +03:00
Sebastian Dröge
1069330f76 mxfmux: Write temporal offset and correct keyframe offset into index table
https://bugzilla.gnome.org/show_bug.cgi?id=784027
2017-06-27 15:04:22 +03:00
Sebastian Dröge
830e89b7e9 mxfdemux: Take temporal reordering from the index table into account
This is needed to know the PTS, without that we only know the DTS and
using that also for the PTS is wrong unless we have an intra-only codec.

If we can't get the temporal reordering from the index table, don't set
any PTS for non-intra-only codecs and let decoders figure out something.

https://bugzilla.gnome.org/show_bug.cgi?id=784027
2017-06-27 10:47:44 +03:00
Per-Erik Brodin
ab9d87f168 nvdec: New plugin for NVIDIA hardware video decode
https://bugzilla.gnome.org/show_bug.cgi?id=781537
2017-06-27 08:59:59 +03:00
Eunhae Choi
ed5d677dce mpegpsmux: remove unnecessary g_return_if_fail()
This should never happen, and should be a g_assert()
if it's a worry. Fixes warnings from source code
checkers about possible caps leaks here.

https://bugzilla.gnome.org/show_bug.cgi?id=783955
2017-06-27 00:17:03 +01:00
Tim-Philipp Müller
4f9163c06c meson: fix with-package-name option
https://bugzilla.gnome.org/show_bug.cgi?id=784082
2017-06-26 09:52:24 +01:00
Nicolas Dufresne
5a8ffe2aa3 meson: Enable netsim unit test 2017-06-22 16:40:07 -04:00
Nicolas Dufresne
81e1aa201c meson: Add netsim plugin 2017-06-22 14:21:34 -04:00
Nicolas Dufresne
55e701a373 meson: Re-add pkg-config support for bcm_host
Now we just fallback to find_library for Rasbian jessy and older.

https://bugzilla.gnome.org/show_bug.cgi?id=784026
2017-06-22 12:20:25 -04:00
Nicolas Dufresne
eab6cd8d6d meson: Enable shm unit test 2017-06-21 15:15:37 -04:00
Nicolas Dufresne
af338de2b8 meson: Enable building shm plugin 2017-06-21 13:45:04 -04:00
Nicolas Dufresne
809d313493 shmpipe: Should not use glib type without ifdef
The shmpipe should build without GLIB.
2017-06-21 13:42:31 -04:00
Guillaume Desmottes
859daad65d gl: meson: use cc.find_library() to detect 'bcm_host'
On the raspberry pi no pkg-config file is provided for the bcm_host
library. We are using AC_CHECK_LIB to detect this lib with autotools,
cc.find_library() library is a closer meson equivalent.

https://bugzilla.gnome.org/show_bug.cgi?id=784026
2017-06-21 11:44:22 -04:00
Jan Schmidt
4f7b077737 configure: Add --with-moc/uic/rcc options
For cross-compiling, it's easier to be able to specify the
actual paths to the tools
2017-06-22 01:01:40 +10:00
Jan Schmidt
7ea366501b qmlsink example: Add CMakeLists.txt
Make it possible to build using cmake instead of qmake
2017-06-22 01:01:40 +10:00
Jan Schmidt
45ab816853 qt: Remove misleading reference to GTK in qtitem.cc 2017-06-22 01:01:40 +10:00
Sebastian Dröge
450b1c92ab gl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again
And remove gstgldisplay_cocoa.h instead, which got moved to the
installed headers earlier.
2017-06-20 19:20:19 +03:00
Eunhae Choi
4ef53c455b directfb: fix caps leak
add unref in case of error

https://bugzilla.gnome.org/show_bug.cgi?id=783961
2017-06-20 09:28:28 +03:00
Scott D Phillips
25d2b8a608 tests: dash & adaptivedemux: move iterator variable declaration out of for
This is a c99-ism that gcc 4.8.5 errors on unless -std=c99 is
specified.

https://bugzilla.gnome.org/show_bug.cgi?id=783868
2017-06-17 10:59:42 +03:00
Reynaldo H. Verdejo Pinochet
b09b17365d dvb: src: fix use of wrong array index for tune signal
Erroneous value made "TUNE" overwrite "TUNNING_FAIL" ....
2017-06-16 13:57:49 -07:00
Reynaldo H. Verdejo Pinochet
5ad88a0352 dvb: src: issue warning on failed delsys-vs-parameter issues
Aids in understanding misses with the delsys auto-detection logic
2017-06-16 13:56:40 -07:00
Thibault Saunier
fd3854c3e3 mxfdemux: Do not try to serialize unresolved metadatas
When retrieving the `mxfdemux.structure` property, it leads to an
assertion as metadatas need to be resolved for the call to
mxf_metadata_base_to_structure to be valid.
2017-06-15 14:18:20 -04:00
Sebastian Dröge
f845208d79 glupload: Fix DirectVIV uploader for formats with a single plane
We have to pass the "height" as height = vmeta->offset[1] / width to the
API, which of course does not work well for formats with only a single
plane. Use the whole memory size instead of the offset in that case.
2017-06-12 22:29:01 +03:00
Aaron Boxer
a6d1f77299 openjpegdec: fix display artifacts for RGB 8-bit
https://bugzilla.gnome.org/show_bug.cgi?id=783626
2017-06-12 09:54:44 +03:00
Vincent Penquerc'h
903684aa78 openjpeg: guard against invalid memory access on crafted files 2017-06-08 16:17:44 +01:00
Vincent Penquerc'h
e5a0c4a751 jpeg2000sampling: fix critical when sampling is missing from caps
This can happen with real files
2017-06-08 16:17:43 +01:00
Thibault Saunier
761f0d1ca9 meson: Fix building/running tests outside gst-build 2017-06-07 16:59:10 -04:00
Mathieu Duponchelle
794ada056a tests: start porting to meson
Incomplete port, to get the ball rolling

https://bugzilla.gnome.org/show_bug.cgi?id=782962
2017-06-07 20:21:17 +02:00
Scott D Phillips
dcd9032d95 msdk: enc: set pts and dts, fix inverted sync_point flag
Set the pts and dts on the frame that we receive from the msdk.
Also fix the inverted logic in setting sync points, previously we
were marking all frames as sync points except IDRs.

https://bugzilla.gnome.org/show_bug.cgi?id=782801
2017-06-07 19:23:28 +03:00
Nicolas Dufresne
7d53a5cd0a gl: Add dependency to gstallocators 2017-06-07 11:50:30 -04:00
Sebastian Dröge
f0b1b97b25 decklink: Make timestamp reference specifier driver specific 2017-06-07 17:50:09 +03:00
Aaron Boxer
9ec2b7ce13 jpeg2000parse: parse RSIZ capabilities and put profile/level into the caps
The RSIZ capabilities tag stores the JPEG 2000 profile. In the case of
broadcast profiles, it also stores the broadcast main level, which
specifies the bit rate.

https://bugzilla.gnome.org/show_bug.cgi?id=782337
2017-06-07 10:06:26 +03:00
Seungha Yang
87cb9fa49e adaptivedemux: Clear "cancelled" on uridownloader before processing manifest
Previous commit let demux call gst_uri_downloader_cancel() on _demux_reset().
Note that, _demux_reset() called during PAUSED_TO_READY and READY_TO_PAUSED.
And, it will set "cancelled" on uridownloader which blocks the use of
uridownloader. The issue is that, subclass can use the uridownloader not only
live streaming for manifest update, but also for fetching another manifests
such as variant and rendition m3u8 of hls streaming. So to unblock it,
demux should clear "cancelled" before processing initial manifest.

https://bugzilla.gnome.org/show_bug.cgi?id=783401
2017-06-06 19:21:56 -07:00
Thibault Saunier
1b8aa7578c videoparse: Fix property handling
Usage of GstValueArray was wrong and frame-stride does not exist in
rawvideoparse
2017-06-06 15:22:20 -04:00
Guillaume Desmottes
d373c4478b kmssink: Add xilinx_drm to the list of drivers
This prevent having to set the driver-name explicitly when running on
Zynq UltraScale+ boards.

https://bugzilla.gnome.org/show_bug.cgi?id=783188
2017-06-05 12:56:03 +02:00
Wim Taymans
f28ab7ce60 pcapparse: endianness fix
Also swap the linktype after we detected that we need to do
byteswapping. Fixes a problem with reading pcap files generated
on a machine with different endianness.
2017-06-01 16:00:50 +02:00
Mathieu Duponchelle
694da006e0 adaptivedemux: release the manifest lock ...
before broadcasting preroll.

The deadlock was as follows:

-> The subclass pushes a buffer on a newly-created stream in T1
-> We take the preroll lock in T1, to handle_preroll
-> The demuxer is stopped in T2, we take the MANIFEST_LOCK
-> T1 starts blocking because it received a reconfigure event
   and needs to take the MANIFEST_LOCK
-> T2 deadlocks because it now wants the preroll_lock.

https://bugzilla.gnome.org/show_bug.cgi?id=783255
2017-06-01 15:27:07 +02:00
Edward Hervey
2b401de91c dashdemux: Implement a default presentation delay
Have a fallback presentation delay is great (if not present in the
manifest), having an actual default value is better.

https://bugzilla.gnome.org/show_bug.cgi?id=783244
2017-06-01 15:27:07 +02:00
Thiago Santos
5a693fdd9d adaptivedemux: do not erase data while updates-loop is running
Make sure the manifest update loop is stopped before proceeding with the
resetting of the manifest data. Otherwise, the updates loop will try to
use it and it leads to a segfault

https://bugzilla.gnome.org/show_bug.cgi?id=783028
2017-06-01 15:27:07 +02:00
Thiago Santos
95a2786741 mpdparser: remove duplicate free of client data
https://bugzilla.gnome.org/show_bug.cgi?id=783028
2017-06-01 15:27:07 +02:00
Jeremy Hiatt
3620268325 glutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask() 2017-06-01 14:39:49 +03:00
Mathieu Duponchelle
c88125045f adaptivedemux: make sure to free all "old streams"
As we release the MANIFEST_LOCK in stop_tasks,
demux->priv->old_streams can be set, we need to free these
otherwise we may end up trying to dispose elements in the
READY state.

https://bugzilla.gnome.org/show_bug.cgi?id=783256
2017-06-01 11:13:46 +02:00
Edward Hervey
b104fb203a adaptivedemux: Don't be too aggressive with seek ranges
When an accurate seek is requested on a live stream, only requests the
exact value for the "starting position" (i.e. start in forward playback
and stop in reverse playback).

https://bugzilla.gnome.org/show_bug.cgi?id=782698
2017-05-31 11:34:41 +02:00