summaryrefslogtreecommitdiff
path: root/gst-libs
Commit message (Collapse)AuthorAgeFilesLines
* glupload: passthrough composition caps features in directviv uploadHaihua Hu2017-05-021-1/+6
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=782046
* tests: fix link problem on centos7Tim-Philipp Müller2017-04-271-1/+1
| | | | And put LIBS before -lgstfoo in adaptivedemux Makefile.am
* adaptivedemux: separate manifest update task from download tasksMatthew Waters2017-04-251-34/+48
| | | | | | | | | | | Rationale is to allow the manifest update task to continue running while seeks are occurring. Otherwise, if the user reliably performs a seek before the manifest is updated, then as the manifest task is reset on seeks (and thus the time to wait between manifest updates), the manifest would never be updated. This fix makes the manifest update task free-running and continously update even during seeks.
* adaptivedemux: Don't hold locks when pushing FLUSH_STARTEdward Hervey2017-04-151-0/+2
| | | | | | | | | | | | | Some actions (Qos, reconfigure, ...) might take place before we finish pushing out flush_start. One problem would be that: 1) The QOS handling in adaptivedemux takes the MANIFEST LOCK That QOS event comes from basesink with its PREROLL_LOCK taken 2) FLUSH_START is sent from adaptivedemux with the MANIFEST_LOCK taken and the basesink flushing handler needs to take the PREROLL_LOCK => deadlock https://bugzilla.gnome.org/show_bug.cgi?id=781320
* adaptivedemux: Fix segment creation/adaptation some moreEdward Hervey2017-04-141-12/+39
| | | | | | Take into account the segment stop and the negative rates https://bugzilla.gnome.org/show_bug.cgi?id=781267
* docs: Port all docstring to gtk-doc markdownThibault Saunier2017-04-1239-122/+112
|
* docs: Stop linking to inexistant symbolsThibault Saunier2017-04-121-16/+16
|
* aggregator: Make instance var name match between .c and .hThibault Saunier2017-04-121-2/+2
| | | | Making GI happy
* meson: add missing gstglrenderbuffer.h headerClaudio Saavedra2017-04-111-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781179
* meson: gl: set default value of 0 for glconf varsScott D Phillips2017-04-092-2/+40
| | | | | | | | | | | | | meson's configure_file emits only a comment like /* #undef ... */ for values which are unset in the configuration_data. For gstglconfig.h, this differs from the autotools build where the preprocessor definitions are always either 0 or 1. So loop over a list of variables to set to zero as default. Also sync up the gstglconfig.h.meson file with the additional macros defined by the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=781043
* gstaggregator: fix event use after freeVincent Penquerc'h2017-04-091-8/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781017
* glcontext: fix display leakVincent Penquerc'h2017-04-091-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781019
* gldisplay: fix list leakVincent Penquerc'h2017-04-091-0/+1
| | | | | | | | | Windows aren't always removed in time, and it turns out to be very, very hard to remove a window in a way that's not racy and not deadlocky. Since the window itself doesn't leak, freeing the list on object destruction is enough. https://bugzilla.gnome.org/show_bug.cgi?id=781018
* mpegts: fix invalid memory access in language descriptorVincent Penquerc'h2017-04-091-1/+4
| | | | | | Also add a couple sanity asserts/returns https://bugzilla.gnome.org/show_bug.cgi?id=781024
* adaptivedemux: Retry downloading a fragment immediately if any in live streamingSeungha Yang2017-04-091-1/+2
| | | | | | | | | | At the moment that demux is waiting manifest update, the target sequence of fragment was advanced already. So, checking stream_has_next_fragment() means looking for the next fragment of target fragment. This might cause unexpected buffering if each fragment has large duration and manifest is listing only limited number of fragments. https://bugzilla.gnome.org/show_bug.cgi?id=780494
* gl: Remove duplicate typedef of GstGLFramebufferClassJan Schmidt2017-04-081-1/+0
| | | | | | | The GstGLFramebufferClass struct is typedeffed in gstgl_fwd.h, and having a duplicate elsewhere is breaking the cerbero build on my OSX machine, even though it seems to be working in CI.
* videoaggregator: Do not mix the same buffer twice when EOS.Mathieu Duponchelle2017-04-071-1/+3
| | | | | | | | | | | | When entering this code path, we know that: We received EOS on this pad. We consumed all its buffers. In any case, we want to replace vaggpad->buffer with NULL, otherwise we will end up mixing the same buffer twice. https://bugzilla.gnome.org/show_bug.cgi?id=781037
* adaptivedemux: add some reasons on warning reportingMatthew Waters2017-04-071-3/+8
|
* uridownloader: Use a GWeakRef to the parent to prevent a reference cycleSebastian Dröge2017-04-031-15/+13
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=780140
* adaptivedemux: set uridownloader's parentThiago Santos2017-04-031-0/+1
| | | | | | Allows internal http source to request contexts and share cookies with the pipeline in case the server imposes any restriction based on cookies.
* uridownloader: add new gst_uri_downloader_set_parentThiago Santos2017-04-032-0/+52
| | | | | | | | | | If set, the parent is used to proxy need-context messages from uridownloader's http source in order to get cookies/headers from the pipeline. Based on a patch from Philippe Normand https://bugzilla.gnome.org/show_bug.cgi?id=726314
* glwindow/cocoa: fix warnings reported by XCode 8.1.0Josep Torra2017-04-011-2/+0
| | | | | | | | | gstglwindow_cocoa.m:345:16: error: unused variable 'window' [-Werror,-Wunused-variable] GstGLWindow *window = GST_GL_WINDOW (window_cocoa); ^ gstglwindow_cocoa.m:445:11: error: unused variable 'external_view' [-Werror,-Wunused-variable] NSView *external_view = (__bridge NSView *)priv->external_view; ^
* gldisplay: Fix assert caused by missing debug categoryNicolas Dufresne2017-03-291-0/+2
|
* adaptivedemux: Don't send EOS on pads when there's a pending switchJan Schmidt2017-03-231-6/+19
| | | | | | | | | | When there are new pads pending for a bitrate switch, don't allow EOS through from the old streams. It will be sent when the new pads are ready, just before the old streams are removed. This fixes racy bitrate switching with hlsdemux in urisourcebin where old pads EOS before new pads appear and the entire pipeline can EOS if those propagate fast enough
* player: Make use of GstStreams API with playbin3Seungha Yang2017-03-223-37/+444
| | | | | | | Allow use of playbin3 and GstStreams API by setting the environment variable "GST_PLAYER_USE_PLAYBIN3" https://bugzilla.gnome.org/show_bug.cgi?id=775487
* build: declare dependency from gl on allocatorsScott D Phillips2017-03-211-0/+1
| | | | | | | | | | | | libgstgl has a dependency on libgstallocators starting with: ed1e4c1 glupload: Add support for Vivante DirectTexture uploads The dependency wasn't stated in the Makefile, so the build could occasionally fail if you got unlucky with the ordering of build steps. https://bugzilla.gnome.org/show_bug.cgi?id=780330
* gl/format: correct return enums in gst_gl_format_from_video_infoScott D Phillips2017-03-151-2/+2
| | | | | | | | | | | | In commit > 956c4d0 gl/format: use our own GL format enum's instead of gstvideo's the name and return type of gst_gl_format_from_video_info changed, but some returns of the old type were missed. Here they are updated to the correct type. https://bugzilla.gnome.org/show_bug.cgi?id=780064
* glupload: adjust memory offset calculation for dmabuf buffersGeorge Kiagiadakis2017-03-141-1/+2
| | | | | | | The data in the dmabuf fd may not start from byte 0, therefore we need to inform EGL about this additional offset. https://bugzilla.gnome.org/show_bug.cgi?id=779790
* Revert "adaptivedemux: answer duration queries for live streams"Matthew Waters2017-03-142-18/+6
| | | | | | | | Completely disabling duration reporting with live streams is not cool. This reverts commit e1b68d9a65ba512a52c3a2b298fa830a445eb451. https://bugzilla.gnome.org/show_bug.cgi?id=753879
* gl: GL_ARRAY_BUFFER is not a part of VAO stateMatthew Waters2017-03-143-20/+6
| | | | | As a result we need to bind it on every draw in order to have the correct state in the GL state machine.
* gl/format: use our own GL format enum's instead of gstvideo'sMatthew Waters2017-03-1315-245/+186
| | | | They can describe in more detail (such as component sizes) the requested format.
* glupload: fix GValue leakVincent Penquerc'h2017-03-131-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=779869
* player: Fix setting of external subtitle URIHaihua Hu2017-03-091-6/+4
| | | | | | | | | gst_player_set_uri_internal shouldn't free suburi which maybe set by user to load external subtitle before start play. It just need reset playbin's subutri property to NULL no matter if there was a previous one or not. https://bugzilla.gnome.org/show_bug.cgi?id=779453
* gl/eagl: It's -fobjc-arc not -fobj-arcSebastian Dröge2017-03-081-1/+1
|
* applemedia/gl: Update code to use ARCNick Kallen2017-03-0710-78/+94
| | | | | | | | | | | | All code interacting with Objective-C objects should now use Automated Reference Counting rather than manual memory management or Garbage Collection. Because ARC prohibits C-structs from containing references to Objective-C objects, all such fields are now typed 'gpointer'. Setting and gettings Objective-C fields on such a struct now uses explicit __bridge_* calls to tell ARC about object lifetimes. https://bugzilla.gnome.org/show_bug.cgi?id=777847
* videoaggregator: redo src caps negotiation if a sink pad's caps have changed ↵George Kiagiadakis2017-03-061-0/+8
| | | | | | in the meantime https://bugzilla.gnome.org/show_bug.cgi?id=755782
* gl: Missed one backwards compat define in GST_GL_TYPE_CONTEXTArun Raghavan2017-03-061-1/+1
| | | | Continued from 296b4251e3042fe95a9cce1ad7674b708ba92599
* gl: Fixup for last commitSebastian Dröge2017-03-043-3/+3
|
* gl: Fix backwards compat GST_GL_TYPE_* functions/macrosSebastian Dröge2017-03-046-12/+18
| | | | | These have to be macros instead of inline function as they must behave more or less like an integer literal, i.e. include the function call.
* gl/viv-fb: Don't use deprecated symbols and make macros more consistentSebastian Dröge2017-03-042-8/+8
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=778825
* adaptivedemux: answer duration queries for live streamsAlex Ashley2017-03-022-6/+18
| | | | | | | | | | | For duration queries on live streams, adaptivedemux ignores the query. The problem then is that the query is answered by the downstream qtdemux element, with the duration of the currently passing fragment. This commit changes the behaviour of adaptivedemux to answer the duration queries for live streams, returning GST_CLOCK_TIME_NONE. https://bugzilla.gnome.org/show_bug.cgi?id=753879
* adaptivemutex: Fix double mutex unlockThomas Bluemel2017-03-021-5/+5
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=779480
* glcolorconvert: Check return value of gst_gl_context_check_framebuffer_status()Sebastian Dröge2017-02-281-2/+4
| | | | CID 1401588
* gl: Add viv-fb to DIST_SUBDIRS to fix "make distcheck"Sebastian Dröge2017-02-281-1/+1
|
* glutils: Mark private functions as G_GNUC_INTERNALSebastian Dröge2017-02-281-2/+2
|
* glupload: Add support for Vivante DirectTexture uploadsSebastian Dröge2017-02-272-1/+318
| | | | | | | | | | Together with the upcoming gstreamer-imx patch, this allows zerocopy between imxvpudec and other elements and glimagesink. This is losely based on a patch by Haihua Hu <b55597@freescale.com> from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779067
* allocators: Add GstPhysMemoryAllocator abstractionSebastian Dröge2017-02-275-3/+224
| | | | | | | This can be used in a generic way as common interface by all platforms that, in one way or another, pass around physical memory addresses. https://bugzilla.gnome.org/show_bug.cgi?id=779067
* gl: Add support for Vivante EGL FB windowing systemSebastian Dröge2017-02-279-0/+536
| | | | | | | | | This is very similar to how dispmanx on the Raspberry Pi works. Based on a patch by Haihua Hu <b55597@freescale.com> from https://github.com/Freescale/meta-freescale/tree/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad https://bugzilla.gnome.org/show_bug.cgi?id=778825
* glmemory: Use glBlitFramebuffer() instead of glCopyTexImage2D() if availableSebastian Dröge2017-02-232-20/+80
| | | | | | | | | | | | | glBlitFramebuffer() is new GLES3/GL3 API. They are probably often implemented in terms of each other, and glBlitFramebuffer() can potentially be implemented more flexible. Let's use it if available. Also it actually works on imx6 with DirectVIV textures. Based on a patch by Haihua Hu <jared.hu@nxp.com> from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779070
* configure: Remove unused Mali EGL/fbdev_window supportSebastian Dröge2017-02-161-1/+1
| | | | | This existed a long time ago but there's no actual code for this anymore.