Thiago Santos
e2c67098e9
camerabin2: use jpeg as a container to force jifmux usage
...
Jifmux should be used as it can do xmp/exif tagging, so this patch
sets jpeg as a container to force it to be used together with
a jpeg encoder
2011-05-16 18:08:41 -03:00
Alessandro Decina
90221c4a82
camerabin2: do proper EOS handling on send_event(eos)
...
We first let the inner camera EOS. Then we manually post EOS on the image and
video sinks if those are <= READY and so have ignored EOS events.
2011-05-16 18:08:40 -03:00
Alessandro Decina
9e9507b645
camerabin2: use encodebin to encode images
2011-05-16 18:08:40 -03:00
Thiago Santos
993a98c238
jifmux: Bump rank to secondary
...
jifmux is being used for quite some time and has no open bugs
currently, so we can give it a secondary rank at least.
Fixes #649391
2011-05-16 18:08:40 -03:00
Thiago Santos
ad68fa5831
jifmux: Change class to formatter
...
jifmux is a formatter and not a muxer
Fixes #649391
2011-05-16 18:08:40 -03:00
Thiago Santos
0bbbbd22d1
examples: camerabin2: Fix GOptionEntry array
...
Use no flags instead of passing G_OPTION_ARG_OPTIONAL to options that
must have an argument
2011-05-16 18:08:40 -03:00
Thiago Santos
7ee207b359
camerabin2: examples: build fixes
...
Add some missing dependencies
2011-05-16 18:08:40 -03:00
Thiago Santos
0b02e595f3
camerabin2: Changing how some properties work
...
Some properties (like viewfinder-filter) only are taken into use
on NULL->READY transitions and the get/set property was returning
the currently in use value, instead of the last set.
This is bad, as after setting 'a' to 'x', you expect that getting 'a'
will return 'x'. This patch fixes it.
If needed, later we could add current-* properties that are readonly
and get the current value in use.
2011-05-16 18:08:40 -03:00
Lasse Laukkanen
a36edbc1ab
camerabin2: Updating PORTING file
2011-05-16 18:08:40 -03:00
Thiago Santos
56007404b6
camerabin2: Adding missing plugin error messages
...
Whenever a required plugin is missing, camerabin2 should post
a missing plugin message to the bus
2011-05-16 18:08:40 -03:00
Thiago Santos
1c8e1722eb
camerabin2: encodebin might not have the requested pad
...
handle the case where encodebin doesn't have the pad
camerabin2 is requesting, either because of its current profile
or because of missing elements, making it fail to provide
the pad
2011-05-16 18:08:40 -03:00
Lasse Laukkanen
dfe815e048
examples: camerabin2: Add more arguments
...
Add command-line options for setting image-capture, viewfinder
and video-capture caps as strings.
The width and height properties are now used only if these new caps
properties aren't set.
2011-05-16 18:08:39 -03:00
Thiago Santos
912800fb76
camerabin2: imagecapturebin: Fix tags merging mode
...
Use merge replace mode to allow new tags to override old ones
and fix the use case where the last sent tags should be serialized
to the captured images.
2011-05-16 18:08:39 -03:00
Thiago Santos
dfdc6255f8
camerabin2: Fix tag handling for videos
...
In video mode the tags should be pushed after sending the start capture
to the source, this allows the video recording elements to be reset
and leave the flushing state they were at after a previous capture.
This fixes the problem where tags only work for the first video capture
2011-05-16 18:08:39 -03:00
Thiago Santos
ba9c1f055f
tests: camerabin2: Fix set but unused variable warnings
2011-05-16 18:08:39 -03:00
Thiago Santos
0556d121c4
tests: camerabin2: Fix tags setting tests
...
Fixes the tags setting tests to reveal a bug in camerabin2
tag setting logic.
2011-05-16 18:08:39 -03:00
Thiago Santos
d8484f8279
camerabin2: Adding camera source documentation file
...
Adds a small text file with a brief description of
what is expected from a camerabin2 source element
2011-05-16 18:08:39 -03: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
Thiago Santos
aa4df686eb
examples: camerabin2: Fix compile problem with debug disabled
2011-05-16 18:08:39 -03:00
Thiago Santos
7fd638bd0d
camerabin2: viewfinderbin: Post missing plugin messages
...
Makes viewfinderbin post missing plugin messages when it
can't create an internal elements
2011-05-16 18:08:39 -03:00
Thiago Santos
54a35ab879
camerabin2: Improve missing plugin message
...
Improves the message text for missing plugin messages from
camerabin2
2011-05-16 18:08:39 -03:00
Thiago Santos
4ca402a470
camerabin2: Update porting file
...
Update porting file with mention that stop-capture is now
async.
2011-05-16 18:08:38 -03:00
Robert Swain
11c7d60dbb
gst-camerabin2-test: Allow gst-launch pipelines for sinks
...
Use gst_parse_launch () to parse the sink strings to allow specification
of properties to sinks and of more advanced sink graphs.
2011-05-16 18:08:38 -03:00
Robert Swain
10b6765fba
camerabin2: Fix debug print to show audio/video depending on pad type
2011-05-16 18:08:38 -03:00
Robert Swain
74d4030e3f
camerabin2: Fix order of element state change
...
To change the state of elements in a pipeline, we should mirror the
behaviour of GstBin which starts at the sink element and works its way
upstream.
2011-05-16 18:08:38 -03:00
Mark Nauwelaerts
66fe878d88
vp8dec: debug code style fixes
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
772d92eeba
vp8dec: propagate downstream flow return to upstream
2011-05-16 20:32:24 +02: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