Commit graph

852 commits

Author SHA1 Message Date
Sebastian Dröge
e5be8aa8ff basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass 2011-07-21 08:09:11 +02:00
Sebastian Dröge
b2525a3044 basevideoencoder: Delay sending of serialized sink events until finish_frame() 2011-07-21 08:09:11 +02:00
Sebastian Dröge
f011e59943 basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder 2011-07-21 08:09:10 +02:00
Sebastian Dröge
2dbd24ca84 basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps
Also store the caps in the GstVideoState and assume a PAR of 1/1 instead
of 0/1 if no PAR is specified in the caps.
2011-07-19 12:52:31 +02:00
Sebastian Dröge
83c4e8814e basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state
The subclass might want to access the old state.
2011-07-11 12:59:07 +02:00
Sebastian Dröge
a59246c1d1 basevideodecoder: Track present position on discont before resetting it 2011-07-11 12:36:42 +02:00
Sebastian Dröge
08823f80d6 basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events 2011-07-11 11:52:48 +02:00
Sebastian Dröge
81f4c9e8bf basevideocodec: Protect access to the list of pending frames with the object lock
This is required if ::finish_frame() and all buffer output happens
on a different thread than the sinkpad streaming thread.
2011-07-11 11:28:40 +02:00
Sebastian Dröge
caed64c720 basevideodecoder: Set the correct lists to NULL after freeing 2011-07-11 09:35:25 +02:00
Sebastian Dröge
584859488b basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted
Also fix a refcount problem with the codec_data.
2011-07-11 09:19:28 +02:00
Sebastian Dröge
e61d3d1a0c basevideo: Move the utils from the codec header to its own header 2011-07-09 11:40:17 +02:00
Sebastian Dröge
5f55a74571 basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class 2011-07-09 11:09:12 +02:00
Sebastian Dröge
f341386b64 basevideodecoder: Don't reorder serialized src events
And allow to drop EOS by the subclass if ::finish returns
DROPPED. This requires that the subclass sends EOS manually later.

Fixes bug #653544.
2011-07-09 11:04:18 +02:00
Sebastian Dröge
525875727a basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly
Having access to the caps in ::set_format can be useful if
non-standard caps fields like the h264 alignment must be accessed.
2011-07-09 11:02:01 +02:00
Sebastian Dröge
fc93c66d3b basevideo: Add destroy notify for the coder_hook to prevent memory leaks
Fixes bug #654293.
2011-07-09 11:00:28 +02:00
David Schleef
929603d56c basevideodecoder: Better handling of invalid par 2011-06-04 14:09:29 -07:00
Debarshi Ray
03bb5dc8ba Remove unused but set variables
This is needed to satisfy the new -Wunused-but-set-variable added in
GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html
2011-05-30 22:52:03 +10:00
Lauri Lehtinen
c86d662b23 basecamerabinsrc: Handle errors from preview pipeline
Implements a message handling function to preview pipeline bus.
If GST_MESSAGE_ERROR is seen, considers preview pipeline unable
to do its job and posts an error message to application.

Sets pipeline element to NULL so that subsequent calls to post_preview
and set_caps functions just returns without pushing anything to the
disposed preview pipeline. Leaves further actions to the application.
2011-05-16 18:08:39 -03:00
Lauri Lehtinen
802028081c basecamerabinsrc: Protection for previewpipeline when setting new preview caps
Implements a state indicating flag to preview pipeline,
so that new caps are not set if the pipeline is processing a
preview. The caps are set as pending and applied when the
next preview post is called.

In this case a wait was implemented in the post_preview function,
so that new preview image buffer will wait until the other previews
have been posted to the application and the new caps can be used
safely.
2011-05-16 18:08:39 -03:00
Mark Nauwelaerts
9b6e819247 basevideodecoder: handle missing framerate when calculating timestamp 2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
cfe85ad780 basevideodecoder: debug code style fixes 2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
2f6af91f09 basevideodecoder: tune parsing sink caps into video state
... to provide subclass with more information w.r.t. original caps.
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
380a443be4 basevideodecoder: video state reference to codec_data is not refcounted
... but rather implicitly valid as long as sink caps are not modified.
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
a1825bd5e2 basevideodecoder: improve glitch resilience
Provide a replacement for GST_ELEMENT_ERROR to avoid aborting at the first
atom out of place, while on the other hand not failing indefinitely.
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
1588ed321c basevideodecoder: reverse playback support 2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
1d99e8eafa basevideodecoder: use basevideocodec discont field 2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
1b151caf11 basevideodecoder: really and only set src pad caps whenever requested
... since subclass is expected to be wise enough to know when to do so.
2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
550237347b basevideodecoder: add some sanity enforcing 2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
f72658435b basevideodecoder: add documentation
... and remove some more stray unused code and methods.
2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
04f4a583dd basevideocodec: fully free video frame 2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
a085acb586 basevideodecoder: streamline discont, flush and reset handling
... which is not to say there is no room for further tweaking ...
2011-05-16 20:32:23 +02:00
Mark Nauwelaerts
444b169188 basevideodecoder: add some header commentary 2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
cfc65b14b1 basevideodecoder: remove (almost) unused fields
... and also some more unused code.
2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
f591361d2f basevideodecoder: invoke subclass start method at state change and use set_format
While this changes API slightly (e.g. actually uses set_format now), which is OK
for unstable API, it has following merits:
* symmetric w.r.t. stop at state change
* in line with other base class practice
* otherwise no subclass method at state change (global activation time)
Moreover, subclassese are either unaffected or trivially adjusted accordingly.
2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
04a34b4ab7 basevideodecoder: fixup tweak 2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
39fb2fa74a basevideodecoder: add and tweak debug statements 2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
fc705cf8fd basevideodecoder: arrange for limited legacy seeking support
In particular, tweak src query and event handling to provide for
byte <-> time conversion.
2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
3bd16a48b4 basevideo: cater for format conversion 2011-05-16 20:32:22 +02:00
Mark Nauwelaerts
5af2f6f40e videocodec: remove unused fields and code 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
4311909a53 basevideodecoder: fix copy-and-paste variable misnomer 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
7862d9ed35 basevideodecoder: subsume skip_frame into finish_frame 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
0230143cb8 basevideodecoder: remove unused code 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
8defa8cb49 basevideodecoder: code cleanup and debug style fixes 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
576fb1b4cb basevideoencoder: pass along buffer discont flag 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
ef4bceabbb basevideoencoder: implement preset interface 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
5a8bc266c8 basevideoencoder: add documentation and related cosmetics 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
d15b8c7ad3 basevideoencoder: provide proper upstream flow return handling 2011-05-16 20:32:21 +02:00
Mark Nauwelaerts
d0753dec9b basevideoencoder: enhance set_caps
Specifically, only invoke set_format if incoming format really changed,
and finish current format if so (and if any current).
2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
d68288b597 basevideoencoder: elaborate finish to draining 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
4b5623d687 basevideoencoder: invoke subclass start method at state change
While this changes order w.r.t. set_format, which is OK for unstable API,
it has following merits:
* symmetric w.r.t. stop at state change
* in line with other base class practice
* little benefit in invoking 2 subclass virtual methods (set_format and start)
  in immediate succession; all actions in the second could be done in the first
  whereas subclass has no chance to do anything 'global' at activation time
Moreover, current -bad subclass relevant methods either trivially commute
or are either trivially adjusted accordingly.
2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
d567fa2834 basevideoencoder: enable clipping by default 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
3f0824b699 basevideoencoder: reset more state 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
02a065e406 basevideoencoder: header cosmetic and doc fixes 2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
b0c982db5b basevideocodec: remove redundant caps field
... as it is already at hand as the src pad's negotiated caps.
2011-05-16 20:32:20 +02:00
Mark Nauwelaerts
8aa9d83eb4 basevideoencoder: remove unused code 2011-05-16 20:32:19 +02:00
Mark Nauwelaerts
294cecbc69 basevideoencoder: add event virtual method to allow subclass event handling 2011-05-16 20:32:19 +02:00
Mark Nauwelaerts
16c6a49bd4 basevideoencoder: improve GstForceKeyUnit event handling 2011-05-16 20:32:19 +02:00
Mark Nauwelaerts
adbbe36408 basevideocodec: debug style fixes 2011-05-16 20:32:19 +02:00
Mark Nauwelaerts
1659e7dfcf basevideocodec: remove unused code cluttering up the place
Also minor debug style fixes.
2011-05-16 20:32:19 +02:00
Mark Nauwelaerts
72a32afc65 basevideoencoder: simplify negotiated checking
... by avoiding some extraneous (un)ref'ing.
2011-05-16 20:32:19 +02:00
Mark Nauwelaerts
dd118538e9 basevideoencoder: code cleanup and some debug
Also add some minor locking and remove unused bits.
2011-05-16 20:32:19 +02:00
Andoni Morales Alastruey
85703b8886 basevideencoder: Fix use after free after state change transition 2011-05-14 12:08:40 +02:00
David Schleef
50e1a73bbc basevideoencoder: Don't allow buffers after EOS
Fixes #647852.
2011-04-24 19:40:08 -07:00
David Schleef
4f432e09fa basevideo: Don't duplicate code in basevideocodec
Both basevideoencoder and basevideocodec were setting
system_frame_number, leading to confusion.  Fixes #647853.
2011-04-24 19:40:08 -07:00
David Schleef
aa02a4074f basevideo: Check if caps are set directly
Fixes #647854.
2011-04-24 19:40:08 -07:00
Tim-Philipp Müller
fb67a0d126 basevideo: fix unused-but-set-variable warnings with gcc 4.6 2011-04-14 16:49:18 +01:00
Tim-Philipp Müller
c9ef416fa7 basecamerasrc: add unstable-API warnings if GST_USE_UNSTABLE_API is not defined
So people know this is unstable API even if it ends up right next
to our other API.
2011-04-14 16:14:57 +01:00
Tim-Philipp Müller
860adf7585 libs: remove leftover media-info directory 2011-04-14 16:11:53 +01:00
Thibault Saunier
17fd7ebcb4 android: make it ready for androgenizer
Remove the android/ top dir
Fixe the Makefile.am to be androgenized

To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:27:11 +02:00
Tim-Philipp Müller
581714bff0 baseparse: remove -bad version of baseparse library, now in core 2011-04-09 00:38:02 +01:00
David Schleef
293b0f7757 basevideo: Fix negotiation errors 2011-04-01 13:54:02 -07:00
David Schleef
83d6a5099b basevideo: Add function to allocate src buffer 2011-04-01 13:54:02 -07:00
David Schleef
3ada35cc0e basevideo: merge utils header into basevideocodec 2011-03-23 21:33:49 -07:00
Robert Swain
6a686316d5 basecamerasrc: camerabin2: wrappercamerabinsrc: Add read-only max-zoom prop
This is not implemented in any of our real sources to which wrappercamerabinsrc
might connect but this is optional and can be implemented at any time. A
limit on the software zoom level using video{crop,scale} would be arbitrary.
2011-03-23 16:48:11 -03:00
Thiago Santos
aa7b962891 camerabin2: Improve idle property usage
Use resource warning messages to notify camerabin2 that a capture
as aborted or couldn't be started, making it decrement the
processing counter and making the idle property more reliable.
2011-03-23 16:13:32 -03:00
Lauri Lehtinen
2da37d966d basecamerabinsrc: Check if set preview caps are the same
Checks if the new received preview-caps are equal to what is
already in use, skips the preview-caps setting logic in case
new caps are same as current ones.
2011-03-23 16:13:32 -03:00
Thiago Santos
a50dca2752 basecamerasrc: Set preview pipeline NULL
Set preview pipeline to NULL when freed to be able to
recreate it on the following lines
2011-03-23 16:13:32 -03:00
Robert Swain
5fd15521e2 basecamerasrc: wrappercamerabinsrc: camerabin2: Expose/add floating point
zoom property
2011-03-11 18:26:43 -03:00
Lauri Lehtinen
76b3ff361f basecamerasrc: add virtual function to notify subclass of changing preview caps
Adds a virtual function to basecamerasrc in case subclasses want to be
notified of changing preview caps. This is useful if the subclass wants
to post the preview itself or if it wants to provide a preview buffer
as close to as possible to the user's requested resolution to the
preview generation pipeline.
2011-03-10 08:42:01 -03:00
Thiago Santos
b3abf91232 camerabin2: Moving preview image properties to basecamerasrc
Moves preview image related properties to basecamerasrc as that
should be present on all camerasrcs
2011-03-10 08:42:00 -03:00
Lasse Laukkanen
b5fdacc5c0 basecamerasrc: Fix getting element implementing photography iface 2011-03-10 08:42:00 -03:00
Thiago Santos
0255584d90 camerabin2: Move preview helper functions to basecamerabinsrc
Move preview helper functions to baseacamerabinsrc so they can
be reused by multiple camerabin2 sources.
2011-03-10 08:42:00 -03:00
David Schleef
7920622ac7 baseparse: make_metadata_writable() fix 2011-02-25 20:00:41 -08:00
Tim-Philipp Müller
246c4a7cf4 baseparse: rename GType from GstAudioBaseParseBad to GstBaseParseBad
We use it for video as well now.
2011-02-21 13:24:03 +00:00
David Schleef
5b90c31ca2 basevideocodec: remove parser in favor of baseparse 2011-02-20 12:16:08 -08:00
Stefan Kost
7a7e769816 baseparse: trim trailing whitespace 2011-02-18 15:05:31 +02:00
Stefan Kost
81e52d5585 baseparse: use delta-unit flags instead of none 2011-02-18 15:05:03 +02:00
David Schleef
f2cc779d68 baseparse: update documentation for API changes 2011-02-17 14:43:38 -08:00
David Schleef
fa3ff9e5ed baseparse: Create baseparse library 2011-02-17 13:57:56 -08:00
Hu Gang
a11b314b1e photography interface: update the noise_reduction type from guint to GstPhotographyNoiseReduction
https://bugzilla.gnome.org/show_bug.cgi?id=616814
2011-02-10 11:49:50 +00:00
Sebastian Dröge
44da64d86b basevideodecoder: Initialize some variables to make gcc 4.6 happy 2011-01-27 17:29:12 +01:00
Thiago Santos
aa671439e1 camerabin2: Add methods for preview image message posting
Adds a helper struct and functions for implementing a preview message
in camerabin2.
2011-01-24 14:50:29 -03:00
Stefan Kost
60f748575b signalprocessor: don't leak the caps 2011-01-07 15:22:07 +02:00
Tim-Philipp Müller
c78223fc9c basecamerabinsrc: fix libs order in Makefile.am 2011-01-03 23:47:33 +00:00
Tim-Philipp Müller
124c6d8259 build: fix disting of experimental basecamerabinsrc lib used by camerabin2
https://bugzilla.gnome.org/show_bug.cgi?id=638604
2011-01-03 23:46:02 +00:00
Tim-Philipp Müller
18e69fb72e photography: fix typo in property description 2010-12-26 17:19:00 +00:00
Thiago Santos
614c4d8f6e basecamerasrc: Notify earlier
Notify about ready-for-capture changes earlier to allow camerabin2
to do the videobin state switching before the capture starts.
2010-12-23 14:25:06 -03:00
Thiago Santos
42092fe928 basecamerabinsrc: Fix makefile building order
basecamerabinsrc must be built after photography interface
as it depends on it.
2010-12-23 13:24:55 -03:00
Thiago Santos
ea959add31 basecamerasrc: Add some more logging
Adds some more logging and always assume capture has started before
start_capture is called. This helps on image captures that might
call finish_capture directly from start_capture or before start_capture
finishes.
2010-12-23 13:24:55 -03:00
Thiago Santos
539f10f4d9 basecamerasrc: More cleanup
Remove old legacy code copied from camerabin(1) that should be handled
by caps negotiation on camerabin2
2010-12-23 13:24:54 -03:00
Thiago Santos
4938c2e9ea camerabin2: Move basecamerasrc to gst-libs
Move the base camera src class to gst-libs/gst/basecamerabinsrc to
allow it to be included from the tests.
2010-12-23 13:20:31 -03:00
Stefan Kost
7cbd6c231b photography: use a flags type instead of the uint
Also use 0 as default and let the implementation set something that they support.
2010-12-20 13:51:03 +02:00
Hu Gang
279cda20d7 photography: add missing property and cabability flag for noise reduction 2010-12-20 11:14:49 +02:00
Edward Hervey
e93ca3ac87 signalprocessor: Remove dead assignments 2010-11-25 19:31:35 +01:00
David Schleef
fe50055715 basevideo: Move common fields/functions to basecodec 2010-10-15 16:30:57 -07:00
Stefan Kost
5433fd062b photography: actualy use the enum in the vmethods
If we introduce a new GstPhotographyNoiseReduction, lets also use it
in the vmethods
2010-10-14 23:04:15 +03:00
Stefan Kost
f2971ff005 photography: retab interface struct fields 2010-10-14 23:03:19 +03:00
Thiago Santos
e3d120d725 photography: Avoid breaking ABI
Move the newly added functions/fields to the end of the structs
2010-10-14 14:09:39 -03:00
Hu Gang
8f26b414fa photography: extend photography iface
Add more color tone modes and add NoseReduction settings.
Fixes #616814.
2010-09-28 11:37:47 +03:00
Sebastian Dröge
5816dbce6f basevideodecoder: Don't use GST_FLOW_IS_SUCCESS() 2010-09-21 12:26:34 +02:00
Thiago Santos
c3527e2653 photography: Add zoom property
Adds a property to set/get the zoom as a float
2010-09-20 18:26:48 -03:00
Lasse Laukkanen
0817440ee1 photography: Add image-preview-supported-caps interface property
Adds a readable property to gstphotography interface to query
what are the allowed preview caps supported.

Patch by Tommi Myöhänen <ext-tommi.1.myohanen@nokia.com>
2010-09-20 18:26:47 -03:00
David Schleef
356daf25a5 basevideo: Remove unused code 2010-09-20 12:34:46 -07:00
David Schleef
9a62433722 basevideo: Remove check for old -base 2010-09-20 12:34:46 -07:00
David Schleef
db43b033ae basevideo: Add handling of GstForceKeyUnit events 2010-09-20 12:34:46 -07:00
David Schleef
62a9383527 basevideodecoder: add capture pattern handling
Move typical scan_for_sync() usage into base class, which just
calls gst_adapter_masked_scan_uint32().
2010-09-18 19:27:07 -07:00
David Schleef
dbbf1182dc basevideodecoder: Don't blow away field information
Also, set field flags correctly.
2010-09-18 19:27:07 -07:00
David Schleef
7cd2e0dd3e basevideo: Move deadline to frame structure 2010-09-18 19:27:07 -07:00
Sebastian Dröge
29943c87f8 basevideodecoder: Reset the segment on FLUSH_STOP and when going back to READY 2010-07-27 18:24:20 +02:00
Sebastian Dröge
ccbb765743 basevideodecoder: Fix memory leak
The timestamps are only used if the output adapter is used, not
if complete frames are provided by the decoder and finish_frame() is
called and even in the case where the output adapter is used they
might not be used and are leaked.
2010-07-10 15:50:50 +02:00
Philip Jägenstedt
7a181a9ed3 basevideodecoder: remove spurious warning 2010-06-10 10:58:54 -07:00
David Schleef
07eb2a7293 basevideoparse: fix warning 2010-06-02 19:46:50 -07:00
David Schleef
faa81e7386 basevideoparse: remove bogus api 2010-06-02 19:38:35 -07:00
David Schleef
af7ae41646 basevideo: remove gst_base_video_state_from_caps 2010-06-02 19:28:16 -07:00
David Schleef
b67706b584 basevideo: remove compatibility code 2010-06-02 19:28:16 -07:00
David Schleef
c295354da5 basevideo: use debug category for each class 2010-06-02 19:28:16 -07:00
Jan Schmidt
efb8a4324c basevideo: Fail if caps don't contain a framerate field
Return false from the caps parsing function if there is no framerate
field in the provided caps

Merging previous commit into current codebase.
2010-06-02 19:28:16 -07:00
David Schleef
13848cc93b basevideodecoder: create new segments if missing 2010-06-02 19:28:16 -07:00
David Schleef
99a88edcc1 basevideo: Add a warning
Merging previous commit into current codebase.
2010-06-02 19:28:16 -07:00
Tim-Philipp Müller
9b1ee36328 basevideo, vp8: guard unstable API with GST_USE_UNSTABLE_API
Add some guards and fat warnings to the header files with still unstable
API, so people who just look at the installed headers know that it
actually is unstable API.

Merging previous commit into current codebase.
2010-06-02 19:28:15 -07:00
David Schleef
9564562fe8 basevideo: make printf formats portable 2010-06-02 12:16:56 -07:00
David Schleef
14c8bf96ad basevideodecoder: (in vp8) Mark discont buffers 2010-06-02 11:26:41 -07:00
David Schleef
bdb5926cda basevideo: Move base video from vp8 to gst-libs 2010-06-02 00:01:10 -07:00
Thiago Santos
c6e77c3d03 Removing remaining gstapp*
There are some remaining gstapp* living unlinked from the build scripts.
Remove them.
2010-05-24 20:03:21 -03:00
David Schleef
c3d4977761 Split out GST_PLUGINS_BAD_CFLAGS from GST_CFLAGS
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.
2010-05-19 18:24:02 -07:00
Thiago Santos
a72774c5f8 camerabin: photography: Spring G_PARAM_STATIC_STRINGS
Sprinkle some G_PARAM_STATIC_STRINGS over the properties
in GstPhotography interface and in camerabin
2010-04-13 15:59:04 -03:00
Tommi Myöhänen
6206f58c3a GstPhotography: Add flicker and focus mode settings to photography API
Adds flicker and focus mode settings to photography API and also
implement it in camerabin.
2010-04-13 12:00:35 -03:00
Lasse Laukkanen
2c05df08b2 camerabin: add api to query supported image capture resolution
Adds new property 'image-capture-supported-caps' to GstPhotography
to query the supported image capture caps.
Also implement it in camerabin.
2010-04-13 12:00:31 -03:00
Tim-Philipp Müller
e964dcbd59 signalprocessor: don't use function that doesn't exist
Fixes the build.
2010-03-26 08:41:46 +00:00
Stefan Kost
05cbc5df9e signalprocessor: add boolean return to _process
Avoid trying to push results if processing failed anyway.
2010-03-25 23:30:29 +02:00
Stefan Kost
cfcffe6a74 signalprocessor: remove useless g_assert
g_malloc and co would terminate when out of memory. No need to check after it.
2010-03-25 23:28:25 +02:00
Stefan Kost
7a14b5d393 signalprocessor: add more logging 2010-03-25 23:26:38 +02:00
Stefan Kost
31423b4638 signalprocessor: register function pointers just once
Avoid re-registering those for each wrapped ladpsa/lv2 element.
2010-03-25 23:12:37 +02:00
Stefan Kost
9304f959a4 signalprocessor: add rate to caps 2010-03-25 23:07:46 +02:00
Stefan Kost
5bc9d4cecd signalprocessor: rename log category to be less ambigous 2010-03-25 23:05:18 +02:00
Stefan Kost
53db4a1884 docs: add photography iface to docs
We normaly have separate libs docs, not done becasue of lazyness here yet.
2010-03-24 16:25:43 +02:00
Stefan Kost
5ebf6444cb i18n: build fixes: #if -> #ifdef for ENABLE_NLS 2010-03-22 18:07:45 +02:00
Stefan Kost
70211451be i18n: fix the build
Don't include locale.h which we include in gettext.h if needed. Guard the
include like we do in the simillar headers in core.
2010-03-22 18:01:27 +02:00
Benjamin Otte
f96e4f1581 Add -Wmissing-declarations -Wmissing-prototypes to configure flags
And fix all warnings
2010-03-21 21:39:18 +01:00
Benjamin Otte
775c7584fd gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 22:46:41 +01:00
Stefan Kost
ebdf1c2a18 signalprocessor,lv2,ladspa: move sample-rate to baseclass
We need the sample-rate in baseclass for upcomming timestamp changes.
2010-02-01 22:32:32 +02:00
Stefan Kost
6bff8711d0 signalprocessor: use the gst-controller, add some basic timestamping
Atleast for FX we now have timestamps and can sync the controller. Still need
timestamps for sources.
2010-01-31 22:25:51 +02:00
Stefan Kost
2e46fcb3c6 signalprocessor: these are not gtk-doc comments 2010-01-31 22:25:51 +02:00
Stefan Kost
233f7ef176 signalprocessor: new is a c++ keyword, better logging
Use pad instead of new for the pad var. Also use pad as object in to debug
logging.
2010-01-31 22:25:51 +02:00
b3f0b029f3 win32: Include config.h before anything else. Fix mpegdemux LIBADD
Because config.h defines __MSVCRT_VERSION__, which should be defined
before inclusion of any system header.

Also fixes mpegdemux Makefile.am LIBADD typo.

Fixes #606665
2010-01-12 12:31:56 +01:00
Teemu Katajisto
62ddc73623 camerabin: photography interface properties. Fixes #573370 (partially)
Added GObject properties to photography interface and implemented
them in camerabin. Changed zooming to check if video-source has
zoom property.
2009-11-27 15:10:57 +02:00
Stefan Kost
6577be9572 signalprocessor: remove commented out code that we don't need anymore 2009-11-19 22:59:17 +02:00
Stefan Kost
8a5e9a3363 signalprocessor: change _setup to pass whole caps and not just sampling_rate
This allows to get rid of the sampling_rate variable in the base-class. Also now
subclasses can modify the caps to actualy negotiate. This is needed to e.g. set
audio-channel positions.
2009-11-19 21:11:35 +02:00
Stefan Kost
38592a566d signalprocessor: don't set channel positions in template-caps, Fixes #601775
Revert the changes that added audio positions to template caps. We have an un-
fortunate limitation in core that does not allow to do it. Keep a few things
commented out, so that the channel position can later on be set in setcaps.
2009-11-16 10:20:31 +02:00
Stefan Kost
e1dccb6fd7 build: use gst-glib-gen.mak to fix the glib build rules.
The build rules in glib-gen.mak were using pattern rules in a non save way.
2009-10-24 15:14:26 +03:00
Stefan Kost
0e642cad5b signalprocessor: use the type define like everywhere else 2009-10-11 21:26:45 +03:00
Stefan Kost
4b6e0e9ede signalprocessort: register debug category just once
Previously we were trying to register it for every subclass.
2009-10-11 21:26:45 +03:00
Josep Torra
2f603bc241 basevideo: fix warnings in macosx snow leopard 2009-10-11 11:14:16 +02:00
David Schleef
76f489c595 basevideo: Revert "Call GstBaseVideoEncoder::start/stop during pad [de]activation."
This reverts commit 4c087bcb07.
The reverted commit changes the order that set_format() and start()
are called, which is incorrect.  The correct order is set_format(),
start(), handle_frame()..., stop()
2009-10-05 17:07:36 -07:00
David Schleef
7496a84ea0 basevideo: Free frame using utility function 2009-10-05 13:34:30 -07:00
Jan Schmidt
b4fd433c57 basevideo: Fail if caps don't contain a framerate field
Return false from the caps parsing function if there is no framerate
field in the provided caps
2009-10-05 21:13:40 +01:00
David Schleef
1ee3b51ee0 dirac: convert to BaseVideoEncoder 2009-10-02 22:10:07 -07:00
Alessandro Decina
e665fb8702 Add GstBaseVideoDecoder::set_sink_caps vfunc. 2009-10-02 14:28:50 +02:00
Alessandro Decina
7dc185655f Call GstBaseVideoDecoder::start/stop during pad [de]activation. 2009-10-02 14:28:15 +02:00
Alessandro Decina
a6f616c1ee Don't ignore the value returned from GstBaseVideoEncoder::set_format. 2009-10-02 12:14:07 +02:00
Alessandro Decina
867cb76b21 Unref frame->sink_buffer in gst_base_video_encoder_finish_frame 2009-10-02 12:14:06 +02:00
Alessandro Decina
40d832918a Make GstBaseVideoEncoder::handle_frame return GstFlowReturn 2009-10-02 12:14:06 +02:00
Alessandro Decina
4c087bcb07 Call GstBaseVideoEncoder::start/stop during pad [de]activation. 2009-10-02 12:14:06 +02:00
David Schleef
62b692d549 basevideo: debug at new segment events 2009-09-17 17:03:41 -07:00
David Schleef
440fceec73 basevideo: Add a warning 2009-09-17 17:03:40 -07:00
Dave Robillard
374d52d257 Multi-channel support with channel positions.
This queries port roles from the LV2 data and converts it into GStreamer
channel positions.  This should allow any type of multi-channel plugin
(including beyond stereo, e.g. surround) to work fine in GStreamer,
and with elements that require channel positions to be explicitly stated.
2009-09-17 09:46:49 +03:00
Dave Robillard
403f58b562 Working multi-channel pads for LV2 plugins. 2009-09-17 09:46:48 +03:00
Dave Robillard
7b14e0cb01 Eliminate use of static mono pad template. 2009-09-17 09:46:48 +03:00
Sebastian Dröge
5a8e9cd080 signalprocessor: Fix various build/dist issues
Install the headers, version the library with @GST_MAJORMINOR@,
add all required libraries to _LIBADD instead of _LDFLAGS,
and add GST_*_LDFLAGS to _LDFLAGS.

Fixes bug #594715.
2009-09-10 07:56:25 +02:00
Julien Isorce
30469d45c0 start refactoring of dshowsrcwrapper
-remove gst-libs/gst/dshow
-fakesource is moved from gst-libs/gst/dshow to sys/dshowsrcwrapper
-some minor changes (C/C++ check and includes) to make the plugin
compile again.
2009-07-21 10:49:37 +02:00
Sebastian Dröge
9b9b8cd58e basevideo: Link with libgstvideo for some used functions 2009-07-07 20:29:16 +02:00
Tim-Philipp Müller
6a763f6a47 basevideo, schroedinger: guard unstable API with GST_USE_UNSTABLE_API
Add some guards and fat warnings to the header files with still unstable
API, so people who just look at the installed headers know that it
actually is unstable API.
2009-07-03 16:08:38 +01:00
David Schleef
cf2b2b017f basevideo: move from -base
Also move schroedinger plugin.  This creates a new library,
gstbasevideo-0.10, which will probably be merged back into
gstvideo-0.10 when this is moved back to -base.
2009-07-01 10:56:24 -07:00
Dave Robillard
ea184d72f5 Working LV2 plugin discovery.
- Separate gstsignalprocessor into a separate library (not sure if this
  is in the right place, but it works for now anyway)
- Create LV2 element based on LADSPA element, port most discovery
  functionality
2009-06-22 22:25:03 +03:00
Lasse Laukkanen
9dc5c1ffb2 photography: add functions to set/get all settings with one call 2009-06-05 15:51:30 +03:00
Tim-Philipp Müller
3cfe16cc63 photography: declare interface as unstable API by means of a warning
Application developers won't know right away which module an interface comes from,
and may assume that it is covered by the usual GStreamer API guarantees, so make
it as clear as possible that this particular API is still subject to change
(should have done that with other libraries in -bad before too really).
2009-03-04 21:30:30 +00:00
Lasse Laukkanen
617f34895c photo iface: Add caps object to preparation API for requested and actual capture format
Allow requesting of certain format with prepare_for_capture() and return
the actual format in GstPhotoCapturePrepared callback.
2009-02-23 14:20:12 +02:00
Christian Schaller
f4c741ef9c Update spec file with latest changes, also add some missing disting directories to a couple of Makefiles.am files 2009-02-11 17:23:03 +00:00
René Stadler
c7dfd53899 photography interface: .gitignore generated files. 2009-02-11 01:59:39 +02:00
René Stadler
35ac029769 photography interface: Move generated files to win32/common. 2009-02-11 01:59:39 +02:00
Nokia Corporation
f081d3e7b6 Add photography interface. 2009-02-09 10:22:08 +02:00
Jan Schmidt
a2b410a595 Remove AppSrc/AppSink that are moving to -base. Partially fixes #564421
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/inspect/plugin-app.xml:
* examples/Makefile.am:
* examples/app/.cvsignore:
* examples/app/Makefile.am:
* examples/app/appsink-src.c:
* examples/app/appsrc-ra.c:
* examples/app/appsrc-seekable.c:
* examples/app/appsrc-stream.c:
* examples/app/appsrc-stream2.c:
* examples/app/appsrc_ex.c:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/app/.cvsignore:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/app/gstapp-marshal.list:
* gst-libs/gst/app/gstappbuffer.c:
* gst-libs/gst/app/gstappbuffer.h:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsink.h:
* gst-libs/gst/app/gstappsrc.c:
* gst-libs/gst/app/gstappsrc.h:
* gst/app/Makefile.am:
* gst/app/gstapp.c:
Remove AppSrc/AppSink that are moving to -base. Partially fixes
#564421
2009-01-05 23:03:31 +00:00
Wim Taymans
f1814feb71 gst-libs/gst/app/gstappsrc.*: Add properties and methods to configure and retrieve the min and max latencies.
Original commit message from CVS:
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_query),
(gst_app_src_set_latencies), (gst_app_src_set_latency),
(gst_app_src_get_latency), (gst_app_src_push_buffer_full):
* gst-libs/gst/app/gstappsrc.h:
Add properties and methods to configure and retrieve the min and max
latencies.
2008-12-29 16:45:20 +00:00
Wim Taymans
59c80c9a40 Add appsrc and appsink documentation.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init):
Add appsrc and appsink documentation.
2008-12-17 13:51:46 +00:00
Wim Taymans
16aa82d6e7 examples/app/: Fix example to unref after emiting the push-buffer action.
Original commit message from CVS:
* examples/app/appsrc-ra.c: (feed_data):
* examples/app/appsrc-seekable.c: (feed_data):
* examples/app/appsrc-stream.c: (read_data):
* examples/app/appsrc-stream2.c: (feed_data):
Fix example to unref after emiting the push-buffer action.
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_push_buffer_full), (gst_app_src_push_buffer),
(gst_app_src_push_buffer_action):
Don't take the ref on the buffer in push-buffer action because it's too
awkward for bindings. Fixes #564482.
2008-12-15 12:02:26 +00:00
이문형
10097dffbd gst-libs/gst/app/gstappsrc.c: Don't forget to release the lock again if we bail out because some pad is flushing or w...
Original commit message from CVS:
Patch by: 이문형 <iwings at gmail dot com>
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_push_buffer):
Don't forget to release the lock again if we bail out because some
pad is flushing or we've reached EOS, otherwise things will lock up
next time _push_buffer() is called (#562802).
2008-12-01 19:36:35 +00:00
Edward Hervey
4cf27a7351 gst/: Wim, you're a bad boy. You don't want people to contact you or what?
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsrc.c:
* gst/h264parse/gsth264parse.c:
Wim, you're a bad boy. You don't want people to contact you or what?
2008-11-10 14:53:45 +00:00
Wim Taymans
5e8f80a9f5 gst-libs/gst/app/gstappsrc.*: Add is-live property.
Original commit message from CVS:
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_push_buffer):
* gst-libs/gst/app/gstappsrc.h:
Add is-live property.
Add some more docs.
2008-11-07 17:35:46 +00:00
Stefan Kost
a14e8e07df Don't install static libs for plugins. Fixes #550851 for -bad.
Original commit message from CVS:
* ext/alsaspdif/Makefile.am:
* ext/amrwb/Makefile.am:
* ext/apexsink/Makefile.am:
* ext/arts/Makefile.am:
* ext/artsd/Makefile.am:
* ext/audiofile/Makefile.am:
* ext/audioresample/Makefile.am:
* ext/bz2/Makefile.am:
* ext/cdaudio/Makefile.am:
* ext/celt/Makefile.am:
* ext/dc1394/Makefile.am:
* ext/dirac/Makefile.am:
* ext/directfb/Makefile.am:
* ext/divx/Makefile.am:
* ext/dts/Makefile.am:
* ext/faac/Makefile.am:
* ext/faad/Makefile.am:
* ext/gsm/Makefile.am:
* ext/hermes/Makefile.am:
* ext/ivorbis/Makefile.am:
* ext/jack/Makefile.am:
* ext/jp2k/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/lcs/Makefile.am:
* ext/libfame/Makefile.am:
* ext/libmms/Makefile.am:
* ext/metadata/Makefile.am:
* ext/mpeg2enc/Makefile.am:
* ext/mplex/Makefile.am:
* ext/musepack/Makefile.am:
* ext/musicbrainz/Makefile.am:
* ext/mythtv/Makefile.am:
* ext/nas/Makefile.am:
* ext/neon/Makefile.am:
* ext/ofa/Makefile.am:
* ext/polyp/Makefile.am:
* ext/resindvd/Makefile.am:
* ext/sdl/Makefile.am:
* ext/shout/Makefile.am:
* ext/snapshot/Makefile.am:
* ext/sndfile/Makefile.am:
* ext/soundtouch/Makefile.am:
* ext/spc/Makefile.am:
* ext/swfdec/Makefile.am:
* ext/tarkin/Makefile.am:
* ext/theora/Makefile.am:
* ext/timidity/Makefile.am:
* ext/twolame/Makefile.am:
* ext/x264/Makefile.am:
* ext/xine/Makefile.am:
* ext/xvid/Makefile.am:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/dshow/Makefile.am:
* gst/aiffparse/Makefile.am:
* gst/app/Makefile.am:
* gst/audiobuffer/Makefile.am:
* gst/bayer/Makefile.am:
* gst/cdxaparse/Makefile.am:
* gst/chart/Makefile.am:
* gst/colorspace/Makefile.am:
* gst/dccp/Makefile.am:
* gst/deinterlace/Makefile.am:
* gst/deinterlace2/Makefile.am:
* gst/dvdspu/Makefile.am:
* gst/festival/Makefile.am:
* gst/filter/Makefile.am:
* gst/flacparse/Makefile.am:
* gst/flv/Makefile.am:
* gst/games/Makefile.am:
* gst/h264parse/Makefile.am:
* gst/librfb/Makefile.am:
* gst/mixmatrix/Makefile.am:
* gst/modplug/Makefile.am:
* gst/mpeg1sys/Makefile.am:
* gst/mpeg4videoparse/Makefile.am:
* gst/mpegdemux/Makefile.am:
* gst/mpegtsmux/Makefile.am:
* gst/mpegvideoparse/Makefile.am:
* gst/mve/Makefile.am:
* gst/nsf/Makefile.am:
* gst/nuvdemux/Makefile.am:
* gst/overlay/Makefile.am:
* gst/passthrough/Makefile.am:
* gst/pcapparse/Makefile.am:
* gst/playondemand/Makefile.am:
* gst/rawparse/Makefile.am:
* gst/real/Makefile.am:
* gst/rtjpeg/Makefile.am:
* gst/rtpmanager/Makefile.am:
* gst/scaletempo/Makefile.am:
* gst/sdp/Makefile.am:
* gst/selector/Makefile.am:
* gst/smooth/Makefile.am:
* gst/smoothwave/Makefile.am:
* gst/speed/Makefile.am:
* gst/speexresample/Makefile.am:
* gst/stereo/Makefile.am:
* gst/subenc/Makefile.am:
* gst/tta/Makefile.am:
* gst/vbidec/Makefile.am:
* gst/videodrop/Makefile.am:
* gst/videosignal/Makefile.am:
* gst/virtualdub/Makefile.am:
* gst/vmnc/Makefile.am:
* gst/y4m/Makefile.am:
* sys/acmenc/Makefile.am:
* sys/cdrom/Makefile.am:
* sys/dshowdecwrapper/Makefile.am:
* sys/dshowsrcwrapper/Makefile.am:
* sys/dvb/Makefile.am:
* sys/dxr3/Makefile.am:
* sys/fbdev/Makefile.am:
* sys/oss4/Makefile.am:
* sys/qcam/Makefile.am:
* sys/qtwrapper/Makefile.am:
* sys/vcd/Makefile.am:
* sys/wininet/Makefile.am:
* win32/common/config.h:
Don't install static libs for plugins. Fixes #550851 for -bad.
2008-11-04 12:42:30 +00:00
Wim Taymans
4f5adba674 gst-libs/gst/app/gstappsink.c: Fix the docs.
Original commit message from CVS:
* gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init):
Fix the docs.
2008-10-29 17:02:55 +00:00