diff options
author | dynaflash <[email protected]> | 2007-08-13 17:02:37 +0000 |
---|---|---|
committer | dynaflash <[email protected]> | 2007-08-13 17:02:37 +0000 |
commit | 9d03e655fbc53a95e56ebd28d367175a0202a8c6 (patch) | |
tree | ecb1ce066595eeb8ce61172b0fa4c7c27cf09e16 /macosx/PictureController.mm | |
parent | e532199ceccdc03a2a356b44dd5a2ab1cb859408 (diff) |
MacGui: Detelecine initial implementation
- Added -VideoFramerateChanged method to controller.mm to detect NTSC Film content to error check detelecine.
- Auto detected or manually choosing 23.967 (NTSC Film) disables detelecine checkbox in the picture preview window.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@800 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'macosx/PictureController.mm')
-rw-r--r-- | macosx/PictureController.mm | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/macosx/PictureController.mm b/macosx/PictureController.mm index afdb6f6cc..0cf80da05 100644 --- a/macosx/PictureController.mm +++ b/macosx/PictureController.mm @@ -117,6 +117,31 @@ static int GetAlignedSize( int size ) { [fCropMatrix selectCellAtRow: 0 column:0]; } + + /* set the detelecine state according to the state in main window */ + /* if framerate is 23.976 we do not allow detelecine, otherwise, enable and set according to fDetelecineMainWindow outlet */ + if (fTitle->rate_base == 1126125 || [[fVidFrameRatePopUpMainWindow titleOfSelectedItem] isEqualToString: @"23.976 (NTSC Film)"]) + { + [fDetelecineMainWindow setStringValue: @"No"]; + [fDetelecineCheck setEnabled: NO]; + [fDetelecineCheck setState: NSOffState]; + + } + else + { + [fDetelecineCheck setEnabled: YES]; + if ([[fDetelecineMainWindow stringValue] isEqualToString: @"Yes"]) + { + [fDetelecineCheck setState: NSOnState]; + } + else + { + [fDetelecineCheck setState: NSOffState]; + } + + } + + MaxOutputWidth = job->width; MaxOutputHeight = job->height; fPicture = 0; @@ -245,6 +270,16 @@ static int GetAlignedSize( int size ) job->deinterlace = 1; } + /* set the detelecine state according to the integer set in the main window field */ + if ([fDetelecineCheck state] == 1) + { + [fDetelecineMainWindow setStringValue: @"Yes"]; + } + else + { + [fDetelecineMainWindow setStringValue: @"No"]; + } + job->pixel_ratio = ( [fPARCheck state] == NSOnState ); |