comparison libmpdemux/demux_lavf.c @ 32491:90206ba16fec

Set st->discard in the same way for audio and video, fixes -aid no longer working.
author reimar
date Sat, 06 Nov 2010 14:31:34 +0000
parents fbe5c829c69b
children 5fc287bf541a
comparison
equal deleted inserted replaced
32490:059cc86b02dc 32491:90206ba16fec
331 if (title && title->value) 331 if (title && title->value)
332 mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_AID_%d_NAME=%s\n", priv->audio_streams, title->value); 332 mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_AID_%d_NAME=%s\n", priv->audio_streams, title->value);
333 if (st->disposition & AV_DISPOSITION_DEFAULT) 333 if (st->disposition & AV_DISPOSITION_DEFAULT)
334 sh_audio->default_track = 1; 334 sh_audio->default_track = 1;
335 if(mp_msg_test(MSGT_HEADER,MSGL_V) ) print_wave_header(sh_audio->wf, MSGL_V); 335 if(mp_msg_test(MSGT_HEADER,MSGL_V) ) print_wave_header(sh_audio->wf, MSGL_V);
336 // select the first audio stream 336 // select the first audio stream if auto-selection is requested
337 if (!demuxer->audio->sh) { 337 if (demuxer->audio->id == -1) {
338 demuxer->audio->id = i; 338 demuxer->audio->id = i;
339 demuxer->audio->sh= demuxer->a_streams[i]; 339 demuxer->audio->sh= demuxer->a_streams[i];
340 } else 340 }
341 if (demuxer->audio->id != i)
341 st->discard= AVDISCARD_ALL; 342 st->discard= AVDISCARD_ALL;
342 stream_id = priv->audio_streams++; 343 stream_id = priv->audio_streams++;
343 break; 344 break;
344 } 345 }
345 case CODEC_TYPE_VIDEO:{ 346 case CODEC_TYPE_VIDEO:{
400 int biXPelsPerMeter; 401 int biXPelsPerMeter;
401 int biYPelsPerMeter; 402 int biYPelsPerMeter;
402 int biClrUsed; 403 int biClrUsed;
403 int biClrImportant; 404 int biClrImportant;
404 */ 405 */
405 if(demuxer->video->id != i && demuxer->video->id != -1) 406 // select the first video stream if auto-selection is requested
406 st->discard= AVDISCARD_ALL; 407 if(demuxer->video->id == -1) {
407 else{
408 demuxer->video->id = i; 408 demuxer->video->id = i;
409 demuxer->video->sh= demuxer->v_streams[i]; 409 demuxer->video->sh= demuxer->v_streams[i];
410 } 410 }
411 if(demuxer->video->id != i)
412 st->discard= AVDISCARD_ALL;
411 stream_id = priv->video_streams++; 413 stream_id = priv->video_streams++;
412 break; 414 break;
413 } 415 }
414 case CODEC_TYPE_SUBTITLE:{ 416 case CODEC_TYPE_SUBTITLE:{
415 sh_sub_t* sh_sub; 417 sh_sub_t* sh_sub;