summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--contrib/version_mpeg2dec.txt2
-rw-r--r--contrib/version_xvidcore.txt2
-rw-r--r--libhb/dvd.c33
-rw-r--r--libhb/internal.h3
-rw-r--r--libhb/reader.c3
-rw-r--r--libhb/scan.c3
-rw-r--r--macosx/Controller.mm10
-rw-r--r--macosx/main.mm8
-rw-r--r--test/test.c16
9 files changed, 60 insertions, 20 deletions
diff --git a/contrib/version_mpeg2dec.txt b/contrib/version_mpeg2dec.txt
index 87a73c92a..a1e47302c 100644
--- a/contrib/version_mpeg2dec.txt
+++ b/contrib/version_mpeg2dec.txt
@@ -1 +1 @@
-http://download.m0k.org/handbrake/contrib/mpeg2dec-20051019.tar.gz
+http://download.m0k.org/handbrake/contrib/mpeg2dec-20051112.tar.gz
diff --git a/contrib/version_xvidcore.txt b/contrib/version_xvidcore.txt
index 573cd3c8a..28a7cff4b 100644
--- a/contrib/version_xvidcore.txt
+++ b/contrib/version_xvidcore.txt
@@ -1 +1 @@
-http://download.m0k.org/handbrake/contrib/xvidcore-1.1.0-beta2.tar.gz
+http://download.m0k.org/handbrake/contrib/xvidcore-1.1.0.tar.gz
diff --git a/libhb/dvd.c b/libhb/dvd.c
index 9b2aef13b..3888f41db 100644
--- a/libhb/dvd.c
+++ b/libhb/dvd.c
@@ -1,4 +1,4 @@
-/* $Id: dvd.c,v 1.11 2005/11/04 15:30:47 titer Exp $
+/* $Id: dvd.c,v 1.12 2005/11/25 15:05:25 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -511,6 +511,25 @@ int hb_dvd_start( hb_dvd_t * d, int title, int chapter )
}
/***********************************************************************
+ * hb_dvd_stop
+ ***********************************************************************
+ *
+ **********************************************************************/
+void hb_dvd_stop( hb_dvd_t * d )
+{
+ if( d->ifo )
+ {
+ ifoClose( d->ifo );
+ d->ifo = NULL;
+ }
+ if( d->file )
+ {
+ DVDCloseFile( d->file );
+ d->file = NULL;
+ }
+}
+
+/***********************************************************************
* hb_dvd_seek
***********************************************************************
*
@@ -675,10 +694,14 @@ void hb_dvd_close( hb_dvd_t ** _d )
{
hb_dvd_t * d = *_d;
- if( d->ifo ) ifoClose( d->ifo );
- if( d->vmg ) ifoClose( d->vmg );
- if( d->file ) DVDCloseFile( d->file );
- if( d->reader ) DVDClose( d->reader );
+ if( d->vmg )
+ {
+ ifoClose( d->vmg );
+ }
+ if( d->reader )
+ {
+ DVDClose( d->reader );
+ }
free( d );
*_d = NULL;
diff --git a/libhb/internal.h b/libhb/internal.h
index e22da82ee..02fb61578 100644
--- a/libhb/internal.h
+++ b/libhb/internal.h
@@ -1,4 +1,4 @@
-/* $Id: internal.h,v 1.40 2005/04/27 10:14:02 titer Exp $
+/* $Id: internal.h,v 1.41 2005/11/25 15:05:25 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -104,6 +104,7 @@ hb_dvd_t * hb_dvd_init( char * path );
int hb_dvd_title_count( hb_dvd_t * );
hb_title_t * hb_dvd_title_scan( hb_dvd_t *, int title );
int hb_dvd_start( hb_dvd_t *, int title, int chapter );
+void hb_dvd_stop( hb_dvd_t * );
int hb_dvd_seek( hb_dvd_t *, float );
int hb_dvd_read( hb_dvd_t *, hb_buffer_t * );
int hb_dvd_chapter( hb_dvd_t * );
diff --git a/libhb/reader.c b/libhb/reader.c
index e57467d8d..47ec9d546 100644
--- a/libhb/reader.c
+++ b/libhb/reader.c
@@ -1,4 +1,4 @@
-/* $Id: reader.c,v 1.20 2005/04/29 19:55:54 titer Exp $
+/* $Id: reader.c,v 1.21 2005/11/25 15:05:25 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -113,6 +113,7 @@ static void ReaderFunc( void * _r )
hb_list_empty( &list );
hb_buffer_close( &r->ps );
+ hb_dvd_stop( r->dvd );
hb_dvd_close( &r->dvd );
hb_log( "reader: done" );
diff --git a/libhb/scan.c b/libhb/scan.c
index 812e84026..f60392cea 100644
--- a/libhb/scan.c
+++ b/libhb/scan.c
@@ -1,4 +1,4 @@
-/* $Id: scan.c,v 1.51 2005/04/27 21:05:24 titer Exp $
+/* $Id: scan.c,v 1.52 2005/11/25 15:05:25 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -397,6 +397,7 @@ cleanup:
hb_buffer_close( &buf_raw );
}
hb_list_close( &list_raw );
+ hb_dvd_stop( data->dvd );
return ret;
}
diff --git a/macosx/Controller.mm b/macosx/Controller.mm
index a4ba98afe..7a4e9a7aa 100644
--- a/macosx/Controller.mm
+++ b/macosx/Controller.mm
@@ -1,4 +1,4 @@
-/* $Id: Controller.mm,v 1.78 2005/11/04 13:09:41 titer Exp $
+/* $Id: Controller.mm,v 1.79 2005/11/04 19:41:32 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -884,17 +884,15 @@ static int FormatSettings[3][4] =
int format = [fDstFormatPopUp indexOfSelectedItem];
int codecs = [fDstCodecsPopUp indexOfSelectedItem];
- /* Update the encoder popup if necessary */
- if( ( FormatSettings[format][codecs] & HB_VCODEC_X264 ) &&
- [fVidEncoderPopUp numberOfItems] > 1 )
+ /* Update the encoder popup */
+ if( ( FormatSettings[format][codecs] & HB_VCODEC_X264 ) )
{
/* MPEG-4 -> H.264 */
[fVidEncoderPopUp removeAllItems];
[fVidEncoderPopUp addItemWithTitle: @"x264 (Main profile)"];
[fVidEncoderPopUp addItemWithTitle: @"x264 (Baseline profile)"];
}
- else if( ( FormatSettings[format][codecs] & HB_VCODEC_FFMPEG ) &&
- [fVidEncoderPopUp numberOfItems] < 2 )
+ else if( ( FormatSettings[format][codecs] & HB_VCODEC_FFMPEG ) )
{
/* H.264 -> MPEG-4 */
[fVidEncoderPopUp removeAllItems];
diff --git a/macosx/main.mm b/macosx/main.mm
index 78f659e03..b07c7f1c8 100644
--- a/macosx/main.mm
+++ b/macosx/main.mm
@@ -1,4 +1,4 @@
-/* $Id: main.mm,v 1.2 2004/10/26 20:49:41 titer Exp $
+/* $Id: main.mm,v 1.3 2005/11/25 15:04:35 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -6,7 +6,13 @@
#include <Cocoa/Cocoa.h>
+void SigHandler( int signal )
+{
+ [NSApp terminate: NULL];
+}
+
int main( int argc, const char ** argv )
{
+ signal( SIGINT, SigHandler );
return NSApplicationMain( argc, argv );
}
diff --git a/test/test.c b/test/test.c
index 3f250bc6c..4fd8e57df 100644
--- a/test/test.c
+++ b/test/test.c
@@ -1,4 +1,4 @@
-/* $Id: test.c,v 1.81 2005/10/15 18:05:03 titer Exp $
+/* $Id: test.c,v 1.82 2005/11/19 08:25:54 titer Exp $
This file is part of the HandBrake source code.
Homepage: <http://handbrake.m0k.org/>.
@@ -20,6 +20,7 @@ static int twoPass = 0;
static int deinterlace = 0;
static int grayscale = 0;
static int vcodec = HB_VCODEC_FFMPEG;
+static int h264_13 = 0;
static char * audios = NULL;
static int sub = 0;
static int width = 0;
@@ -338,6 +339,10 @@ static int HandleEvents( hb_handle_t * h )
{
job->vcodec = vcodec;
}
+ if( h264_13 )
+ {
+ job->h264_13 = h264_13;
+ }
if( vrate )
{
job->vrate = 27000000;
@@ -499,8 +504,8 @@ static void ShowHelp()
" audio, default: first one)\n"
"\n"
" -s, --subtitle <number> Select subtitle (default: none)\n"
- " -e, --encoder <string> Set video library encoder (ffmpeg/xvid/x264,\n"
- " default: ffmpeg)\n"
+ " -e, --encoder <string> Set video library encoder (ffmpeg,xvid,\n"
+ " x264,x264b13, default: ffmpeg)\n"
" -E, --aencoder <string> Set audio encoder (faac/lame/vorbis/ac3, ac3\n"
" meaning passthrough, default: guessed)\n"
" -2, --two-pass Use two-pass mode\n"
@@ -663,6 +668,11 @@ static int ParseOptions( int argc, char ** argv )
{
vcodec = HB_VCODEC_X264;
}
+ else if( !strcasecmp( optarg, "x264b13" ) )
+ {
+ vcodec = HB_VCODEC_X264;
+ h264_13 = 1;
+ }
else
{
fprintf( stderr, "invalid codec (%s)\n", optarg );