Allow propagation of stream selection through the ASF demuxer to the

MMSH protocol handler.
Patch by Björn Axelsson: bjorn ; axelsson § intinor : se
Original thread:
[FFmpeg-devel] [PATCH] MMSH stream selection support for asf demuxer
Date: 11/02/2007 11:51 AM

Originally committed as revision 10935 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Björn Axelsson 2007-11-06 16:19:09 +00:00 committed by Benoit Fouet
parent ff1463dc37
commit 49ce700a27
1 changed files with 14 additions and 0 deletions

View File

@ -25,6 +25,8 @@
#include "common.h"
#include "asfcrypt.h"
extern void ff_mms_set_stream_selection(URLContext *h, AVFormatContext *format);
#undef NDEBUG
#include <assert.h>
@ -106,6 +108,12 @@ static void get_str16(ByteIOContext *pb, char *buf, int buf_size)
}
#endif
static int is_mms(ByteIOContext *pb)
{
return url_fileno(pb) && url_fileno(pb)->prot &&
!strcmp(url_fileno(pb)->prot->name, "mmsh");
}
static void get_str16_nolen(ByteIOContext *pb, int len, char *buf, int buf_size)
{
char* q = buf;
@ -533,6 +541,12 @@ static int asf_read_header(AVFormatContext *s, AVFormatParameters *ap)
}
}
#ifdef CONFIG_MMSH_PROTOCOL
/* Give info about ourselves to the mms protocol */
if(is_mms(pb))
ff_mms_set_stream_selection(url_fileno(pb), s);
#endif
return 0;
fail: