Hyunjun Ko [Tue, 21 Nov 2017 05:57:03 +0000 (14:57 +0900)]
msdkenc: handle the MORE_DATA case
If the driver requires more data, just unref the frame at the moment
then retreive/finish the frame after encoding is finished.
This also fixes a memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=790312
Sebastian Dröge [Wed, 22 Nov 2017 08:30:22 +0000 (10:30 +0200)]
decklinkvideosink: Print "Starting" instead of "Stopping" when starting
Matthew Waters [Fri, 17 Nov 2017 06:09:22 +0000 (17:09 +1100)]
nvdec: implement flush/drain
Fixes outputted frame sequence when performing a seek
i.e. when seeking backwards, the first frame after the seek was a frame
from the future. This would result in GstVideoDecoder essentially
marking all the timestamps as essentially bogus and the base class would
attempt to compensate. A visible indication of this was 'decreasing timestamp'
warning after a seek.
https://bugzilla.gnome.org/show_bug.cgi?id=790478
Tim-Philipp Müller [Tue, 21 Nov 2017 19:56:38 +0000 (20:56 +0100)]
curl: fix meson build
Include libsdir so our i18n header there is found.
Nicolas Dufresne [Tue, 21 Nov 2017 17:03:38 +0000 (12:03 -0500)]
kmssink: Add Raspberry Pi (vc4) support
Edward Hervey [Tue, 21 Nov 2017 15:43:03 +0000 (16:43 +0100)]
de265: Don't leak CodecState
Unref it in error case
CID #1417220
Edward Hervey [Tue, 21 Nov 2017 15:39:14 +0000 (16:39 +0100)]
vulkan: Fix out-of-bound read
G_N_ELEMENTS is the *number* of entries, not the maximum entry number
CID #1417215
Edward Hervey [Tue, 21 Nov 2017 15:30:35 +0000 (16:30 +0100)]
curlhttpsrc: Post an error message if no URI was set
Like for other sources
Edward Hervey [Tue, 21 Nov 2017 15:30:17 +0000 (16:30 +0100)]
curl: Add i18n
Edward Hervey [Tue, 21 Nov 2017 14:48:06 +0000 (15:48 +0100)]
tests/srtp: Bump up timeout to 3mins for testcase
This involves generating and processing 65536 packets, let's give it
time to actually complete that.
And a bit of debug to track what's going on.
Edward Hervey [Tue, 21 Nov 2017 14:33:57 +0000 (15:33 +0100)]
smoothstreaming: Handle invalid XML
Nothing guarantees the manifest is valid and will return a root node
Edward Hervey [Tue, 21 Nov 2017 14:33:08 +0000 (15:33 +0100)]
curlhttpsrc: Fix return value
The function returns a gchar * (and not a boolean)
Edward Hervey [Tue, 21 Nov 2017 14:31:05 +0000 (15:31 +0100)]
curlhttpsrc: Don't switch to PAUSED if not URI was specified
Like for other sources
Edward Hervey [Mon, 20 Nov 2017 16:06:07 +0000 (17:06 +0100)]
all: Fix left-shift undefined behaviour
Cast to the target type before shifting (or use macro if available)
Sebastian Dröge [Tue, 31 Oct 2017 08:09:44 +0000 (10:09 +0200)]
msdkh264enc: Implement frame-packing SEI insertion for side-by-side and top-bottom
Ideally this would be supported directly in the Intel MediaSDK but
that's not the case nowadays.
https://bugzilla.gnome.org/show_bug.cgi?id=774920
Hyunjun Ko [Fri, 17 Nov 2017 08:49:16 +0000 (17:49 +0900)]
msdkenc: Fix handling of YUY2, UYVY, BGRA surfaces
https://bugzilla.gnome.org/show_bug.cgi?id=789847
Sebastian Dröge [Thu, 16 Nov 2017 09:32:52 +0000 (11:32 +0200)]
msdkenc: Add support for YV12, YUY2, UYVY and BGRA
By doing conversion with VPP to NV12 before the actual encoding.
https://bugzilla.gnome.org/show_bug.cgi?id=789847
Jun Xie [Thu, 9 Nov 2017 04:36:44 +0000 (12:36 +0800)]
hlsdemux: Fix memory leak caused by double buffer map
https://bugzilla.gnome.org/show_bug.cgi?id=789999
Justin Kim [Mon, 13 Nov 2017 14:01:58 +0000 (23:01 +0900)]
srt: add passphrase and key length properties
For stream encryption, both `passphrase` and `key-length`
properties are required.
https://bugzilla.gnome.org/show_bug.cgi?id=790315
Vivia Nikolaidou [Tue, 14 Nov 2017 16:13:54 +0000 (18:13 +0200)]
avwait: Deserialised timecodes set after caps event now get correct framerate
A deserialised timecode has a framerate of 0/1 by default. That breaks
it when comparing the frames field with another timecode (incoming from
the frame). We were setting the framerate when receiving the caps event,
but not when setting the timecode in set_property, so it was broken for
timecodes set after the caps event.
Also checking if the fps_n we got from the caps event is != 0 before
setting it - also at the caps event.
https://bugzilla.gnome.org/show_bug.cgi?id=790334
Vivia Nikolaidou [Fri, 10 Nov 2017 15:21:43 +0000 (17:21 +0200)]
timecode: Fix incorrect wording in error message
Vivia Nikolaidou [Fri, 10 Nov 2017 15:18:45 +0000 (17:18 +0200)]
avwait: Better handling of deserialised timecode framerates
Now that timecodes support proper serialisation / deserialisation, a
timecode might have an invalid fps_n / fps_d even without using the
target-time-code-string property. Detect those cases and set fps_n/fps_d
properly.
Vivia Nikolaidou [Thu, 9 Nov 2017 10:08:35 +0000 (12:08 +0200)]
decklink: Remove unused "bflags" variable
We are ignoring all its flags anyway, so let's remove it altogether.
Vivia Nikolaidou [Thu, 9 Nov 2017 09:44:17 +0000 (11:44 +0200)]
decklink: Ignore some driver-set timecode flags
The "fields" flag is ignored because currently GStreamer doesn't support
having only top or only bottom fields inside a frame. The "drop frame"
flag is ignored because some occurrences have been spotted where it
wasn't set while it should have been. In practice, when we have 29.97 or
59.94 FPS, it's always drop-frame.
https://bugzilla.gnome.org/show_bug.cgi?id=790112
Vivia Nikolaidou [Wed, 8 Nov 2017 22:16:21 +0000 (00:16 +0200)]
decklink: Don't crash when getting hw serial number doesn't return OK
If the return value isn't OK, it means we might be getting data that
points to an invalid memory address. That shouldn't make us crash.
Justin Kim [Mon, 31 Jul 2017 05:38:34 +0000 (14:38 +0900)]
srt: Introduce SRT source and sink
SRT[0] is an open source transport technology[1] that optimizes
streaming performance across unpredictable networks.
Although SRT is based on UDP, it works like connection-oriented
protocol. However, it doesn't mean that the SRT server or client
is necessarily to link to a receiver or a sender so, here, the
pairs of source and sink elements are introduced.
- srtserversink: SRT server to feed SRT stream
- srtclientsrc: SRT client to get SRT stream from srtserversink
- srtclientsink: SRT client to send SRT stream
- srtserversrc: SRT server to listen from srtclientsink
[0] https://github.com/Haivision/srt
[1] http://www.srtalliance.org/
https://bugzilla.gnome.org/show_bug.cgi?id=785730
Vivia Nikolaidou [Tue, 7 Nov 2017 19:12:42 +0000 (21:12 +0200)]
Revert "decklink: Detect gaps on incoming stream times, issue warnings"
This reverts commit
c1294e10f99adf04a104397da735904634400464.
Was not ready to be pushed yet.
Vivia Nikolaidou [Tue, 7 Nov 2017 19:12:36 +0000 (21:12 +0200)]
Revert "debugutils: Added new jitterer element"
This reverts commit
595254f21b15702d95d5a7cf6e43d29f9c179f43.
Was not ready to be pushed yet.
Vivia Nikolaidou [Tue, 7 Nov 2017 19:12:32 +0000 (21:12 +0200)]
Revert "timecodestamper: LTC from audio"
This reverts commit
c01afab9f7fa7e822dea38e358e92163e8d36282.
Was not ready to be pushed yet
Vivia Nikolaidou [Tue, 7 Nov 2017 19:12:25 +0000 (21:12 +0200)]
Revert "timecodestamper: Modify ltc-add to tc-add"
This reverts commit
6552981b795a024d26bf509893d55970c2294c04.
Was not ready to be pushed yet
Vivia Nikolaidou [Tue, 7 Nov 2017 19:03:22 +0000 (21:03 +0200)]
avwait: Fix crash when explicitly setting end_tc to NULL
If end_tc is NULL, it means that we don't want avwait to stop at any
timecode. When explicitly setting end_tc to NULL, there is no point in
comparing end_tc with start_tc (to see if we'll reject end_tc for being
before start_tc), so the check in question is completely disabled
instead of letting it crash.
Georg Lippitsch [Mon, 2 Oct 2017 16:39:49 +0000 (18:39 +0200)]
timecodestamper: Modify ltc-add to tc-add
It is more general now and also adds TC to internal counter
Georg Lippitsch [Tue, 13 Jun 2017 10:19:19 +0000 (13:19 +0300)]
timecodestamper: LTC from audio
Add support for parsing linear time code from
an audio source using libltc
https://github.com/x42/libltc
The user can now choose between 3 different and independently
running timecode sources. The old override-existing property
has been replaced by timecode-source.
https://bugzilla.gnome.org/show_bug.cgi?id=784295
Vivia Nikolaidou [Wed, 6 Sep 2017 10:16:21 +0000 (13:16 +0300)]
debugutils: Added new jitterer element
This element can be configured to add jitter and/or drift to incoming
buffers' PTS, DTS, or both. Amplitude and average of jitter and drift
are configurable.
https://bugzilla.gnome.org/show_bug.cgi?id=787358
Vivia Nikolaidou [Wed, 26 Apr 2017 16:05:21 +0000 (19:05 +0300)]
decklink: Detect gaps on incoming stream times, issue warnings
When we receive a video or audio buffer, we calculate the next stream
time based on the current stream time + buffer duration. If the next
buffer's stream time is after that, we issue a warning.
This happens because the stream time incoming from Decklink should be
really constant and without gaps. If there is a gap, it means that
something went wrong, e.g. the internal buffer pool is empty (too many
buffers queued up downstream).
https://bugzilla.gnome.org/show_bug.cgi?id=781776
Matthew Waters [Tue, 7 Nov 2017 04:21:43 +0000 (15:21 +1100)]
gl/tests: add some simple shader testing
Making sure that the default shaders compile and are usable
Matthew Waters [Tue, 7 Nov 2017 01:39:58 +0000 (12:39 +1100)]
gltestsrc: guard stop in gl thread
So we don't result in a critical when we've never created the GL context:
gst_gl_context_thread_add: assertion 'GST_IS_GL_CONTEXT (context)' failed
Matthew Waters [Mon, 6 Nov 2017 13:07:42 +0000 (00:07 +1100)]
glbasefilter: actually indicate start internally
Otherwise when we stop, the necessary stop functions will not be called
and things may be leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=788280
Matthew Waters [Mon, 6 Nov 2017 12:19:15 +0000 (23:19 +1100)]
gltestsrc: free in the GL thread on stop
Calling GL functions not on the GL thread may crash in some GL
implementations.
https://bugzilla.gnome.org/show_bug.cgi?id=789665
Hyunjun Ko [Fri, 3 Nov 2017 01:55:28 +0000 (10:55 +0900)]
msdk: fix to build msdkvp8dec with mfx_dispatch
https://bugzilla.gnome.org/show_bug.cgi?id=789751
Edward Hervey [Sat, 4 Nov 2017 06:49:24 +0000 (07:49 +0100)]
dvb: Fix sockaddr_un usage
The sun_path field needs to be NULL-terminated
CID #206004
Tim-Philipp Müller [Thu, 2 Nov 2017 18:32:55 +0000 (18:32 +0000)]
aggregator: add doc blurb for gst_aggregator_pad_is_eos()
Tim-Philipp Müller [Thu, 2 Nov 2017 16:05:12 +0000 (16:05 +0000)]
aggregator: also remove now-unused PadForeachFunc declaration
https://bugzilla.gnome.org/show_bug.cgi?id=785679
Olivier Crête [Wed, 2 Aug 2017 16:08:26 +0000 (12:08 -0400)]
aggregator: Remove pad iterator function
Use new gst_element_foreach_sink_pad() from core instead.
https://bugzilla.gnome.org/show_bug.cgi?id=785679
Tim-Philipp Müller [Thu, 2 Nov 2017 12:46:26 +0000 (12:46 +0000)]
aggregator: use new gst_element_foreach_sink_pad()
Instead of gst_aggregator_iterate_sinkpads() which will
soon be removed.
https://bugzilla.gnome.org/show_bug.cgi?id=785679
Tim-Philipp Müller [Thu, 2 Nov 2017 12:46:26 +0000 (12:46 +0000)]
videoaggregator: use new gst_element_foreach_sink_pad()
Instead of gst_aggregator_iterate_sinkpads() which will
soon be removed.
https://bugzilla.gnome.org/show_bug.cgi?id=785679
Tim-Philipp Müller [Thu, 2 Nov 2017 12:56:57 +0000 (12:56 +0000)]
videoaggregator: add CAST macros
Tim-Philipp Müller [Thu, 2 Nov 2017 12:46:26 +0000 (12:46 +0000)]
audioaggregator: use new gst_element_foreach_sink_pad()
Instead of gst_aggregator_iterate_sinkpads() which will
soon be removed.
https://bugzilla.gnome.org/show_bug.cgi?id=785679
Tim-Philipp Müller [Thu, 2 Nov 2017 12:17:38 +0000 (12:17 +0000)]
gl: use new gst_element_foreach_sink_pad()
Instead of gst_aggregator_iterate_sinkpads() which will
soon be removed.
https://bugzilla.gnome.org/show_bug.cgi?id=785679
Tim-Philipp Müller [Thu, 2 Nov 2017 11:57:24 +0000 (11:57 +0000)]
videoaggregator: drop ABI compat in padding for new struct member
Don't really have to do that while it's in -bad and most users
are in-tree anyway.
Tim-Philipp Müller [Mon, 23 Oct 2017 20:03:22 +0000 (22:03 +0200)]
audioaggregator: make class padding larger
Stefan Sauer [Wed, 1 Nov 2017 14:18:08 +0000 (15:18 +0100)]
aggregator: add more comments
Hyunjun Ko [Mon, 30 Oct 2017 06:06:32 +0000 (15:06 +0900)]
msdk: adds msdkvp8dec
https://bugzilla.gnome.org/show_bug.cgi?id=789751
Sebastian Dröge [Mon, 30 Oct 2017 16:17:40 +0000 (18:17 +0200)]
msdk: Allow building against mfx_dispatcher
E.g. from https://github.com/lu-zero/mfx_dispatch
Matthew Waters [Fri, 22 Sep 2017 04:27:51 +0000 (14:27 +1000)]
vtdec: destroy and create the GL context on start()/stop()
Removes a reference count loop
Nicola Murino [Mon, 23 Oct 2017 08:42:51 +0000 (10:42 +0200)]
vtdec: flush decoder on stop
fix a memory leak if the decoder shut down before EOS
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Nicola Murino [Mon, 23 Oct 2017 08:40:43 +0000 (10:40 +0200)]
vtenc: flush encoder on stop
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Matthew Waters [Sat, 28 Oct 2017 10:34:08 +0000 (21:34 +1100)]
gl/shader: allow setting non-square matrices as uniforms on gles platforms
It is possible with GLES3
Matthew Waters [Sat, 28 Oct 2017 07:33:44 +0000 (18:33 +1100)]
gl/query: split tests and fix some corresponding issues in usage
Thiago Santos [Sat, 14 Oct 2017 20:22:18 +0000 (13:22 -0700)]
adaptivedemux: add replaced flag to not error out on bitrate change
When switching bitrates we set the old streams as cancelled, but it
could also be confused with a cancel due to other reasons (as an error)
and it would lead the element to stop the pipeline mistankely. This
would happen when the stream being replaced was waiting for a manifest
update on live. Ss make it sure that we are stopping for switching
bitrates to avoid erroring out.
https://bugzilla.gnome.org/show_bug.cgi?id=789457
Florent Thiéry [Wed, 25 Oct 2017 14:11:58 +0000 (16:11 +0200)]
configure.ac: fix fdk-aac version check
https://bugzilla.gnome.org/show_bug.cgi?id=789471
Mathieu Duponchelle [Wed, 25 Oct 2017 12:35:12 +0000 (14:35 +0200)]
fdkaacenc: check fdk-aac version in meson.build
configure.ac used to set -DHAVE_FDK_AAC_0_1_4 , which enables
7.1 support.
https://bugzilla.gnome.org/show_bug.cgi?id=789471
Vivia Nikolaidou [Tue, 24 Oct 2017 13:17:28 +0000 (16:17 +0300)]
avwait: Added end-timecode property
avwait can now be configured to stop when a given timecode has been
reached. It will start at the timecode indicated with start-timecode and
end at the timecode indicated with end-timecode. If end-timecode is
NULL (default), the previous functionality is preserved: keep going and
not end.
https://bugzilla.gnome.org/show_bug.cgi?id=789403
Stefan Sauer [Mon, 23 Oct 2017 09:52:38 +0000 (11:52 +0200)]
tests: comment and logging cleanups for audiomixer and aggregator
Remove some references to 'collectpads'. Logs pads through the object variants.
Add some more comments. Remove a left over comment.
Stefan Sauer [Sun, 22 Oct 2017 17:43:17 +0000 (19:43 +0200)]
aggregator: fix type for latency property (int64 -> GStClockTime)
The value is used as GstClockTiem in the code. Adapt the hack^H^H^H^Hcode
in live-adder.
Olivier Crête [Thu, 13 Jul 2017 23:09:43 +0000 (19:09 -0400)]
audioaggregator: Accept buffer with no data, but duration and gap flag
These are produced from GAP events by the base class.
https://bugzilla.gnome.org/show_bug.cgi?id=784846
Olivier Crête [Thu, 13 Jul 2017 23:03:19 +0000 (19:03 -0400)]
aggregator: Don't take flush lock from output thread
Instead just take it in the chain function.
https://bugzilla.gnome.org/show_bug.cgi?id=784911
Olivier Crête [Thu, 13 Jul 2017 22:38:34 +0000 (18:38 -0400)]
aggregator: Don't block if adding to the tail of the queue
If we're adding to the tail of the queue, it's because we're converting
a gap event, so don't block there it means we're calling from the output
thread.
https://bugzilla.gnome.org/show_bug.cgi?id=784911
Jan Alexander Steffens (heftig) [Fri, 20 Oct 2017 09:44:50 +0000 (11:44 +0200)]
openjpeg: Remove compatibility with openjpeg 2.0
Everyone seems to be shipping 2.1 as the oldest v2 version, even debian
oldstable (jessie).
Also remove an unneeded (debug?) #include <stdio.h>.
https://bugzilla.gnome.org/show_bug.cgi?id=788703
Jan Alexander Steffens (heftig) [Thu, 19 Oct 2017 14:36:17 +0000 (16:36 +0200)]
openjpeg: Support building with openjpeg 2.3, simpler
OpenJPEG 2.3 installs its headers to /usr/include/openjpeg-2.3. However,
since libopenjp2.pc seems to provide the right includedir CFLAGS at
least since version 2.1, instead of adding yet another version check,
just remove the subdir and the check for 2.2.
https://bugzilla.gnome.org/show_bug.cgi?id=788703
Jan Alexander Steffens (heftig) [Thu, 19 Oct 2017 14:26:45 +0000 (16:26 +0200)]
Revert "openjpeg: Support building with openjpeg 2.3"
This reverts commit
ef4d6b93e6078b7056c51a928f5620b13e55e323.
A better fix follows.
https://bugzilla.gnome.org/show_bug.cgi?id=788703
Stefan Sauer [Fri, 20 Oct 2017 08:32:23 +0000 (10:32 +0200)]
ipcpipeline: work around gcc bug in struct initializers
Unfortunately we need to use an extra set of parenthesis for each data level.
For details see:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119
Affected versions are e.g.
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
which is the default on ubuntu-trusty. I looks like the fix was never
backported.
Nicola Murino [Wed, 27 Sep 2017 09:37:26 +0000 (11:37 +0200)]
vtenc: fix memory leak
finish encoding and clean buffers queue on flush. This avoid a memory leak
if the element shuts down before EOS
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Jérôme Laheurte [Sun, 1 Oct 2017 17:04:15 +0000 (19:04 +0200)]
Use value instead of version macro when testing for mac OS version
https://bugzilla.gnome.org/show_bug.cgi?id=788404
Andreas Frisch [Thu, 19 Oct 2017 14:01:46 +0000 (16:01 +0200)]
lcms: Add LCMS ICC color correction element
https://bugzilla.gnome.org/show_bug.cgi?id=765927
Jan Alexander Steffens (heftig) [Wed, 27 Sep 2017 07:17:07 +0000 (09:17 +0200)]
m3u8: Refine sequence update debug messages
Actually give some details about why it failed.
https://bugzilla.gnome.org/show_bug.cgi?id=788417
Jan Alexander Steffens (heftig) [Wed, 27 Sep 2017 07:27:12 +0000 (09:27 +0200)]
m3u8: Don't try to match URIs when we have media sequences
It is legal for a stream to reuse segments (marking discontinuities as
needed). Uplynk delivers such playlists for their placeholder loops.
Leave the URI scanning in place for playlists which have no
EXT-X-MEDIA-SEQUENCE tag. This should be harmless since the spec
requires these playlists to not be missing segments (RFC8216 6.2.2),
so we should be always matching on the first segment.
https://bugzilla.gnome.org/show_bug.cgi?id=788417
Jan Alexander Steffens (heftig) [Wed, 27 Sep 2017 07:39:02 +0000 (09:39 +0200)]
m3u8: Ignore empty playlists in check_media_seqnums
Let these error in the immediately following check in gst_m3u8_update.
https://bugzilla.gnome.org/show_bug.cgi?id=788417
Jan Alexander Steffens (heftig) [Fri, 15 Sep 2017 06:57:03 +0000 (08:57 +0200)]
m3u8: Split gst_m3u8_update_check_consistent_media_seqnums
The function was basically one big if-else. Move the branch to the
one caller.
Currently, it's never called with previous_files == NULL. Assert that
this continues.
https://bugzilla.gnome.org/show_bug.cgi?id=788417
Jan Alexander Steffens (heftig) [Fri, 15 Sep 2017 06:42:49 +0000 (08:42 +0200)]
m3u8: Simplify control flow for sequence update
Split the tail from the rest of the loop.
https://bugzilla.gnome.org/show_bug.cgi?id=788417
Sebastian Dröge [Wed, 4 Oct 2017 11:53:35 +0000 (13:53 +0200)]
decklink: Add read-only property to read the device serial number
https://bugzilla.gnome.org/show_bug.cgi?id=788510
Stefan Sauer [Tue, 17 Oct 2017 06:03:02 +0000 (08:03 +0200)]
aggregator: review code related to time level
Add a comment for when the state matters. Use a local var for priv in
update_time_level() to improve readability. Move the our_latency local
var below the query results checks.
Stefan Sauer [Tue, 17 Oct 2017 05:51:51 +0000 (07:51 +0200)]
aggregator: init latency values with 0 instead of FALSE
Michał Górny [Mon, 9 Oct 2017 16:08:47 +0000 (18:08 +0200)]
opencv: Support smoothing only part of the image
https://bugzilla.gnome.org/show_bug.cgi?id=788567
Michał Górny [Wed, 11 Oct 2017 20:03:24 +0000 (22:03 +0200)]
opencv: Add 'kernel' prefix to width/height
Rename width to kernel-width, and height to kernel-height to avoid
ambiguity in the name.
https://bugzilla.gnome.org/show_bug.cgi?id=788567
Thibault Saunier [Mon, 16 Oct 2017 08:43:28 +0000 (10:43 +0200)]
openjpeg: Support building with openjpeg 2.3
And avoid failling the build each time openjpeg releases a new version.
Stefan Sauer [Sun, 15 Oct 2017 18:46:09 +0000 (20:46 +0200)]
aggregator: code cleanup for event and query func
Only look up klass for non serialized events/queries. For events remove
superfluous assignment for the return value in the flushing case.
Stefan Sauer [Sun, 15 Oct 2017 15:46:45 +0000 (17:46 +0200)]
aggregator: simplify pad_event_func for FLUSH_STOP events
We want to skip serialization for FLUSH_STOP events (apparently). We can
simplify the code to add it to the top-level conditions. There was nothing
done in the first code path if the event was FLUSH_STOP.
Stefan Sauer [Sun, 15 Oct 2017 14:57:13 +0000 (16:57 +0200)]
aggregator: drop special casing for eos
Just queue it like any other serialized event. This way we don't need to
check if there still are buffers in the queue.
Validated with the tests and gst-launch-1.0 pipelines.
Stefan Sauer [Sun, 15 Oct 2017 14:51:21 +0000 (16:51 +0200)]
aggregator: add a doc-blob for the event_func
Stefan Sauer [Sun, 15 Oct 2017 14:48:21 +0000 (16:48 +0200)]
aggregator: rename a local variable
The variable tracks wheter the queue is not empty, but num_buffers==0. That
means we have events or queries to process. Rename accordingly.
Stefan Sauer [Sun, 15 Oct 2017 10:17:42 +0000 (12:17 +0200)]
aggregator: remove commented code
The SEGMENT_DONE event does not require any special treatment. This is
commented out in
6efc106a67.
Stefan Sauer [Sun, 15 Oct 2017 10:14:28 +0000 (12:14 +0200)]
aggregator: move the comment for the locks to the lock macros
Looks like some code was inserted afterwards.
Stefan Sauer [Sun, 15 Oct 2017 08:44:44 +0000 (10:44 +0200)]
aggregator: improve section docs
Mention how data ends up in the queues. Document the relation of the pad
functions and the class vmethods to get events and queries.
Stefan Sauer [Sun, 15 Oct 2017 08:29:20 +0000 (10:29 +0200)]
audioaggregator: improve readability in offset calculation
Don't reuse the offset variables will contain a sample offset for an
intermediate time value. Instead add a segment_pos variable of type
GstClockTime for this. Use The clock-time macros to check if we got
a valid time.
Stefan Sauer [Sat, 14 Oct 2017 16:18:44 +0000 (18:18 +0200)]
aggregator: add two more tests for a sequence of data
This verifies that we handle events and queries at the head of the queue and
then buffers.
Stefan Sauer [Sat, 14 Oct 2017 11:26:02 +0000 (13:26 +0200)]
aggregator: refactor the test helper
Make the test helpers use a queue. This lets us also test sequences of events,
queries and data.
Stefan Sauer [Sat, 14 Oct 2017 10:08:19 +0000 (12:08 +0200)]
aggregator: test cleanup
Remove gst_init() from a few tests. Use _OBJECT variants in logging. Remove
arbitrary extra blank lines. Make push_event() more like push_buffer() - set
the event to NULL and add cleanup to _chain_data_clear().
Stefan Sauer [Thu, 5 Oct 2017 18:48:59 +0000 (20:48 +0200)]
audioaggregator: move comment to the place it is meant to be
This probably got shifted after some changes.
Ponnam Srinivas [Sat, 7 Oct 2017 09:27:44 +0000 (14:57 +0530)]
nvbaseenc: Fix Memory leak in error case
https://bugzilla.gnome.org/show_bug.cgi?id=788243