guint cBitwidth;
guint caLatency;
guint cvCodec;
+ guint8 video_codec;
guint cNative;
guint64 cNativeResolution;
guint64 video_resolution_supported;
}
/* Set the preffered video formats */
- GST_INFO_OBJECT (priv, "Set the video formats... %d", priv->cvCodec);
+ GST_INFO_OBJECT (priv, "Set the video formats. source codec %d, sink codec %d", priv->video_codec, priv->cvCodec);
+ /* TODO : need to negotiate video codec between source and sink */
if (priv->cvCodec != GST_WFD_VIDEO_UNKNOWN) {
priv->cvCodec = GST_WFD_VIDEO_H264;
priv->cProfile = tcProfile = GST_WFD_H264_BASE_PROFILE;
}
GstRTSPResult
+gst_rtsp_wfd_client_set_video_codec (GstRTSPWFDClient * client,
+ guint8 video_codec)
+{
+ GstRTSPResult res = GST_RTSP_OK;
+ GstRTSPWFDClientPrivate *priv = GST_RTSP_WFD_CLIENT_GET_PRIVATE (client);
+
+ g_return_val_if_fail (priv != NULL, GST_RTSP_EINVAL);
+
+ priv->video_codec = video_codec;
+ GST_DEBUG ("Video codec : %d", video_codec);
+
+ return res;
+}
+
+GstRTSPResult
gst_rtsp_wfd_client_set_audio_codec (GstRTSPWFDClient * client,
guint8 audio_codec)
{
}
void
-gst_rtsp_wfd_client_set_video_codec (GstRTSPWFDClient * client, guint vcodec)
+gst_rtsp_wfd_client_set_vid_codec (GstRTSPWFDClient * client, guint vcodec)
{
GstRTSPWFDClientPrivate *priv = GST_RTSP_WFD_CLIENT_GET_PRIVATE (client);
g_return_if_fail (priv != NULL);
GstRTSPWFDClient * client, guint64 supported_reso);
GstRTSPResult gst_rtsp_wfd_client_set_video_native_resolution (
GstRTSPWFDClient * client, guint64 native_reso);
+GstRTSPResult gst_rtsp_wfd_client_set_video_codec (
+ GstRTSPWFDClient * client, guint8 video_codec);
GstRTSPResult gst_rtsp_wfd_client_set_audio_codec (
GstRTSPWFDClient * client, guint8 audio_codec);
GstRTSPResult gst_prepare_request (GstRTSPWFDClient * client,
void gst_rtsp_wfd_client_set_audio_channels(GstRTSPWFDClient *client, guint channels);
void gst_rtsp_wfd_client_set_audio_bit_width(GstRTSPWFDClient *client, guint bwidth);
void gst_rtsp_wfd_client_set_audio_latency(GstRTSPWFDClient *client, guint latency);
-void gst_rtsp_wfd_client_set_video_codec(GstRTSPWFDClient *client, guint vcodec);
+void gst_rtsp_wfd_client_set_vid_codec(GstRTSPWFDClient *client, guint vcodec);
void gst_rtsp_wfd_client_set_video_native(GstRTSPWFDClient *client, guint native);
void gst_rtsp_wfd_client_set_vid_native_resolution(GstRTSPWFDClient *client, guint64 res);
void gst_rtsp_wfd_client_set_video_cea_resolution(GstRTSPWFDClient *client, guint64 res);
guint64 native_resolution;
guint64 supported_resolution;
guint8 audio_codec;
+ guint8 video_codec;
};
G_DEFINE_TYPE (GstRTSPWFDServer, gst_rtsp_wfd_server, GST_TYPE_RTSP_SERVER);
gst_rtsp_wfd_client_set_audio_codec (client, priv->audio_codec);
+ gst_rtsp_wfd_client_set_video_codec (client, priv->video_codec);
+
GST_RTSP_WFD_SERVER_UNLOCK (server);
return GST_RTSP_CLIENT (client);
}
GstRTSPResult
+gst_rtsp_wfd_server_set_video_codec (GstRTSPWFDServer * server,
+ guint8 video_codec)
+{
+ GstRTSPResult res = GST_RTSP_OK;
+ GstRTSPWFDServerPrivate *priv = GST_RTSP_WFD_SERVER_GET_PRIVATE (server);
+
+ g_return_val_if_fail (GST_IS_RTSP_WFD_SERVER (server), GST_RTSP_ERROR);
+ g_return_val_if_fail (priv != NULL, GST_RTSP_ERROR);
+
+ GST_RTSP_WFD_SERVER_LOCK (server);
+
+ priv->video_codec = video_codec;
+
+ GST_RTSP_WFD_SERVER_UNLOCK (server);
+ return res;
+}
+
+GstRTSPResult
gst_rtsp_wfd_server_set_audio_codec (GstRTSPWFDServer * server,
guint8 audio_codec)
{
GstRTSPResult gst_rtsp_wfd_server_set_supported_reso (GstRTSPWFDServer *server, guint64 supported_reso);
GstRTSPResult gst_rtsp_wfd_server_set_video_native_reso (GstRTSPWFDServer *server, guint64 native_reso);
+GstRTSPResult gst_rtsp_wfd_server_set_video_codec (GstRTSPWFDServer *server, guint8 video_codec);
GstRTSPResult gst_rtsp_wfd_server_set_audio_codec (GstRTSPWFDServer *server, guint8 audio_codec);
GstRTSPResult gst_rtsp_wfd_server_switch_to_udp (GstRTSPWFDServer *server);
GstRTSPResult gst_rtsp_wfd_server_switch_to_tcp (GstRTSPWFDServer *server);
Name: gst-rtsp-server
Summary: Multimedia Framework Library
Version: 1.6.1
-Release: 9
+Release: 10
Url: http://gstreamer.freedesktop.org/
Group: System/Libraries
License: LGPL-2.0+