X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=libhb%2Fdvd.c;h=fa5373e79374171dab5a71187e05e25b0ec910db;hb=033e32de9c380f54c7d1362a3979da205ebc3a29;hp=fc267778e02e07a6fb191c67b26adc6ab1deb02a;hpb=25ac0c55dd4c0f453f491013fdb3ba75e8a76a37;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/libhb/dvd.c b/libhb/dvd.c index fc267778..fa5373e7 100644 --- a/libhb/dvd.c +++ b/libhb/dvd.c @@ -9,6 +9,7 @@ #include "dvd.h" #include "dvdread/ifo_read.h" +#include "dvdread/ifo_print.h" #include "dvdread/nav_read.h" static hb_dvd_t * hb_dvdread_init( char * path ); @@ -86,10 +87,21 @@ hb_dvd_t * hb_dvdread_init( char * path ) { hb_dvd_t * e; hb_dvdread_t * d; + int region_mask; e = calloc( sizeof( hb_dvd_t ), 1 ); d = &(e->dvdread); + /* Log DVD drive region code */ + if ( hb_dvd_region( path, ®ion_mask ) == 0 ) + { + hb_log( "dvd: Region mask 0x%02x", region_mask ); + if ( region_mask == 0xFF ) + { + hb_log( "dvd: Warning, DVD device has no region set" ); + } + } + /* Open device */ if( !( d->reader = DVDOpen( path ) ) ) { @@ -231,7 +243,7 @@ static hb_title_t * hb_dvdread_title_scan( hb_dvd_t * e, int t ) pgn = vts->vts_ptt_srpt->title[title->ttn-1].ptt[0].pgn; d->pgc = vts->vts_pgcit->pgci_srp[pgc_id-1].pgc; - hb_log("pgc_id: %d, pgn: %d: pgc: 0x%x", pgc_id, pgn, d->pgc); + hb_log("pgc_id: %d, pgn: %d: pgc: %p", pgc_id, pgn, d->pgc); if( !d->pgc ) { @@ -275,7 +287,7 @@ static hb_title_t * hb_dvdread_title_scan( hb_dvd_t * e, int t ) title->hours = title->duration / 90000 / 3600; title->minutes = ( ( title->duration / 90000 ) % 3600 ) / 60; title->seconds = ( title->duration / 90000 ) % 60; - hb_log( "scan: duration is %02d:%02d:%02d (%lld ms)", + hb_log( "scan: duration is %02d:%02d:%02d (%"PRId64" ms)", title->hours, title->minutes, title->seconds, title->duration / 90 ); @@ -409,12 +421,6 @@ static hb_title_t * hb_dvdread_title_scan( hb_dvd_t * e, int t ) hb_list_add( title->list_audio, audio ); } - if( !hb_list_count( title->list_audio ) ) - { - hb_log( "scan: ignoring title (no audio track)" ); - goto fail; - } - memcpy( title->palette, vts->vts_pgcit->pgci_srp[pgc_id-1].pgc->palette, 16 * sizeof( uint32_t ) ); @@ -471,7 +477,7 @@ static hb_title_t * hb_dvdread_title_scan( hb_dvd_t * e, int t ) lang->iso639_2); subtitle->format = PICTURESUB; subtitle->source = VOBSUB; - subtitle->dest = RENDERSUB; // By default render (burn-in) the VOBSUB. + subtitle->config.dest = RENDERSUB; // By default render (burn-in) the VOBSUB. subtitle->type = lang_extension; @@ -596,7 +602,7 @@ static hb_title_t * hb_dvdread_title_scan( hb_dvd_t * e, int t ) chapter->minutes = ( seconds % 3600 ) / 60; chapter->seconds = seconds % 60; - hb_log( "scan: chap %d c=%d->%d, b=%d->%d (%d), %lld ms", + hb_log( "scan: chap %d c=%d->%d, b=%d->%d (%d), %"PRId64" ms", chapter->index, chapter->cell_start, chapter->cell_end, chapter->block_start, chapter->block_end, chapter->block_count, chapter->duration / 90 );