comparison stream/stream_dvd.c @ 20635:9ed557ae1383

Streamline and simplify internal vs external libdvdread handling.
author diego
date Fri, 03 Nov 2006 22:03:58 +0000
parents 7297d76977be
children a40246d0c941
comparison
equal deleted inserted replaced
20634:32b693286d0b 20635:9ed557ae1383
740 { 740 {
741 d->nr_of_channels=0; 741 d->nr_of_channels=0;
742 if(vts_file->vts_pgcit) { 742 if(vts_file->vts_pgcit) {
743 int i; 743 int i;
744 for(i=0;i<8;i++) 744 for(i=0;i<8;i++)
745 #ifdef USE_MPDVDKIT 745 #ifdef USE_DVDREAD_INTERNAL
746 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i].present) { 746 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i].present) {
747 #else 747 #else
748 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i] & 0x8000) { 748 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i] & 0x8000) {
749 #endif 749 #endif
750 audio_attr_t * audio = &vts_file->vtsi_mat->vts_audio_attr[i]; 750 audio_attr_t * audio = &vts_file->vtsi_mat->vts_audio_attr[i];
757 tmp[1]=language&0xff; 757 tmp[1]=language&0xff;
758 tmp[2]=0; 758 tmp[2]=0;
759 } 759 }
760 760
761 d->audio_streams[d->nr_of_channels].language=language; 761 d->audio_streams[d->nr_of_channels].language=language;
762 #ifdef USE_MPDVDKIT 762 #ifdef USE_DVDREAD_INTERNAL
763 d->audio_streams[d->nr_of_channels].id=vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i].s_audio; 763 d->audio_streams[d->nr_of_channels].id=vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i].s_audio;
764 #else 764 #else
765 d->audio_streams[d->nr_of_channels].id=vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i] >> 8 & 7; 765 d->audio_streams[d->nr_of_channels].id=vts_file->vts_pgcit->pgci_srp[ttn].pgc->audio_control[i] >> 8 & 7;
766 #endif 766 #endif
767 switch(audio->audio_format) { 767 switch(audio->audio_format) {
808 { 808 {
809 int i; 809 int i;
810 810
811 d->nr_of_subtitles=0; 811 d->nr_of_subtitles=0;
812 for(i=0;i<32;i++) 812 for(i=0;i<32;i++)
813 #ifdef USE_MPDVDKIT 813 #ifdef USE_DVDREAD_INTERNAL
814 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i].present) { 814 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i].present) {
815 #else 815 #else
816 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i] & 0x80000000) { 816 if(vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i] & 0x80000000) {
817 #endif 817 #endif
818 subp_attr_t * subtitle = &vts_file->vtsi_mat->vts_subp_attr[i]; 818 subp_attr_t * subtitle = &vts_file->vtsi_mat->vts_subp_attr[i];
828 } 828 }
829 829
830 d->subtitles[ d->nr_of_subtitles ].language=language; 830 d->subtitles[ d->nr_of_subtitles ].language=language;
831 d->subtitles[ d->nr_of_subtitles ].id=d->nr_of_subtitles; 831 d->subtitles[ d->nr_of_subtitles ].id=d->nr_of_subtitles;
832 if(video->display_aspect_ratio == 0) /* 4:3 */ 832 if(video->display_aspect_ratio == 0) /* 4:3 */
833 #ifdef USE_MPDVDKIT 833 #ifdef USE_DVDREAD_INTERNAL
834 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i].s_4p3; 834 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i].s_4p3;
835 #else 835 #else
836 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i] >> 24 & 31; 836 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i] >> 24 & 31;
837 #endif 837 #endif
838 else if(video->display_aspect_ratio == 3) /* 16:9 */ 838 else if(video->display_aspect_ratio == 3) /* 16:9 */
839 #ifdef USE_MPDVDKIT 839 #ifdef USE_DVDREAD_INTERNAL
840 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i].s_lbox; 840 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i].s_lbox;
841 #else 841 #else
842 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i] >> 8 & 31; 842 d->subtitles[d->nr_of_subtitles].id = vts_file->vts_pgcit->pgci_srp[ttn].pgc->subp_control[i] >> 8 & 31;
843 #endif 843 #endif
844 844