diff options
author | James Courtier-Dutton <jcdutton@users.sourceforge.net> | 2002-01-04 00:23:06 +0000 |
---|---|---|
committer | James Courtier-Dutton <jcdutton@users.sourceforge.net> | 2002-01-04 00:23:06 +0000 |
commit | a539aa09c9823358a80f196197709ee238f4f846 (patch) | |
tree | 070d6d3a4465443fc741a440760d8ca6732d5583 | |
parent | 0beb1f0dc00dc77899abda18b0d61b09f03303f4 (diff) | |
download | xine-lib-a539aa09c9823358a80f196197709ee238f4f846.tar.gz xine-lib-a539aa09c9823358a80f196197709ee238f4f846.tar.bz2 |
NAV packets now reach libspudec.
Nothing done with them yet.
CVS patchset: 1331
CVS date: 2002/01/04 00:23:06
-rw-r--r-- | src/demuxers/demux_mpeg_block.c | 12 | ||||
-rw-r--r-- | src/libspudec/xine_decoder.c | 9 | ||||
-rw-r--r-- | src/xine-engine/video_decoder.c | 3 |
3 files changed, 18 insertions, 6 deletions
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c index 717a3990a..ec03ac8ba 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.70 2002/01/02 18:16:07 jkeil Exp $ + * $Id: demux_mpeg_block.c,v 1.71 2002/01/04 00:23:06 jcdutton Exp $ * * demultiplexer for mpeg 1/2 program streams * @@ -505,8 +505,14 @@ static void demux_mpeg_block_parse_pack (demux_mpeg_block_t *this, int preview_m return ; } - - + } else if (stream_id == 0xbf) { /* NAV Packet */ + buf->content = p-9; + buf->size = packet_len; + buf->type = BUF_SPU_NAV; + buf->PTS = PTS; + buf->input_pos = this->input->get_current_pos(this->input); + this->video_fifo->put (this->video_fifo, buf); + return ; } else if ((stream_id >= 0xbc) && ((stream_id & 0xf0) == 0xe0)) { diff --git a/src/libspudec/xine_decoder.c b/src/libspudec/xine_decoder.c index a75c6b7d5..50e05b0bf 100644 --- a/src/libspudec/xine_decoder.c +++ b/src/libspudec/xine_decoder.c @@ -19,7 +19,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: xine_decoder.c,v 1.46 2002/01/03 23:56:44 jcdutton Exp $ + * $Id: xine_decoder.c,v 1.47 2002/01/04 00:23:06 jcdutton Exp $ * * stuff needed to turn libspu into a xine decoder plugin */ @@ -65,7 +65,7 @@ static clut_t __default_clut[] = { static int spudec_can_handle (spu_decoder_t *this_gen, int buf_type) { int type = buf_type & 0xFFFF0000; - return (type == BUF_SPU_PACKAGE || type == BUF_SPU_CLUT || type == BUF_SPU_SUBP_CONTROL) ; + return (type == BUF_SPU_PACKAGE || type == BUF_SPU_CLUT || type == BUF_SPU_NAV || type == BUF_SPU_SUBP_CONTROL) ; } /* FIXME: This function needs checking */ @@ -252,6 +252,11 @@ static void spudec_decode_data (spu_decoder_t *this_gen, buf_element_t *buf) { } return; } + if (buf->type == BUF_SPU_NAV) { + /* printf("libspudec:got nav packet 1\n"); */ + /* spudec_decode_nav(this,buf); */ + return; + } if (buf->decoder_info[0] == 0) /* skip preview data */ diff --git a/src/xine-engine/video_decoder.c b/src/xine-engine/video_decoder.c index 99ddefb4e..4c7a7c85e 100644 --- a/src/xine-engine/video_decoder.c +++ b/src/xine-engine/video_decoder.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: video_decoder.c,v 1.67 2001/12/24 00:45:03 guenter Exp $ + * $Id: video_decoder.c,v 1.68 2002/01/04 00:23:06 jcdutton Exp $ * */ @@ -114,6 +114,7 @@ void *video_decoder_loop (void *this_gen) { case BUF_SPU_CLUT: case BUF_SPU_PACKAGE: case BUF_SPU_TEXT: + case BUF_SPU_NAV: xine_profiler_start_count (prof_spu_decode); spu_decoder = update_spu_decoder(this, buf->type); |