debian/0000755000000000000000000000000012161623214007164 5ustar debian/crtmpserver.docs0000644000000000000000000000002512161337024012410 0ustar debian/README.Debian debian/crtmpserver.install0000644000000000000000000000021612161337024013130 0ustar debian/crtmpserver-scripts/crtmpserver.lua etc/crtmpserver debian/crtmpserver-scripts/log_appenders.lua etc/crtmpserver usr/sbin/crtmpserver debian/crtmpserver.manpages0000644000000000000000000000002512161337024013253 0ustar debian/crtmpserver.1 debian/NEWS0000644000000000000000000000153012161337024007663 0ustar crtmpserver (0.0~dfsg+svn611.1-1) unstable; urgency=low There are several major updates and improvements: - RTSP support was completely remade; - added MMS support; - added HLS support; - several improvements in MPEG-TS protocol. Package was divided to 4 packages: - crtmpserver-libs, with 'thelib' and 'common' inside. Now you do not need to install all if you have very customized own build. - crtmpserver-apps, default applications which provides by upstream. - crtmpserver-dev, headers for 'thelib' and 'common' libs. - crtmpserver, main daemon binary and startup scripts. Implemented a new system startup for daemon. Upstream configuration file was divided to parts: logger configuration script, applications. -- Andriy Beregovenko Sat, 20 Nov 2011 18:24:48 +0300 debian/source/0000755000000000000000000000000012161337024010465 5ustar debian/source/format0000644000000000000000000000001412161337024011673 0ustar 3.0 (quilt) debian/patches/0000755000000000000000000000000012161623214010613 5ustar debian/patches/20_use_pkgconfig_for_tinyxml.diff0000644000000000000000000000375112161622147017235 0ustar Author: Reinhard Tartler Description: Use pkg-config for detecting tinyxml Forwarded-Upstream: no Bug-Debian: #713515 The detection of tinyxml fails in debian because the library is no longer installed into /usr/lib, is now in /usr/lib/$(ARCH_TRIPLET), for instance /usr/lib/x86_64-linux-gnu. The upstream included Find_tinyxml.cmake detects the Headers correctly, but breaks the build for failing to locate the libraries. Tinyxml ships a working pkg-config file, so let's use that one for now. --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,7 +48,7 @@ INCLUDE(cmake_find_modules/Find_dl.cmake INCLUDE(cmake_find_modules/pch_support.cmake) INCLUDE(CMakeDetermineSystem) INCLUDE(TestBigEndian) - +INCLUDE(FindPkgConfig) #setup the endianess if not already defined in toolchain file if(NOT DEFINED NO_ENDIANESS) @@ -101,10 +101,7 @@ ELSE($ENV{COMPILE_STATIC} MATCHES "1") ADD_SUBDIRECTORY(lua lua) ENDIF(NOT LUA_FOUND) - INCLUDE(cmake_find_modules/Find_tinyxml.cmake) - IF(NOT TINYXML_FOUND) - ADD_SUBDIRECTORY(tinyxml tinyxml) - ENDIF(NOT TINYXML_FOUND) + PKG_CHECK_MODULES(TINYXML REQUIRED tinyxml) ENDIF($ENV{COMPILE_STATIC} MATCHES "1") #fine tunning --- a/common/CMakeLists.txt +++ b/common/CMakeLists.txt @@ -6,7 +6,7 @@ FILE(GLOB_RECURSE SOURCES "${CRTMPSERVER #prepare the include directories INCLUDE_DIRECTORIES( - ${TINYXML_INCLUDE_PATH} + ${TINYXML_INCLUDE_DIRS} ${OPENSSL_INCLUDE_PATH} ${LUA_INCLUDE_PATH} ${CRTMPSERVER_SOURCES_ROOT}/common/include @@ -19,7 +19,7 @@ IF(${LIB_TYPE} MATCHES "SHARED") TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${LUA_LIBRARY_PATH} - ${TINYXML_LIBRARY_PATH} + ${TINYXML_LIBRARIES} ${OPENSSL_LIBRARY_PATH} ${CRYPTO_LIBRARY_PATH} ${Z_LIBRARY_PATH} --- a/crtmpserver/CMakeLists.txt +++ b/crtmpserver/CMakeLists.txt @@ -28,7 +28,7 @@ TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${APPS_LIBS} thelib common - ${TINYXML_LIBRARY_PATH} + ${TINYXML_LIBRARIES} ${LUA_LIBRARY_PATH} ${OPENSSL_LIBRARY_PATH} ${CRYPTO_LIBRARY_PATH} debian/patches/series0000644000000000000000000000041212161622206012025 0ustar 05_dont_Werror.diff 10_disable_tests_vmtests.diff 13_disable_lua_config_install.diff 15_use_system_lua.diff 16_add_header_install.diff 18_enable_cmake_find_default_paths.diff 19_gcc_4_7_compatibility.diff 20_use_pkgconfig_for_tinyxml.diff 21_fix_ftbfs_kfreebsd.diff debian/patches/16_add_header_install.diff0000644000000000000000000000160512161622147015547 0ustar Description: Update cmake rules for 'common' and 'thelib'. Adds installation of the header files. --- a/common/CMakeLists.txt +++ b/common/CMakeLists.txt @@ -27,3 +27,7 @@ IF(${LIB_TYPE} MATCHES "SHARED") INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CRTMPSERVER_ROOT}) ENDIF(${LIB_TYPE} MATCHES "SHARED") +INSTALL(DIRECTORY ${CRTMPSERVER_SOURCES_ROOT}/${PROJECT_NAME}/include/ + DESTINATION ${CMAKE_INSTALL_PREFIX}/include/crtmpserver/${PROJECT_NAME} + FILES_MATCHING PATTERN "*.h") + --- a/thelib/CMakeLists.txt +++ b/thelib/CMakeLists.txt @@ -31,3 +31,6 @@ IF(${LIB_TYPE} MATCHES "SHARED") INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CRTMPSERVER_ROOT}) ENDIF(${LIB_TYPE} MATCHES "SHARED") +INSTALL(DIRECTORY ${CRTMPSERVER_SOURCES_ROOT}/${PROJECT_NAME}/include/ + DESTINATION ${CMAKE_INSTALL_PREFIX}/include/crtmpserver/${PROJECT_NAME} + FILES_MATCHING PATTERN "*.h") debian/patches/13_disable_lua_config_install.diff0000644000000000000000000000115312161622147017273 0ustar Description: disable default install for lua config --- a/crtmpserver/CMakeLists.txt +++ b/crtmpserver/CMakeLists.txt @@ -38,6 +38,6 @@ TARGET_LINK_LIBRARIES(${PROJECT_NAME} ADD_PRECOMPILED_HEADER(${PROJECT_NAME} "${CRTMPSERVER_SOURCES_ROOT}/common/include/common.h") INSTALL(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION sbin) -INSTALL(FILES crtmpserver.lua DESTINATION etc RENAME crtmpserver.lua.sample) -INSTALL(FILES ../../../man/crtmpserver.1 DESTINATION man/man1) +#INSTALL(FILES crtmpserver.lua DESTINATION etc RENAME crtmpserver.lua.sample) +#INSTALL(FILES ../../../man/crtmpserver.1 DESTINATION man/man1) debian/patches/21_fix_ftbfs_kfreebsd.diff0000644000000000000000000000112212161623214015562 0ustar Author: Reinhard Tartler Description: Update the kfreebsd platform specific header to unbreak compilation Forwarded-Upstream: not-yet Bug-Debian: http://bugs.debian.org/713840 It seems that the "dfreebsd" platform requires some updates to allow compilation on (modern?) kfreebsd systems. --- a/common/include/platform/dfreebsd/dfreebsdplatform.h +++ b/common/include/platform/dfreebsd/dfreebsdplatform.h @@ -50,6 +50,7 @@ #include #include #include +#include #include #include #include debian/patches/19_gcc_4_7_compatibility.diff0000644000000000000000000000120312161622147016114 0ustar From: Andriy Beregovenko Bug-Debian: http://bugs.debian.org/667144 Description: Fix compatibility issue with gcc 4.7 In gcc 4.7 some functions and constants was moved to unistd.h. This patch adds a unistd header inclusion. diff --git a/common/include/platform/linux/linuxplatform.h b/common/include/platform/linux/linuxplatform.h index 25d7185..7b02a49 100644 --- a/common/include/platform/linux/linuxplatform.h +++ b/common/include/platform/linux/linuxplatform.h @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include debian/patches/18_enable_cmake_find_default_paths.diff0000644000000000000000000000147312161622147020257 0ustar From: Andriy Beregovenko Bug-Debian: http://bugs.debian.org/642707 Description: Enable search libs in default locations --- a/cmake_find_modules/Find_openssl.cmake +++ b/cmake_find_modules/Find_openssl.cmake @@ -26,7 +26,7 @@ FIND_LIBRARY(OPENSSL_LIBRARY_PATH /sw/lib /usr/local/ssl/lib /lib - NO_DEFAULT_PATH) + ) FIND_LIBRARY(CRYPTO_LIBRARY_PATH NAMES @@ -40,7 +40,7 @@ FIND_LIBRARY(CRYPTO_LIBRARY_PATH /sw/lib /usr/local/ssl/lib /lib - NO_DEFAULT_PATH) + ) IF($ENV{COMPILE_STATIC} MATCHES "1") FIND_LIBRARY(Z_LIBRARY_PATH --- a/cmake_find_modules/Find_lua.cmake +++ b/cmake_find_modules/Find_lua.cmake @@ -23,7 +23,7 @@ FIND_LIBRARY(LUA_LIBRARY_PATH_ /usr/local/lib/lua51 /sw/lib /opt/local/lib - NO_DEFAULT_PATH) + ) IF(LUA_INCLUDE_PATH_) SET(LUA_FOUND 1) debian/patches/10_disable_tests_vmtests.diff0000644000000000000000000000055412161622147016367 0ustar Description: disable tests. --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -193,6 +193,6 @@ ADD_SUBDIRECTORY(thelib thelib) ADD_SUBDIRECTORY(applications applications) ADD_SUBDIRECTORY(crtmpserver crtmpserver) #ADD_SUBDIRECTORY(vmtests vmtests) -ADD_SUBDIRECTORY(tests) +#ADD_SUBDIRECTORY(tests) #ADD_SUBDIRECTORY(androidapplestreaming androidapplestreaming) debian/patches/15_use_system_lua.diff0000644000000000000000000000064212161337024015016 0ustar Description: use system lua(lua 5.1) --- a/cmake_find_modules/Find_lua.cmake +++ b/cmake_find_modules/Find_lua.cmake @@ -3,6 +3,7 @@ FIND_PATH(LUA_INCLUDE_PATH_ NAMES lualib.h PATHS + /usr/include/lua5.1 /usr/include /usr/local/include /usr/local/include/lua51 @@ -12,7 +13,7 @@ FIND_PATH(LUA_INCLUDE_PATH_ FIND_LIBRARY(LUA_LIBRARY_PATH_ NAMES - lua + lua5.1 PATHS /usr/lib64 /usr/lib debian/patches/05_dont_Werror.diff0000644000000000000000000000142612161622147014264 0ustar From: Reinhard Tartler Subject: Don't set -Werror Bug-Debian: http://bugs.debian.org/625316 This package builds with -Werror, and GCC 4.6 triggers new warnings which will make the package fail to build. Currently a Debian patch just passes -Wno-error=unused-but-set-variable and -Wno-error=unused-but-set-parameter to avoid build failures, but this patch will be reverted with the GCC 4.6.1 release, and the severity of the report will be raised. --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -123,7 +123,7 @@ ADD_DEFINITIONS(-DHAS_LUA) #ADD_DEFINITIONS(-DUSE_MEM_POOL) #ADD_DEFINITIONS(-DDEBUG_MEM_POOL) -SET(GENERIC_FLAGS "-Wall -Werror") +SET(GENERIC_FLAGS "-Wall") #add 64 bit support for 32 but platforms ADD_DEFINITIONS(-D__USE_FILE_OFFSET64) debian/crtmpserver.default0000644000000000000000000000050312161337024013105 0ustar # Defaults for rtmpd initscript # sourced by /etc/init.d/crtmpserver # Enable crtmpserver start: "yes" or "no" ENABLED="yes" # Daemon user DAEMON_USER="root" # Additional options that are passed to the daemon. DAEMON_ARGS="--daemon" # Main configuration script for daemon DAEMON_CONF="/etc/crtmpserver/crtmpserver.lua" debian/README.Debian0000644000000000000000000000324412161337024011231 0ustar crtmpserver for Debian ====================== Introduction ------------ The crtmpserver can provide powerful platform for processing several families of media streaming protocols. By default it support next protocol families: RTMP, RTSP, RTP/RTCP, MPEG-TS, MMS. 1. New startup script system ---------------------------- Now all application configuration are placed in /etc/crtmpserver/applications. To enable any of them, simple add script base name(without .lua extension) to file /etc/crtmpserver/enabled_applications.conf. Main configuration script now only generate config from parts. It load logger configuration script /etc/crtmpserver/log_appenders.lua, after this, script read file /etc/crtmpserver/enabled_applications.conf and load application scripts (using next filename form /etc/crtmpserver/applications/$name.lua) Also, now provided file /etc/defaults/crtmpserver for more comfortable daemon maintaining. 2. Change daemon user. ------------------------------- By default daemon run with root privileges, but you can change this behavior. Next steps allows you to change daemon user: a) Create system wide daemon user You must add system user for daemon. Something like this: adduser --system --disabled-login --ingroup adm \ --home /var/lib/crtmpserver \ --gecos crtmpserver \ --shell /bin/false \ crtmpserver b) Change daemon user Open rc configuration file /etc/defaults/crtmpserver, and change DAEMON_USER to created user name(in our case this is 'crtmpserver') c) Restart daemon After all steps described above just do next: /etc/init.d/crtmpserver restart debian/crtmpserver.dirs0000644000000000000000000000004412161337024012422 0ustar etc/crtmpserver var/log/crtmpserver debian/crtmpserver-apps.prerm0000644000000000000000000000271612161337024013557 0ustar #!/bin/sh set -e APPLICATIONS="admin applestreamingclient appselector flvplayback proxypublish samplefactory stresstest vptests" compare() { [ $# != 2 ] && exit 1 A=$(md5sum $1 | cut -d' ' -f1) B=$(md5sum $2 | cut -d' ' -f1) [ "$A" = "$B" ] && return 0 || return 1 } do_remove() { for app in $APPLICATIONS; do if [ -f "/etc/crtmpserver/applications/$app.lua" ]; then compare "/etc/crtmpserver/applications/$app.lua" \ "/usr/share/crtmpserver-apps/$app.lua" \ && rm -f "/etc/crtmpserver/applications/$app.lua" fi done if [ -f "/etc/crtmpserver/conf.d/users.lua" ]; then compare "/etc/crtmpserver/conf.d/users.lua" \ "/usr/share/crtmpserver-apps/conf.d/users.lua" \ && rm -f "/etc/crtmpserver/conf.d/users.lua" fi if [ -f /etc/crtmpserver/enabled_applications.conf ]; then compare "/etc/crtmpserver/enabled_applications.conf" \ "/usr/share/crtmpserver-apps/enabled_applications.conf" \ && rm -f /etc/crtmpserver/enabled_applications.conf fi return 0 } do_purge() { for app in $APPLICATIONS; do [ -f "/etc/crtmpserver/applications/$app.lua" ] && \ rm -f "/etc/crtmpserver/applications/$app.lua" done [ -f "/etc/crtmpserver/conf.d/users.lua" ] && \ rm -f "/etc/crtmpserver/conf.d/users.lua" [ -f "/etc/crtmpserver/enabled_applications.conf" ] && \ rm -f "/etc/crtmpserver/enabled_applications.conf" return 0 } case "$1" in remove) do_remove ;; purge) do_remove do_purge ;; *) exit 0 ;; esac #DEBHELPER# debian/changelog0000644000000000000000000000674612161623214011053 0ustar crtmpserver (1.0~dfsg-5) unstable; urgency=low * Update the kfreebsd platform specific header to unbreak compilation, Closes: #713840 -- Reinhard Tartler Sun, 23 Jun 2013 18:40:50 +0200 crtmpserver (1.0~dfsg-4) unstable; urgency=low * Use pkg-config for detecting tinyxml, Closes: #713515 -- Reinhard Tartler Sat, 22 Jun 2013 17:35:59 +0200 crtmpserver (1.0~dfsg-3) unstable; urgency=low * Fix compatibility with gcc 4.7. (Closes: #667144) * Fix remove and purge command for crtmpserver-apps. (Closes: #668734) -- Andriy Beregovenko Tue, 10 Apr 2012 09:05:35 +0300 crtmpserver (1.0~dfsg-2) unstable; urgency=low * Enable hardened CPPFLAGS. (Closes: #665323) * Add myself to Uploaders field. -- Andres Mejia Thu, 22 Mar 2012 22:28:52 -0400 crtmpserver (1.0~dfsg-1) unstable; urgency=low [ Andriy Beregovenko ] * New upstream version. * Remove upstream conf file related things. * Update changelog. * Update config files. * Fix a version number in changelog. * Update app-scripts. * Update debian build rules. * Finalize changelog. [ Andres Mejia ] * Set verbose output for builds. * Set compat to 9 to enable hardened build. * Set default build type to Release. * Bump to Standards-Version 3.9.3. * Don't override -O3 set by build system. -- Andriy Beregovenko Thu, 22 Mar 2012 03:18:14 +0200 crtmpserver (0.0~dfsg+svn611.1-2) unstable; urgency=low * Fixed upgrade from version <= 0.0~dfsg+svn474-2 -- Andriy Beregovenko Wed, 21 Dec 2011 02:40:04 +0200 crtmpserver (0.0~dfsg+svn611.1-1) unstable; urgency=low [ Andriy Beregovenko ] * New upstream version. * Split package to four packages: crtmpserver-libs, crtmpserver-apps, crtmpserver-dev, crtmpserver. * Add RC script and defaults file for it. * A new configuration system, serving the configuration of the server. The system is based on the original configuration file that is divided into parts (by applications and features). Read README.Debian for more information. -- Andriy Beregovenko Mon, 21 Nov 2011 00:55:45 +0200 crtmpserver (0.0~dfsg+svn474-2) unstable; urgency=low * Team upload. * Fixed search of libraries in cmake rules (Closes: #642707) Thanks to Andriy Beregovenko for providing the patch -- Reinhard Tartler Mon, 03 Oct 2011 13:20:07 +0200 crtmpserver (0.0~dfsg+svn474-1) unstable; urgency=low [ Andriy Beregovenko ] * Update debian changelog. * Imported Upstream version 0.0~dfsg+svn474. * Update patches relative to new upstream upload. [ Alessio Treglia ] * Add script to retrieve sources from upstream's SVN and regenerate the tarball. -- Andriy Beregovenko Mon, 06 Jun 2011 19:41:18 +0300 crtmpserver (0.0~dfsg+svn421-2) unstable; urgency=low [ Alessio Treglia ] * Bump Standards. [ Andriy Beregovenko ] * Add example basic configuration and init script * Update man page * Add debian readme * Add patch fixes issue with rvalue access first on some platforms * Add patch which fixes big endian implementation [ Reinhard Tartler ] * drop -Werror from CFLAGS (Closes: #625316) -- Andriy Beregovenko Sun, 08 May 2011 11:12:04 +0300 crtmpserver (0.0~dfsg+svn421-1) unstable; urgency=low * Initial release (Closes: #617641) -- Andriy Beregovenko Fri, 18 Mar 2011 14:30:08 +0200 debian/compat0000644000000000000000000000000212161337024010363 0ustar 9 debian/get-svn-source.sh0000755000000000000000000000166412161337024012414 0ustar #!/bin/sh set -e BASE_REL=$(dpkg-parsechangelog 2>/dev/null | sed -ne 's/Version:\s\([0-9\.]\+\)~.*/\1/p') OLDDIR=${PWD} GOS_DIR=${OLDDIR}/get-orig-source SVN_COMMIT='svn log --username anonymous --password "" https://svn.rtmpd.com/crtmpserver/trunk -l 1 | sed -ne "s/r\([0-9]\+\).*/\1/p"' if [ -z ${BASE_REL} ]; then echo 'Please run this script from the sources root directory.' exit 1 fi rm -rf ${GOS_DIR} mkdir ${GOS_DIR} && cd ${GOS_DIR} CRTMPSERVER_SVN_COMMIT=$(eval "${SVN_COMMIT}") svn export -r ${CRTMPSERVER_SVN_COMMIT} --username anonymous --password "" https://svn.rtmpd.com/crtmpserver/trunk \ crtmpserver-${BASE_REL}~dfsg+svn${CRTMPSERVER_SVN_COMMIT} cd crtmpserver-${BASE_REL}~dfsg+svn${CRTMPSERVER_SVN_COMMIT}/ cd .. && tar cjf \ ${OLDDIR}/crtmpserver_${BASE_REL}~dfsg+svn${CRTMPSERVER_SVN_COMMIT}.orig.tar.bz2 \ crtmpserver-${BASE_REL}~dfsg+svn${CRTMPSERVER_SVN_COMMIT} --exclude-vcs --exclude=3rdparty rm -rf ${GOS_DIR} debian/crtmpserver.examples0000644000000000000000000000002212161337024013273 0ustar debian/examples/* debian/crtmpserver-apps.install0000644000000000000000000000106712161622147014101 0ustar usr/lib/crtmpserver/applications/admin/libadmin.so usr/lib/crtmpserver/applications/applestreamingclient/libapplestreamingclient.so usr/lib/crtmpserver/applications/appselector/libappselector.so usr/lib/crtmpserver/applications/flvplayback/libflvplayback.so usr/lib/crtmpserver/applications/proxypublish/libproxypublish.so usr/lib/crtmpserver/applications/samplefactory/libsamplefactory.so usr/lib/crtmpserver/applications/stresstest/libstresstest.so usr/lib/crtmpserver/applications/vptests/libvptests.so debian/crtmpserver-apps-scripts/* usr/share/crtmpserver-apps debian/copyright0000644000000000000000000000674012161337024011127 0ustar Format: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=173 Upstream-Name: crtmpserver Source: http://www.rtmpd.com Files: * Copyright: 2009-2011 Gavriloaie Eugen-Andrei (shiretu@gmail.com) License: GPL-3+ with OpenSSL exception Files: debian/* Copyright: 2011 Andriy Beregovenko License: GPL-3+ Files: common/src/platform/solaris/timegm.cpp common/src/platform/windows/strncasecmp.cpp common/src/platform/windows/timegm.cpp common/src/platform/windows/strptime.cpp common/src/platform/android/timegm.cpp Copyright: 1997 Kungliga Tekniska Högskolan License: BSD-3-clause License: GPL-3+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . On Debian systems, the complete text of the GNU General Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". License: GPL-3+ with OpenSSL exception In addition, as a special exception, Gavriloaie Eugen-Andrei gives permission to link the code of its release of CRTMPSERVER with the OpenSSL project's "OpenSSL" library (or with modified versions of it that use the same license as the "OpenSSL" library), and distribute linked executables. You must obey the GNU General Public License in all respects for all of the code used other than "OpenSSL".If you modify file(s) with this exception, you may extend this exception to your version of the file(s), but you are not obligated to do so. If you do not wish to do so,delete this exception statement from your version. If you delete this exception statement from all source files in the program, then also delete it here. License: BSD-3-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. debian/gbp.conf0000644000000000000000000000013212161337024010600 0ustar [DEFAULT] pristine-tar = True [git-import-orig] filter = .svn filter-pristine-tar = True debian/crtmpserver-apps.postinst0000644000000000000000000000203012161337024014302 0ustar #! /bin/sh set -e APPLICATIONS="admin applestreamingclient appselector flvplayback proxypublish samplefactory stresstest vptests" case "$1" in configure) # Copy application config if not exists for app in $APPLICATIONS; do if [ ! -f /etc/crtmpserver/applications/${app}.lua ]; then cp /usr/share/crtmpserver-apps/${app}.lua \ /etc/crtmpserver/applications/${app}.lua chmod 644 /etc/crtmpserver/applications/${app}.lua fi done # copy users sample file if not exists if [ ! -f /etc/crtmpserver/conf.d/users.lua ]; then cp /usr/share/crtmpserver-apps/conf.d/users.lua \ /etc/crtmpserver/conf.d/users.lua chmod 640 /etc/crtmpserver/conf.d/users.lua fi # Add all application as part of default install if [ ! -f /etc/crtmpserver/enabled_applications.conf ]; then cp /usr/share/crtmpserver-apps/enabled_applications.conf \ /etc/crtmpserver chmod 644 /etc/crtmpserver/enabled_applications.conf fi ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) exit 0 ;; esac #DEBHELPER# debian/crtmpserver-scripts/0000755000000000000000000000000012161337024013226 5ustar debian/crtmpserver-scripts/log_appenders.lua0000644000000000000000000000160512161337024016555 0ustar -- Configuration for LogAppender subsystem of crtmpserver logAppenders= { { -- name of the appender. Not too important, but is mandatory name="console appender", -- type of the appender. We can have the following values: -- console, coloredConsole and file -- NOTE: console appenders will be ignored if we run the server -- as a daemon type="coloredConsole", -- the level of logging. 6 is the FINEST message, 0 is FATAL message. -- The appender will "catch" all the messages below or equal to this level -- bigger the level, more messages are recorded level=6 }, { name="file appender", type="file", level=6, -- the file where the log messages are going to land fileName="/var/log/crtmpserver/main.log", --newLineCharacters="\r\n", --fileHistorySize=10, --fileLength=1024*256, --singleLine=true } } debian/crtmpserver-scripts/crtmpserver.lua0000644000000000000000000000551612161337024016314 0ustar confdir = "/etc/crtmpserver" libdir = "/usr/lib/crtmpserver" enabled_apps = confdir.."/enabled_applications.conf" app_lib_path = libdir.."/applications" logger_config_path = confdir.."/log_appenders.lua" -- Print anything - including nested tables function table_print (tt, indent, done) done = done or {} indent = indent or 0 if type(tt) == "table" then for key, value in pairs (tt) do io.write(string.rep (" ", indent)) -- indent it if type (value) == "table" and not done [value] then done [value] = true io.write(string.format("[%s] => table\n", tostring (key))); io.write(string.rep (" ", indent+4)) -- indent it io.write("(\n"); table_print (value, indent + 7, done) io.write(string.rep (" ", indent+4)) -- indent it io.write(")\n"); else io.write(string.format("[%s] => %s\n", tostring (key), tostring(value))) end end else io.write(tt .. "\n") end end function exists(fname) local f = io.open(fname, "r") if (f) then return true else return false end end -- Function generate "logAppenders" section for crtmpserver function read_logappenders() result = {} dofile(logger_config_path) result = logAppenders return result end -- Function generate "applications" section for crtmpserver -- Reads apps Lua script to main configuration section function read_applications() result = {} local app_config -- Must specify whre application libs can be found result.rootDirectory = app_lib_path -- Loads applications configuration listed in file "enabled_apps" for app in io.lines(enabled_apps) do app = (app:gsub("^%s*(.-)%s*$", "%1")) application = nil if ( app:match("^#.*$") or app:match("^$") or app:match("^\s+$") ) then --print("string '"..app.."' is unneeded, skip it") else app_config = confdir.."/applications/"..app..".lua" if (not exists(app_config)) then print("Application configuration file '"..app_config.."' not found") os.exit() end dofile(app_config) if (application == nil) then print("Configuration file '"..app_config.."' does not contain variable 'application'") os.exit() else table.insert(result, application) end end end return result end -- Check if logger configuration exists if (not exists(logger_config_path)) then print("Logger configuration file '"..logger_config_path.."' not found"); return end -- Check if list of applications exists if (not exists(enabled_apps)) then print("Applications list file '"..enabled_apps.."' not found"); return end -- Main section of configuration. -- This variable reads by crtmpserver as main configuration section -- It must be always defined configuration = { daemon = true, pathSeparator = "/", logAppenders = read_logappenders(), applications = read_applications() } -- print("__________________________") -- table_print(configuration) -- print("__________________________") debian/crtmpserver-apps-scripts/0000755000000000000000000000000012161622147014172 5ustar debian/crtmpserver-apps-scripts/stresstest.lua0000644000000000000000000000123412161337024017115 0ustar application= { name="stresstest", description="Application for stressing a streaming server", protocol="dynamiclinklibrary", targetServer="localhost", targetApp="vod", active=false, --[[streams = { "lg00","lg01","lg02","lg03","lg04","lg05","lg06","lg07","lg08", "lg09","lg10","lg11","lg12","lg13","lg14","lg15","lg16","lg17", "lg18","lg19","lg20","lg21","lg22","lg23","lg24","lg25","lg26", "lg27","lg28","lg29","lg30","lg31","lg32","lg33","lg34","lg35", "lg36","lg37","lg38","lg39","lg40","lg41","lg42","lg43","lg44", "lg45","lg46","lg47","lg48","lg49" },]]-- streams = { "mp4:lg.mp4" }, numberOfConnections=10, randomAccessStreams=false } debian/crtmpserver-apps-scripts/conf.d/0000755000000000000000000000000012161337024015336 5ustar debian/crtmpserver-apps-scripts/conf.d/users.lua0000644000000000000000000000051612161337024017204 0ustar users= { broadcast="vbrick", user1="password1", user2="password2", user3="password3", gigi="spaima", a="a", } realms= { { name="My realm...", method="Digest", users={ "user1", "user3" }, }, { name="My second realm...", method="Basic", users={ "user2", "broadcast", "user1", "gigi" }, } } debian/crtmpserver-apps-scripts/flvplayback.lua0000644000000000000000000000303312161337024017167 0ustar application= { description="FLV Playback Sample", name="flvplayback", protocol="dynamiclinklibrary", mediaFolder="/var/lib/crtmpserver/mediaFolder", aliases= { "simpleLive", "vod", "live", "WeeklyQuest", "SOSample", "oflaDemo", }, acceptors = { { ip="0.0.0.0", port=6666, protocol="inboundLiveFlv", waitForMetadata=true, }, { ip="0.0.0.0", port=9999, protocol="inboundTcpTs" }, --[[{ ip="0.0.0.0", port=7654, protocol="inboundRawHttpStream", crossDomainFile="/tmp/crossdomain.xml" }, { ip="0.0.0.0", port=554, protocol="inboundRtsp" },]]-- }, externalStreams = { --[[ { uri="rtsp://fms20.mediadirect.ro/live2/realitatea/realitatea", localStreamName="rtsp_test", forceTcp=true }, { uri="rtmp://edge01.fms.dutchview.nl/botr/bunny", localStreamName="rtmp_test", swfUrl="http://www.example.com/example.swf"; pageUrl="http://www.example.com/"; emulateUserAgent="MAC 10,1,82,76", }]]-- }, validateHandshake=true, keyframeSeek=true, seekGranularity=1.5, --in seconds, between 0.1 and 600 clientSideBuffer=12, --in seconds, between 5 and 30 --generateMetaFiles=true, --this will generate seek/meta files on application startup --renameBadFiles=false, --enableCheckBandwidth=true, --[[authentication= { rtmp={ type="adobe", encoderAgents= { "FMLE/3.0 (compatible; FMSc/1.0)", "My user agent", }, usersFile="/etc/crtmpserver/conf.d/users.lua" }, rtsp={ usersFile="/etc/crtmpserver/conf.d/users.lua" } }, --]] } debian/crtmpserver-apps-scripts/admin.lua0000644000000000000000000000107112161337024015761 0ustar application= { name="admin", description="Application for administering", protocol="dynamiclinklibrary", aliases= { "admin_alias1", "admin_alias2", "admin_alias3", }, acceptors = { { ip="0.0.0.0", port=1112, protocol="inboundJsonCli", useLengthPadding=true }, } --validateHandshake=true, --default=true, }debian/crtmpserver-apps-scripts/applestreamingclient.lua0000644000000000000000000000043112161622147021105 0ustar application= { name="applestreamingclient", description="Apple Streaming Client", protocol="dynamiclinklibrary", --[[acceptors = { { ip="0.0.0.0", port=5544, protocol="inboundRtsp" } },]]-- aliases= { "asc", }, --validateHandshake=true, --default=true, } debian/crtmpserver-apps-scripts/enabled_applications.conf0000644000000000000000000000027012161622147021200 0ustar ###### # This configuration file contains list of application which need to be run. #admin applestreamingclient appselector flvplayback proxypublish #samplefactory stresstest #vptests debian/crtmpserver-apps-scripts/vptests.lua0000644000000000000000000000047712161337024016412 0ustar application= { name="vptests", description="Variant protocol tests", protocol="dynamiclinklibrary", aliases= { "vptests_alias1", "vptests_alias2", "vptests_alias3", }, acceptors = { { ip="0.0.0.0", port=1111, protocol="inboundHttpXmlVariant" } } --validateHandshake=true, --default=true, }debian/crtmpserver-apps-scripts/samplefactory.lua0000644000000000000000000000052112161337024017541 0ustar application= { name="samplefactory", description="asdsadasdsa", protocol="dynamiclinklibrary", aliases= { "httpOutboundTest" }, acceptors = { { ip="0.0.0.0", port=8989, protocol="httpEchoProtocol" }, { ip="0.0.0.0", port=8988, protocol="echoProtocol" } } --validateHandshake=true, --default=true, }debian/crtmpserver-apps-scripts/appselector.lua0000644000000000000000000000315212161337024017214 0ustar application = { -- The name of the application. It is mandatory and must be unique name = "appselector", -- Short description of the application. Optional description = "Application for selecting the rest of the applications", -- The type of the application. Possible values are: -- dynamiclinklibrary - the application is a shared library protocol = "dynamiclinklibrary", -- the complete path to the library. This is optional. If not provided, -- the server will try to load the library from here -- //lib.{so|dll|dylib} -- library="/some/path/to/some/shared/library.so" -- Tells the server to validate the clien's handshake before going further. -- It is optional, defaulted to true validateHandshake = true, -- this is the folder from where the current application gets it's content. -- It is optional. If not specified, it will be defaulted to: -- //mediaFolder -- mediaFolder="/some/directory/where/media/files/are/stored" -- the application will also be known by that names. It is optional --aliases= --{ -- "simpleLive", -- "vod", -- "live", --}, -- This flag designates the default application. The default application -- is responsable of analyzing the "connect" request and distribute -- the future connection to the correct application. default = true, acceptors = { { ip = "0.0.0.0", port = 1935, protocol = "inboundRtmp" }, { ip = "0.0.0.0", port = 8080, protocol = "inboundRtmpt" }, --[[{ ip = "0.0.0.0", port = 8081, protocol = "inboundRtmps", sslKey = "server.key", sslCert = "server.crt" },]]-- } } debian/crtmpserver-apps-scripts/proxypublish.lua0000644000000000000000000000167012161337024017446 0ustar application= { name="proxypublish", description="Application for forwarding streams to another RTMP server", protocol="dynamiclinklibrary", acceptors = { { ip="0.0.0.0", port=6665, protocol="inboundLiveFlv" }, }, abortOnConnectError=true, targetServers = { --[[{ targetUri="rtmp://x.xxxxxxx.fme.ustream.tv/ustreamVideo/xxxxxxx", targetStreamName="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", localStreamName="gigi", emulateUserAgent="FMLE/3.0 (compatible; FMSc/1.0 http://www.rtmpd.com)" }]]--, { targetUri="rtmp://gigi:spaima@localhost/vod", targetStreamType="live", -- (live, record or append) emulateUserAgent="My user agent", localStreamName="stream1", keepAlive=true }, }, --[[externalStreams = { { uri="rtsp://fms20.mediadirect.ro/live2/realitatea/realitatea", localStreamName="stream1", forceTcp=true, keepAlive=true }, },]]-- --validateHandshake=true, --default=true, } debian/examples/0000755000000000000000000000000012161337024011003 5ustar debian/examples/crtmpserver.default0000644000000000000000000000034212161337024014724 0ustar # Defaults for rtmpd initscript # sourced by /etc/init.d/rtmpd # Additional options that are passed to the Daemon. ENABLED=yes DAEMON_CONF=" /etc/crtmpserver/crtmpserver.lua " DAEMON_OPTS=" --daemon " DAEMON_USER=crtmpserver debian/examples/crtmpserver.init0000644000000000000000000000417612161337024014254 0ustar #!/bin/sh ### BEGIN INIT INFO # Provides: crtmpserver # Required-Start: $network $local_fs $remote_fs # Required-Stop: $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: C++ RTMP/RTSP streaming server # Description: High performance RTMP/RTSP/MPEG-TS streaming server ### END INIT INFO # Author: Andriy Beregovenko PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="C++ RTMP Server" NAME=crtmpserver DAEMON=/usr/sbin/crtmpserver DAEMON_ARGS=" --daemon " DAEMON_CONF="/etc/crtmpserver/crtmpserver.lua" DAEMON_USER=crtmpserver PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME ENABLED=no [ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions UID=$(getent passwd ${DAEMON_USER} | cut -d":" -f3) UID_ARG=" --uid=$UID " do_start() { start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS $UID_ARG $DAEMON_CONF \ || return 2 } do_stop() { start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 start-stop-daemon --stop --quiet --oknodo --retry=INT/30/KILL/5 --exec $DAEMON [ "$?" = 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" } case "$1" in start) log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) log_end_msg 0 ;; 2) log_end_msg 1 ;; esac ;; stop) log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) log_end_msg 0 ;; 2) log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; force-reload) restart ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart}" >&2 exit 3 ;; esac : debian/crtmpserver-apps.dirs0000644000000000000000000000012512161337024013363 0ustar etc/crtmpserver/applications etc/crtmpserver/conf.d usr/lib/crtmpserver/applications debian/crtmpserver.init0000644000000000000000000000445012161337024012431 0ustar #!/bin/sh ### BEGIN INIT INFO # Provides: crtmpserver # Required-Start: $network $local_fs $remote_fs # Required-Stop: $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: C++ RTMP/RTSP streaming server # Description: High performance RTMP/RTSP/MPEG-TS streaming server ### END INIT INFO # Author: Andriy Beregovenko PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="C++ RTMP Server" NAME=crtmpserver DAEMON=/usr/sbin/crtmpserver DAEMON_ARGS=" --daemon " DAEMON_CONF="/etc/crtmpserver/crtmpserver.lua" DAEMON_USER="root" PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME ENABLED="no" [ -r /etc/default/$NAME ] && . /etc/default/$NAME [ -x $DAEMON ] || exit 0 [ -r $DAEMON_CONF ] || exit 0 [ $ENABLED = "yes" ] || exit 0 . /lib/init/vars.sh . /lib/lsb/init-functions DAEMON_UID=$(getent passwd ${DAEMON_USER} | cut -d":" -f3) if [ -z "${DAEMON_UID}" ]; then echo "Error: User ${DAEMON_USER} does not exist." exit 1 fi UID_ARG=" --uid=${DAEMON_UID} " do_start() { start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS $UID_ARG $DAEMON_CONF \ || return 2 } do_stop() { start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 start-stop-daemon --stop --quiet --oknodo --retry=INT/30/KILL/5 --exec $DAEMON [ "$?" = 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" } case "$1" in start) log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) log_end_msg 0 ;; 2) log_end_msg 1 ;; esac ;; stop) log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) log_end_msg 0 ;; 2) log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; force-reload) restart ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart}" >&2 exit 3 ;; esac : debian/rules0000755000000000000000000000175212161337024010252 0ustar #!/usr/bin/make -f #export DH_VERBOSE=1 CFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) $(shell dpkg-buildflags --get CFLAGS 2>/dev/null | sed -e 's/-O2//g') CXXFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) $(shell dpkg-buildflags --get CXXFLAGS 2>/dev/null | sed -e 's/-O2//g') DEB_BUILDDIR = obj-$(DEB_BUILD_GNU_TYPE) DEB_PACKAGE_VERSION := $(shell dpkg-parsechangelog | awk '/^Version/ {print $$2}') DEB_UPSTREAM_VERSION := $(shell echo $(DEB_PACKAGE_VERSION) | cut -d '-' -f 1 | sed s,~,_, ) DEB_CONFIGURE_FLAGS = \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DCMAKE_C_FLAGS="$(CFLAGS)" \ -DCMAKE_CXX_FLAGS="$(CXXFLAGS)" \ -DCRTMPSERVER_INSTALL_PREFIX=/usr \ -DTEMP_FRAMEWORK_VER="$(DEB_UPSTREAM_VERSION)" \ -DCRTMPSERVER_SOURCES_ROOT=$(CURDIR) \ -DCRTMPSERVER_CONSTANTS_ROOT=$(CURDIR)/constants %: dh $@ override_dh_auto_configure: dh_auto_configure -- $(DEB_CONFIGURE_FLAGS) get-orig-source: debian/get-svn-source.sh .PHONY: get-orig-source debian/crtmpserver.10000644000000000000000000000375512161337024011635 0ustar .TH CRTMPSERVER 1 "February 11, 2011" Linux .SH NAME crtmpserver \- is a high performance streaming platform written on C++ .SH SYNOPSIS .B crtmpserver .RI [ options ] .RI .br .SH DESCRIPTION .PP \fBcrtmpserver\fP it is a high performance streaming server able to stream (live or recorded) in the following technologies: .RS - To and from Flash (RTMP, RTMPE, RTMPS, RTMPT, RTMPTE) .br - To and from embedded devices: iPhone, Android .br - From surveillance cameras .br - IP-TV using MPEG-TS and RTSP/RTCP/RTP protocols .RE .PP Also, \fBcrtmpserver\fP can be used as a high performance rendes-vous server. .br For example, it enables you to do: .RS .br - Audio/Video conferencing .br - Online gaming .br - Online collaboration .br - Simple/complex chat applications .RE .SH OPTIONS .TP .B \-\-help Show summary of options. .TP .B \-\-version Show version of program. .TP .B \-\-use-implicit-console-appender Adds a console log appender. .br Particulary useful when the server starts and stops immediatly. .br Allows you to see if something is wrong with the config file. .TP .B \-\-daemon Overrides the daemon setting inside the config file and forces the server to start in daemon mode. .TP .B \-\-uid= Run the process with the specified user id. .TP .B \-\-gid= Run the process with the specified group id. .SH FILES .TP .B /usr/sbin/crtmpserver Main daemon execution file .TP .B /usr/share/doc/crtmpserver/examples/crtmpserver.lua.gz Example daemon configuration file .TP .B /usr/share/doc/crtmpserver/examples/crtmpserver.init Example init.d script .SH SEE ALSO The crtmpserver homepage: \fBhttp://www.rtmpd.com/\fP .br Full documentation on \fBcrtmpserver\fP, including guides and FAQs, is available at \fBhttp://wiki.rtmpd.com/\fP .PP Report bugs at \fBhttp://trac.rtmpd.com/report\fP .SH AUTHOR crtmpserver was written by Gavriloaie Eugen-Andrei . .PP This manual page was written by Andriy Beregovenko , for the Debian project (and may be used by others). debian/crtmpserver-libs.install0000644000000000000000000000010212161337024014051 0ustar usr/lib/crtmpserver/libcommon.so usr/lib/crtmpserver/libthelib.so debian/control0000644000000000000000000000646012161342002010566 0ustar Source: crtmpserver Section: video Priority: optional Maintainer: Debian Multimedia Maintainers Uploaders: Alessio Treglia , Andriy Beregovenko , Andres Mejia Build-Depends: cmake, debhelper (>= 9), liblua5.1-0-dev, libssl-dev, libtinyxml-dev, pkg-config Standards-Version: 3.9.3 Homepage: http://www.rtmpd.com Vcs-Git: git://git.debian.org/pkg-multimedia/crtmpserver.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-multimedia/crtmpserver.git;a=summary Package: crtmpserver Architecture: any Depends: crtmpserver-apps, crtmpserver-libs, ${misc:Depends}, ${shlibs:Depends} Description: High performance RTMP/RTSP streaming server crtmpserver is a high performance streaming server able to stream (live or recorded) in the following technologies: - To and from Flash (RTMP,RTMPE, RTMPS, RTMPT, RTMPTE) - To and from embedded devices: iPhone, Android - From surveillance cameras - IP-TV using MPEG-TS and RTSP/RTCP/RTP protocols . Also, crtmpserver can be used as a high performance rendes-vous server. For example, it enables you to do: - Audio/Video conferencing - Online gaming - Online collaboration - Simple/complex chat applications Package: crtmpserver-libs Architecture: any Replaces: crtmpserver (<< 0.0~dfsg+svn611.1-1) Breaks: crtmpserver (<< 0.0~dfsg+svn611.1-1) Depends: liblua5.1-0, libtinyxml2.6.2, openssl, ${misc:Depends}, ${shlibs:Depends} Description: shared libraries for the crtmpserver platform crtmpserver is a high performance streaming server able to stream (live or recorded) in the following technologies: - To and from Flash (RTMP,RTMPE, RTMPS, RTMPT, RTMPTE) - To and from embedded devices: iPhone, Android - From surveillance cameras - IP-TV using MPEG-TS and RTSP/RTCP/RTP protocols . This package contains shared libraries('thelib' and 'common') for the crtmpserver platform and its applications. Package: crtmpserver-apps Architecture: any Replaces: crtmpserver (<< 0.0~dfsg+svn611.1-1) Breaks: crtmpserver (<< 0.0~dfsg+svn611.1-1) Depends: crtmpserver-libs(>= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends} Description: base applications for the crtmpserver platform crtmpserver is a high performance streaming server able to stream (live or recorded) in the following technologies: - To and from Flash (RTMP,RTMPE, RTMPS, RTMPT, RTMPTE) - To and from embedded devices: iPhone, Android - From surveillance cameras - IP-TV using MPEG-TS and RTSP/RTCP/RTP protocols . This package contains the set of basic applications that provide most frequently used feature like VOD, live streaming and proxying rtmp/rtsp/mpeg-ts streams. Package: crtmpserver-dev Architecture: any Depends: crtmpserver-libs(= ${binary:Version}), liblua5.1-0-dev, libssl-dev, libtinyxml-dev, ${misc:Depends} Description: Development files for the crtmpserver platform crtmpserver is a high performance streaming server able to stream (live or recorded) in the following technologies: - To and from Flash (RTMP,RTMPE, RTMPS, RTMPT, RTMPTE) - To and from embedded devices: iPhone, Android - From surveillance cameras - IP-TV using MPEG-TS and RTSP/RTCP/RTP protocols . This package contains header files for base crtmpserver libraries 'common' and 'thelib'. debian/crtmpserver-dev.install0000644000000000000000000000007612161337024013710 0ustar usr/include/crtmpserver/common usr/include/crtmpserver/thelib