Tommi Myöhänen
fe70981023
camerabin: implement video preview creation
...
Completes preview creation mechanism to be able to provide a preview
image for video clips too.
2009-10-24 15:14:25 +03:00
Stefan Kost
52e314ef81
camerabin: set camerabin default sources/sinks like in playbin2. Fixes #574434
...
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.
2009-10-24 15:14:25 +03:00
Lasse Laukkanen
a0a4032ce8
camerabin: fix deadlock when error occurs at video recording startup
2009-10-01 18:06:55 +03:00
Tommi Myöhänen
0d48f73532
camerabin: handle preview-caps only in image mode and only when they change
...
This prevents camerabin to create preview pipeline every time when
application re-sets the same caps again.
2009-10-01 18:06:55 +03:00
Tommi Myöhänen
99f1f4510a
camerabin: don't send multiple EOS events to video pipeline
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
eb648817a4
camerabin: fix scene mode setting
...
Camerabin caches photography settings, but it didn't take into account
that scene mode setting may change other settings as well. So, config
needs to be read back from device after scene mode is set.
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
dc267be4f7
camerabin: allow mode parameter setting in NULL state
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
dacdd5d6c9
camerabin: allow capture resolution to be set in NULL state
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
0f2be803b4
camerabin: fix image queue parameter setting
...
Camerabin incorrectly used G_GUINT64_CONSTANT macro for setting
"max-size-buffers" and "max-size-bytes" properties in image queue,
even when they aren't 64bit integers.
2009-10-01 18:06:53 +03:00
Tommi Myöhänen
3f90a4acfa
camerabin: fix warning with g_object_get and join separate g_object_sets into one
2009-10-01 18:06:53 +03:00
Tommi Myöhänen
b2fc088c84
camerabin: reset active-pad in output-selector after READY state
...
Camerabin sets itself to READY state during resolution change. This
operation makes output-selector to forget its currently active pad,
so it must be set again after state change.
2009-10-01 18:06:53 +03:00
Lasse Laukkanen
7b62e11412
camerabin: don't reset capsfilters or zoom if error occurs
...
If an error occurs, application should set pipeline to NULL, and updating
zoom can actually block message handling if video device driver has failed
and video src element supports zooming using photography interface and S_CROP.
2009-10-01 18:06:53 +03:00
Tommi Myöhänen
89788ddc1f
camerabin: Set camerasrc to READY state instead of PAUSED when acquiring allowed caps
2009-07-31 14:07:24 +03:00
Tommi Myöhänen
2d9bdb933d
camerabin: photo iface setter functions return TRUE when used in NULL state
...
We cache the values and apply then when possible.
2009-07-28 09:53:22 +03:00
Tommi Myöhänen
01a7532900
camerabin: do not put video pipeline into READY when start recording camerabin: remember probe IDs and disconnect them when destroying pipelines
2009-07-28 09:53:22 +03:00
Stefan Kost
43657ef1f3
camerabin: small speedup in software zoom
...
Force crop on even pixel position to avoid slowpath in crop & scale.
2009-07-21 17:52:33 +03:00
Stefan Kost
a80921e334
camerabin: log formats in preview image conversion
2009-07-20 16:42:44 +03:00
Stefan Kost
64457575e7
camerabin: remove unused variable assignment
...
Result is not needed here, but variable is used later on. Also remove double new
lines in function.
2009-07-20 16:42:43 +03:00
Stefan Kost
4ef918df28
camerabin: use gst_caps_replace instead of separate calls
...
This fixes setting snapshot caps back to NULL also.
2009-07-17 15:50:19 +03:00
Stefan Kost
aace8e130f
camerabin: use nonbuffered io to save memcopies
...
We write large blocks anyway, so no extra buffering please. Also use one
g_object_set to set multiple properties on same object.
2009-07-15 17:44:10 +03:00
Stefan Kost
c73bf8e4b6
camerabin: track todo items
2009-07-15 12:20:17 +03:00
Stefan Kost
ff3ef9a92a
camerabin: leave image/video bin in ready when changing mode
2009-07-15 11:20:30 +03:00
Stefan Kost
3d6d1c2ed2
camerabin: code cleanups
...
Downgrade a WARNING to INFO. Use a bit more compact code. Add a fixme comment.
2009-06-26 18:36:26 +03:00
Stefan Kost
59bfe55110
camerabin: just ref caps, we don't need a writable copy
2009-06-26 18:36:25 +03:00
Stefan Kost
df14237dba
camerabin: no need to ref and unref this temporarily
2009-06-26 18:36:25 +03:00
Stefan Kost
c9208657b1
camerabin: don't leak sink_caps if they would be any-caps
2009-06-26 18:36:25 +03:00
Stefan Kost
a5e9a5eebc
camerabin: don't leak preview images
2009-06-26 18:36:25 +03:00
Stefan Kost
9a692cf602
camerabin: don't leak viewfinder-caps
2009-06-26 18:36:25 +03:00
Stefan Kost
2f93fb8c73
camerabin: insert a few blank lines for readability
2009-06-26 18:36:24 +03:00
Stefan Kost
4ab9f800a8
camerabin: don't leak messages and element refs in preview
2009-06-26 18:36:24 +03:00
Stefan Kost
e673b099d4
camerabin: don't leak requestpads
...
Requestpads need to be released and unreffed. Add a comment in one case where
we intentionaly don't unref.
2009-06-25 19:34:28 +03:00
Lasse Laukkanen
c3abf1b267
camerabin: buffer-alloc support fixes to image and video bin handling
...
Keep image bin in PAUSED state in image mode except when processing/saving (PLAYING/READY).
Change output-selector to view finder before setting video bin to READY.
Fix filename sent with img-done signal.
2009-06-24 19:01:01 +03:00
Lasse Laukkanen
18e7091238
camerabin: fix setting mute when video bin elements haven't been created
2009-06-24 18:58:17 +03:00
Lasse Laukkanen
8a39d28002
camerabin: set image bin to PAUSED when starting capture
...
Set image bin to PAUSED also when starting capture using photography
interface.
2009-06-24 18:58:16 +03:00
Lasse Laukkanen
a265e4d2b3
camerabin: leave v4l2camsrc "capture-mode" as video mode when pausing
2009-06-24 18:58:16 +03:00
Stefan Kost
74f065ee75
camerabin: add local include dir to CFLAGS
2009-06-22 23:49:03 +03:00
Stefan Kost
a971391906
camerabin: code cruft removal and debug logs
...
Remove unused code. Add lots of debug loging. Change comments for local
functions to not use /** gtk-doc start style.
2009-06-22 13:41:16 +03:00
Stefan Kost
2bb31a8d4a
camerabin: reset filename after capture to avoid racy when capturing again
...
If we don't reset the filename we cannot check if we still expect the filename
for a subsequent capture pass. The imagebin would good to paused and we set the
filename in that state. This trigers an error-message and would capture to the
old filename.
2009-06-16 19:14:25 +01:00
Stefan Kost
80408b1de2
camerabin: set imagebin to PAUSED on capture and delayed filename setting
...
We need to set imagebin to PAUSED to not fail the bufferalloc. We also need to
keep the filesinks state locked until we have the filename for the run.
2009-06-14 10:56:30 +03:00
Stefan Kost
4d9a0e832c
camerabin: fix link order
...
Move local version up in the link order.
2009-06-05 21:29:46 +03:00
Lasse Laukkanen
6a47f6f594
camerabin: preview image sending optimization
...
* decouple image capturing from image post-processing and encoding
* post image-captured message after image is captured
* post preview-image message with snapshot of captured image
2009-06-05 15:51:31 +03:00
Lasse Laukkanen
bbf48697fb
camerabin: don't lose post processing element in first reset
2009-06-05 15:51:31 +03:00
Lasse Laukkanen
683b72a5fe
camerabin: add debug including dot graph writing
2009-06-05 15:51:31 +03:00
Lasse Laukkanen
430f343522
camerabin: unblock if error occurs during capture
2009-06-05 15:51:31 +03:00
Lasse Laukkanen
ca4bfb2e47
camerabin: ignore night mode handling if already in night mode
2009-06-05 15:51:31 +03:00
Lasse Laukkanen
cbcd4e3330
camerabin: stop ongoing capture if changing resolution
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
cad76384b3
camerabin: limit the size of video bin queue leading to view finder
...
We don't want to show old buffers in view finder.
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
3ff7128293
camerabin: don't proxy gst xoverlay interface
...
Default view finder sink in camerabin is autovideosink which doesn't
support xoverlay iface. If application decides to use another sink
that supports xoverlay, then it can use the interface directly.
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
710faaef68
camerabin: allow configuring photography settings when in NULL state
...
Cache the photography settings if set in NULL state and apply them later
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
53e6e4b0d5
camerabin: crop still image capture frame if necessary
...
If incoming still image capture frame aspect ratio differs from aspect
ratio that application requested, then apply crop to the frame.
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
78b208125a
camerabin: clean up and fix assertion fail when setting zoom in NULL state
2009-04-16 16:08:42 +03:00
Lasse Laukkanen
9b0fa11a5d
camerabin: fix format matching when detecting allowed frame rate
2009-04-16 16:08:41 +03:00
Lasse Laukkanen
0847a84f41
camerabin: don't lose pending state when changing resolution
2009-04-16 16:08:40 +03:00
Lasse Laukkanen
65ddcd6d5d
camerabin: change img-done signal parameter from GString* to const gchar*
...
Don't allow setting filename via img-done signal parameter but force app
use filename property. Don't stop capture when setting filename property.
Update check unit test based on the change.
2009-04-16 15:19:20 +03:00
Stefan Kost
a7a97b9139
Makefile.am: no static libs for plugins
2009-03-22 21:02:45 +02:00
Jan Schmidt
81a950ddf8
camerabin: Make the tests pass when the camerabin can't initialise.
...
The camerabin tests were throwing glib errors and hanging when
gst-plugins-good elements (jpegenc, videocrop) can't found.
2009-03-07 00:31:07 +00:00
Jan Schmidt
4814c3ca87
camerabin: Partly fix distcheck
...
Don't dist the generated marshal.h header by putting it in the headers
list.
2009-03-07 00:30:23 +00: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
Stefan Kost
fab9dfa5d0
camerabin: rework signaling and tests
...
Revert the GString change. There are no marshallers for it. A better change is
now described in http://bugzilla.gnome.org/show_bug.cgi?id=573370 .
Test should work again.
2009-02-27 12:35:14 +02:00
Stefan Kost
53f975f63c
docs: various doc fixes
...
No short-desc as we have them in the element details.
Also keep things (Makefile.am and sections.txt) sorted.
Reword ambigous returns. No text after since please.
2009-02-25 12:42:36 +02:00
Stefan Kost
518d98899e
camerabin: update signal marshaller and docs
...
Use GString instead of GPointer for the marshaller as this is what the callback uses.
Slightly reformat docs.
2009-02-25 11:41:36 +02:00
Lasse Laukkanen
c81bce2b21
camerabin: unblock correct pad in reset, support fakesink as view finder
2009-02-25 10:45:19 +02:00
Lasse Laukkanen
bde8707b65
camerabin: Add aspect ratio capsfilter for view finder
...
If dealing with larger frame sizes than view finder sink element
accepts then maintain aspect ratio when scaling frames to fit.
2009-02-23 14:20:13 +02:00
Lasse Laukkanen
24d99bbe56
camerabin: Scale incoming frames if their size does not match requested size
...
If capture preparation in videosrc results in frame size different
from requested size, then we need to scale them.
2009-02-23 14:20:12 +02:00
Andoni Morales
7992233522
camerabin: Fix compilation on Windows with Visual Studio
...
Windows doesn't have strcasecmp so we should use
g_ascii_strcasecmp here instead.
Also Windows doesn't have sys/time.h so we first
need to check if it actually exists and if not
we should not include it.
Fixes bug #572315 .
2009-02-22 18:41:08 +01:00
René Stadler
ff2d0621f7
camerabin: Sanitize constants used for element factory names.
2009-02-11 01:59:39 +02:00
René Stadler
6675318107
camerabin: Use v4l2src as default source.
2009-02-11 01:59:39 +02:00
René Stadler
7207ef163b
camerabin: Add .gitignore to hide generated signal marshaller files.
2009-02-11 01:59:27 +02:00
René Stadler
d821246de6
camerabin: Fix plugin details to use GST_PACKAGE_* values.
2009-02-11 00:19:22 +02:00
Julien Moutte
fe54254bd9
Fix build for camerabin.
2009-02-09 15:48:20 +01:00
Nokia Corporation
3751eaeb79
Add camerabin element.
2009-02-09 10:22:09 +02:00