diff options
author | phintuka <phintuka> | 2009-02-10 15:42:29 +0000 |
---|---|---|
committer | phintuka <phintuka> | 2009-02-10 15:42:29 +0000 |
commit | 3f96bcf06fbdb7b4321e4187580caf177e862d7c (patch) | |
tree | b52a905bcbf29ac00387c5e3e100cd583afcfd64 | |
parent | 682ea346c5b71947664f61f0bb69a461188e058b (diff) | |
download | xineliboutput-3f96bcf06fbdb7b4321e4187580caf177e862d7c.tar.gz xineliboutput-3f96bcf06fbdb7b4321e4187580caf177e862d7c.tar.bz2 |
reorder substream type checks
-rw-r--r-- | xine/demux_xvdr.c | 37 |
1 files changed, 14 insertions, 23 deletions
diff --git a/xine/demux_xvdr.c b/xine/demux_xvdr.c index 2e6f9898..42780e1d 100644 --- a/xine/demux_xvdr.c +++ b/xine/demux_xvdr.c @@ -161,29 +161,20 @@ static void demux_xvdr_parse_pack (demux_xvdr_t *this) return; } - this->stream_id = p[3]; - - if (this->stream_id == 0xBD) { - result = parse_private_stream_1(this, p, buf); - } else if (this->stream_id == 0xBE) { - result = parse_padding_stream(this, p, buf); - } else if ((this->stream_id >= 0xC0) - && (this->stream_id < 0xDF)) { - result = parse_audio_stream(this, p, buf); - } else if ((this->stream_id >= 0xE0) - && (this->stream_id < 0xEF)) { - result = parse_video_stream(this, p, buf); - } else { - xprintf(this->stream->xine, XINE_VERBOSITY_LOG, - _("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; + this->stream_id = p[3]; + + if (IS_VIDEO_PACKET(p)) { + result = parse_video_stream(this, p, buf); + } else if (IS_MPEG_AUDIO_PACKET(p)) { + result = parse_audio_stream(this, p, buf); + } else if (IS_PADDING_PACKET(p)) { + result = parse_padding_stream(this, p, buf); + } else if (IS_PS1_PACKET(p)) { + result = parse_private_stream_1(this, p, buf); + } else { + LOGMSG("Unrecognised PES stream 0x%02x", this->stream_id); + buf->free_buffer (buf); + return; } if (result < 0) { return; |