diff options
author | jstebbins <[email protected]> | 2010-09-08 16:51:59 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2010-09-08 16:51:59 +0000 |
commit | a007891bf9f7e53d3705c51b5b41f9e56a144031 (patch) | |
tree | b7a532c24a458d549afb0174c374e631b896a46e /test/test.c | |
parent | 772c3574758e9bc29cb76bbc86343cf9ad5ddd71 (diff) |
Add Bluray support
Unencrypted BD directory trees only. Doesn't support iso images.
Also, no PGS subtitle support yet.
Chapters and angles are supported.
Adds a new contrib libbluray.
Adds new option to hb_scan() for duration of short titles to filter.
This applies to BD and DVD multi-title scans only. Does not apply
to any single title scans.
Fixes memory leak during scan. hb_buffer_close() was not freeing
all buffers in a chain of buffers passed to it.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3510 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'test/test.c')
-rw-r--r-- | test/test.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/test/test.c b/test/test.c index 34daa7377..cff30ef4b 100644 --- a/test/test.c +++ b/test/test.c @@ -126,6 +126,7 @@ static int64_t stop_at_pts = 0; static int stop_at_frame = 0; static char * stop_at_string = NULL; static char * stop_at_token = NULL; +static uint64_t min_title_duration = 900000LL; /* Exit cleanly on Ctrl-C */ static volatile int die = 0; @@ -241,7 +242,7 @@ int main( int argc, char ** argv ) titleindex = 0; } - hb_scan( h, input, titleindex, preview_count, store_previews ); + hb_scan( h, input, titleindex, preview_count, store_previews, min_title_duration ); /* Wait... */ while( !die ) @@ -388,11 +389,11 @@ static void PrintTitleInfo( hb_title_t * title ) } else if ( title->type == HB_DVD_TYPE ) { - fprintf( stderr, " + vts %d, ttn %d, cells %d->%d (%d blocks)\n", + fprintf( stderr, " + vts %d, ttn %d, cells %d->%d (%"PRIu64" blocks)\n", title->vts, title->ttn, title->cell_start, title->cell_end, title->block_count ); } - if (dvdnav) + if (title->angle_count > 1) fprintf( stderr, " + angle(s) %d\n", title->angle_count ); fprintf( stderr, " + duration: %02d:%02d:%02d\n", title->hours, title->minutes, title->seconds ); @@ -408,7 +409,7 @@ static void PrintTitleInfo( hb_title_t * title ) for( i = 0; i < hb_list_count( title->list_chapter ); i++ ) { chapter = hb_list_item( title->list_chapter, i ); - fprintf( stderr, " + %d: cells %d->%d, %d blocks, duration " + fprintf( stderr, " + %d: cells %d->%d, %"PRIu64" blocks, duration " "%02d:%02d:%02d\n", chapter->index, chapter->cell_start, chapter->cell_end, chapter->block_count, chapter->hours, chapter->minutes, @@ -2607,6 +2608,7 @@ static int ParseOptions( int argc, char ** argv ) #define ROTATE_FILTER 275 #define SCAN_ONLY 276 #define MAIN_FEATURE 277 + #define MIN_DURATION 278 for( ;; ) { @@ -2626,6 +2628,7 @@ static int ParseOptions( int argc, char ** argv ) { "ipod-atom", no_argument, NULL, 'I' }, { "title", required_argument, NULL, 't' }, + { "min-duration",required_argument, NULL, MIN_DURATION }, { "scan", no_argument, NULL, SCAN_ONLY }, { "main-feature",no_argument, NULL, MAIN_FEATURE }, { "chapters", required_argument, NULL, 'c' }, @@ -3154,6 +3157,9 @@ static int ParseOptions( int argc, char ** argv ) else if( atoi( optarg ) == 709 ) color_matrix = 2; break; + case MIN_DURATION: + min_title_duration = strtol( optarg, NULL, 0 ); + break; default: fprintf( stderr, "unknown option (%s)\n", argv[cur_optind] ); return -1; |