diff options
author | James Courtier-Dutton <jcdutton@users.sourceforge.net> | 2003-05-18 17:37:33 +0000 |
---|---|---|
committer | James Courtier-Dutton <jcdutton@users.sourceforge.net> | 2003-05-18 17:37:33 +0000 |
commit | 1e15dbe7895427830ac1e86235b24b7a512e2d00 (patch) | |
tree | 2cef8eb6d47362f2c831e51a6b5737245b5b1d87 /src | |
parent | b146d9af218bac99a3d017b801c397f8f615c9f5 (diff) | |
download | xine-lib-1e15dbe7895427830ac1e86235b24b7a512e2d00.tar.gz xine-lib-1e15dbe7895427830ac1e86235b24b7a512e2d00.tar.bz2 |
Remove some assert() statements.
Should fix playing of
DVD+RW disc recorded with a Philips DVD recorder.
Problem reported by "Gert Vervoort".
CVS patchset: 4871
CVS date: 2003/05/18 17:37:33
Diffstat (limited to 'src')
-rw-r--r-- | src/demuxers/demux_mpeg_block.c | 102 |
1 files changed, 64 insertions, 38 deletions
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c index 63e3a52a9..063f9dba0 100644 --- a/src/demuxers/demux_mpeg_block.c +++ b/src/demuxers/demux_mpeg_block.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: demux_mpeg_block.c,v 1.186 2003/05/15 20:16:42 mroi Exp $ + * $Id: demux_mpeg_block.c,v 1.187 2003/05/18 17:37:33 jcdutton Exp $ * * demultiplexer for mpeg 1/2 program streams * used with fixed blocksize devices (like dvd/vcd) @@ -308,80 +308,108 @@ static void demux_mpeg_block_parse_pack (demux_mpeg_block_t *this, int preview_m } else if (this->stream_id == 0xFF) { result = parse_program_stream_directory(this, p, buf); } else { - printf("xine-lib:demux_mpeg_block: Unrecognised stream_id %02x\n", this->stream_id); - assert(0); + printf("xine-lib:demux_mpeg_block: Unrecognised stream_id 0x%02x. Please report this to xine developers.\n", this->stream_id); + buf->free_buffer (buf); + return; } if (result < 0) { return; } p+=result; } - printf ("demux_mpeg_block: error! freeing\n"); - assert(0); + printf ("demux_mpeg_block: error! freeing. Please report this to xine developers.\n"); buf->free_buffer (buf); - return ; } static int32_t parse_padding_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { + /* Just skip padding. */ buf->free_buffer (buf); return -1; } static int32_t parse_program_stream_map(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x.\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_ecm_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_emm_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_dsmcc_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_iec_13522_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_h222_typeA_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_h222_typeB_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_h222_typeC_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_h222_typeD_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_h222_typeE_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_IEC14496_SL_packetized_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_IEC14496_FlexMux_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_program_stream_directory(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_ancillary_stream(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { - printf("xine-lib:demux_mpeg_block: Unhandled stream_id %02x\n", this->stream_id); - assert(0); + /* FIXME: Implement */ + printf("xine-lib:demux_mpeg_block: Unhandled stream_id 0x%02x\n", this->stream_id); + buf->free_buffer (buf); + return -1; } static int32_t parse_program_stream_pack_header(demux_mpeg_block_t *this, uint8_t *p, buf_element_t *buf) { @@ -763,7 +791,6 @@ static int32_t parse_private_stream_1(demux_mpeg_block_t *this, uint8_t *p, buf_ #endif return -1; } else { - assert(0); buf->free_buffer(buf); return -1; } @@ -831,14 +858,13 @@ static int32_t parse_private_stream_1(demux_mpeg_block_t *this, uint8_t *p, buf_ #endif return -1; } else { - assert(0); buf->free_buffer(buf); return -1; } } - printf("demux_mpeg_block:Unrecognised private stream 1 %02x\n", p[0]); - assert(0); + printf("demux_mpeg_block:Unrecognised private stream 1 0x%02x. Please report this to xine developers.\n", p[0]); + buf->free_buffer(buf); return -1; } |