Stefan Kost [Fri, 13 Aug 2010 14:23:46 +0000 (17:23 +0300)]
Automatic update of common submodule
From 3e8db1d to ec60217
Stefan Kost [Fri, 13 Aug 2010 10:59:08 +0000 (13:59 +0300)]
plugin-docs: the <TITLE> tag should come right after <FILE>.
Fixes missing plugin entries. If the object name, e.g. GstGIOSrc came before the
title, we ended up with differnt section_id in the generated docbook.
Stefan Kost [Thu, 12 Aug 2010 15:14:38 +0000 (18:14 +0300)]
appsrc: fix the classification.
Change "Src" into "Source" (we use that elsewhere). I did not keept "Src" as it
is quite unlikely that someone plugs appsrc by searching the registry by classification.
Stefan Kost [Thu, 12 Aug 2010 12:26:08 +0000 (15:26 +0300)]
alsa: remove 'dir' out variable
Alsa seems to expect that we initialize it. Remove the variable and pass NULL
as we actually don't use it. In alsasink also #ifdef one section that is
grabing diagnostics to be disabled, when logging is disabled (the code was
using the out parameter as well).
Fixes #626125
Tim-Philipp Müller [Thu, 12 Aug 2010 10:46:11 +0000 (11:46 +0100)]
ffmpegcolorspace: remove chroma-site and color-matrix fields from RGB caps
Mark Nauwelaerts [Wed, 11 Aug 2010 10:49:40 +0000 (12:49 +0200)]
streamsynchronizer: prevent deadlock with _chain when deactivating pad
Fixes #626581.
Stefan Kost [Thu, 12 Aug 2010 09:50:27 +0000 (12:50 +0300)]
playback: bad bad editor, readd missing line to fix the build
Stefan Kost [Thu, 12 Aug 2010 09:08:35 +0000 (12:08 +0300)]
tests/playback: due to popular demand mv them from examples to icles
The tests are toys and not reference demos.
Mark Nauwelaerts [Thu, 12 Aug 2010 08:02:56 +0000 (10:02 +0200)]
streamsynchronizer: send preroll buffer when delaying preroll eos
That is, if eos is received which will not be forwarded, and the stream
has not yet seen any data, then send a buffer to preroll downstream
(which might otherwise be accomplished by the eos event).
Mark Nauwelaerts [Thu, 12 Aug 2010 08:01:03 +0000 (10:01 +0200)]
playsink: remove some heuristic in chain configuration code
.. since queues are now inserted unconditionally.
Mark Nauwelaerts [Wed, 11 Aug 2010 08:27:35 +0000 (10:27 +0200)]
playbin2/playsink: update subtitle handling for streamsynchronizer
Streamsynchronizer excepts to see stream-changed msg for all streams, but to
arrange for this, video and subtitle streams need to be decoupled by means
of queues (due to pad blocks that may occur).
Fixes #626463.
Mark Nauwelaerts [Tue, 10 Aug 2010 11:06:32 +0000 (13:06 +0200)]
playsink: always have a queue in chain head to aid streamsynchronizer
Specifically, as the latter may have one thread pushing EOS to several streams,
that needs to be decoupled into various thread to prevent preroll hanging
problems.
Mark Nauwelaerts [Tue, 10 Aug 2010 09:28:43 +0000 (11:28 +0200)]
streamsynchronizer: drop lock when pushing eos downstream
... to prevent deadlock (e.g. upon seek) when downstream waits in preroll.
Mark Nauwelaerts [Tue, 10 Aug 2010 09:19:59 +0000 (11:19 +0200)]
streamsynchronizer: clear stream eos state on FLUSH and new stream
Mark Nauwelaerts [Tue, 10 Aug 2010 09:19:22 +0000 (11:19 +0200)]
playsink: set READY sinks to NULL before freeing chain upon failure
Stefan Kost [Thu, 12 Aug 2010 07:49:59 +0000 (10:49 +0300)]
playback: move tests from plugin-dir to tests/examples/playback
Sebastian Dröge [Wed, 11 Aug 2010 16:08:59 +0000 (18:08 +0200)]
xvimagesink: Suggest caps with different width/height if bufferalloc is called with impossible width/height
Sebastian Dröge [Wed, 11 Aug 2010 15:16:13 +0000 (17:16 +0200)]
videoscale: Add some debug output to the videoscale negotiation test
Sebastian Dröge [Wed, 11 Aug 2010 15:03:11 +0000 (17:03 +0200)]
videoscale: Only set the PAR if the caps already had a PAR
Otherwise we're producing different caps and basetransform thinks that it
can't passthrough buffer allocations, etc.
In 0.11 all video caps really should have the PAR set...
Sebastian Dröge [Wed, 11 Aug 2010 15:00:54 +0000 (17:00 +0200)]
xvimagesink: It's not a bad thing if the preferred video format needs less bytes per frame
Thiago Santos [Wed, 11 Aug 2010 11:47:57 +0000 (08:47 -0300)]
tags: exif: Fix bug in inner ifd parsing
Do not use the result of inner ifd's parsing to increment
the current tag index. The reasons are:
1) The function returns a boolean.
2) The inner ifd's tags are in a separate table, so they shouldn't
interfere with its parent ifd table parsing.
Thiago Santos [Wed, 11 Aug 2010 11:03:44 +0000 (08:03 -0300)]
tag: exif: Put ExifVersion in the correct IFD
ExifVersion is from the 'exif' ifd, not the 0th ifd.
Thiago Santos [Tue, 10 Aug 2010 22:50:42 +0000 (19:50 -0300)]
tag: exif: Refactor functions declaration
Use some macros to declare serialization/deserialization
functions prototypes.
Thiago Santos [Tue, 10 Aug 2010 22:30:11 +0000 (19:30 -0300)]
tag: exif: Add another DateTime mapping
datetimes can also be represented by the 0x132 tag. Map it, too.
Thiago Santos [Tue, 10 Aug 2010 14:29:22 +0000 (11:29 -0300)]
tag: exif: Fix bug on image-orientation parsing
Do not skip one extra tag when parsing image-orientation tags.
Tim-Philipp Müller [Tue, 10 Aug 2010 09:57:17 +0000 (10:57 +0100)]
Automatic update of common submodule
From bd2054b to 3e8db1d
Sebastian Dröge [Tue, 10 Aug 2010 09:52:30 +0000 (11:52 +0200)]
exiftag: Compare with G_MAXUINT16 instead of -1
Fixes a compiler warning on the OS X buildbot.
Thiago Santos [Mon, 9 Aug 2010 21:04:08 +0000 (18:04 -0300)]
xmp: exif: Adds GST_TAG_APPLICATION_NAME mappings
adds xmp and exif helper library mappings for GST_TAG_APPLICATION_NAME
tag.
Thiago Santos [Wed, 4 Aug 2010 16:01:21 +0000 (13:01 -0300)]
tag: exif: Write ExifVersion tag
Write ExifVersion tag unconditionally when creating exif
buffers. Might help other applications parsing of this data.
Thiago Santos [Wed, 4 Aug 2010 16:02:52 +0000 (13:02 -0300)]
tests: tag: Test to try to serialize multiple exif tags
Adds a new test for exif data that tries serializing data
from multiple ifd tables and check if it works.
Thiago Santos [Mon, 9 Aug 2010 20:25:07 +0000 (17:25 -0300)]
tags: exif: Fix inner tags offset rewriting
Fixes a bug that made exif helper lib fail to rewrite inner ifd tags
offsets when there were more than 1 inner ifd.
Mark Nauwelaerts [Thu, 22 Jul 2010 15:29:57 +0000 (17:29 +0200)]
textoverlay: configurable text color and position
Rather than only left, right, top, etc, allow for horizontal and vertical
positioning on a scale from 0 to 1.
Also cater for configuring rendered text color.
Fixes #624920.
API: GstTextOverlay:xpos
API: GstTextOverlay:ypos
API: GstTextOverlay:color
Mark Nauwelaerts [Wed, 21 Jul 2010 12:20:03 +0000 (14:20 +0200)]
videotestsrc: add solid-color pattern
... which generalizes the current listing of white, black, etc.
In particular, also allow specifying alpha channel, and modify
some structures and pattern filling to cater for alpha value as well.
Fixes #624919.
API: GstVideoTestSrc:solid-color
Sebastian Dröge [Sun, 8 Aug 2010 15:42:04 +0000 (17:42 +0200)]
oggstream: static forward declarations are forbidden by the C standard
...and actually cause compiler errors on VC++. Change it to an extern
forward declaration and non-static definition.
Stefan Kost [Thu, 5 Aug 2010 10:56:29 +0000 (13:56 +0300)]
Automatic update of common submodule
From 2004d03 to bd2054b
Sebastian Dröge [Wed, 4 Aug 2010 17:24:29 +0000 (19:24 +0200)]
configure: Check if the compiler supports ISO C89 or C99 and which parameters are required
This first checks what is required for ISO C99 support and sets the relevant
compiler parameters and if no C99 compiler is found, it checks for a
C89 compiler. This enables us to check for and use C89/C99 functions
that gcc hides from us without the correct compiler parameters.
Sebastian Dröge [Wed, 4 Aug 2010 13:18:37 +0000 (15:18 +0200)]
baseaudiosink/baseaudiosrc: Post CLOCK-LOST/CLOCK-PROVIDE when going to/from READY
Otherwise the clocks are redistributed every time the pipeline
goes to PAUSED, which is quite expensive.
Thiago Santos [Tue, 3 Aug 2010 18:03:27 +0000 (15:03 -0300)]
tag: xmp: Make xmp lib aware for the different tag types
Makes the xmp helper lib aware that the tags can be simple,
sequences or bags (there is still struct and alt, but those
aren't handled yet). Adding this info makes serialization
and deserialization more consistent.
Thiago Santos [Mon, 2 Aug 2010 12:56:21 +0000 (09:56 -0300)]
xmp: Add a new layer of indirection (GstXmpSchema)
Instead of storing all tags in a single hashtable, store them
grouped by schema in a GstXmpSchema, and add those to the toplevel
hashtable.
Thiago Santos [Tue, 3 Aug 2010 17:37:05 +0000 (14:37 -0300)]
tag: xmp: Make bag tags deserialization work correctly
If we find a bag of tags of type string in the xmp packet, we
should concat them, this is not the ideal approach, but at
least works for now as we don't know what type of tag it
is (simple, structure, seq, alt or bag)
Jan Schmidt [Wed, 4 Aug 2010 11:44:22 +0000 (21:44 +1000)]
examples/seek: Don't unpause on clock-lost unless playing
If the pipeline is paused by the user, don't pause/unpause
on clock-lost.
Wim Taymans [Fri, 2 Jul 2010 10:10:16 +0000 (12:10 +0200)]
ringbuffer: improve debugging
Wim Taymans [Fri, 2 Jul 2010 10:09:30 +0000 (12:09 +0200)]
ringbuffer: whitespace fixes
Wim Taymans [Mon, 28 Jun 2010 08:53:57 +0000 (10:53 +0200)]
decodebin2: use more efficient way of getting caps
When inspecting the caps of a pad, try to get the pad _CAPS first before calling
the getcaps function.
Thiago Santos [Mon, 2 Aug 2010 14:06:00 +0000 (11:06 -0300)]
oggmux: Fix test build when theora and vorbis aren't available
Ifdef properly to avoid build failures
Thiago Santos [Sun, 1 Aug 2010 09:50:13 +0000 (06:50 -0300)]
typefind: Detect avc1 ftyp as video/quicktime
Detects avc1 ftyp as video/quicktime (iso variant)
Thiago Santos [Tue, 27 Jul 2010 14:25:12 +0000 (11:25 -0300)]
tag: xmp: removing useless locking
Everything in the xmp helper lib is initiallized once and on a thread
safe way, and after that there are only reads going on, no more
writing. Based on that, drop the locking.
Jan Schmidt [Sun, 20 Jun 2010 13:53:38 +0000 (23:53 +1000)]
jsseek: Set joystick io encoding to 'NULL'
Fix problems with newer glib reporting bad encodings on the binary
data emerging from the joystick device fd.
Tim-Philipp Müller [Mon, 26 Jul 2010 18:25:55 +0000 (20:25 +0200)]
streamsynchronizer: fix printf format compiler warnings
Make OSX build bot happy.
Tim-Philipp Müller [Mon, 26 Jul 2010 16:23:33 +0000 (18:23 +0200)]
tag: initialize datetime variable in xmp tag parsing code
Fixes (correct) compiler warning on the OSX build bot.
Tim-Philipp Müller [Mon, 26 Jul 2010 15:48:14 +0000 (17:48 +0200)]
configure: require core from git
For GstDateTime stuff used in libgsttag.
Tim-Philipp Müller [Mon, 26 Jul 2010 15:04:02 +0000 (17:04 +0200)]
pbutils: add compile time and runtime version checks for gst-plugins-base
So people can check what version of the gst-plugins-base libs they're
building against or linked against.
API: GST_PLUGINS_BASE_VERSION_MAJOR
API: GST_PLUGINS_BASE_VERSION_MINOR
API: GST_PLUGINS_BASE_VERSION_MICRO
API: GST_PLUGINS_BASE_VERSION_NANO
API: GST_CHECK_PLUGINS_BASE_VERSION
API: gst_plugins_base_version()
API: gst_plugins_base_version_string()
Thiago Santos [Wed, 30 Jun 2010 19:36:14 +0000 (16:36 -0300)]
tag: exif: Map GST_TAG_DATE_TIME
Adds mapping to the exif helper library for GST_TAG_DATE_TIME.
Tests included.
https://bugzilla.gnome.org/show_bug.cgi?id=594504
Thiago Santos [Wed, 23 Jun 2010 15:02:24 +0000 (12:02 -0300)]
tag: xmp: Maps GST_TAG_DATE_TIME
Adds mapping for GST_TAG_DATE_TIME.
Tests included.
https://bugzilla.gnome.org/show_bug.cgi?id=594504
Sebastian Dröge [Mon, 26 Jul 2010 14:05:44 +0000 (16:05 +0200)]
videorate: Fixate the pixel-aspect-ratio if necessary
Sebastian Dröge [Sat, 24 Jul 2010 16:17:43 +0000 (18:17 +0200)]
streamsynchronizer: Delay EOS events until all streams are EOS
This fixes a race condition in playbin2's gapless mode, where the
EOS of other streams might arrive in the sinks before the last stream
ends and the switch to the new track happens. The EOS sinks won't
accept any new data then and playback stops.
To prevent this, delay all EOS events until all streams are EOS
and advance the sinks of the EOS streams by filler newsegment
events if necessary.
Fixes bug #625118.
Arun Raghavan [Tue, 1 Jun 2010 18:13:45 +0000 (23:43 +0530)]
typefindfunctions: export 3gp profile in caps
This reads the 3gp profile from the major/compatible brands and puts
this as a 'profile' field in caps. This can be used by demuxers to
decide whether they can handle this stream or not. Also needed for
DLNA.
https://bugzilla.gnome.org/show_bug.cgi?id=620291
Sebastian Dröge [Sat, 24 Jul 2010 09:48:33 +0000 (11:48 +0200)]
examples: Use cairo instead of to-be-deprecated GDK API
Fixes bug #625001.
Tim-Philipp Müller [Sat, 24 Jul 2010 08:22:28 +0000 (09:22 +0100)]
configure: set release date/time
Use the new AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO macro.
Parthasarathi Susarla [Tue, 20 Jul 2010 06:38:52 +0000 (12:08 +0530)]
typefinding: detect enhanced AC-3
https://bugzilla.gnome.org/show_bug.cgi?id=623846
Sebastian Dröge [Thu, 22 Jul 2010 07:13:00 +0000 (09:13 +0200)]
streamsynchronizer: Fix another deadlock when going PAUSED->READY while streams are waiting for the GCond
Edward Hervey [Tue, 20 Jul 2010 19:05:45 +0000 (21:05 +0200)]
playsink: Switch to faster pad linking methods
Logic for choice of GST_PAD_LINK_CHECK_* is as follows:
* Where return of pad_link wasn't checked before : NOTHING
* Where linking is between known compatible elements : NOTHING
* All other cases : TEMPLATE_CAPS
Slashes down playsink reconfigure by up to 50% cpu time.
Sebastian Dröge [Mon, 19 Jul 2010 13:58:20 +0000 (15:58 +0200)]
playsink: Set add-borders=true on the videoscale instances
This makes sure that we always keep the display aspect ratio and
add black borders if necessary, which is usually something you want
for viewing a video.
Sebastian Dröge [Mon, 19 Jul 2010 13:44:40 +0000 (15:44 +0200)]
videoscale: Rename borders property to add-borders
Tim-Philipp Müller [Mon, 19 Jul 2010 08:39:28 +0000 (09:39 +0100)]
videoscale: update disted orc files for latest changes
Sebastian Dröge [Sat, 17 Jul 2010 18:24:18 +0000 (20:24 +0200)]
videoscale: Add support for adding black borders to keep the DAR if necessary
Fixes bug #617506.
Sebastian Dröge [Sun, 18 Jul 2010 13:08:48 +0000 (15:08 +0200)]
videoscale: Fix linear scaling of UYVY scanlines
Fixes bug #624656.
Sebastian Dröge [Sat, 17 Jul 2010 17:57:00 +0000 (19:57 +0200)]
videoscale: Fix caps fixating if the height is fixed but the width isn't
Sebastian Dröge [Fri, 16 Jul 2010 18:41:02 +0000 (20:41 +0200)]
videoscale: Remove interlaced scaling again
This behaviour was not preferred and caused visible image quality
degradations. The real solution would be, to apply a real
deinterlacing filter before scaling the frames.
Fixes bug #615471.
Sebastian Dröge [Fri, 16 Jul 2010 17:06:40 +0000 (19:06 +0200)]
videoscale: Add helper method for filling the VSImage struct
Tim-Philipp Müller [Sun, 18 Jul 2010 10:43:00 +0000 (11:43 +0100)]
tests: don't forget to dist test file for typefinding unit test
Tim-Philipp Müller [Sun, 18 Jul 2010 10:38:19 +0000 (11:38 +0100)]
tests: add unit test for mpeg-ts typefinding bug
See #623663.
Tim-Philipp Müller [Sun, 18 Jul 2010 10:24:46 +0000 (11:24 +0100)]
typefinding: make mpeg-ts typefinder scan more data
We only look for packets with payload, but it appears there may be packets without,
which makes it harder to find the N packets with payload in a row that we need in
order to typefind this successfully, so scan some more data than necessary in the
optimistic scenario. Alternatively we could change IS_MPEGTS_HEADER().
Fixes #623663.
Sebastian Dröge [Fri, 16 Jul 2010 16:51:35 +0000 (18:51 +0200)]
playsink/streamsynchronizer: Remove and deactivate pads after calling the change_state function of the parent class
Fixes some deadlocks.
Sebastian Dröge [Fri, 16 Jul 2010 16:25:38 +0000 (18:25 +0200)]
streamsynchronizer: Drop DISCONT flag on first buffer for new streams
Also reset stream state when going back to READY and on flush-stop.
Sebastian Dröge [Sun, 11 Jul 2010 12:44:10 +0000 (14:44 +0200)]
playsink: Fix gapless playback in many non-simple scenarios
Before gapless playback failed when switching between audio-only,
video-only and audio-video files, when choosing different clocks
and when the different streams had different durations.
This is now handled by a helper element, which keeps track of the
running times of all streams and synchronizes them.
Fixes bug #602437.
Sebastian Dröge [Sun, 11 Jul 2010 12:43:52 +0000 (14:43 +0200)]
playbin2: Remove QOS event adjustments for gapless playback mode
Sebastian Dröge [Fri, 9 Jul 2010 15:15:55 +0000 (17:15 +0200)]
baseaudiosink: Post clock-provide and clock-lost messages when going from/to PLAYING
Sebastian Dröge [Fri, 9 Jul 2010 15:15:35 +0000 (17:15 +0200)]
baseaudiosrc: Post clock-provide and clock-lost messages when going from/to PLAYING
Philip Jägenstedt [Thu, 8 Jul 2010 14:11:12 +0000 (16:11 +0200)]
typefind: only associate .webm with WebM
.weba (audio) and .webv (video) were speculation on my part before
the public launch. As of yet no decision has been made on the
file extension for audio-only WebM, and I'm pretty sure there will
never be one for video-only.
Fixes bug #623837.
Sebastian Dröge [Thu, 8 Jul 2010 07:54:40 +0000 (09:54 +0200)]
baseaudiosink: Use new gst_audio_clock_new_full()
Sebastian Dröge [Thu, 8 Jul 2010 07:54:29 +0000 (09:54 +0200)]
baseaudiosrc: Use new gst_audio_clock_new_full()
Sebastian Dröge [Thu, 8 Jul 2010 06:32:22 +0000 (08:32 +0200)]
audioclock: API: Add gst_audio_clock_new_full() with a GDestroyNotify for the user_data
Elements usually use their own instance as instance data but the
clock can have a longer lifetime than their elements and the clock
doesn't own a reference of the element.
Fixes bug #623807.
Sebastian Dröge [Sun, 4 Jul 2010 18:29:53 +0000 (20:29 +0200)]
theoraenc: Implement two pass encoding
Fixes bug #621349.
Sebastian Dröge [Sun, 4 Jul 2010 18:14:34 +0000 (20:14 +0200)]
configure: Require libtheora >= 1.1
It's more than a year old at the time of the next -base release,
has many encoder and decoder improvements and gets us rid of a lot
of #ifdefs
Sebastian Dröge [Sun, 4 Jul 2010 18:08:25 +0000 (20:08 +0200)]
theora: Use PROP_ instead of ARG_ for property enum values
Mark Nauwelaerts [Tue, 4 May 2010 10:09:57 +0000 (12:09 +0200)]
playsink: use proper error message code for failing state change
Tim-Philipp Müller [Fri, 16 Jul 2010 10:24:21 +0000 (11:24 +0100)]
Back to development
Tim-Philipp Müller [Thu, 15 Jul 2010 00:20:54 +0000 (01:20 +0100)]
Release 0.10.30
Tim-Philipp Müller [Wed, 14 Jul 2010 23:32:09 +0000 (00:32 +0100)]
po: update translations
Sebastian Dröge [Wed, 14 Jul 2010 10:59:19 +0000 (12:59 +0200)]
playbin2: Disconnect and destroy uridecodebins when going from READY to NULL
Fixes spurious errors that happen after an error and playing a working
stream afterwards or signals that are emitted for non-active groups.
Fixes bug #624266.
Tim-Philipp Müller [Thu, 8 Jul 2010 13:51:08 +0000 (14:51 +0100)]
docs: dist more of the gst-plugin-base design docs
Tim-Philipp Müller [Tue, 6 Jul 2010 23:35:37 +0000 (00:35 +0100)]
0.10.29.4 pre-release
Tim-Philipp Müller [Tue, 6 Jul 2010 23:24:42 +0000 (00:24 +0100)]
po: update translations
Sebastian Dröge [Tue, 6 Jul 2010 07:47:45 +0000 (09:47 +0200)]
Revert "playbin2: Don't put "raw" subtitle types in the raw caps for decodebin2"
This reverts commit
9d7538247ff1bf9841b53eeb71ddc47f2c662415.
If the DVD subpicture caps are not part of the raw caps, uridecodebin
doesn't qualify resindvdbin as raw source and plugs decodebins, which
causes broken DVD playback because of bugs elsewhere.
This change was originally added to only expose supported, raw subtitles,
e.g. if the subtitle sink did not support DVD subpictures but a converter
to some supported format exists. It's not very important right now because
we have nothing (that is autoplugged) to convert from plaintext/pango-markup
or DVD subpictures to something else.
Fixes bug #623583.
Sebastian Dröge [Sun, 4 Jul 2010 15:27:25 +0000 (17:27 +0200)]
ffmpegcolorspace: Use correct Y offset for YVYU -> RGB conversions
Fixes bug #623530.
Sebastian Dröge [Sun, 4 Jul 2010 15:26:03 +0000 (17:26 +0200)]
ffmpegcolorspace: Use correct Y offset for the YUY2 -> RGB conversions
Fixes bug #623530.
Tim-Philipp Müller [Sun, 4 Jul 2010 13:55:50 +0000 (14:55 +0100)]
docs: update ogg introspection info after riff fourcc addition
Sebastian Dröge [Fri, 2 Jul 2010 18:09:58 +0000 (20:09 +0200)]
ffmpegcolorspace: Fix conversion of packed 4:2:2 YUV to 8 bit grayscale
The last pixel wasn't written before for odd widths.
Fixes bug #623418.
Sebastian Dröge [Fri, 2 Jul 2010 12:56:02 +0000 (14:56 +0200)]
ffmpegcolorspace: Fix conversion of packed 4:2:2 YUV to RGB
The last pixel wasn't written before.
Fixes bug #623384.