# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
-AC_INIT([libmm-wfd],[0.0.1])
+AC_INIT([libmm-wfd],[0.2.0])
AC_CONFIG_SRCDIR([src/mm_wfd_priv.c])
AC_CONFIG_HEADER([config.h])
-AM_INIT_AUTOMAKE([1.11 -Wall -Wno-extra-portability foreign])
+AM_INIT_AUTOMAKE([-Wall -Werror foreign])
# Checks for programs.
+AM_PROG_AR
AC_PROG_CC
+AM_PROG_CC_C_O
AC_PROG_LIBTOOL
AC_FUNC_MMAP
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)
-PKG_CHECK_MODULES(GST, gstreamer-0.10 >= 0.10)
+PKG_CHECK_MODULES(GST, gstreamer-1.0 >= 1.2.0)
AC_SUBST(GST_CFLAGS)
AC_SUBST(GST_LIBS)
-PKG_CHECK_MODULES(GST_PLUGIN_BASE, gstreamer-plugins-base-0.10 >= 0.10)
+PKG_CHECK_MODULES(GST_PLUGIN_BASE, gstreamer-plugins-base-1.0 >= 1.2.0)
AC_SUBST(GST_PLUGIN_BASE_CFLAGS)
AC_SUBST(GST_PLUGIN_BASE_LIBS)
-PKG_CHECK_MODULES(GST_INTERFACE, gstreamer-interfaces-0.10 >= 0.10)
-AC_SUBST(GST_INTERFACE_CFLAGS)
-AC_SUBST(GST_LIBS)
-
-PKG_CHECK_MODULES(GST_APP, gstreamer-app-0.10 >= 0.10)
+PKG_CHECK_MODULES(GST_APP, gstreamer-app-1.0 >= 1.2.0)
AC_SUBST(GST_APP_CFLAGS)
AC_SUBST(GST_APP_LIBS)
AC_CONFIG_FILES([Makefile
src/Makefile
test/Makefile
- server/Makefile
+ server/Makefile
proxy/Makefile
mm-wfd.pc
])
Name: libmm-wfd
Summary: Multimedia Framework Wifi-Display Library
-Version: 0.2.16
-Release: 12
+Version: 0.2.17
+Release: 0
Group: System/Libraries
License: Apache License 2.0
Source0: %{name}-%{version}.tar.gz
Requires(postun): /sbin/ldconfig
BuildRequires: pkgconfig(mm-ta)
BuildRequires: pkgconfig(mm-common)
-BuildRequires: pkgconfig(gstreamer-0.10)
-BuildRequires: pkgconfig(gstreamer-plugins-base-0.10)
-BuildRequires: pkgconfig(gstreamer-interfaces-0.10)
-BuildRequires: pkgconfig(gstreamer-app-0.10)
+BuildRequires: pkgconfig(gstreamer-1.0)
+BuildRequires: pkgconfig(gstreamer-plugins-base-1.0)
+BuildRequires: pkgconfig(gstreamer-app-1.0)
BuildRequires: pkgconfig(iniparser)
BuildRequires: pkgconfig(libcrypto)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(libdri2)
BuildRequires: pkgconfig(utilX)
BuildRequires: pkgconfig(vconf)
-BuildRequires: pkgconfig(gst-rtsp-server-wfd)
+BuildRequires: pkgconfig(gst-rtsp-server-wfd) >= 0.2.0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
/*---------------------------------------------------------------------------\r
| LOCAL FUNCTION DEFINITIONS: |\r
---------------------------------------------------------------------------*/\r
-static bool msg_callback(int message, MMMessageParamType *param, void *user_param)\r
+static int msg_callback(int message, void *param, void *user_param)\r
{\r
/* TODO any error notification or state change should be forwarded to the active list of proxy apps */\r
switch (message) {\r
if(!client) return FALSE;\r
WFDServer *lserver = (WFDServer*) client->parent;\r
if(!lserver) return FALSE;\r
- debug_log("msg_callback error : code = %x\n", param->code);\r
+ debug_log("msg_callback error : code = %x\n", ((MMMessageParamType*)param)->code);\r
debug_log ("DESTROY..\n\n");\r
quit_pushing = TRUE;\r
shutdown (lserver->sockfd, SHUT_RDWR);\r
mm_wfd_stop(g_wfd);\r
break;\r
case MM_MESSAGE_STATE_CHANGED:\r
- g_current_state = param->state.current;\r
+ g_current_state = ((MMMessageParamType*)param)->state.current;\r
switch(g_current_state)\r
{\r
case MM_WFD_STATE_NULL:\r
cmd_replay = g_string_new ("");\r
g_string_append_printf (cmd_replay, "REPLAY WFD_PROXY_STATE_QUERY");\r
g_string_append_printf (cmd_replay, "\r\n");\r
- g_string_append_printf (cmd_replay, convert_state_to_string(g_current_state));\r
+ g_string_append_printf (cmd_replay, "%s", convert_state_to_string(g_current_state));\r
proxy_write(client, g_string_free (cmd_replay, FALSE));\r
debug_log ("STATE QUERY..demon return\n\n");\r
}\r
#define __MM_WFD_INI_H__
#include <glib.h>
+#include <rtsp-client.h>
#ifdef __cplusplus
extern "C" {
#define WFD_INI_MAX_STRLEN 80
-typedef enum __wfd_ini_videosink_element
-{
- WFD_INI_VSINK_V4l2SINK = 0,
- WFD_INI_VSINK_XIMAGESINK,
- WFD_INI_VSINK_XVIMAGESINK,
- WFD_INI_VSINK_FAKESINK,
- WFD_INI_VSINK_EVASIMAGESINK,
- WFD_INI_VSINK_GLIMAGESINK,
- WFD_INI_VSINK_NUM
-}WFD_INI_VSINK_ELEMENT;
-
-typedef enum __wfd_ini_videosrc_element
-{
- WFD_INI_VSRC_XVIMAGESRC,
- WFD_INI_VSRC_FILESRC,
- WFD_INI_VSRC_CAMERASRC,
- WFD_INI_VSRC_VIDEOTESTSRC,
- WFD_INI_VSRC_NUM
-}WFD_INI_VSRC_ELEMENT;
-
-typedef enum __wfd_ini_session_mode
-{
- WFD_INI_AUDIO_VIDEO_MUXED,
- WFD_INI_VIDEO_ONLY,
- WFD_INI_AUDIO_ONLY,
- WFD_INI_AUDIO_VIDEO_SAPERATE
-}WFD_INI_SESSION_MODE;
-
-
/* NOTE : MMPlayer has no initalizing API for library itself
* so we cannot decide when those ini values to be released.
* this is the reason of all string items are static array.
int _mmwfd_pause (MMHandleType hwfd);
int _mmwfd_resume (MMHandleType hwfd);
int _mmwfd_standby (MMHandleType hwfd);
-int _mmwfd_get_state(MMHandleType hwfd, int* state);
+int _mmwfd_get_state(MMHandleType hwfd, MMWfdStateType *state);
gboolean __mmwfd_post_message(mm_wfd_t* wfd, enum MMMessageType msgtype, MMMessageParamType* param);
int _mmwfd_set_message_callback(MMHandleType hwfd, MMMessageCallback callback, gpointer user_param);
#endif
*******************************************************/\r
WfdSrcProxyRet WfdSrcProxyInit(\r
MMHandleType *pHandle,\r
- WfdSrcProxyStateError_cb *appCb,\r
+ WfdSrcProxyStateError_cb appCb,\r
void *user_data );\r
\r
\r
debug_log("mm_wfd_create mm_wfd_ini_load\n");
/* alloc wfd structure */
- new_wfd = (MMHandleType)g_malloc(sizeof(mm_wfd_t));
+ new_wfd = (mm_wfd_t*)g_malloc(sizeof(mm_wfd_t));
if ( !new_wfd )
{
debug_critical("Cannot allocate memory for wifi-display handle\n");
MMWFD_FREEIF( new_wfd );
}
- *wfd = NULL;
+ *wfd = (MMHandleType)NULL;
return result;
}
debug_fenter();
- return_val_if_fail(handle, NULL);
+ return_val_if_fail(handle, (MMHandleType)NULL);
MMWfdAttrsSpec wfd_attrs[] =
{
mmf_attrs_set_valid_range (attrs, idx,
wfd_attrs[idx].value_min,
wfd_attrs[idx].value_max,
- wfd_attrs[idx].default_value);
+ (int)wfd_attrs[idx].default_value);
}
break;
ERROR:
_mmwfd_deconstruct_attribute(handle);
- return NULL;
+ return (MMHandleType)NULL;
}
void
*/
#include <gst/gst.h>
+#include <rtsp-server.h>
#include "mm_wfd_priv.h"
/* construct attributes */
// TODO: need to decide on attributes
- wfd->attrs = _mmwfd_construct_attribute(wfd);
- if ( NULL == wfd->attrs)
+ wfd->attrs = _mmwfd_construct_attribute((MMHandleType)wfd);
+ if ( (MMHandleType)NULL == wfd->attrs)
{
debug_critical("Failed to construct attributes\n");
goto ERROR;
ERROR:
/* release attributes */
- _mmwfd_deconstruct_attribute((mm_wfd_t *)wfd);
+ _mmwfd_deconstruct_attribute((MMHandleType)wfd);
return MM_ERROR_WFD_INTERNAL;
}
g_object_unref (wfd->factory);
/* release attributes */
- _mmwfd_deconstruct_attribute( wfd );
+ _mmwfd_deconstruct_attribute( (MMHandleType)wfd );
debug_fleave();
return ret;
}
-int _mmwfd_get_state(MMHandleType hwfd, int *state) // @
+int _mmwfd_get_state(MMHandleType hwfd, MMWfdStateType *state) // @
{
mm_wfd_t *wfd = (mm_wfd_t*)hwfd;
\r
WfdSrcProxyRet WfdSrcProxyInit(\r
MMHandleType *pHandle,\r
- WfdSrcProxyStateError_cb *appCb,\r
+ WfdSrcProxyStateError_cb appCb,\r
void *user_data )\r
{\r
WfdSrcProxy *temp = NULL;\r
proxy_cmd = g_string_new ("");\r
g_string_append_printf (proxy_cmd, "WFD_PROXY_SET_IP_PORT");\r
g_string_append_printf (proxy_cmd, "\r\nIP ");\r
- g_string_append_printf (proxy_cmd, wfdsrcIP);\r
+ g_string_append_printf (proxy_cmd, "%s", wfdsrcIP);\r
g_string_append_printf (proxy_cmd, "\r\nPORT ");\r
- g_string_append_printf (proxy_cmd, wfdsrcPort);\r
+ g_string_append_printf (proxy_cmd, "%s", wfdsrcPort);\r
g_string_append_printf (proxy_cmd, "\r\n");\r
cmd_string = g_string_free (proxy_cmd, FALSE);\r
debug_log("WfdSrcProxySetIPAddrAndPort command sent: %s \n", cmd_string);\r
bool testsuite_sample_cb(void *stream, int stream_size, void *user_param);
-static bool msg_callback(int message, MMMessageParamType *param, void *user_param)
+static int msg_callback(int message, void *param, void *user_param)
{
switch (message) {
case MM_MESSAGE_ERROR:
quit_pushing = TRUE;
- g_print("error : code = %x\n", param->code);
+ g_print("error : code = %x\n", ((MMMessageParamType *)param)->code);
//g_print("Got MM_MESSAGE_ERROR, testsuite will be exit\n");
//quit_program (); // 090519
break;
break;
case MM_MESSAGE_STATE_CHANGED:
- g_current_state = param->state.current;
+ g_current_state = ((MMMessageParamType *)param)->state.current;
//bw.jang :=:
//g_print("current state : %d\n", g_current_state);
//-->
dpy = XOpenDisplay(NULL);
if (!dpy) {
g_printf ("Error : fail to open display\n");
- return 0;
+ return;
}
g_sc_status_atom = XInternAtom (dpy, STR_ATOM_SCRNCONF_STATUS, False);
XSelectInput (dpy, RootWindow(dpy, 0), StructureNotifyMask);