summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Georgii Staroselskii [Wed, 8 Nov 2017 09:14:35 +0000 (09:14 +0000)]
rpicamsrc: RaspiCapture: use mmal_queue_timedwait() for buffer queueing
If an external camera was disconnected, there were no feedback in an
application. It seems reasonable to wait on mmal_queue no longer than
100ms. If it's stuck we just return a FLOW_ERROR and let the application
decide what to do later.
Georgii Staroselskii [Tue, 7 Nov 2017 15:14:06 +0000 (15:14 +0000)]
rpicamsrc: RaspiCapture: handle MMAL_EVENT_ERROR
Jan Schmidt [Fri, 30 Jun 2017 14:51:13 +0000 (00:51 +1000)]
rpicamsrc: Implement use-stc property to disable STC timestamps
If use-stc=false, then rpicamsrc won't apply
the camera timestamping to outgoing buffers, instead
relying on real-time timestamping by the
GStreamer clock. It means slightly less accuracy
and more jitter in timestamps, but might help on some
CSI inputs with broken timestamping.
Jan Schmidt [Fri, 19 May 2017 10:55:35 +0000 (20:55 +1000)]
rpicamsrc: Fix the descriptions of text annotation colour properties
The text annotation colour properties take an integer value
corresponding to a VUY colour, not a text string like
the copy-pasted description from raspivid suggests.
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/59
Jan Schmidt [Fri, 27 Jan 2017 01:58:29 +0000 (12:58 +1100)]
rpicamsrc: Implement dynamic bitrate update
Use mmal_port_set_parameter_uint32 to update the encoder
bitrate.
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/60
Jan Schmidt [Sat, 8 Oct 2016 11:12:09 +0000 (11:12 +0000)]
rpicamsrc: Set outgoing buffer durations based on negotiated framerate.
make sure outgoing buffers have at least some duration set,
otherwise it leads to strange situations, like qtmux writing
out a file that doesn't include the final frame inside the
playable segment, because no-duration = 0 duration there.
Jan Schmidt [Sat, 8 Oct 2016 11:10:30 +0000 (11:10 +0000)]
rpicamsrc: Destroy mmal pool on shutdown always.
Avoid hangs on the next run because we didn't clean up the mmal pool
last time we shutdown.
Jan Schmidt [Mon, 3 Oct 2016 15:29:49 +0000 (15:29 +0000)]
rpicamsrc: Switch back to MJPEG codec for image/jpeg
The JPEG codec hangs, not sure why yet. The MJPEG
codec doesn't provide a quality setting, and sometimes
freezes on shutdown, but otherwise seems more
reliable
Jan Schmidt [Mon, 3 Oct 2016 14:00:54 +0000 (14:00 +0000)]
rpicamsrc: Don't try and set H264 params with JPEG codec
Jan Schmidt [Sun, 2 Oct 2016 15:34:50 +0000 (02:34 +1100)]
rpicamsrc: First attempt at implementing MJPEG and raw video support
Tim-Philipp Müller [Mon, 19 Sep 2016 12:06:05 +0000 (12:06 +0000)]
rpicamsrc: Add experimental build using the Meson build system
Builds in about 10 seconds vs. 77 seconds with autotools.
Xabier Rodriguez Calvar [Tue, 30 Aug 2016 15:00:41 +0000 (17:00 +0200)]
rpicamsrc: Implement GstVideoDirection interface
Instead of implementing a custom property, we implement that interface.
Jan Schmidt [Wed, 20 Jul 2016 16:29:57 +0000 (02:29 +1000)]
rpicamsrc: MMAL gives buffers with nal alignment, not AU
Fix the output caps, our buffers are not AU aligned, since
the SPS / PPS are given in separate packets at the start.
Xabier Rodriguez Calvar [Fri, 8 Jul 2016 13:32:21 +0000 (15:32 +0200)]
rpicamsrc: Create orientation property
Its behavior and choices are analog to the ones present in [gl]videoflip
for the method property.
Jan Schmidt [Sat, 2 Jan 2016 21:26:23 +0000 (08:26 +1100)]
rpicamsrc: basesrc event handlers should not unref
Don't unref the passed event when handling events via
the GstBaseSrc src pad event handler - basesrc does
the unref. That breaks handling of upstream
force-key-unit events by unreffing twice.
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/43
Jan Schmidt [Thu, 17 Dec 2015 03:16:10 +0000 (14:16 +1100)]
rpicamsrc: Add property getters for preview window position.
Add the lines in get_property() for the preview-x/y/w/h properties
so the values can be retrieved without causing critical warnings.
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/42
Jan Schmidt [Tue, 1 Dec 2015 14:20:10 +0000 (01:20 +1100)]
rpicamsrc: Add preview-x/y/w/h properties
Expose properties for setting the position of the preview
window on the screen
Jan Schmidt [Wed, 21 Oct 2015 10:11:36 +0000 (21:11 +1100)]
rpicamsrc: Add properties for configuring annotation text size and colour.
Map the raspivid setting for annotation text size and colours
to properties.
ibauer [Thu, 8 Oct 2015 08:32:32 +0000 (10:32 +0200)]
rpicamsrc: Changed awb-gain-blue use the correct enum PROP_AWB_GAIN_BLUE and not PROP_AWB_GAIN_RED
Jan Schmidt [Sat, 18 Jul 2015 15:48:35 +0000 (01:48 +1000)]
rpicamsrc: Fix buffer PTS calculation
Timestamps from MMAL are in microseconds,
so make sure to convert to nanoseconds before
using them to adjust the GStreamer buffer time
Philippe Normand [Mon, 11 May 2015 09:16:52 +0000 (11:16 +0200)]
rpicamsrc: Basic orientation interface support
The (h,v)flip attributes are now supported through this interface.
It should also be possible to support (h,v)center attributes using the
ROI properties.
Jan Schmidt [Mon, 11 May 2015 11:29:58 +0000 (21:29 +1000)]
rpicamsrc: Describe awb-mode=off in lowercase
Change the descriptions for the awb-gain-blue and awb-gain-red
properties to say 'awb-mode=off' instead of 'awb-mode=OFF'
See https://github.com/thaytan/gst-rpicamsrc/issues/26
Philippe Normand [Mon, 11 May 2015 08:17:18 +0000 (10:17 +0200)]
rpicamsrc: colorbalance: protect with config_lock mutex
Philippe Normand [Tue, 5 May 2015 17:03:43 +0000 (19:03 +0200)]
rpicamsrc: add test-color-balance example
This small test will display a live video preview of the rpicam with
the balance controls being updated once a second. The controls to
update can be disabled in the source by setting the CONTROL_* macros
values to 0.
Philippe Normand [Wed, 29 Apr 2015 14:36:18 +0000 (16:36 +0200)]
rpicamsrc: Implement GstColorBalance interface
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/24
Jan Schmidt [Mon, 27 Apr 2015 12:56:32 +0000 (22:56 +1000)]
rpicamsrc: Fix initial config setting.
Make sure to update the captsure config before starting
capture. Since the capture component now keeps a local
copy of the config, it's not updated automatically.
Jan Schmidt [Sun, 26 Apr 2015 18:05:42 +0000 (04:05 +1000)]
rpicamsrc: Disable bitrate, quantisation and intra-refresh dynamic changes
The firmware rejects dynamic changes of those encoder params.
Jan Schmidt [Sun, 26 Apr 2015 18:05:04 +0000 (04:05 +1000)]
rpicamsrc: Send vcos_log_warn via GStreamer debug messages
Jan Schmidt [Sun, 26 Apr 2015 16:43:14 +0000 (02:43 +1000)]
rpicamsrc: Add dynamic properties example
Python example of adjusting saturation on the fly
Jan Schmidt [Sun, 26 Apr 2015 14:54:54 +0000 (00:54 +1000)]
rpicamsrc: Update properties dynamically where possible
Update camera and encoder properties at runtime
where possible
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/19
and https://github.com/thaytan/gst-rpicamsrc/issues/23
Jan Schmidt [Sun, 26 Apr 2015 14:40:23 +0000 (00:40 +1000)]
rpicamsrc: split preview config and state
Jan Schmidt [Mon, 20 Apr 2015 16:45:59 +0000 (02:45 +1000)]
rpicamsrc: Clear intra-refresh MMAL param struct.
Use memset on the stack allocated MMAL_PARAMETER_VIDEO_INTRA_REFRESH_T
struct. Apparently mmal_port_parameter_get() doesn't retrieve all
parameters, causing random failures when we set the intra-refresh
param on the encoder.
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/22 for me.
Jan Schmidt [Mon, 20 Apr 2015 15:17:55 +0000 (01:17 +1000)]
rpicamsrc: Merge changes from userland repo
Current to
b69f807ce59189457662c2144a8e7e12dc776988
No integration of stereoscopic support as yet
Jan Schmidt [Mon, 20 Apr 2015 14:02:27 +0000 (00:02 +1000)]
rpicamsrc: Map intra-refresh cyclic-rows to the correct MMAL param.
Jan Schmidt [Mon, 9 Mar 2015 13:22:40 +0000 (00:22 +1100)]
rpicamsrc: Use MMAL PTS and STC to calculate GStreamer timestamps
Don't apply timestamps based on output time from the encoder,
but use the MMAL STC and capture PTS to generate a GStreamer
timestamp that more accurately resembles the input (and would
preserve reordering should the encoder ever add B-frames).
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/16
Jan Schmidt [Fri, 6 Mar 2015 15:11:25 +0000 (02:11 +1100)]
rpicamsrc: Defer encoder creation until after caps are negotiated
This ensures the encoder is created with the profile
negotiated with downstream
Jan Schmidt [Fri, 6 Mar 2015 14:17:30 +0000 (01:17 +1100)]
rpicamsrc: Read and set H.264 profile from negotiated caps
Jan Schmidt [Thu, 5 Mar 2015 16:43:07 +0000 (03:43 +1100)]
rpicamsrc: Add intra-refresh-type property, and set default keyframe spacing to -1 (auto)
This plus other recent commits mostly fix
bug https://github.com/thaytan/gst-rpicamsrc/issues/16
Jan Schmidt [Thu, 5 Mar 2015 16:05:24 +0000 (03:05 +1100)]
rpicamsrc: Add annotation-mode and annotation-text properties
Jan Schmidt [Thu, 5 Mar 2015 15:42:00 +0000 (02:42 +1100)]
rpicamsrc: implement sensor-mode property
Jan Schmidt [Thu, 5 Mar 2015 14:27:44 +0000 (01:27 +1100)]
rpicamsrc: More conversion to GStreamer logging
Jan Schmidt [Thu, 5 Mar 2015 14:15:48 +0000 (01:15 +1100)]
rpicamsrc: Implement drc property
Jan Schmidt [Thu, 5 Mar 2015 14:09:16 +0000 (01:09 +1100)]
rpicamsrc: add awb-gain-red and awb-gain-blue properties
Jan Schmidt [Thu, 5 Mar 2015 13:52:37 +0000 (00:52 +1100)]
rpicamsrc: Add camera-number property
Jan Schmidt [Thu, 5 Mar 2015 13:45:05 +0000 (00:45 +1100)]
rpicamsrc: add inline-headers and shutter-speed properties
Jan Schmidt [Thu, 5 Mar 2015 13:21:31 +0000 (00:21 +1100)]
rpicamsrc: Add quantisation-parameter property, support variable bitrate
Allow birate=0 and implement the quantisation-parameter property
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/21
Jan Schmidt [Thu, 5 Mar 2015 06:01:33 +0000 (17:01 +1100)]
rpicamsrc: Incorporate raspivid changes from upstream
Merge all changes for new features from upstream
raspberrypi userland, up to commit 0de0b2
Jan Schmidt [Sun, 4 Jan 2015 15:21:16 +0000 (02:21 +1100)]
rpicamsrc: Add keyframe-interval property to the element
Tim-Philipp Müller [Thu, 30 Oct 2014 00:45:18 +0000 (00:45 +0000)]
rpicamsrc: deviceprovider: check if camera is detected and supported
Tim-Philipp Müller [Wed, 29 Oct 2014 00:43:51 +0000 (00:43 +0000)]
rpicamsrc: Add GstDeviceProvider for rpi camera module
Tim-Philipp Müller [Sat, 27 Sep 2014 13:31:10 +0000 (14:31 +0100)]
rpicamsrc: avoid single-element lists in template caps
Vivia Nikolaidou [Thu, 9 Oct 2014 20:38:41 +0000 (20:38 +0000)]
rpicamsrc: Add force-key-unit event support
Jan Schmidt [Wed, 12 Mar 2014 13:16:18 +0000 (00:16 +1100)]
rpicamsrc: Move all debug output to go via GStreamer logs
Fixes https://github.com/thaytan/gst-rpicamsrc/issues/9
Jan Schmidt [Sat, 19 Oct 2013 07:52:25 +0000 (18:52 +1100)]
rpicamsrc: Update maximum framerate to 90 fps
Jan Schmidt [Sun, 13 Oct 2013 15:39:00 +0000 (02:39 +1100)]
rpicamsrc: Enable image effects
Jan Schmidt [Sun, 13 Oct 2013 07:01:00 +0000 (18:01 +1100)]
rpicamsrc: Re-flow element source code with gst-indent
Jan Schmidt [Sun, 13 Oct 2013 06:46:07 +0000 (17:46 +1100)]
rpicamsrc: Implement a bunch of the raspivid command-line params
Add properties for controlling various parts of the capture
Jan Schmidt [Sat, 12 Oct 2013 14:29:08 +0000 (01:29 +1100)]
rpicamsrc: Tell basesrc to timestamp buffers for us, for now.
Jan Schmidt [Sat, 12 Oct 2013 14:20:51 +0000 (01:20 +1100)]
rpicamsrc: Initial caps nego and properties.
Support caps negotiation for H.264 frame size and framerate.
Add bitrate, saturation, brightness, contrast, sharpness properties.
Jan Schmidt [Sat, 12 Oct 2013 08:23:03 +0000 (19:23 +1100)]
rpicamsrc: First version which generates buffers on the src pad
Fixed to 1920x1080 h264 regardless of caps.
Jan Schmidt [Sat, 12 Oct 2013 01:42:07 +0000 (12:42 +1100)]
rpicamsrc: Checkpoint. Version which writes directly to test.out
Switch to plain basesrc for parent class
Jan Schmidt [Fri, 11 Oct 2013 08:17:05 +0000 (19:17 +1100)]
rpicamsrc: checkpoint
Jan Schmidt [Thu, 10 Oct 2013 12:47:38 +0000 (23:47 +1100)]
rpicamsrc: Initial commit
Simple modified gst-template to use BaseCameraSrc
Incorporate Broadcom mmal headers