Commit graph

21619 commits

Author SHA1 Message Date
Edward Hervey ee70f830a8 mpegtsdemux: Fix issues with GST_DISABLE_GST_DEBUG
Some variables were hidden or unused
2016-10-11 16:47:37 +02:00
Edward Hervey bcc06d679a mpegtsdemux: Switch to using GstStream/GstStreamCollection
For each MpegTSBaseStream, we have a GstStream object which
subclasses can extend with information.

For each program a GstStreamCollection is created with all
GstStream from each stream.
2016-10-11 12:38:02 +02:00
Edward Hervey dc703b50b3 mpegtsbase: Remove duplicated code
Just have one function to check for private section streams
2016-10-11 12:37:57 +02:00
Arnaud Vrac e8b24f9189 adaptivedemux: fix buffer size print format
https://bugzilla.gnome.org/show_bug.cgi?id=772706
2016-10-11 09:59:03 +01:00
Arnaud Vrac e2dea99dc9 hlsdemux: fix hls demux stream type inheritance
GstHLSDemuxStream inherits GstAdaptiveDemuxStream, not
GstAdaptiveDemux. Fixes memory corruption issues.

https://bugzilla.gnome.org/show_bug.cgi?id=772704
2016-10-11 09:48:54 +01:00
Reynaldo H. Verdejo Pinochet 7dd42aee5b dvb/parsechannels: parse guard interval as a fraction
Fixes wrong default failover when parsing libdvbv5 formatted
channel configuration files.
2016-10-09 08:06:45 -07:00
Reynaldo H. Verdejo Pinochet 5d1b62ccda dvb/parsechannels: add prototypes and reorganize for clarity 2016-10-09 08:06:45 -07:00
Reynaldo H. Verdejo Pinochet 6f4d40ded3 Update my email address 2016-10-09 08:06:45 -07:00
Reynaldo H. Verdejo Pinochet 408b3a87fd dvb: drop trailing whitespace and c&p leftovers 2016-10-09 08:06:45 -07:00
Reynaldo H. Verdejo Pinochet 572c9154db dvb/parsechannels: parse DVB-T hierarchy from v5 config file
Avoids relying on the H/W default when the information
can be extracted from the configuration file.
2016-10-09 08:06:00 -07:00
Reynaldo H. Verdejo Pinochet fd96f42ac4 dvb/parsechannels: parse DVB-T lp and hp code rates 2016-10-09 04:33:03 -07:00
Edward Hervey fb36608ccd mpegts: Also clear packetizer on TIME DISCONT
When dealing with TIME-based input, the incoming stream could have
potentially changed completely.

In order to check whether it did or not, we need to re-check all sections
(PAT, PMT...). If it didn't, we will keep using the existing streams/pad,
and if it did we will act as if there was a program switch.

Fixes HLS streaming with decodebin3/playbin3
2016-10-08 14:14:00 +02:00
Edward Hervey 4aadf50012 adaptivedemux: Calculate values before queue2
In order to calculate the *actual* bitrate for downloading a fragment
we need to take into account the time since we requested the fragment.

Without this, the bitrate calculations (previously reported by queue2)
would be biased since they wouldn't take into account the request latency
(that is the time between the moment we request a specific URI and the
moment we receive the first byte of that request).

Such examples were it would be biased would be high-bandwith but high-latency
networks. If you download 5MB in 500ms, but it takes 200ms to get the first
byte, queue2 would report 80Mbit/s (5Mb in 500ms) , but taking the request
into account it is only 57Mbit/s (5Mb in 700ms).

While this would not cause too much issues if the above fragment represented
a much longer duration (5s of content), it would cause issues with short
ones (say 1s, or when doing keyframe-only requests which are even shorter)
where the code would expect to be able to download up to 80Mbit/s ... whereas
if we take the request time into account it's much lower (and we would
therefore end up doing late requests).

Also calculate the request latency for debugging purposes and further
usage (it could allow us to figure out the maximum request rate for
example).

https://bugzilla.gnome.org/show_bug.cgi?id=733959

https://bugzilla.gnome.org/show_bug.cgi?id=772330
2016-10-08 14:13:51 +02:00
Jimmy Ohn 701e54cecf opencv: Fix memory leak by gst_caps_to_string
gst_caps_to_string function returned allocated memory.
So, It should be freed using g_free function.

https://bugzilla.gnome.org/show_bug.cgi?id=772499
2016-10-06 13:30:17 +03:00
Matthew Waters 9ad4c67578 glwindow: don't use g_thread_join() to join the navigation thread
Using g_thread_join() in _finalize() handlers may result in a deadlock
joining the current thread when the last reference is held by a signal
handler.

e.g.:

error 'Resource deadlock avoided' during 'pthread_join (pt->system_thread, NULL)'

The backtrace looks like this:
[...]
g_thread_join ()
gst_gl_window_finalize ()
gst_gl_window_x11_finalize ()
g_object_unref ()
g_value_unset ()
g_signal_emit_valist ()
g_signal_emit ()
gst_gl_window_send_mouse_event ()
gst_gl_window_mouse_event_cb ()
g_main_dispatch ()
[..]
g_main_loop_run ()
gst_gl_window_navigation_thread ()
g_thread_proxy ()
start_thread ()
clone ()
2016-10-05 18:32:09 +11:00
Matthew Waters 1ffe22240a gluploadelement: fix leak of upload library object
When only linking the element, the upload object will be created from
_transform_caps() but will never be unreffed as the only case is in _stop().

Add an unref if non-NULL to a new finalize handler for this case.
2016-10-05 18:28:48 +11:00
Matthew Waters 4e3cb77fa8 vkdisplay: hold a weakref on the list of windows
It's possible that the window may have been destroyed when a winsys
event comes in for it.

Fixes an assertion in make -C tests/check generic/states.check
2016-10-05 12:20:52 +11:00
Matthew Waters 1b3de55eb1 vkdevice: only unref the gstcontext query if non-NULL
Fixes an assertion in make -C tests/check generic/states.check
2016-10-05 12:20:52 +11:00
Matthew Waters d37a2f13ee tests/gl: make sure all GL commands are executed on the GL thread
e.g. the final glGetError() must also be completed on the GL thread
2016-10-05 12:20:52 +11:00
Matthew Waters e20dab09ea gl/win32: remove egl implementation
It hasn't been used in ages and is dead code.
2016-10-05 12:20:52 +11:00
Wonchul Lee 69b866326e tsdemux: Add conditions to identify ATSC EAC3
https://bugzilla.gnome.org/show_bug.cgi?id=770528
2016-10-03 15:14:54 -04:00
Reynaldo H. Verdejo Pinochet 5771e6a066 dvb/parsechannels: make parsing errors delsys-neutral
DVB is a group of delivery standards but we support
several others. While at this, make message formating
more congruent.
2016-09-30 15:03:22 -07:00
Thibault Saunier 712c1b3c68 meson: Setup pre-commit hooks when configuring 2016-09-30 11:38:24 -03:00
Tim-Philipp Müller dd118c4737 meson: update version 2016-09-30 11:43:29 +01:00
Sebastian Dröge 254db116a1 player: Remove Return documentation for function returning void 2016-09-30 13:42:06 +03:00
Sebastian Dröge 72b7677914 Release 1.9.90 2016-09-30 13:02:55 +03:00
Sebastian Dröge e47b130e0c Update .po files 2016-09-30 12:19:32 +03:00
Sebastian Dröge 7276f7228b po: Update translations 2016-09-30 11:44:47 +03:00
Arun Raghavan cd8f463345 waylandsink: Actually use buffer pool config after setting it up
CID: 1373420
2016-09-30 12:59:20 +05:30
Sergey Mamonov e98575417c fix for https://bugzilla.gnome.org/show_bug.cgi?id=771871 2016-09-29 19:59:28 +02:00
Arun Raghavan a07bc92319 a2dpsink: Drop some dead-code
Left over from the last cleanup.

CID: 1373418
2016-09-29 21:46:56 +05:30
Vincent Penquerc'h ce59031b10 fdkaacenc: fix accessing freed memory
The buffer data is not always copied in _Fill, and will be
read in _DecodeFrame. We unmap at the end of the function,
whether we get there via failure or early out, and keep a
ref to the buffer to ensure we can use it to unmap the
memory even after _finish_frame is called, as it unrefs
the buffer.

Note that there is an access beyond the allocated buffer,
which is only apparent when playing from souphttpsrc (ie,
not from filesrc). This appears to be a bug in the bit
reading code in libfdkaac AFAICT.

https://bugzilla.gnome.org/show_bug.cgi?id=772186
2016-09-29 15:13:07 +01:00
Vincent Penquerc'h 58bb21c463 fdkaacdec: avoid memory corruption on decoding error
The buffer size is expected to be in multiples of the sample size,
not in bytes.

https://bugzilla.gnome.org/show_bug.cgi?id=772186
2016-09-29 15:13:07 +01:00
Vincent Penquerc'h 95de5bf193 fdkaacenc: fix buffer leak
https://bugzilla.gnome.org/show_bug.cgi?id=772186
2016-09-29 15:13:07 +01:00
Vincent Penquerc'h 20caebe6a1 fdkaacenc: set framed=true on src caps
This fixes muxing in MPEG TS.

https://bugzilla.gnome.org/show_bug.cgi?id=772108
2016-09-28 10:04:24 +01:00
Gwang Yoon Hwang b75ec0c433 gl/dispmanx: Implements set_render_rectangle to adjust the position of window
We cannot set the x, y coordinate of the video frame at the dispmanx at
this point. We need to teach dispmanx backend to understand about
set_render_rectangle API to draw a video with other UI.

This patch keeps the current behavior which places video frame at the
center of the display if there is no set_render_rectangle call to the
dispmanx window.

https://bugzilla.gnome.org/show_bug.cgi?id=766018
2016-09-28 17:08:52 +10:00
Matthew Waters c200e47ef8 gl: add necessary padding bytes to all public structs 2016-09-28 17:08:52 +10:00
Vincent Penquerc'h 28a5826fa4 fdkaacenc: set transmux on the fdkaac lib
Not doing so will fail to decode in a simple fdkaacenc ! fdkaacdec
pipeline, though would work if this goes through a file.

https://bugzilla.gnome.org/show_bug.cgi?id=772067
2016-09-27 17:20:18 +01:00
Vincent Penquerc'h fed624a208 fdkaacdec: do not error out of out of sync return
The docs say we should continue feeding in data and decoding

https://bugzilla.gnome.org/show_bug.cgi?id=772067
2016-09-27 17:20:18 +01:00
Vincent Penquerc'h a828b12ca8 fdkaac: fix error with AOT_MP2_AAC_LC removed from libfdkaac API
AOT_MP2_AAC_LC is a "pseudo AOT" which got removed after 0.1.4,
and maps to AOT_AAC_LC.

Remove mpegversion 2 from th caps to match.

https://bugzilla.gnome.org/show_bug.cgi?id=772067
2016-09-27 17:20:18 +01:00
Tim-Philipp Müller 80f3bf7ac2 meson: bluez: fix build 2016-09-26 16:30:02 +01:00
Sebastian Dröge 82edbde1fc decklink: Update to SDK 10.8
OSX and Linux only, Windows needs someone on Windows to convert the .idl
files to C source code.
2016-09-26 16:39:18 +03:00
Olivier Crête 1b0cdcdf3e fdkaac: fix mixup setting interleaved output
https://bugzilla.gnome.org/show_bug.cgi?id=770455
2016-09-26 11:43:22 +01:00
Sebastian Dröge fa31ea7ac3 player: Only report the initial duration if the query was successful 2016-09-26 13:26:36 +03:00
Kyungyong Kim 214a041e13 h265parse: Fix parsing of multiple NALs in the hvcC box
https://bugzilla.gnome.org/show_bug.cgi?id=771970
2016-09-26 09:35:25 +03:00
Tim-Philipp Müller 4b4b306795 bluez: dist new header file
Fixes distcheck.
2016-09-25 17:38:15 +01:00
Arun Raghavan 7e22db6542 a2dpsink: Don't try to set device caps on avdtpsink
We can't actually configure the transport, so we should only be working
with whatever we get.
2016-09-24 23:24:28 +05:30
Arun Raghavan b2ed98d0a3 avdtpsink: Chain event handling up to basesink 2016-09-24 23:24:28 +05:30
Arun Raghavan 5a70912a50 bluez: Clean up and make a2dpsink functional again
Was crashing, and had a lot of cruft (like a capsfilter and a fakesink)
that was no longer required.
2016-09-24 23:24:28 +05:30
Arun Raghavan 967046d3a5 avdtpsrc: Add support for AVRCP metadata
Metadata from AVRCP is emitted as tags, and the duration from AVRCP is
used in queries by avdtpsrc.
2016-09-24 23:24:28 +05:30