diff options
-rw-r--r-- | src/demuxers/demux_mpeg_block.c | 4 | ||||
-rw-r--r-- | src/libspudec/spu.c | 4 | ||||
-rw-r--r-- | src/libspudec/xine_decoder.c | 29 |
3 files changed, 24 insertions, 13 deletions
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c index b49d5cec1..4d783924c 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.56 2001/10/20 02:01:51 guenter Exp $ + * $Id: demux_mpeg_block.c,v 1.57 2001/10/21 15:04:13 jcdutton Exp $ * * demultiplexer for mpeg 1/2 program streams * @@ -362,7 +362,7 @@ static void demux_mpeg_block_parse_pack (demux_mpeg_block_t *this, int preview_m buf->content = p+4; buf->size = packet_len-4; if (track & 0x8) - buf->type = BUF_AUDIO_DTS + track; + buf->type = BUF_AUDIO_DTS + track & 0x07; /* DVDs only have 8 tracks */ else buf->type = BUF_AUDIO_A52 + track; buf->PTS = PTS; diff --git a/src/libspudec/spu.c b/src/libspudec/spu.c index 7338f2ae7..fa4c95085 100644 --- a/src/libspudec/spu.c +++ b/src/libspudec/spu.c @@ -35,7 +35,7 @@ * along with this program; see the file COPYING. If not, write to * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: spu.c,v 1.16 2001/10/20 17:51:58 jcdutton Exp $ + * $Id: spu.c,v 1.17 2001/10/21 15:04:13 jcdutton Exp $ * */ @@ -297,7 +297,7 @@ static int spu_next_line (vo_overlay_t *spu) field ^= 1; // Toggle fields if (put_y >= spu->height) { - LOG (LOG_DEBUG, "."); + LOG (LOG_DEBUG, "put_y >= spu->height\n"); return -1; } return 0; diff --git a/src/libspudec/xine_decoder.c b/src/libspudec/xine_decoder.c index 5741487fc..e86d13866 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.19 2001/10/21 12:09:06 jcdutton Exp $ + * $Id: xine_decoder.c,v 1.20 2001/10/21 15:04:13 jcdutton Exp $ * * stuff needed to turn libspu into a xine decoder plugin */ @@ -308,8 +308,8 @@ int32_t spu_add_event(spudec_decoder_t *this, spu_overlay_event_t *event) { this->spu_events[new_event].event->object.overlay = malloc (sizeof(vo_overlay_t)); memcpy(this->spu_events[new_event].event->object.overlay, event->object.overlay, sizeof(vo_overlay_t)); - print_overlay( event->object.overlay ); - print_overlay( this->spu_events[new_event].event->object.overlay ); +// print_overlay( event->object.overlay ); +// print_overlay( this->spu_events[new_event].event->object.overlay ); pthread_mutex_unlock (&this->spu_events_mutex); return new_event; @@ -546,6 +546,11 @@ void spu_process_event( spudec_decoder_t *this, int vpts ) { if (this->spu_events[this_event].event->object.overlay != NULL) { vo_overlay_t *overlay = this->spu_objects[handle].overlay; vo_overlay_t *event_overlay = this->spu_events[this_event].event->object.overlay; + LOG (LOG_DEBUG, "event_overlay\n"); + print_overlay(event_overlay); + LOG (LOG_DEBUG, "overlay\n"); + print_overlay(overlay); + this->spu_objects[handle].handle = handle; /* This should not change for menus */ overlay->rle = event_overlay->rle; overlay->data_size = event_overlay->data_size; @@ -555,9 +560,9 @@ void spu_process_event( spudec_decoder_t *this, int vpts ) { overlay->width = event_overlay->width; overlay->height = event_overlay->height; overlay->rgb_clut = event_overlay->rgb_clut; - if((event_overlay->color[0] | - event_overlay->color[1] | - event_overlay->color[2] | + if((event_overlay->color[0] + + event_overlay->color[1] + + event_overlay->color[2] + event_overlay->color[3]) > 0 ) { LOG (LOG_DEBUG, "mixing clut\n"); overlay->color[0] = event_overlay->color[0]; @@ -565,9 +570,9 @@ void spu_process_event( spudec_decoder_t *this, int vpts ) { overlay->color[2] = event_overlay->color[2]; overlay->color[3] = event_overlay->color[3]; } - if((event_overlay->trans[0] | - event_overlay->trans[1] | - event_overlay->trans[2] | + if((event_overlay->trans[0] + + event_overlay->trans[1] + + event_overlay->trans[2] + event_overlay->trans[3]) > 0 ) { LOG (LOG_DEBUG, "mixing trans\n"); overlay->trans[0] = event_overlay->trans[0]; @@ -576,6 +581,7 @@ void spu_process_event( spudec_decoder_t *this, int vpts ) { overlay->trans[3] = event_overlay->trans[3]; } this->spu_showing[1].handle = handle; + LOG (LOG_DEBUG, "overlay after\n"); print_overlay(overlay); } break; @@ -585,6 +591,10 @@ void spu_process_event( spudec_decoder_t *this, int vpts ) { if (this->spu_events[this_event].event->object.overlay != NULL) { vo_overlay_t *overlay = this->spu_objects[handle].overlay; vo_overlay_t *event_overlay = this->spu_events[this_event].event->object.overlay; + LOG (LOG_DEBUG, "event_overlay\n"); + print_overlay(event_overlay); + LOG (LOG_DEBUG, "overlay\n"); + print_overlay(overlay); this->spu_objects[handle].handle = handle; /* This should not change for menus */ overlay->clip_top = event_overlay->clip_top; overlay->clip_bottom = event_overlay->clip_bottom; @@ -612,6 +622,7 @@ void spu_process_event( spudec_decoder_t *this, int vpts ) { overlay->trans[3] = event_overlay->trans[3]; } this->spu_showing[1].handle = handle; + LOG (LOG_DEBUG, "overlay after\n"); print_overlay(overlay); } break; |