Commit ddffbfbc authored by Laurent Aimar's avatar Laurent Aimar

* all: use the data_packet_count from the asf header when the server

gives an invalid one. (I hope it doesn't break anything)
parent dc0a3896
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* asf.c: MMS access plug-in * asf.c: MMS access plug-in
***************************************************************************** *****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN * Copyright (C) 2001, 2002 VideoLAN
* $Id: asf.c,v 1.2 2003/12/07 18:55:59 jpsaman Exp $ * $Id: asf.c,v 1.3 2004/02/12 20:09:38 fenrir Exp $
* *
* Authors: Laurent Aimar <fenrir@via.ecp.fr> * Authors: Laurent Aimar <fenrir@via.ecp.fr>
* *
...@@ -67,6 +67,9 @@ void E_( asf_HeaderParse ) ( asf_header_t *hdr, ...@@ -67,6 +67,9 @@ void E_( asf_HeaderParse ) ( asf_header_t *hdr,
uint64_t i_size; uint64_t i_size;
int i; int i;
hdr->i_file_size = 0;
hdr->i_data_packets_count = 0;
hdr->i_min_data_packet_size = 0;
for( i = 0; i < 128; i++ ) for( i = 0; i < 128; i++ )
{ {
hdr->stream[i].i_cat = ASF_STREAM_UNKNOWN; hdr->stream[i].i_cat = ASF_STREAM_UNKNOWN;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* mms.c: MMS access plug-in * mms.c: MMS access plug-in
***************************************************************************** *****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN * Copyright (C) 2001, 2002 VideoLAN
* $Id: mmstu.c,v 1.8 2004/01/22 18:49:38 fenrir Exp $ * $Id: mmstu.c,v 1.9 2004/02/12 20:09:38 fenrir Exp $
* *
* Authors: Laurent Aimar <fenrir@via.ecp.fr> * Authors: Laurent Aimar <fenrir@via.ecp.fr>
* *
...@@ -192,6 +192,10 @@ int E_(MMSTUOpen)( input_thread_t *p_input ) ...@@ -192,6 +192,10 @@ int E_(MMSTUOpen)( input_thread_t *p_input )
* broadcast yy=0x02, xx= 0x00 * broadcast yy=0x02, xx= 0x00
* pre-recorded yy=0x01, xx= 0x80 if video, 0x00 no video * pre-recorded yy=0x01, xx= 0x80 if video, 0x00 no video
*/ */
if( p_sys->i_packet_count <= 0 && p_sys->asfh.i_data_packets_count > 0 )
{
p_sys->i_packet_count = p_sys->asfh.i_data_packets_count;
}
if( p_sys->i_packet_count <= 0 || ( p_sys->i_flags_broadcast >> 24 ) == 0x02 ) if( p_sys->i_packet_count <= 0 || ( p_sys->i_flags_broadcast >> 24 ) == 0x02 )
{ {
p_input->stream.b_seekable = 0; p_input->stream.b_seekable = 0;
......
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