diff --git a/package/gstreamer1/Config.in b/package/gstreamer1/Config.in index 922ecefcff..5786a2d59a 100644 --- a/package/gstreamer1/Config.in +++ b/package/gstreamer1/Config.in @@ -10,6 +10,7 @@ source "package/gstreamer1/gst1-plugins-ugly/Config.in" source "package/gstreamer1/gst1-imx/Config.in" source "package/gstreamer1/gst1-interpipe/Config.in" source "package/gstreamer1/gst1-libav/Config.in" +source "package/gstreamer1/gst1-rpicamsrc/Config.in" source "package/gstreamer1/gst1-rtsp-server/Config.in" source "package/gstreamer1/gst1-shark/Config.in" source "package/gstreamer1/gst1-validate/Config.in" diff --git a/package/gstreamer1/gst1-rpicamsrc/0001-awb-greyworld.patch b/package/gstreamer1/gst1-rpicamsrc/0001-awb-greyworld.patch new file mode 100644 index 0000000000..c14cf5173d --- /dev/null +++ b/package/gstreamer1/gst1-rpicamsrc/0001-awb-greyworld.patch @@ -0,0 +1,49 @@ +diff --git a/src/RaspiCamControl.c b/src/RaspiCamControl.c +index 1b3d059..291bc57 100644 +--- a/src/RaspiCamControl.c ++++ b/src/RaspiCamControl.c +@@ -76,7 +76,8 @@ static XREF_T awb_map[] = + {"fluorescent", MMAL_PARAM_AWBMODE_FLUORESCENT}, + {"incandescent", MMAL_PARAM_AWBMODE_INCANDESCENT}, + {"flash", MMAL_PARAM_AWBMODE_FLASH}, +- {"horizon", MMAL_PARAM_AWBMODE_HORIZON} ++ {"horizon", MMAL_PARAM_AWBMODE_HORIZON}, ++ {"greyworld", MMAL_PARAM_AWBMODE_GREYWORLD} + }; + + static const int awb_map_size = sizeof(awb_map) / sizeof(awb_map[0]); +@@ -1110,6 +1111,7 @@ int raspicamcontrol_set_exposure_mode(MMAL_COMPONENT_T *camera, MMAL_PARAM_EXPOS + * - MMAL_PARAM_AWBMODE_INCANDESCENT, + * - MMAL_PARAM_AWBMODE_FLASH, + * - MMAL_PARAM_AWBMODE_HORIZON, ++ * - MMAL_PARAM_AWBMODE_GREYWORLD, + * @return 0 if successful, non-zero if any parameters out of range + */ + int raspicamcontrol_set_awb_mode(MMAL_COMPONENT_T *camera, MMAL_PARAM_AWBMODE_T awb_mode) +diff --git a/src/RaspiCamControl.h b/src/RaspiCamControl.h +index 83e9edd..b51216d 100644 +--- a/src/RaspiCamControl.h ++++ b/src/RaspiCamControl.h +@@ -59,6 +59,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + MMAL_PARAM_AWBMODE_INCANDESCENT, + MMAL_PARAM_AWBMODE_FLASH, + MMAL_PARAM_AWBMODE_HORIZON, ++ MMAL_PARAM_AWBMODE_GREYWORLD, + * + * Image FX + MMAL_PARAM_IMAGEFX_NONE, +diff --git a/src/gstrpicam_types.h b/src/gstrpicam_types.h +index 5baa491..8ca7fce 100644 +--- a/src/gstrpicam_types.h ++++ b/src/gstrpicam_types.h +@@ -35,7 +35,8 @@ typedef enum { + GST_RPI_CAM_SRC_AWB_MODE_FLUORESCENT = MMAL_PARAM_AWBMODE_FLUORESCENT, + GST_RPI_CAM_SRC_AWB_MODE_INCANDESCENT = MMAL_PARAM_AWBMODE_INCANDESCENT, + GST_RPI_CAM_SRC_AWB_MODE_FLASH = MMAL_PARAM_AWBMODE_FLASH, +- GST_RPI_CAM_SRC_AWB_MODE_HORIZON = MMAL_PARAM_AWBMODE_HORIZON ++ GST_RPI_CAM_SRC_AWB_MODE_HORIZON = MMAL_PARAM_AWBMODE_HORIZON, ++ GST_RPI_CAM_SRC_AWB_MODE_GREYWORLD = MMAL_PARAM_AWBMODE_GREYWORLD + } GstRpiCamSrcAWBMode; + + typedef enum { + diff --git a/package/gstreamer1/gst1-rpicamsrc/Config.in b/package/gstreamer1/gst1-rpicamsrc/Config.in new file mode 100644 index 0000000000..f4d2e448e0 --- /dev/null +++ b/package/gstreamer1/gst1-rpicamsrc/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_GST1_RPICAMSRC + bool "gst1-rpicamsrc" + depends on BR2_PACKAGE_HAS_LIBOPENMAX + select BR2_PACKAGE_GST1_PLUGINS_BASE + help + GStreamer element for the Raspberry Pi camera module + + https://github.com/thaytan/gst-rpicamsrc diff --git a/package/gstreamer1/gst1-rpicamsrc/gst1-rpicamsrc.hash b/package/gstreamer1/gst1-rpicamsrc/gst1-rpicamsrc.hash new file mode 100644 index 0000000000..187cfe80e4 --- /dev/null +++ b/package/gstreamer1/gst1-rpicamsrc/gst1-rpicamsrc.hash @@ -0,0 +1 @@ +sha256 af48febaba0cd7fef3ccb2014898af60da8867dc3889f664979f4e2963585b44 gst1-rpicamsrc-4ee114fbbf35d85169603aa37678642e9774152a.tar.gz diff --git a/package/gstreamer1/gst1-rpicamsrc/gst1-rpicamsrc.mk b/package/gstreamer1/gst1-rpicamsrc/gst1-rpicamsrc.mk new file mode 100644 index 0000000000..674c809afe --- /dev/null +++ b/package/gstreamer1/gst1-rpicamsrc/gst1-rpicamsrc.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# gst1-rpicamsrc +# +################################################################################ + +GST1_RPICAMSRC_VERSION = 4ee114fbbf35d85169603aa37678642e9774152a +GST1_RPICAMSRC_SITE = $(call github,thaytan,gst-rpicamsrc,$(GST1_RPICAMSRC_VERSION)) + +GST1_RPICAMSRC_LICENSE = LGPLv2.1 +GST1_RPICAMSRC_LICENSE_FILES = COPYING + +GST1_RPICAMSRC_POST_INSTALL_TARGET_HOOKS += GSTREAMER1_REMOVE_LA_FILES + +GST1_RPICAMSRC_DEPENDENCIES = gstreamer1 gst1-plugins-base gst1-plugins-bad libopenmax + +GST1_RPICAMSRC_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL),y) +GST1_RPICAMSRC_DEPENDENCIES += gst1-plugins-bad +endif + +GST1_RPICAMSRC_CONF_OPTS = --with-rpi-header-dir=$(STAGING_DIR)/usr/include + +$(eval $(autotools-package))