Commit Graph

23 Commits

Author SHA1 Message Date
Dom Cobley
d2c9f912da RaspiStill example code for YUV fast paths
Update RaspiStill framework to provide access to the new EGL image
targets that provide a fastpath for mapping the individual YUV planes to
one byte per pixel GL_LUMINANCE buffers. These are still accessed as OES
textures so this is effectively a greyscale image created from a single
plane of a MMAL buffer.

Also added some example code (yuv, sobel) that demonstrates how to use
the new EGL image targets.

Also, add -gc to the command line to capture the GL frame-buffer as a TGA file.

Thanks to Tim Gover
2013-11-28 22:26:15 +00:00
Dom Cobley
0d486513f5 RaspiStill: Add option to render preview via GL.
Add RaspiTex.c which demonstrates how the camera preview buffers can be
bound to EGL Images and rendered via Open GLES.

To enable GL rendering add --gl to the command line and select a
GL scene
* square - A simple rotating square
* teapot - The classic teapot demo
* mirror - OpenGL ES 2.X Hall of mirrors example
2013-11-10 17:47:38 +00:00
jamesh
8cf692f899 Sets max bitrate for record at 25Mbits/s
Set shutter speed each loop of multi frame capture (report it loses settings after capture)
Fix bug in raspivid which stopped -t 0 running forever.
Update docs to reflect these changes, plus document a previous checkin (exif, thumb = none)

Also fixed up a print that was being output in non-verbose mode.

Update versions by 0.01
2013-10-23 17:54:16 +01:00
barmaglot27
4ad6ca8612 make stills without thumbnails and EXIF tags to minimize jpeg size 2013-10-20 04:14:09 -04:00
JamesH
61afe0a512 Added a signal mode to allow initiation of captures from another process.
Waits on SIGUSR1 between captures.

Fixed a possible issue with black frames in timelapse mode where
-tl 0 is used. Ensures the first frame has plenty of time to get its exposure
right.
2013-10-15 12:22:02 +01:00
jnahughes
e7d21623cd Shuffled around the capture loop to provide better facility
to add new 'fire next capture' options. Makes the looping
easier to understand.

As a consequence have re-added the keypress option which
has gone missing.

Have modified timelapse so a value of 0 tries to take images
as fast as possible (with slight delay to allow exposure to
work)
2013-10-11 15:41:36 +01:00
JamesH
ff38458f38 userland #35 Removed exposure off option
This is never going to work as expected, so removing the option
completely.

Updated docs, incremented version by 0.01
2013-10-04 17:47:06 +01:00
jnahughes
5dc3e15228 userland #66
Now returns correct codes on exit(). Good run returns
EX_OK(0), bad command line parameters return ES_USAGE(64),
camera failure EX_SOFTWARE(70).

Codes from sysexits.h were used.

Doesn't yet implement the 'strict' option suggested by a
contributor on github, I'm not convinced that's all that
necessary.
2013-10-02 22:16:37 +01:00
JamesH
e1d36801c4 Fixed a problem with some strings not being free'd inside a loop
where they were being used.

No idea how this issue has arisen or why it has not been
reported, perhaps a recent git merge fault?
2013-10-02 15:27:42 +01:00
JamesH
77437517d4 userland #64
Added ability to set the H264 profile for encoding.

Supports main, baseline and high.

Also needed to shuffle some code around to make some parsing
code available outside raspicamcontrol.c
2013-09-26 14:47:07 +01:00
lgretton
b9604216c4 Update RaspiStill.c
Date and time of EXIF DateTime fields is now separated by a space instead of a colon, in accordance with EXIF 2.1.
2013-09-15 20:52:04 +01:00
David M. Palmer
73f5ab956a Periodic timelapse
Timelapse pictures are taken periodicially, i.e. starting the image capture
attempts at fixed time intervals, as opposed to a fixed delay after the
end of the previous image.  As a result, the mean time between images
is closer to the requested time interval, and the effect of individual
slow images (due to e.g. exposure adjustments or delays in file writing.)
does not propagate to subsequent images.

If something causes a delay so that the image would be more than half
a timelapse period late, images are skipped (also skipping
the frame numbers in the filenames) to keep in sync.

As a result, a timelapse sequence with -tl 60000 looking at
a clock would show the second hand in ~the same place in all images
as opposed to the previous code, which would show the second hand
advancing by the cumulative time taken by all the image captures.

Also, a --timeout 0 will cause an unlimited number of images to
be taken.
2013-09-07 12:58:10 -06:00
David M. Palmer
394dd3a603 Use open/write/rename to prevent partial image files.
Added -l/--latest option to provide a link to the latest frame of a time-lapse.
Added -l to the documentation.
2013-08-18 11:54:31 -06:00
JamesH
064c4598ef Fixed up preview mode to use a null sink rather than not connecting
components. Fixes the darkening frames in timelapse mode problem.
2013-07-16 19:23:51 +01:00
JamesH
6612cf362b Fixed up so RAW works for each capture in timelapse mode 2013-07-05 14:05:23 +01:00
JamesH
7e29071964 Fixed up EXIF setting as sending data whilst encoder port was active
is not allowed. Now close port between captures to allow setting.
2013-06-28 16:47:59 +01:00
JamesH
7574e22061 RaspiCam:
Restructured the component creation to return status codes

Added a missing function header commment
2013-06-26 16:19:36 +01:00
Dom Cobley
986774edf7 raspicam: status should be initialised to fail 2013-06-06 00:47:28 +01:00
Dom Cobley
96f2e7b278 raspicam: Fixes from James for:
Fixed an initialisation problem with status variable that is causing a
    problem with disabling the preview window.
 Fixed the help options - were not working at all - now using -? or --help
    displays the help text and exits the app immediately.
 Add an opacity setting for the preview window. Untested at point of commit
 Added a check on fwrite'ing to file to check for success. In stills case will stop capture by
    firing the complete semaphore. In vid case sets a flag in the callback structure.
    Needed to change the way the vid case timed it capture run so it can check the abort flag during
    the wait
 Remove the semaphore from the vid case - a unnecessary hangover from when branched from stills.
 Fixed up RaspiStillYUV to output to stderr
 Fixed up all apps to have a version number, and use the running app filename as
    their displayed name
    Version number set to v1.1
 Update license text
2013-05-24 17:45:22 +01:00
Dom Cobley
84532e49f4 raspicam: Avoid losing failure status
raspicam: Remove unimplemented effects
raspicam: More warnings for specifying unimplemented options
raspicam: Undo flip in demo mode
raspicam: Don't choose implemented effects in demo mode
raspicam: Mention units for timeout
2013-05-12 14:23:09 +01:00
Dom Cobley
7110d7c59f Updated camera apps, add flips and better diagnostics
Remove warnings in hello_pi demo apps
2013-05-10 21:02:21 +01:00
popcornmix
f9d1e4baf3 Remove redundant VCOS_SEMAPHORE_T typedef. 2013-03-30 23:03:40 +00:00
Dom Cobley
1b14780c0e Add camera demo apps. Thanks jamesh 2013-03-30 00:43:06 +00:00