[vlc-commits] live555: Add satip support
Julian Scheel
git at videolan.org
Mon Jun 22 10:46:52 CEST 2015
vlc | branch: master | Julian Scheel <julian at jusst.de> | Thu Jun 18 17:33:58 2015 +0200| [8d0b0e89493bfebe5de2e7c927cf0ba0f22382fb] | committer: Jean-Baptiste Kempf
live555: Add satip support
Register a satip-access, which uses a hardcoded default SDP dataset instead of
querying it via DESCRIBE. While some SAT>IP servers implement a common
DESCRIBE the spec is allowing servers to only support DESCRIBE of already
configured sessions, which requires SETUP to be executed before DESCRIBE can
be used at all.
Signed-off-by: Julian Scheel <julian at jusst.de>
Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8d0b0e89493bfebe5de2e7c927cf0ba0f22382fb
---
modules/access/live555.cpp | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/modules/access/live555.cpp b/modules/access/live555.cpp
index 4b84e8e..3e10492 100644
--- a/modules/access/live555.cpp
+++ b/modules/access/live555.cpp
@@ -102,7 +102,7 @@ vlc_module_begin ()
add_submodule ()
set_description( N_("RTSP/RTP access and demux") )
- add_shortcut( "rtsp", "pnm", "live", "livedotcom" )
+ add_shortcut( "rtsp", "pnm", "live", "livedotcom", "satip" )
set_capability( "access_demux", 0 )
set_callbacks( Open, Close )
add_bool( "rtsp-tcp", false,
@@ -332,6 +332,17 @@ static int Open ( vlc_object_t *p_this )
while( (p = strchr( p, ' ' )) != NULL ) *p = '+';
}
+ if( strcasecmp( p_demux->psz_access, "satip" ) == 0 )
+ {
+ asprintf(&p_sys->p_sdp, "v=0\r\n"
+ "o=- 0 %s\r\n"
+ "s=SATIP:stream\r\n"
+ "i=SATIP RTP Stream\r\n"
+ "m=video 0 RTP/AVP 33\r\n"
+ "a=control:rtsp://%s\r\n\r\n",
+ p_sys->url.psz_host, p_sys->psz_path);
+ }
+
if( p_demux->s != NULL )
{
/* Gather the complete sdp file */
@@ -524,7 +535,15 @@ static void continueAfterOPTIONS( RTSPClient* client, int result_code,
result_code == 0
&& result_string != NULL
&& strstr( result_string, "GET_PARAMETER" ) != NULL;
- client->sendDescribeCommand( continueAfterDESCRIBE );
+ if( p_sys->p_sdp == NULL )
+ {
+ client->sendDescribeCommand( continueAfterDESCRIBE );
+ }
+ else
+ {
+ p_sys->b_error = false;
+ p_sys->event_rtsp = 1;
+ }
delete[] result_string;
}
More information about the vlc-commits
mailing list