Andoni Morales Alastruey [Tue, 27 Aug 2013 13:03:54 +0000 (15:03 +0200)]
videoencoder: fix forwarding of GstForceKeyUnit events
Use the frame id to match the output forced keyframe with
the event that forced it.
https://bugzilla.gnome.org/show_bug.cgi?id=706885
Tim-Philipp Müller [Mon, 26 Aug 2013 10:44:06 +0000 (11:44 +0100)]
vorbisenc: remove unused variables
Wim Taymans [Mon, 26 Aug 2013 09:47:40 +0000 (11:47 +0200)]
rtcpbuffer: do additional packet checks
Check the packet size and avoid crashing on malformed packets.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=655727
Wim Taymans [Mon, 26 Aug 2013 09:46:11 +0000 (11:46 +0200)]
rtcpbuffer: improve bye parsing
It is an error to ask for a non-existing BYE SSRC, the caller should
check the SSRC count first.
Michael Olbrich [Fri, 23 Aug 2013 16:06:36 +0000 (18:06 +0200)]
dmabuf: fix mmap counting
A successful gst_dmabuf_mem_map must always increment the mmap count.
Otherwise the first gst_dmabuf_mem_unmap will unmap the memory and all
other user will access unmapped memory.
https://bugzilla.gnome.org/show_bug.cgi?id=706680
Alessandro Decina [Mon, 26 Aug 2013 06:08:32 +0000 (08:08 +0200)]
vorbisenc: implement flushing
Sebastian Dröge [Sun, 25 Aug 2013 08:25:43 +0000 (10:25 +0200)]
videoencoder: Make sure to return TRUE if the same caps are set again
Tim-Philipp Müller [Fri, 23 Aug 2013 18:47:57 +0000 (19:47 +0100)]
audioconvert: improve fixate_format function readability even more
Do the flags comparisons only once and re-use the result.
Tim-Philipp Müller [Fri, 23 Aug 2013 18:41:32 +0000 (19:41 +0100)]
audioconvert: simplify fixate_format function some more
If we have no output format yet, any format will do. The
!out_info condition existed in every path, so just split
it our for clarity. KISS.
Tim-Philipp Müller [Fri, 23 Aug 2013 18:05:41 +0000 (19:05 +0100)]
audioconvert: make fixate function more readable
Use some variables to replace accessor macros to make code
a little bit mor readable.
Tim-Philipp Müller [Fri, 23 Aug 2013 17:52:44 +0000 (18:52 +0100)]
audioconvert: remove unnecessary deep nesting in fixate function
Makes it easier to read and removes two levels of indentation.
Sebastian Dröge [Fri, 23 Aug 2013 17:20:03 +0000 (19:20 +0200)]
videoencoder: Only set the caps when they actually changed
Sebastian Dröge [Fri, 23 Aug 2013 17:17:16 +0000 (19:17 +0200)]
audioencoder: Simplify pushing of pending events during negotiation
And also don't send the same caps twice.
Sebastian Dröge [Fri, 23 Aug 2013 17:10:48 +0000 (19:10 +0200)]
audiodecoder: Fix last commit and simplify code a lot
Sebastian Dröge [Fri, 23 Aug 2013 16:51:59 +0000 (18:51 +0200)]
audioconvert: If we have to lose precision, try to lose as less precision as possible
https://bugzilla.gnome.org/show_bug.cgi?id=706624
Edward Hervey [Fri, 23 Aug 2013 14:59:30 +0000 (16:59 +0200)]
audiodecoder: Fix previous commit
(sorry)
Edward Hervey [Fri, 23 Aug 2013 13:22:43 +0000 (15:22 +0200)]
videocoder: Don't push out identical caps
This avoids triggering plenty of extra code/methods/overhead downstream when
we can just quickly check whenever we want to set caps whether they are
identical or not
https://bugzilla.gnome.org/show_bug.cgi?id=706600
Edward Hervey [Fri, 23 Aug 2013 13:22:05 +0000 (15:22 +0200)]
audiodecoder: Don't push out identical caps
This avoids triggering plenty of extra code/methods/overhead downstream when
we can just quickly check whenever we want to set caps whether they are
identical or not
https://bugzilla.gnome.org/show_bug.cgi?id=706600
Sebastian Dröge [Thu, 22 Aug 2013 15:33:45 +0000 (17:33 +0200)]
oggdemux: Update segment.base with the chain's start time too
Fixes playback of chained ogg files.
https://bugzilla.gnome.org/show_bug.cgi?id=706569
Sebastian Dröge [Thu, 22 Aug 2013 12:18:29 +0000 (14:18 +0200)]
typefind: Add typefinder for video/x-pva
https://bugzilla.gnome.org/show_bug.cgi?id=158719
Tim-Philipp Müller [Wed, 21 Aug 2013 15:02:00 +0000 (16:02 +0100)]
gst-play: move current playlist index along in about-to-finish
Tim-Philipp Müller [Wed, 21 Aug 2013 14:39:30 +0000 (15:39 +0100)]
gst-play: add --gapless mode
so we can test about-to-finish.
Wim Taymans [Wed, 21 Aug 2013 10:34:24 +0000 (12:34 +0200)]
rtpbasedepayload: mark DISCONT on buffer in all cases
Always mark discont on the input buffer when we detect a seqnum
discont and not only when we previously marked ourselves DISCONT.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=706422
Rico Tzschichholz [Wed, 21 Aug 2013 10:20:28 +0000 (11:20 +0100)]
videometa: fix syntax error
Matthieu Bouron [Wed, 14 Aug 2013 15:20:45 +0000 (16:20 +0100)]
tag: id3: handle publisher, interpreted-by and musical-key tags
https://bugzilla.gnome.org/show_bug.cgi?id=705999
Matthieu Bouron [Thu, 15 Aug 2013 10:03:47 +0000 (11:03 +0100)]
tag: add musical-key tag
https://bugzilla.gnome.org/show_bug.cgi?id=705999
Sebastian Dröge [Mon, 19 Aug 2013 08:39:19 +0000 (10:39 +0200)]
Revert "pbutils: allow describing unfixed caps if they share the same media type"
This reverts commit
065f1603b0f1d2adc8477bf1f3ebe2b154885d89.
This is not considered the correct solution, see:
https://bugzilla.gnome.org/show_bug.cgi?id=703378
Carlos Rafael Giani [Fri, 16 Aug 2013 11:22:33 +0000 (13:22 +0200)]
typefind: improved and extended typefinder for module music formats
introduced new caps: audio/x-mod, modtype : { xm, okt, mod, ptm, ... }
https://bugzilla.gnome.org/show_bug.cgi?id=706061
Olivier Crête [Mon, 15 Jul 2013 20:13:11 +0000 (16:13 -0400)]
rtpbaseaudiopayload: Avoid copying the data
Tim-Philipp Müller [Sat, 17 Aug 2013 15:58:06 +0000 (16:58 +0100)]
tests: fix uridecodebin signal used in playback test6
"new-decoded-pad" no longer exists.
Tim-Philipp Müller [Sat, 17 Aug 2013 15:53:30 +0000 (16:53 +0100)]
tools: add man page for new gst-play-1.0 utility
https://bugzilla.gnome.org/show_bug.cgi?id=553520
Tim-Philipp Müller [Wed, 14 Aug 2013 16:04:19 +0000 (17:04 +0100)]
tools: add simple command-line gst-play utility for testing purposes
Differs from a plain gst-launch-1.0 playbin uri=... pipeline in that
it can take multiple arguments and as such allows testing of things
like gapless playback, switching between different formats and the
like. Very minimal at this point, we'll probably want to add
interactive controls and more options at some point.
https://bugzilla.gnome.org/show_bug.cgi?id=553520
Tim-Philipp Müller [Fri, 16 Aug 2013 12:59:35 +0000 (13:59 +0100)]
rtsp: fix direct includes
https://bugzilla.gnome.org/show_bug.cgi?id=695889
Tim-Philipp Müller [Fri, 16 Aug 2013 12:55:33 +0000 (13:55 +0100)]
pbutils: fix direct includes
https://bugzilla.gnome.org/show_bug.cgi?id=695889
Tim-Philipp Müller [Fri, 16 Aug 2013 12:47:31 +0000 (13:47 +0100)]
video: make direct includes work again
Not nice to break people's code if we can avoid it. Could
add a warning in the next cycle, and then require single
includes in the cycle after.
https://bugzilla.gnome.org/show_bug.cgi?id=695889
Tim-Philipp Müller [Fri, 16 Aug 2013 12:06:58 +0000 (13:06 +0100)]
audio: make direct includes work again
Not nice to break people's code if we can avoid it. Could
add a warning in the next cycle, and then require single
includes in the cycle after.
https://bugzilla.gnome.org/show_bug.cgi?id=695889
Tim-Philipp Müller [Fri, 16 Aug 2013 13:12:32 +0000 (14:12 +0100)]
tests: add test-header-compile script
https://bugzilla.gnome.org/show_bug.cgi?id=695889
Sebastian Dröge [Fri, 16 Aug 2013 10:12:05 +0000 (12:12 +0200)]
Revert "typefind: improved and extended typefinder for module music formats"
This reverts commit
4c79f35c7abc78bf4d325a8cd2059e8832ea0b34.
It causes some MP4 files to be detected as mod files.
Carlos Rafael Giani [Tue, 13 Aug 2013 21:18:34 +0000 (23:18 +0200)]
typefind: improved and extended typefinder for module music formats
introduced new caps: audio/x-mod, modtype : { xm, okt, mod, ptm, ... }
https://bugzilla.gnome.org/show_bug.cgi?id=706061
Sebastian Dröge [Thu, 15 Aug 2013 12:15:05 +0000 (14:15 +0200)]
videodecoder: Don't reset too much if we're resetting because of a soft-flush
Fixes reverse playback with Ogg/Theora.
Sebastian Dröge [Thu, 15 Aug 2013 11:15:05 +0000 (13:15 +0200)]
theora: Use new video codec base classes' flush vfunc
Sebastian Dröge [Thu, 15 Aug 2013 10:45:35 +0000 (12:45 +0200)]
videodecoder: Don't reset decoder on segment events
Either there was a flush before that resets everything anyway,
or resetting would make us lose information we might need if
it's just a segment update.
Sebastian Dröge [Thu, 15 Aug 2013 10:44:56 +0000 (12:44 +0200)]
video{en,de}coder: Add new flush vfunc as a replacement for reset
Sebastian Dröge [Wed, 14 Aug 2013 14:55:55 +0000 (16:55 +0200)]
video{en,de}coder: Revert to old ::reset() behaviour and deprecate it
Jie Yang [Thu, 15 Aug 2013 08:12:45 +0000 (16:12 +0800)]
typefind: ADTS/AAC, find more aac sync to select correctly
https://bugzilla.gnome.org/show_bug.cgi?id=691462
Sebastian Dröge [Wed, 14 Aug 2013 13:43:23 +0000 (15:43 +0200)]
playsink: Don't set sink to NULL if a new one is set while the old one is still in use
Tim-Philipp Müller [Wed, 14 Aug 2013 10:43:50 +0000 (11:43 +0100)]
gio: fix printf format compiler warning
Tim-Philipp Müller [Tue, 13 Aug 2013 19:39:15 +0000 (20:39 +0100)]
discoverer: document that "finished" and "discovered" signals are only emitted in async mode
https://bugzilla.gnome.org/show_bug.cgi?id=660195
Edward Hervey [Tue, 13 Aug 2013 15:39:34 +0000 (17:39 +0200)]
check: Update .gitignore
Edward Hervey [Tue, 13 Aug 2013 15:39:25 +0000 (17:39 +0200)]
.gitignore: Ignore files from automake test-driver
Sebastian Dröge [Tue, 13 Aug 2013 11:43:32 +0000 (13:43 +0200)]
playbin-complex: Set fakesink as audio-sink to not use a real audio device
https://bugzilla.gnome.org/show_bug.cgi?id=705157
Sreerenj Balachandran [Mon, 12 Aug 2013 10:47:38 +0000 (13:47 +0300)]
typefind: Add typefind function for WebP image format
https://bugzilla.gnome.org/show_bug.cgi?id=705826
Jonathan Matthew [Sat, 3 Aug 2013 15:01:25 +0000 (01:01 +1000)]
gio: make better use of the cached buffer
When playing mp3 files from a smb server, we get 64k read requests
that mostly overlap. Without using the cache to partially satisfy
these, we send these requests straight to the server, resulting in
a lot more network traffic than necessary.
https://bugzilla.gnome.org/show_bug.cgi?id=705415
Youness Alaoui [Fri, 26 Jul 2013 00:47:02 +0000 (20:47 -0400)]
audiodecoder: Clear taglist on reception of a STREAM_START event
https://bugzilla.gnome.org/show_bug.cgi?id=705109
Youness Alaoui [Tue, 30 Jul 2013 21:37:43 +0000 (17:37 -0400)]
videodecoder: Clear taglist on reception of a STREAM_START event
https://bugzilla.gnome.org/show_bug.cgi?id=705109
Sebastian Dröge [Thu, 8 Aug 2013 10:11:07 +0000 (12:11 +0200)]
streamsynchronizer: Set proxy flags on the pads and use default event handler for simplicity
https://bugzilla.gnome.org//show_bug.cgi?id=705555
Wim Taymans [Tue, 6 Aug 2013 13:42:55 +0000 (15:42 +0200)]
rtcpbuffer: calculate FB packet length correctly
Thibault Saunier [Tue, 6 Aug 2013 13:11:05 +0000 (15:11 +0200)]
adder: Raw buffers DTS should always be CLOCK_TIME_NONE
Thibault Saunier [Mon, 5 Aug 2013 14:14:22 +0000 (16:14 +0200)]
adder: set DTS and PTS, sync on DTS
Arnaud Vrac [Fri, 2 Aug 2013 18:08:29 +0000 (20:08 +0200)]
playbin: check for tags on the right combiner instance
The get-tags actions are not working in all cases, because the track
number is used to resolve the stream combiner instead of the stream
type.
https://bugzilla.gnome.org/show_bug.cgi?id=705369
David Schleef [Fri, 2 Aug 2013 23:57:43 +0000 (16:57 -0700)]
tests: move orc removal to distclean
David Schleef [Fri, 2 Aug 2013 21:33:24 +0000 (14:33 -0700)]
configure: create dir tests/check/orc
This is required now that subdir-objects is used, since automake
expects to create a .deps directory inside.
Lubosz Sarnecki [Fri, 2 Aug 2013 12:11:01 +0000 (14:11 +0200)]
build: add subdir-objects to AM_INIT_AUTOMAKE
Fixes warnings with automake 1.14
https://bugzilla.gnome.org/show_bug.cgi?id=705350
Edward Hervey [Fri, 2 Aug 2013 09:00:06 +0000 (11:00 +0200)]
videotestsrc: Demote ERROR statement back to DEBUG
It crawled in with david's latest commit
Edward Hervey [Fri, 2 Aug 2013 06:22:59 +0000 (08:22 +0200)]
videodecoder: Revert previous commit
The 'hard' argument of reset changed signification after the latest
start/stop/reset refactoring.
Edward Hervey [Thu, 1 Aug 2013 14:01:30 +0000 (16:01 +0200)]
videodecoder: Pass on 'hard' argument from _flush to _reset
When most of the code was moved from _flush() to _reset() the 'hard'
argument was no longer propagated.
David Schleef [Wed, 31 Jul 2013 18:26:58 +0000 (11:26 -0700)]
videotestsrc: Add pinwheel and spokes patterns
Tim-Philipp Müller [Tue, 30 Jul 2013 14:58:26 +0000 (15:58 +0100)]
pbutils: private/teletext -> application/x-teletext
Tim-Philipp Müller [Mon, 29 Jul 2013 18:41:43 +0000 (19:41 +0100)]
po: update translations
Sjoerd Simons [Fri, 26 Jul 2013 13:29:05 +0000 (15:29 +0200)]
oggdemux: Prevent seeks when _SCHEDULING_FLAG_SEQUENTIAL is set
Don't go into pull mode when the upstream scheduling flags indicate
seeks should be avoided by setting GST_SCHEDULING_FLAG_SEQUENTIAL.
https://bugzilla.gnome.org/show_bug.cgi?id=704929
Sebastian Dröge [Mon, 29 Jul 2013 12:47:33 +0000 (14:47 +0200)]
Back to development
Sebastian Dröge [Mon, 29 Jul 2013 11:37:00 +0000 (13:37 +0200)]
Release 1.1.3
Sebastian Dröge [Mon, 29 Jul 2013 11:36:51 +0000 (13:36 +0200)]
Update .po files
Sebastian Dröge [Mon, 29 Jul 2013 10:11:38 +0000 (12:11 +0200)]
oggdemux: Don't swap start/stop for negative rates in the SEGMENT query
Sebastian Dröge [Mon, 29 Jul 2013 09:40:57 +0000 (11:40 +0200)]
tagdemux: Properly implement seeking if tagdemux is driving the pipeline
https://bugzilla.gnome.org/show_bug.cgi?id=705062
Sebastian Dröge [Mon, 29 Jul 2013 08:46:01 +0000 (10:46 +0200)]
oggdemux: Implement SEGMENT query
Matej Knopp [Sun, 28 Jul 2013 21:38:06 +0000 (23:38 +0200)]
videorate: ignore GAP event
videorate automatically fills gaps with the previous frames.
https://bugzilla.gnome.org/show_bug.cgi?id=705048
Matej Knopp [Sun, 28 Jul 2013 21:38:17 +0000 (23:38 +0200)]
audiorate: ignore GAP event
audiorate automatically fills gaps with silence.
https://bugzilla.gnome.org/show_bug.cgi?id=705048
Sebastian Dröge [Sun, 28 Jul 2013 11:52:28 +0000 (13:52 +0200)]
multisocketsink: Fix handling of partial writes and WOULD_BLOCK errors
Sebastian Dröge [Sun, 28 Jul 2013 11:23:41 +0000 (13:23 +0200)]
multifdsink: Update current time after every write
Each write will update the last_activity_time and otherwise we would
compare against a too old current time and immediately timeout because
current time is smaller than last activity time (overflow).
Sebastian Dröge [Sun, 28 Jul 2013 11:20:48 +0000 (13:20 +0200)]
multihandlesink: Update current time after every write
Each write will update the last_activity_time and otherwise we would
compare against a too old current time and immediately timeout because
current time is smaller than last activity time (overflow).
Edward Hervey [Sat, 27 Jul 2013 10:16:15 +0000 (12:16 +0200)]
pbutils: Add description for teletext
Matej Knopp [Fri, 26 Jul 2013 12:28:41 +0000 (14:28 +0200)]
audiodecoder: do not leak input caps
https://bugzilla.gnome.org/show_bug.cgi?id=704926
Edward Hervey [Fri, 2 Nov 2012 09:04:16 +0000 (10:04 +0100)]
videotestsrc: Initialize GstVideoInfo in ::start()
Otherwise we end up with bogus values and races
Edward Hervey [Fri, 2 Nov 2012 09:03:38 +0000 (10:03 +0100)]
videotestsrc: Don't error on not-negotiated
Base classes will handle re-negotiation if needed, but emitting an
error message will make applications stop.
Edward Hervey [Wed, 12 Sep 2012 10:41:01 +0000 (12:41 +0200)]
ext/gst: Ensure default query/event handlers are used
And in some cases, just remove our implementation that does nothing
Sebastian Dröge [Fri, 26 Jul 2013 09:02:32 +0000 (11:02 +0200)]
appsrc: Also provide function API for current-level-bytes and integrate into the docs
Changbok Chea [Fri, 26 Jul 2013 06:00:44 +0000 (15:00 +0900)]
appsrc: Add "current-level-bytes" property
https://bugzilla.gnome.org/show_bug.cgi?id=704774
Vincent Penquerc'h [Thu, 25 Jul 2013 19:03:50 +0000 (20:03 +0100)]
codec-utils: add a gst_codec_utils_aac_get_index_from_sample_rate
It maps a sample rate to a well known AAC sample rate index.
Sebastian Dröge [Fri, 26 Jul 2013 08:22:32 +0000 (10:22 +0200)]
videodecoder/encoder: Call reset() always between start() and stop() and never outside
Sebastian Dröge [Thu, 25 Jul 2013 12:25:08 +0000 (14:25 +0200)]
videoencoder/decoder: Call reset() before start() too
Tim-Philipp Müller [Thu, 25 Jul 2013 10:56:07 +0000 (11:56 +0100)]
typefinding: don't detect mp3 based on just a few bits
Remove dodgy code that detects mp3 with as little as
a valid frame sync at the beginning. This was only used
in some unit tests in -good where there were only a few
bytes after the id3 tag. We now require at least two
frame headers.
Fixes mis-dection of text files with UTF-16 LE BOM as mp3.
https://bugzilla.gnome.org/show_bug.cgi?id=681368
Sebastian Dröge [Thu, 25 Jul 2013 12:11:28 +0000 (14:11 +0200)]
audio/videodecoder: Rename variable in macro from dec to __dec
Otherwise it might shadow another variable in the outside scope
and cause interesting side effects.
Sebastian Dröge [Thu, 25 Jul 2013 11:31:07 +0000 (13:31 +0200)]
theoraenc: Clean up handling of reset/flushing/start/stop
Sebastian Dröge [Thu, 25 Jul 2013 11:29:22 +0000 (13:29 +0200)]
theoradec: Clean up handling of reset/flushing/start/stop
Sebastian Dröge [Thu, 25 Jul 2013 08:53:14 +0000 (10:53 +0200)]
videoencoder: There's no point in resetting the encoder when the caps change
The subclass will be called with set_format() and there it can drain
if necessary and reset whatever is necessary. This is the same behaviour
as for the video decoder.
Sebastian Dröge [Thu, 25 Jul 2013 08:46:04 +0000 (10:46 +0200)]
videoencoder: Reset internal state and segments on FLUSH_STOP
https://bugzilla.gnome.org/show_bug.cgi?id=656007
Sebastian Dröge [Thu, 25 Jul 2013 08:42:56 +0000 (10:42 +0200)]
videoencoder: Refactor GstVideoEncoder::reset() handling a bit
Let gst_video_encoder_reset() call it as would be intuitive and
only call it indirectly from gst_video_encoder_drain(). Now it
actually makes sense.
Sebastian Dröge [Thu, 25 Jul 2013 08:20:01 +0000 (10:20 +0200)]
videodecoder: Refactor GstVideoDecoder::reset() handling a bit
Let gst_video_decoder_reset() call it as would be intuitive and
only call it indirectly from gst_video_decoder_flush(). Now it
actually makes sense.
Wim Taymans [Wed, 24 Jul 2013 07:24:45 +0000 (09:24 +0200)]
videodecoder: Take DTS as PTS for keyframes as a last resort if we can't calculate any PTS
https://bugzilla.gnome.org/show_bug.cgi?id=704193