forked from Kurento/kms-gstreamer-plugin-sample
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Change-Id: I3ee36f6873f515914002535db1520a0885b667ff
- Loading branch information
1 parent
cbd117f
commit 8867e3e
Showing
11 changed files
with
765 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
*.kdev* | ||
build | ||
*swp | ||
/nbproject/ | ||
*~ | ||
*orig | ||
obj-x86_64-linux-gnu | ||
debian/kurento |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
[gerrit] | ||
host=repository.kurento.com | ||
port=12345 | ||
project=kms-plugin-sample.git | ||
defaultbranch=develop |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
cmake_minimum_required(VERSION 2.6) | ||
if(POLICY CMP0011) | ||
cmake_policy(SET CMP0011 NEW) | ||
endif(POLICY CMP0011) | ||
|
||
find_program(GLIB_MKENUMS glib-mkenums) | ||
find_program(GLIB_GENMARSHAL glib-genmarshal) | ||
|
||
macro(add_glib_marshal outfiles name prefix) | ||
add_custom_command( | ||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}.h" | ||
COMMAND ${GLIB_GENMARSHAL} --header "--prefix=${prefix}" | ||
"${CMAKE_CURRENT_SOURCE_DIR}/${name}.list" | ||
> "${CMAKE_CURRENT_BINARY_DIR}/${name}.h" | ||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${name}.list" | ||
) | ||
add_custom_command( | ||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
# COMMAND echo "\\#include \\\"${otherinclude}\\\"" > "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
COMMAND echo "\\#include \\\"glib-object.h\\\"" >> "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
COMMAND echo "\\#include \\\"${name}.h\\\"" >> "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
COMMAND ${GLIB_GENMARSHAL} --body "--prefix=${prefix}" | ||
"${CMAKE_CURRENT_SOURCE_DIR}/${name}.list" | ||
>> "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${name}.list" | ||
"${CMAKE_CURRENT_BINARY_DIR}/${name}.h" | ||
) | ||
list(APPEND ${outfiles} "${CMAKE_CURRENT_BINARY_DIR}/${name}.c") | ||
endmacro(add_glib_marshal) | ||
|
||
macro(add_glib_enumtypes_t outfiles name htemplate ctemplate) | ||
add_custom_command( | ||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}.h" | ||
COMMAND ${GLIB_MKENUMS} | ||
--template "${htemplate}" | ||
${ARGN} > "${CMAKE_CURRENT_BINARY_DIR}/${name}.h" | ||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} | ||
DEPENDS ${ARGN} "${htemplate}" | ||
) | ||
add_custom_command( | ||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
COMMAND ${GLIB_MKENUMS} | ||
--template "${ctemplate}" | ||
${ARGN} > "${CMAKE_CURRENT_BINARY_DIR}/${name}.c" | ||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} | ||
DEPENDS ${ARGN} ${ctemplate} | ||
"${CMAKE_CURRENT_BINARY_DIR}/${name}.h" | ||
) | ||
list(APPEND ${outfiles} "${CMAKE_CURRENT_BINARY_DIR}/${name}.c") | ||
endmacro(add_glib_enumtypes_t) | ||
|
||
macro(add_glib_enumtypes outfiles name includeguard) | ||
set(htemplate "${CMAKE_CURRENT_BINARY_DIR}/${name}.h.template") | ||
set(ctemplate "${CMAKE_CURRENT_BINARY_DIR}/${name}.c.template") | ||
|
||
# Write the .h template | ||
add_custom_command( | ||
OUTPUT ${htemplate} ${ctemplate} | ||
COMMAND ${CMAKE_COMMAND} | ||
"-Dctemplate=${ctemplate}" | ||
"-Dhtemplate=${htemplate}" | ||
"-Dname=${name}" | ||
"-Dincludeguard=${includeguard}" | ||
"\"-Dheaders=${ARGN}\"" | ||
-P "${CMAKE_SOURCE_DIR}/CMake/MakeGLibEnumTemplates.cmake" | ||
DEPENDS "${CMAKE_SOURCE_DIR}/CMake/MakeGLibEnumTemplates.cmake" ${headers} | ||
) | ||
|
||
add_glib_enumtypes_t(${outfiles} ${name} ${htemplate} ${ctemplate} ${ARGN}) | ||
endmacro(add_glib_enumtypes) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
message(STATUS ${headers}) | ||
file(WRITE ${htemplate} "/*** BEGIN file-header ***/ | ||
#ifndef __${includeguard}_ENUM_TYPES_H__ | ||
#define __${includeguard}_ENUM_TYPES_H__ | ||
#include <glib-object.h> | ||
G_BEGIN_DECLS | ||
/*** END file-header ***/ | ||
/*** BEGIN file-production ***/ | ||
/* enumerations from \"@filename@\" */ | ||
/*** END file-production ***/ | ||
/*** BEGIN value-header ***/ | ||
GType @enum_name@_get_type (void); | ||
#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type()) | ||
/*** END value-header ***/ | ||
/*** BEGIN file-tail ***/ | ||
G_END_DECLS | ||
#endif /* __${includeguard}_ENUM_TYPES_H__ */ | ||
/*** END file-tail ***/ | ||
") | ||
|
||
# Write the .c template | ||
file(WRITE ${ctemplate} "/*** BEGIN file-header ***/ | ||
#include \"${name}.h\"\n") | ||
foreach(header ${headers}) | ||
file(APPEND ${ctemplate} "#include \"${header}\"\n") | ||
endforeach(header) | ||
file(APPEND ${ctemplate} " | ||
/*** END file-header ***/ | ||
/*** BEGIN file-production ***/ | ||
/* enumerations from \"@filename@\" */ | ||
/*** END file-production ***/ | ||
/*** BEGIN value-header ***/ | ||
GType | ||
@enum_name@_get_type (void) | ||
{ | ||
static volatile gsize g_define_type_id__volatile = 0; | ||
if (g_once_init_enter (&g_define_type_id__volatile)) { | ||
static const G@Type@Value values[] = { | ||
/*** END value-header ***/ | ||
/*** BEGIN value-production ***/ | ||
{ @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }, | ||
/*** END value-production ***/ | ||
/*** BEGIN value-tail ***/ | ||
{ 0, NULL, NULL } | ||
}; | ||
GType g_define_type_id = g_@type@_register_static (\"@EnumName@\", values); | ||
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); | ||
} | ||
return g_define_type_id__volatile; | ||
} | ||
/*** END value-tail ***/ | ||
") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
cmake_minimum_required(VERSION 2.8) | ||
|
||
set (PROJECT_NAME "kms-plugin-sample") | ||
|
||
project (${PROJECT_NAME}) | ||
|
||
find_program(GIT_EXEC git) | ||
|
||
execute_process(COMMAND ${GIT_EXEC} rev-parse --git-dir OUTPUT_VARIABLE GIT_DIR | ||
OUTPUT_STRIP_TRAILING_WHITESPACE) | ||
|
||
if(EXISTS ${GIT_EXEC} AND EXISTS "${GIT_DIR}" AND EXISTS "${TAG}" ) | ||
execute_process(COMMAND ${GIT_EXEC} submodule init WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) | ||
execute_process(COMMAND ${GIT_EXEC} submodule update WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) | ||
execute_process(COMMAND ${GIT_EXEC} remote update WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) | ||
execute_process(COMMAND ${GIT_EXEC} describe --abbrev=6 --tags --dirty --always --match "${TAG}*" | ||
OUTPUT_VARIABLE PROJECT_VERSION | ||
OUTPUT_STRIP_TRAILING_WHITESPACE | ||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) | ||
string(REGEX REPLACE "^${TAG}(.*)" "\\1" PROJECT_VERSION ${PROJECT_VERSION}) | ||
if (NOT EXISTS ${GIT_DIR}/hooks/pre-commit) | ||
execute_process(COMMAND ln -s ${CMAKE_CURRENT_SOURCE_DIR}/hooks/pre-commit.hook | ||
"${GIT_DIR}/hooks/pre-commit") | ||
endif () | ||
else() | ||
set(PROJECT_MAJOR_VERSION 0) | ||
set(PROJECT_MINOR_VERSION 0) | ||
set(PROJECT_PATCH_VERSION 1-dev) | ||
set(PROJECT_VERSION | ||
${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_PATCH_VERSION}) | ||
endif() | ||
|
||
find_package(PkgConfig) | ||
|
||
set (GST_REQUIRED 1.2.0) | ||
set (GLIB_REQUIRED 2.38) | ||
set (OPENCV_REQUIRED 2.0.0) | ||
|
||
pkg_check_modules(GSTREAMER REQUIRED gstreamer-1.0>=${GST_REQUIRED}) | ||
pkg_check_modules(GSTREAMER_BASE REQUIRED gstreamer-base-1.0>=${GST_REQUIRED}) | ||
pkg_check_modules(GSTREAMER_VIDEO REQUIRED gstreamer-video-1.0>=${GST_REQUIRED}) | ||
pkg_check_modules(GSTREAMER_CHECK REQUIRED gstreamer-check-1.0>=${GST_REQUIRED}) | ||
pkg_check_modules(GSTREAMER_PBUTILS REQUIRED gstreamer-pbutils-1.0>=${GST_REQUIRED}) | ||
pkg_check_modules(GIO REQUIRED gio-2.0>=${GLIB_REQUIRED}) | ||
pkg_check_modules(OPENCV REQUIRED opencv>=${OPENCV_REQUIRED}) | ||
|
||
set (VERSION ${PROJECT_VERSION}) | ||
set (PACKAGE ${PROJECT_NAME}) | ||
|
||
include(GNUInstallDirs) | ||
|
||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake") | ||
|
||
set (CMAKE_INSTALL_MODULESDIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}) | ||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h) | ||
|
||
include_directories (${CMAKE_CURRENT_BINARY_DIR}) | ||
|
||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -DHAVE_CONFIG_H -Werror -Wall -fPIC") | ||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -DHAVE_CONFIG_H -Werror -Wall -fPIC") | ||
|
||
include_directories( | ||
${GSTREAMER_INCLUDE_DIRS} | ||
${GSTREAMER_VIDEO_INCLUDE_DIRS} | ||
${CMAKE_CURRENT_SOURCE_DIR} | ||
${OPENCV_INCLUDE_DIRS} | ||
${SOUP_INCLUDE_DIRS} | ||
) | ||
|
||
set(SAMPLEFILTER_SOURCES | ||
samplefilter.c | ||
kmssamplefilter.cpp kmssamplefilter.h | ||
) | ||
|
||
include(GLibHelpers) | ||
|
||
set(ENUM_HEADERS | ||
kmssamplefilter.h | ||
) | ||
|
||
add_glib_enumtypes(SAMPLEFILTER_SOURCES kms-enumtypes KMS ${ENUM_HEADERS}) | ||
|
||
add_library(samplefilter MODULE ${SAMPLEFILTER_SOURCES}) | ||
|
||
target_link_libraries(samplefilter | ||
${GSTREAMER_LIBRARIES} | ||
${GSTREAMER_VIDEO_LIBRARIES} | ||
${OPENCV_LIBRARIES} | ||
${SOUP_LIBRARIES} | ||
) | ||
|
||
install( | ||
TARGETS samplefilter | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_MODULESDIR} | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
The MIT License (MIT) | ||
|
||
Copyright (c) 2014 Kurento (http://kurento.org/) | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in | ||
all copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
THE SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
[![][KurentoImage]][website] | ||
|
||
Copyright © 2014 Kurento. Licensed under [MIT License]. | ||
|
||
kurento-media-server | ||
========== | ||
Kurento Media Server | ||
|
||
Kurento Media Server:The Kurento Media Server project processes audio and video streams, | ||
doing composable pipeline-based processing or media. | ||
|
||
What is Kurento | ||
----- | ||
Kurento provides an open platform for video processing and streaming | ||
based on standards. | ||
|
||
This platform has several APIs and components which provide solutions | ||
to the requirements of multimedia content application developers. | ||
These include | ||
|
||
* Kurento Media Server (KMS). A full featured media server providing | ||
the capability to create and manage dynamic multimedia pipelines. | ||
* Kurento Media Framework (KMF). A Java server-side API providing | ||
the required abstractions for creating applications that manage | ||
multimedia content, calls and conferences involving audio, video | ||
and data information. | ||
* Kurento Web SDK (KWS). A client-side HTML5 and Javascript SDK for | ||
accessing KMF capabilities | ||
* Kurento Android SDK (KAS). A Java and native SDK allowing easy | ||
integration of KMF into any kind of Android application. | ||
|
||
Downloads | ||
--------- | ||
To download binary releases of Kurento components visit http://kurento.org | ||
|
||
Source | ||
------ | ||
The source code of this project can be cloned from the [GitHub Repository]. | ||
Code for other Kurento projects can be found in the [GitHub Kurento Group]. | ||
|
||
News and Website | ||
---------------- | ||
Information about Kurento can be found on our [website]. | ||
Follow us on Twitter @[kurentoms]. | ||
|
||
[KurentoImage]: https://avatars1.githubusercontent.com/u/5392839?s=120 | ||
[MIT License]: http://opensource.org/licenses/MIT | ||
[GitHub Repository]: https://github.com/Kurento/kms-plugin-sample | ||
[GitHub Kurento Group]: https://github.com/kurento | ||
[website]: http://kurento.org | ||
[kurentoms]: http://twitter.com/kurentoms |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
#ifndef __KURENTO_SAMPLE_CONFIG_H__ | ||
#define __KURENTO_SAMPLE_CONFIG_H__ | ||
|
||
/* Version */ | ||
#cmakedefine VERSION "@VERSION@" | ||
|
||
/* Package name*/ | ||
#cmakedefine PACKAGE "@PACKAGE@" | ||
|
||
/* The gettext domain name */ | ||
#cmakedefine GETTEXT_PACKAGE "@GETTEXT_PACKAGE@" | ||
|
||
#endif /* __KURENTO_SAMPLE_CONFIG_H__ */ |
Oops, something went wrong.