Commit abbdad60 authored by Ghislain MARY's avatar Ghislain MARY

Definition of MSVideoPresetsManager object.

parent 2bf2780d
......@@ -81,6 +81,7 @@ LOCAL_SRC_FILES = \
base/msqueue.c \
base/mssndcard.c \
base/msticker.c \
base/msvideopresets.c \
base/mswebcam.c \
base/mtu.c \
crypto/dtls_srtp.c \
......
......@@ -128,6 +128,7 @@
<ClInclude Include="..\..\..\include\mediastreamer2\msqueue.h" />
<ClInclude Include="..\..\..\include\mediastreamer2\msrtp.h" />
<ClInclude Include="..\..\..\include\mediastreamer2\mssndcard.h" />
<ClInclude Include="..\..\..\include\mediastreamer2\msvideopresets.h" />
<ClInclude Include="..\..\..\include\mediastreamer2\msticker.h" />
<ClInclude Include="..\..\..\include\mediastreamer2\msvolume.h" />
<ClInclude Include="..\..\..\include\mediastreamer2\mswebcam.h" />
......@@ -175,6 +176,7 @@
<ClCompile Include="..\..\..\src\base\msqueue.c" />
<ClCompile Include="..\..\..\src\base\mssndcard.c" />
<ClCompile Include="..\..\..\src\base\msticker.c" />
<ClCompile Include="..\..\..\src\base\msvideopresets.c" />
<ClCompile Include="..\..\..\src\base\mswebcam.c" />
<ClCompile Include="..\..\..\src\base\mtu.c" />
<ClCompile Include="..\..\..\src\crypto\dtls_srtp.c" />
......
......@@ -20,7 +20,59 @@
#
############################################################################
file(GLOB HEADER_FILES "mediastreamer2/*.h")
set(HEADER_FILES
mediastreamer2/allfilters.h
mediastreamer2/bitratecontrol.h
mediastreamer2/bits_rw.h
mediastreamer2/dsptools.h
mediastreamer2/dtls_srtp.h
mediastreamer2/dtmfgen.h
mediastreamer2/flowcontrol.h
mediastreamer2/formats.h
mediastreamer2/ice.h
mediastreamer2/mediastream.h
mediastreamer2/ms_srtp.h
mediastreamer2/msaudiomixer.h
mediastreamer2/mschanadapter.h
mediastreamer2/mscodecutils.h
mediastreamer2/mscommon.h
mediastreamer2/msconference.h
mediastreamer2/msequalizer.h
mediastreamer2/mseventqueue.h
mediastreamer2/msextdisplay.h
mediastreamer2/msfactory.h
mediastreamer2/msfileplayer.h
mediastreamer2/msfilerec.h
mediastreamer2/msfilter.h
mediastreamer2/msgenericplc.h
mediastreamer2/msinterfaces.h
mediastreamer2/msitc.h
mediastreamer2/msjava.h
mediastreamer2/msjpegwriter.h
mediastreamer2/msmediaplayer.h
mediastreamer2/msqueue.h
mediastreamer2/msrtp.h
mediastreamer2/mssndcard.h
mediastreamer2/mstee.h
mediastreamer2/msticker.h
mediastreamer2/mstonedetector.h
mediastreamer2/msutils.h
mediastreamer2/msv4l.h
mediastreamer2/msvaddtx.h
mediastreamer2/msvideo.h
mediastreamer2/msvideoout.h
mediastreamer2/msvideopresets.h
mediastreamer2/msvolume.h
mediastreamer2/mswebcam.h
mediastreamer2/qualityindicator.h
mediastreamer2/rfc3984.h
mediastreamer2/stun.h
mediastreamer2/stun_udp.h
mediastreamer2/upnp_igd.h
mediastreamer2/videostarter.h
mediastreamer2/x11_helper.h
mediastreamer2/zrtp.h
)
install(FILES ${HEADER_FILES}
DESTINATION include/mediastreamer2
......
......@@ -41,6 +41,7 @@ mediastreamer2_include_HEADERS=allfilters.h \
msvaddtx.h \
msvideo.h \
msvideoout.h \
msvideopresets.h \
msvolume.h \
mswebcam.h \
qualityindicator.h \
......
/*
mediastreamer2 library - modular sound and video processing and streaming
Copyright (C) 2015 Belledonne Communications SARL
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 2
of the License, or (at your option) any later version.
This program 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, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef MSVIDEOPRESETS_H
#define MSVIDEOPRESETS_H
#include <mediastreamer2/mscommon.h>
#include <mediastreamer2/msvideo.h>
/**
* @file msvideopresets.h
* @brief mediastreamer2 msvideopresets.h include file
*
* This file provide the API needed to manage video presets.
*
*/
/**
* @ingroup mediastreamer2_api
* @{
*/
/**
* Structure for video presets manager object.
*/
typedef struct _MSVideoPresetsManager MSVideoPresetsManager;
#ifdef __cplusplus
extern "C"{
#endif
/**
* Retreive a video presets manager object.
* @return A MSVideoPresetsManager object if successfull, NULL otherwise.
*/
MS2_PUBLIC MSVideoPresetsManager * ms_video_presets_manager_get(void);
/**
* Destroy the video presets manager object.
*/
MS2_PUBLIC void ms_video_presets_manager_destroy(void);
/**
* Register a video preset configuration.
* @param[in] manager The MSVideoPresetsManager object.
* @param[in] name The name of the video preset to register.
* @param[in] tags A comma-separated list of tags describing the video preset.
* @param[in] config The MSVideoConfiguration that is to be registered in the specified preset with the specified tags.
*/
MS2_PUBLIC void ms_video_presets_manager_register_preset_configuration(MSVideoPresetsManager *manager,
const char *name, const char *tags, MSVideoConfiguration *config);
#ifdef __cplusplus
}
#endif
/** @} */
#endif
......@@ -38,6 +38,7 @@ set(BASE_SOURCE_FILES
base/msqueue.c
base/mssndcard.c
base/msticker.c
base/msvideopresets.c
base/mswebcam.c
base/mtu.c
otherfilters/itc.c
......
......@@ -75,6 +75,7 @@ libmediastreamer_base_la_SOURCES= base/mscommon.c \
base/msfactory.c \
otherfilters/tee.c \
otherfilters/join.c \
base/msvideopresets.c \
base/mswebcam.c \
base/mtu.c \
otherfilters/void.c \
......
/*
mediastreamer2 library - modular sound and video processing and streaming
Copyright (C) 2015 Belledonne Communications SARL
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 2
of the License, or (at your option) any later version.
This program 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, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifdef HAVE_CONFIG_H
#include "mediastreamer-config.h"
#endif
#include "mediastreamer2/msvideopresets.h"
struct _MSVideoPresetsManager {
MSList *presets;
};
static MSVideoPresetsManager *vpm = NULL;
void ms_video_presets_manager_destroy(void) {
if (vpm != NULL){
ms_free(vpm);
}
vpm = NULL;
}
MSVideoPresetsManager * ms_video_presets_manager_get(void) {
if (vpm == NULL) vpm = (MSVideoPresetsManager *)ms_new0(MSVideoPresetsManager, 1);
return vpm;
}
void ms_video_presets_manager_register_preset_configuration(MSVideoPresetsManager *manager,
const char *name, const char *tags, MSVideoConfiguration *config) {
// TODO
}
......@@ -47,6 +47,7 @@ extern void libmsandroidopengldisplay_init(MSFactory *factory);
#include "voipdescs.h"
#include "mediastreamer2/mssndcard.h"
#include "mediastreamer2/msvideopresets.h"
#include "mediastreamer2/mswebcam.h"
#ifdef __APPLE__
......@@ -272,6 +273,7 @@ void ms_factory_init_voip(MSFactory *obj){
#ifdef VIDEO_ENABLED
{
MSVideoPresetsManager *vpm;
MSWebCamManager *wm;
wm=ms_web_cam_manager_get();
if (wm->descs==NULL){
......@@ -280,6 +282,7 @@ void ms_factory_init_voip(MSFactory *obj){
ms_web_cam_manager_register_desc(wm,ms_web_cam_descs[i]);
}
}
vpm = ms_video_presets_manager_get();
}
#endif
}
......@@ -309,6 +312,7 @@ void ms_factory_uninit_voip(MSFactory *obj){
ms_snd_card_manager_destroy();
#ifdef VIDEO_ENABLED
ms_web_cam_manager_destroy();
ms_video_presets_manager_destroy();
#endif
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment