Highlights:
- hlsdemux: Add HTTP live streaming parser/demuxer element
- new elements: h263parse, zebrastripe, patchdetect
- scenechange: new scene change detection element
- removed audioparsersbad plugin, it has been moved to -good
- make opencv plugin work with OpenCV 2.2
- countless (still experimental) camerabin2 fixes and improvements
- experimental VP8 RTP payloader/depayloader (RTP payloading not finalised yet)
- curlsink: add libcurl-based sink element (acts as client, not server)
- decklink: add decklink plugin
- linsys: add plugin for Linear Systems SDI boards
- sdi: add raw SDI muxing/demuxing elements
- camerabin now relies on muxers to mux based on running time (ie. latest base/good/ugly releases)
- many other fixes and improvements
Detects Munsell ColorChecker in a video image and automatically
white balances and color corrects based on the detected values.
This element is only a demonstration at this stage, it needs to
be separated into two elements.
This element analyses video buffers to identify if they are progressive,
interlaced or telecined and outputs buffers with appropriate flags for a
downstream element (which will be the deinterlace element, after some
forthcoming modifications) to be able to output progressive frames and
adjust timestamps resulting in a progressive stream.
This adds an h263parse element for parsing H.263 streams, breaking them
up into frame-sized buffers, and exporting metadata such as profile and
level.
https://bugzilla.gnome.org/show_bug.cgi?id=622276
Adds a location property to enable applications to select
the captured files names. Locations are handled just like
multifilesink ones
Also disables -Wformat-nonliteral to allow to use non-literals
on g_strdup_printf on camerabin and generate a sequence of
locations for captures.
Adds viewfinder bin element, one of the modules of camerabin2
that is responsible for displaying the video from the camera.
For now it is only a bin with ffmpegcolorspace ! videoscale !
autovideosink
Provides the following elements:
qtkitvideosrc: OS X video source relying on the QTKit API. Comes with
hard-coded caps as the API does not provide any way of querying for
formats supported by the hardware. Hasn't been tested a lot, but seems
to work.
miovideosrc: OS X video source which uses the undocumented/private
CoreMediaIOServices API, which is also the one used by iChat.
Present on latest version of Leopard and all versions of Snow Leopard.
Has been tested extensively with built-in cameras and TANDBERG's
PrecisionHD USB camera.
vtenc, vtdec: Generic codec wrappers which make use of the undocumented/
private VideoToolbox API on OS X and iOS. List of codecs are currently
hard-coded to H.264 for vtenc, and H.264 + JPEG for vtdec. Can easily be
expanded by adding new entries to the lists, but haven't yet had time to
do that. Should probably also implement probing as available codecs depend
on the OS and its version, and there doesn't seem to be any way to
enumerate the available codecs.
vth264decbin, vth264encbin: Wrapper bins to make it easier to use
vtdec_h264/vtenc_h264 in live scenarios.
iphonecamerasrc: iPhone camera source relying on the undocumented/private
Celestial API. Tested on iOS 3.1 running on an iPhone 3GS. Stops working
after a few minutes, presumably because of a resource leak. Needs some
love.
Note that the iOS parts haven't yet been ported to iOS 4.x.
Compile with -DCV_NO_BACKWARD_COMPATIBILITY for now, so that the compat header
doesn't get included, which causes compiler warnings that (it seems) can't be
switched off easily. As a result, we also specify a max. version in configure,
so the build doesn't break if our code doesn't compile against newer opencv
versions any more with that flag.
to find plugin directories for the various modules our unit tests depend
on in an uninstalled environment. This makes sure these plugins are found
even when distchecking (which happens from a subdirectory, which means
that the currently used trick to find the uninstalled directories of
these modules doesn't work in that case).
0.4.7 creates code with unavailable symbols
0.4.8 creates buggy code
Let's use git head of orc (which still won't work because git head
of orc still claims to be 0.4.8)
This allows all the rest of -bad to build properly.
This commit is out of sequence, it really belongs between commits
1509833141 (Automatic update of
common submodule) and dd26f378b0
(configure: Fix the CELT checks to ...)
This commit is out of sequence, it really belongs between commits
1509833141 (Automatic update of
common submodule) and dd26f378b0
(configure: Fix the CELT checks to ...)
This commit is out of sequence, it really belongs between commits
1509833141 (Automatic update of
common submodule) and dd26f378b0
(configure: Fix the CELT checks to ...)
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.
Implements a color lookup table filter with 4 presets:
- heat: fake heat camera effect
- sepia: sepia toning
- xray: invert + shade to blue
- xpro: cross process
https://bugzilla.gnome.org/show_bug.cgi?id=625817
Adds the new 'gaudieffects' plugin, originally found
here: http://github.com/luisbg/gaudi_effects
Contains the following video effect elements: burn, chromium, dilate,
dodge, exclusion and solarize.
Thanks to Jan Schmidt for the reviewing and refactoring
We really don't want this in gst-plugins-bad because of
legal complexities around RTMP and possible problems
for distributions.
Add README that explains how to build librtmp to be suitable
for linking to the GStreamer plugin.
Adds a new plugin that has elements that perform geometric
transformations to images. By geometric transformations I mean
that the operations are functions that given the output pixel
position, get the pixel position in the input image. This pixel
is then copied from input to output.
The gstgeometrictransform baseclass makes it easy to write
such elements. It boils down to write the mapping function
and exposing properties
Already added the first of the elements, 'pinch'. It's a common
effect in image editors, like gimp (distort -> pinch)
These two elements (shmsink and shmsrc) communicate buffers using POSIX
shared memory. They also communicate the caps. The source currently acts as
a live source and ignores the timestamps coming from the sink. It also does
not transfer the tags.
Move figures into docs/plugins as well, to avoid issues with
make dist and make distcheck (make distdir will not first descend
into child directories). Out-of-source build seems to still work
as well.
Move include directives for gst-libs into GST_PLUGINS_BAD_CFLAGS,
and fix all the Makefiles that use it. This is so that all the
include directories are added in the proper order: first the
directories in srcdir/builddir, then gst-plugins-base dirs, then
gstreamer dirs. If the order is wrong, installed headers may be
used instead of local headers and/or uninstalled headers from -base.
Commit message copied from core's commit from Benjamin Otte:
246f5dba96
Apparently gcc warns that GstMiniObject is not castable to
GstEvent/Message/Buffer due to them containing 64bit variables, even
though ARM hackers claim that those only need 4byte alignment. And as
long as gcc behaves that way, this warning is not very useful.
So we'll remove the warning until this problem is fixed.
Fixes#615698
Add a script that creates elements based on any of the GStreamer
base classes. It isn't very user friendly at the moment, one
needs to edit the script to make it work properly. Each base class
has a template file describing what to put into the constructed
element. Eventually, these templates should be moved to reside
with the base class source and installed to a well-known directory,
where an installed script could find them.
The template files use the .c ending so editors know they are C
source, but gst-indent doesn't handle them correctly. So they
need to be committed with -n. Ugh. I'll try to figure out a fix
for that soon.
Removes GST_TAG_XMP_GEO_LOCATION_COUNTRY,
GST_TAG_XMP_GEO_LOCATION_CITY and
GST_TAG_XMP_GEO_LOCATION_SUBLOCATION from metadata's
private tags as those are now present at -core tags.
Fixes#612410
This just replaces every "$ERROR_CFLAGS" usage with a usage of
"$WARNING_CFLAGS $ERROR_CFLAGS" to get the same functionality as
previously.
Actually using that separation will happen later.
Automatic inverse telecine element. Right now, it clumsily attempts
to rearrange video fields into frames that don't have combing effects,
and only works with 60i/24p content at 720x480. Later, it will handle
other pulldown variations, change caps and smooth timestamps
appropriately.
We don't want C specific flags in GST_CXXFLAGS, so base it on the
GST_CFLAGS that only contains the pkg-config CFLAGS but none of
the GST_OPTION_CFLAGS. Also, we only need the local includes once.
Flite is a speech synthesizer library (BSD-ish license). This element
negotiates a (possibly) multichannel audio stream, and then continually
outputs buffers naming the number and position of the channel. It's
kinda crappy, but I needed it for testing purposes.
Check for openssl and libcrypto using pkg-config and don't build the
plugin if those are not available. Also, fix the CFLAGS/LIBS order
in Makefile.am and use the detected LIBS instead of hard-coding
-lcrypto in the Makefile.am. Should fix#601417.
This uses same approach like in playbin, namely checking for user defined
element, auto{audio,video}{sink,src} and finally DEFAULT_{AUDIO,VIDEO}{SRC,SINK}
defines from config.h.
This plugin contains elements for calculating metrics of video streams, intended for objective video codec comparison.
At the moment only SSIM metric is implemented (why would you need anything else anyway?).
Also contains a helper videomeasure_collector element that collects measurement events and outputs them into a file (to be used with gst-launch).
Other metrics may be implemented in the future along with a base class for all measurers.
Fixes bug #594321.
One set of CFLAGS for all DirectX-based plugins. Correct header/library
checks for DirectX-based-plugins. Remove unused variable and label in
directsoundsrc.
Fixes#593068.