Commit graph

69 commits

Author SHA1 Message Date
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