[Buildroot] [PATCH] Added Live555 RTSP Server package.
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Tue May 10 06:51:47 UTC 2011
Hello Mike,
Great patch for a first post to the list!
On Mon, 9 May 2011 16:14:08 -0400
Mike Williams <mike at mikebwilliams.com> wrote:
> +config BR2_PACKAGE_LIVE555
> + bool "Live555"
> + depends on BR2_INSTALL_LIBSTDCPP
> + help
> + LIVE555 Streaming Media forms a set of C++ libraries for multimedia
> + streaming, using open standard protocols (RTP/RTCP, RTSP, SIP).
> +
> + http://www.live555.com/liveMedia/
> +
> +config BR2_PACKAGE_LIVE555_OPENRTSP
> + bool "OpenRRTSP"
> + depends on BR2_PACKAGE_LIVE555
> + default y
> + help
> + Live555 RTSP Client.
> +
> +config BR2_PACKAGE_LIVE555_MEDIASERVER
> + bool "live555MediaServer"
> + depends on BR2_PACKAGE_LIVE555
> + default y
> + help
> + RTSP Server. Supports numerous media formats such as H.264 and MPEG2.
> +
> +config BR2_PACKAGE_LIVE555_MPEG2_INDEXER
> + bool "MPEG2TransportStreamIndexer"
> + depends on BR2_PACKAGE_LIVE555
> + default y
> + help
> + MPEG2 Transport Stream Indexer. Provides indexes allowing 'trick play'
> + operation in the Live555MediaServer.
Here, you should include something like:
comment "live555 needs C++ compiler"
depends on !BR2_INSTALL_LIBSTDCPP
This allows the user to know that live555 is available, but not
selectable due to the lack of C++ support. We typically do that when a
package has a dependency on a toolchain option.
> +ifeq (${BR2_PACKAGE_LIVE555_OPENRTSP},y)
Our convention is to use $(BR2_PACKAGE_LIVE555_OPENRTSP), i.e
normal braces instead of curly braces.
> +define LIVE555_INSTALL_OPENRTSP
> + $(INSTALL) -D -m 0755 $(@D)/testProgs/openRTSP $(TARGET_DIR)/usr/bin
> +endef
> +endif
> +
> +ifeq (${BR2_PACKAGE_LIVE555_MEDIASERVER},y)
> +define LIVE555_INSTALL_MEDIASERVER
> + $(INSTALL) -D -m 0755 $(@D)/mediaServer/live555MediaServer $(TARGET_DIR)/usr/bin
> +endef
> +endif
> +
> +ifeq (${BR2_PACKAGE_LIVE555_MPEG2_INDEXER},y)
> +define LIVE555_INSTALL_MPEG2_INDEXER
> + $(INSTALL) -D -m 0755 $(@D)/testProgs/MPEG2TransportStreamIndexer $(TARGET_DIR)/usr/bin
> +endef
> +endif
> +
> +define LIVE555_INSTALL_TARGET_CMDS
> + $(LIVE555_INSTALL_OPENRTSP)
> + $(LIVE555_INSTALL_MEDIASERVER)
> + $(LIVE555_INSTALL_MPEG2_INDEXER)
> +endef
You could do it a little bit differently:
LIVE555_FILES_TO_INSTALL-$(BR2_PACKAGE_LIVE555_OPENRTSP) += testProgs/openRTSP
LIVE555_FILES_TO_INSTALL-$(BR2_PACKAGE_LIVE555_MEDIASERVER) += mediaServer/live555MediaServer
LIVE555_FILES_TO_INSTALL-$(BR2_PACKAGE_LIVE555_MPEG2_INDEXER) += testProgs/MPEG2TransportStreamIndexer
And then your LIVE555_INSTALL_TARGET_CMDS would iterate over the
LIVE555_FILES_TO_INSTALL-y list, and install the corresponding
binaries. Need to be careful about the case where
LIVE555_FILES_TO_INSTALL-y is empty because no binary has been selected
for installation.
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the buildroot
mailing list