diff options
author | handbrake <[email protected]> | 2006-01-14 13:11:35 +0000 |
---|---|---|
committer | handbrake <[email protected]> | 2006-01-14 13:11:35 +0000 |
commit | 4beb6a8b483c9d84677b21cc271ce315f136335c (patch) | |
tree | e0ac0d4d1748ddde2ccc9a3310c3168474f266d9 | |
parent | 5bfcc1c3cf9baed140c62c37a13c5087bbd3d5cf (diff) |
HandBrake 0.5.2
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@9 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r-- | Jamfile | 4 | ||||
-rw-r--r-- | TODO | 12 | ||||
-rw-r--r-- | core/AviMux.c | 4 | ||||
-rw-r--r-- | core/HandBrake.c | 9 | ||||
-rw-r--r-- | core/Mpeg2Dec.c | 3 | ||||
-rw-r--r-- | core/Thread.c | 18 | ||||
-rw-r--r-- | core/Utils.c | 9 | ||||
-rw-r--r-- | macosx/Controller.h | 8 | ||||
-rw-r--r-- | macosx/Controller.mm | 32 | ||||
-rw-r--r-- | macosx/English.lproj/InfoPlist.strings | bin | 496 -> 496 bytes | |||
-rw-r--r-- | macosx/English.lproj/MainMenu.nib/classes.nib | 4 | ||||
-rw-r--r-- | macosx/English.lproj/MainMenu.nib/info.nib | 8 | ||||
-rw-r--r-- | macosx/English.lproj/MainMenu.nib/objects.nib | bin | 18012 -> 18081 bytes | |||
-rw-r--r-- | macosx/HandBrake.pbproj/project.pbxproj | 6 | ||||
-rw-r--r-- | test/test.c | 43 |
15 files changed, 89 insertions, 71 deletions
@@ -1,10 +1,10 @@ -# $Id: Jamfile,v 1.8 2003/11/09 22:11:06 titer Exp $ +# $Id: Jamfile,v 1.10 2003/11/13 02:09:14 titer Exp $ # # This file is part of the HandBrake source code. # Homepage: <http://handbrake.m0k.org/>. # It may be used under the terms of the GNU General Public License. -HB_VERSION = 0.5.1 ; +HB_VERSION = 0.5.2 ; # Compilers CC = gcc ; @@ -2,20 +2,20 @@ + Should be able to boost the audio volume + Allow the intf to preview the latest encoded picture + Finish and test the MPEG audio decoder - + More encoding options: B-frames, type of estimation, - type of scaling, etc + + More encoding options: B-frames, type of estimation etc etc + Subtitle support - + Finish xvid encoding support (2-pass, more tests) + Allow the user to split the file in x parts + + AC3 pass-through + AAC & vorbis encoding support + mp4 & mkv muxing support + manual aspect ratio + + rotate the movie + + rip only a few chapters + + network shared processing (using RendezVous) - All interfaces + Use the DVD name in popup and for the name of the created file + + nice 'About...' box with link to homepage & faq - BeOS interface + Redo the picture panel - -- OS X interface - + Make the 'destination' field editable diff --git a/core/AviMux.c b/core/AviMux.c index bd0551217..ca34d3cab 100644 --- a/core/AviMux.c +++ b/core/AviMux.c @@ -1,4 +1,4 @@ -/* $Id: AviMux.c,v 1.5 2003/11/06 18:35:53 titer Exp $ +/* $Id: AviMux.c,v 1.6 2003/11/13 01:18:52 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -605,7 +605,7 @@ static void IndexAddInt32( HBBuffer * b, uint32_t val ) { HBLog( "HBAviMux: reallocing index (%d MB)", 1 + b->alloc / 1024 / 1024 ); - HBBufferReAlloc( b, b->alloc + 1024 + 1024 ); + HBBufferReAlloc( b, b->alloc + 1024 * 1024 ); } b->data[b->size++] = val & 0xFF; diff --git a/core/HandBrake.c b/core/HandBrake.c index b7670bad8..c76a27b3c 100644 --- a/core/HandBrake.c +++ b/core/HandBrake.c @@ -1,4 +1,4 @@ -/* $Id: HandBrake.c,v 1.16 2003/11/09 21:26:52 titer Exp $ +/* $Id: HandBrake.c,v 1.18 2003/11/13 01:17:33 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -117,6 +117,7 @@ HBHandle * HBInit( int debug, int cpuCount ) h->lock = HBLockInit(); h->modeChanged = 1; h->status.mode = HB_MODE_NEED_DEVICE; + h->status.titleList = NULL; h->curTitle = NULL; h->curAudio = NULL; h->curOptAudio = NULL; @@ -191,16 +192,16 @@ void HBStartRip( HBHandle * h, HBTitle * t, FixPictureSettings( t ); /* Create fifos */ - t->mpeg2Fifo = HBFifoInit( 512 ); + t->mpeg2Fifo = HBFifoInit( 1024 ); t->rawFifo = HBFifoInit( 1 ); t->scaledFifo = HBFifoInit( 1 ); t->mpeg4Fifo = HBFifoInit( 1 ); - a1->ac3Fifo = HBFifoInit( 512 ); + a1->ac3Fifo = HBFifoInit( 1024 ); a1->rawFifo = HBFifoInit( 1 ); a1->mp3Fifo = HBFifoInit( 1 ); if( a2 ) { - a2->ac3Fifo = HBFifoInit( 512 ); + a2->ac3Fifo = HBFifoInit( 1024 ); a2->rawFifo = HBFifoInit( 1 ); a2->mp3Fifo = HBFifoInit( 1 ); } diff --git a/core/Mpeg2Dec.c b/core/Mpeg2Dec.c index d6ce22b3f..fb81f8080 100644 --- a/core/Mpeg2Dec.c +++ b/core/Mpeg2Dec.c @@ -1,4 +1,4 @@ -/* $Id: Mpeg2Dec.c,v 1.3 2003/11/06 12:33:11 titer Exp $ +/* $Id: Mpeg2Dec.c,v 1.4 2003/11/12 21:46:59 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -169,7 +169,6 @@ static int Mpeg2DecWork( HBWork * w ) tmpBuffer = HBBufferInit( rawBuffer->size ); tmpBuffer->position = rawBuffer->position; tmpBuffer->pass = rawBuffer->pass; - tmpBuffer->last = rawBuffer->last; memcpy( tmpBuffer->data, rawBuffer->data, tmpBuffer->size ); HBListAdd( m->rawBufferList, tmpBuffer ); diff --git a/core/Thread.c b/core/Thread.c index 77caa0ee5..f0d8e628b 100644 --- a/core/Thread.c +++ b/core/Thread.c @@ -1,10 +1,13 @@ -/* $Id: Thread.c,v 1.4 2003/11/06 15:51:36 titer Exp $ +/* $Id: Thread.c,v 1.5 2003/11/12 16:09:34 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. It may be used under the terms of the GNU General Public License. */ #include "Thread.h" +#ifdef SYS_CYGWIN +# include <windows.h> +#endif struct HBThread { @@ -18,14 +21,11 @@ struct HBThread #elif defined( SYS_MACOSX ) || defined( SYS_LINUX ) pthread_t thread; #elif defined( SYS_CYGWIN ) - /* TODO */ - int thread; + HANDLE thread; #endif }; -#ifndef SYS_CYGWIN static void ThreadFunc( void * t ); -#endif HBThread * HBThreadInit( char * name, void (* function)(void *), void * arg, int priority ) @@ -50,8 +50,8 @@ HBThread * HBThreadInit( char * name, void (* function)(void *), pthread_create( &t->thread, NULL, (void * (*)( void * )) ThreadFunc, t ); #elif defined( SYS_CYGWIN ) - /* TODO */ - t->thread = 0; + t->thread = CreateThread( NULL, 0, + (LPTHREAD_START_ROUTINE) ThreadFunc, t, 0, NULL ); #endif HBLog( "HBThreadInit: thread %d started (\"%s\")", @@ -60,7 +60,6 @@ HBThread * HBThreadInit( char * name, void (* function)(void *), return t; } -#ifndef SYS_CYGWIN static void ThreadFunc( void * _t ) { HBThread * t = (HBThread*) _t; @@ -77,7 +76,6 @@ static void ThreadFunc( void * _t ) t->function( t->arg ); } -#endif void HBThreadClose( HBThread ** _t ) { @@ -89,7 +87,7 @@ void HBThreadClose( HBThread ** _t ) #elif defined( SYS_MACOSX ) || defined( SYS_LINUX ) pthread_join( t->thread, NULL ); #elif defined( SYS_CYGWIN ) - /* TODO */ + WaitForSingleObject( t->thread, INFINITE ); #endif HBLog( "HBThreadClose: thread %d stopped (\"%s\")", diff --git a/core/Utils.c b/core/Utils.c index 94b3b1e07..566979901 100644 --- a/core/Utils.c +++ b/core/Utils.c @@ -1,4 +1,4 @@ -/* $Id: Utils.c,v 1.7 2003/11/09 14:27:56 titer Exp $ +/* $Id: Utils.c,v 1.8 2003/11/12 16:09:34 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -7,6 +7,9 @@ #include <stdarg.h> #include <time.h> #include <sys/time.h> +#ifdef SYS_CYGWIN +# include <windows.h> +#endif #include "Utils.h" #include "Fifo.h" @@ -25,7 +28,7 @@ void HBSnooze( int time ) #elif defined( SYS_MACOSX ) || defined( SYS_LINUX ) usleep( time ); #elif defined( SYS_CYGWIN ) - /* TODO */ + Sleep( time / 1000 ); #endif } @@ -68,7 +71,7 @@ uint64_t HBGetDate() gettimeofday( &tv, NULL ); return( (uint64_t) tv.tv_sec * 1000000 + (uint64_t) tv.tv_usec ); #else - return 0; + return( 1000 * GetTickCount() ); #endif } diff --git a/macosx/Controller.h b/macosx/Controller.h index afa2fb7f9..435e2216e 100644 --- a/macosx/Controller.h +++ b/macosx/Controller.h @@ -1,4 +1,4 @@ -/* $Id: Controller.h,v 1.5 2003/11/09 19:43:06 titer Exp $ +/* $Id: Controller.h,v 1.6 2003/11/13 01:40:44 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -56,7 +56,7 @@ IBOutlet NSTextField * fRipStatusField; IBOutlet NSTextField * fRipInfoField; IBOutlet NSProgressIndicator * fRipProgress; - IBOutlet NSButton * fSuspendButton; + IBOutlet NSButton * fPauseButton; IBOutlet NSButton * fRipButton; /* "Done" alert panel */ @@ -105,7 +105,9 @@ returnCode: (int) returnCode contextInfo: (void *) contextInfo; - (void) _Rip; - (IBAction) Cancel: (id) sender; -- (IBAction) Suspend: (id) sender; +- (void) _Cancel: (NSWindow *) sheet returnCode: (int) returnCode + contextInfo: (void *) contextInfo; +- (IBAction) Pause: (id) sender; - (IBAction) Resume: (id) sender; - (IBAction) PreviousPicture: (id) sender; diff --git a/macosx/Controller.mm b/macosx/Controller.mm index 0b452bf91..ea5a2c161 100644 --- a/macosx/Controller.mm +++ b/macosx/Controller.mm @@ -1,4 +1,4 @@ -/* $Id: Controller.mm,v 1.9 2003/11/09 22:06:15 titer Exp $ +/* $Id: Controller.mm,v 1.10 2003/11/13 01:40:44 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -327,12 +327,24 @@ - (IBAction) Cancel: (id) sender { - HBStopRip( fHandle ); + NSBeginCriticalAlertSheet( @"Cancel - Are you sure?", + @"Nooo, keep going!", @"Yep, stop it", nil, fWindow, self, + @selector( _Cancel:returnCode:contextInfo: ), + nil, nil, @"Encoding won't be recoverable." ); } -- (IBAction) Suspend: (id) sender +- (void) _Cancel: (NSWindow *) sheet + returnCode: (int) returnCode contextInfo: (void *) contextInfo +{ + if( returnCode == NSAlertAlternateReturn ) + { + HBStopRip( fHandle ); + } +} + +- (IBAction) Pause: (id) sender { - if( [[fSuspendButton title] compare: @"Resume" ] == NSOrderedSame ) + if( [[fPauseButton title] compare: @"Resume" ] == NSOrderedSame ) { [self Resume: self]; return; @@ -498,7 +510,7 @@ /* Show the new GUI */ [fWindow setContentView: fRipView ]; - [fSuspendButton setEnabled: NO]; + [fPauseButton setEnabled: NO]; [fTitlePopUp removeAllItems]; HBTitle * title; @@ -537,8 +549,8 @@ [fFileFormatPopUp setEnabled: NO]; [fFileField setEnabled: NO]; [fFileBrowseButton setEnabled: NO]; - [fSuspendButton setEnabled: YES]; - [fSuspendButton setTitle: @"Suspend"]; + [fPauseButton setEnabled: YES]; + [fPauseButton setTitle: @"Pause"]; [fRipButton setTitle: @"Cancel"]; } @@ -588,7 +600,7 @@ [fRipProgress setDoubleValue: 100 * status.position]; - [fSuspendButton setTitle: @"Resume"]; + [fPauseButton setTitle: @"Resume"]; break; } @@ -681,8 +693,8 @@ [fFileFormatPopUp setEnabled: YES]; [fFileField setEnabled: YES]; [fFileBrowseButton setEnabled: YES]; - [fSuspendButton setEnabled: NO]; - [fSuspendButton setTitle: @"Suspend"]; + [fPauseButton setEnabled: NO]; + [fPauseButton setTitle: @"Pause"]; [fRipButton setTitle: @"Rip"]; [self VideoMatrixChanged: self]; diff --git a/macosx/English.lproj/InfoPlist.strings b/macosx/English.lproj/InfoPlist.strings Binary files differindex cc4cb2ee5..ce3b28a62 100644 --- a/macosx/English.lproj/InfoPlist.strings +++ b/macosx/English.lproj/InfoPlist.strings diff --git a/macosx/English.lproj/MainMenu.nib/classes.nib b/macosx/English.lproj/MainMenu.nib/classes.nib index 8c468d47f..161d51070 100644 --- a/macosx/English.lproj/MainMenu.nib/classes.nib +++ b/macosx/English.lproj/MainMenu.nib/classes.nib @@ -9,13 +9,13 @@ Cancel = id; ClosePanel = id; NextPicture = id; + Pause = id; PreviousPicture = id; Resume = id; Rip = id; Scan = id; ScanMatrixChanged = id; ShowPicturePanel = id; - Suspend = id; TitlePopUpChanged = id; UpdatePicture = id; VideoMatrixChanged = id; @@ -42,6 +42,7 @@ fLeftStepper = NSStepper; fNextButton = NSButton; fOpenGLCheck = NSButton; + fPauseButton = NSButton; fPictureGLView = HBPictureGLView; fPicturePanel = NSPanel; fPreviousButton = NSButton; @@ -59,7 +60,6 @@ fScanStatusField = NSTextField; fScanView = NSView; fSecondaryLanguagePopUp = NSPopUpButton; - fSuspendButton = NSButton; fTargetSizeField = HBTargetSizeField; fTempView = NSView; fTitlePopUp = NSPopUpButton; diff --git a/macosx/English.lproj/MainMenu.nib/info.nib b/macosx/English.lproj/MainMenu.nib/info.nib index fddfb6ac5..a4c078c28 100644 --- a/macosx/English.lproj/MainMenu.nib/info.nib +++ b/macosx/English.lproj/MainMenu.nib/info.nib @@ -19,15 +19,15 @@ <string>349.0</string> <key>IBOpenObjects</key> <array> - <integer>583</integer> + <integer>556</integer> + <integer>589</integer> <integer>365</integer> <integer>434</integer> <integer>29</integer> - <integer>556</integer> + <integer>583</integer> <integer>21</integer> - <integer>589</integer> </array> <key>IBSystem Version</key> - <string>7B85</string> + <string>7C107</string> </dict> </plist> diff --git a/macosx/English.lproj/MainMenu.nib/objects.nib b/macosx/English.lproj/MainMenu.nib/objects.nib Binary files differindex c02905a59..956897bce 100644 --- a/macosx/English.lproj/MainMenu.nib/objects.nib +++ b/macosx/English.lproj/MainMenu.nib/objects.nib diff --git a/macosx/HandBrake.pbproj/project.pbxproj b/macosx/HandBrake.pbproj/project.pbxproj index b3b522b6f..c47e0176a 100644 --- a/macosx/HandBrake.pbproj/project.pbxproj +++ b/macosx/HandBrake.pbproj/project.pbxproj @@ -295,7 +295,7 @@ <key>CFBundleExecutable</key> <string>HandBrake</string> <key>CFBundleGetInfoString</key> - <string>HandBrake 0.5.1 - By Eric Petit <[email protected]></string> + <string>HandBrake 0.5.2 - By Eric Petit <[email protected]></string> <key>CFBundleIconFile</key> <string>HandBrake.icns</string> <key>CFBundleIdentifier</key> @@ -307,11 +307,11 @@ <key>CFBundlePackageType</key> <string>APPL</string> <key>CFBundleShortVersionString</key> - <string>0.5.1</string> + <string>0.5.2</string> <key>CFBundleSignature</key> <string>HB##</string> <key>CFBundleVersion</key> - <string>0.5.1</string> + <string>0.5.2</string> <key>NSMainNibFile</key> <string>MainMenu</string> <key>NSPrincipalClass</key> diff --git a/test/test.c b/test/test.c index ec576cbb3..d59e7ee3e 100644 --- a/test/test.c +++ b/test/test.c @@ -1,4 +1,4 @@ -/* $Id: test.c,v 1.5 2003/11/06 13:28:07 titer Exp $ +/* $Id: test.c,v 1.7 2003/11/13 01:18:52 titer Exp $ This file is part of the HandBrake source code. Homepage: <http://handbrake.m0k.org/>. @@ -45,8 +45,11 @@ int main( int argc, char ** argv ) /* Exit ASAP on Ctrl-C */ signal( SIGINT, SigHandler ); + fprintf( stderr, "Welcome to HandBrake " VERSION "\n" ); + /* Parse command line */ - while( ( c = getopt( argc, argv, "qd:o:t:a:b:piw:j:k:l:m:c:e:f:x" ) ) != -1 ) + while( ( c = getopt( argc, argv, + "qd:o:t:a:b:piw:j:k:l:m:c:e:f:x" ) ) != -1 ) { switch( c ) { @@ -127,27 +130,27 @@ int main( int argc, char ** argv ) if( !device || !file ) { fprintf( stderr, - "Syntax: HBTest [options] -d <device> -o <file>\n" - "Possible options are :\n" - " -q quiet output\n" - " -t <value> select a title (default is 1)\n" - " -a <value> primary audio channel (default is 1)\n" - " -b <value> secondary audio channel (default is none)\n" - " -p 2-pass encoding\n" - " -i deinterlace picture\n" - " -w output width\n" - " -j <value> top cropping\n" - " -k <value> bottom cropping\n" - " -l <value> left cropping\n" - " -m <value> right cropping\n" - " -c <value> CPU count (default: autodetected)\n" - " -e <value> Video bitrate (default is 1024)\n" - " -f <value> Audio bitrate (default is 128)\n" - " -x Use XviD instead of Ffmpeg\n" ); + "Syntax: HBTest [options] -d <device> -o <file>\n" + "Possible options are :\n" + " -q quiet output\n" + " -t <value> select a title (default is 1)\n" + " -a <value> primary audio channel (default is 1)\n" + " -b <value> secondary audio channel (default is none)\n" + " -p 2-pass encoding\n" + " -i deinterlace picture\n" + " -w output width\n" + " -j <value> top cropping\n" + " -k <value> bottom cropping\n" + " -l <value> left cropping\n" + " -m <value> right cropping\n" + " -c <value> CPU count (default: autodetected)\n" + " -e <value> Video bitrate (default is 1024)\n" + " -f <value> Audio bitrate (default is 128)\n" + " -x Use XviD instead of Ffmpeg\n" ); return 1; } - /* Create the manager thread */ + /* Create the lihb thread & init things */ h = HBInit( debug, cpuCount ); while( !die ) |