Index: stream/asf_streaming.c =================================================================== --- stream/asf_streaming.c (revisione 29092) +++ stream/asf_streaming.c (copia locale) @@ -263,7 +263,7 @@ asf_ctrl->audio_streams = realloc(asf_ctrl->audio_streams, asf_ctrl->n_audio*sizeof(int)); } - asf_ctrl->audio_streams[asf_ctrl->n_audio-1] = AV_RL16(&streamh->stream_no); + asf_ctrl->audio_streams[asf_ctrl->n_audio-1] = AV_RL16(&streamh->stream_no) & 0x7F; break; case 0xBC19EFC0 : // video stream if(asf_ctrl->video_streams == NULL){ @@ -274,7 +274,7 @@ asf_ctrl->video_streams = realloc(asf_ctrl->video_streams, asf_ctrl->n_video*sizeof(int)); } - asf_ctrl->video_streams[asf_ctrl->n_video-1] = AV_RL16(&streamh->stream_no); + asf_ctrl->video_streams[asf_ctrl->n_video-1] = AV_RL16(&streamh->stream_no) & 0x7F; break; } } Index: libmpdemux/asfheader.c =================================================================== --- libmpdemux/asfheader.c (revisione 29092) +++ libmpdemux/asfheader.c (copia locale) @@ -431,7 +431,7 @@ ++audio_streams; if (!asf_init_audio_stream(demuxer, asf, sh_audio, streamh, &audio_pos, &buffer, hdr, hdr_len)) goto len_err_out; - if (!get_ext_stream_properties(hdr, hdr_len, streamh->stream_no, asf, 0)) + if (!get_ext_stream_properties(hdr, hdr_len, streamh->stream_no & 0x7F, asf, 0)) goto len_err_out; } } @@ -453,7 +453,7 @@ asf_chunk_type(streamh->concealment)); mp_msg(MSGT_HEADER, MSGL_V, "type: %d bytes, stream: %d bytes ID: %d\n", (int)streamh->type_size, (int)streamh->stream_size, - (int)streamh->stream_no); + (int)streamh->stream_no & 0x7F); mp_msg(MSGT_HEADER, MSGL_V, "unk1: %lX unk2: %X\n", (unsigned long)streamh->unk1, (unsigned int)streamh->unk2); mp_msg(MSGT_HEADER, MSGL_V, "FILEPOS=0x%X\n", pos + start); @@ -493,9 +493,9 @@ asf->asf_is_dvr_ms=1; asf->dvr_last_vid_pts=0.0; } else asf->asf_is_dvr_ms=0; - if (!get_ext_stream_properties(hdr, hdr_len, streamh->stream_no, asf, 1)) + if (!get_ext_stream_properties(hdr, hdr_len, streamh->stream_no & 0x7F, asf, 1)) goto len_err_out; - if (get_meta(hdr, hdr_len, streamh->stream_no, &asp_ratio)) { + if (get_meta(hdr, hdr_len, streamh->stream_no & 0x7F, &asp_ratio)) { sh_video->aspect = asp_ratio * sh_video->bih->biWidth / sh_video->bih->biHeight; }