[xiph-commits] r11860 - trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder

illiminable at svn.xiph.org illiminable at svn.xiph.org
Sat Sep 23 22:52:47 PDT 2006


Author: illiminable
Date: 2006-09-23 22:52:38 -0700 (Sat, 23 Sep 2006)
New Revision: 11860

Modified:
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/ITheoraEncodeSettings.h
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.cpp
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.h
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.cpp
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.h
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.aps
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.rc
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.vcproj
   trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/resource.h
Log:
* Theora encode properties dialog exposes most of theora_info as well as through the ITheoraEncodeSettings API
* Can set quality or (target bitrate and kf data rate)
* Can set fixed KFI or (min and max interval and threshold)
* Can set shaprness, noise sensitivity, quick-mode and drop-frame-mode

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/ITheoraEncodeSettings.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/ITheoraEncodeSettings.h	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/ITheoraEncodeSettings.h	2006-09-24 05:52:38 UTC (rev 11860)
@@ -30,6 +30,8 @@
 
 DECLARE_INTERFACE_(ITheoraEncodeSettings, IUnknown) {
 
+    virtual STDMETHODIMP_(bool) canModifySettings() PURE;
+
 	virtual STDMETHODIMP_(unsigned long) targetBitrate() PURE;
     virtual STDMETHODIMP_(unsigned long) keyFrameDataBitrate() PURE;
 	virtual STDMETHODIMP_(unsigned char) quality() PURE;
@@ -38,6 +40,8 @@
 	virtual STDMETHODIMP_(unsigned long) keyframeFreq() PURE;
     virtual STDMETHODIMP_(bool) isFixedKeyframeInterval() PURE;
     virtual STDMETHODIMP_(bool) allowDroppedFrames() PURE;
+    virtual STDMETHODIMP_(bool) isUsingQualityMode() PURE;
+    virtual STDMETHODIMP_(bool) isUsingQuickMode() PURE;
 	virtual STDMETHODIMP_(unsigned long) keyframeFreqMin() PURE;
     virtual STDMETHODIMP_(long) keyframeAutoThreshold() PURE;
 
@@ -49,6 +53,8 @@
 	virtual STDMETHODIMP_(bool) setKeyframeFreq(unsigned long inKeyframeFreq) PURE;
     virtual STDMETHODIMP_(bool) setIsFixedKeyframeInterval(bool inIsFixedKeyframeInterval) PURE;
     virtual STDMETHODIMP_(bool) setAllowDroppedFrames(bool inAllowDroppedFrames) PURE;
+    virtual STDMETHODIMP_(bool) setIsUsingQualityMode(bool inIsUsingQualityMode) PURE;
+    virtual STDMETHODIMP_(bool) setIsUsingQuickMode(bool inIsUsingQuickMode) PURE;
     virtual STDMETHODIMP_(bool) setKeyframeFreqMin(unsigned long inKeyframeFreqMin) PURE;
     virtual STDMETHODIMP_(bool) setKeyframeAutoThreshold(long inKeyframeAutoThreshold) PURE;
 

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.cpp	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.cpp	2006-09-24 05:52:38 UTC (rev 11860)
@@ -76,9 +76,52 @@
 		return E_POINTER;
 	}
 
-	mTheoraEncodeSettings->setQuality(SendDlgItemMessage(m_hwnd,IDC_SLIDER_QUALITY, TBM_GETPOS, NOT_USED, NOT_USED));
-	mTheoraEncodeSettings->setKeyframeFreq(pow2(SendDlgItemMessage(m_hwnd,IDC_SLIDER_LOG_KEYFRAME, TBM_GETPOS, NOT_USED, NOT_USED)));
-	mTheoraEncodeSettings->setTargetBitrate(SendDlgItemMessage(m_hwnd,IDC_SLIDER_BITRATE, TBM_GETPOS, NOT_USED, NOT_USED) * 1000);
+    if (SendDlgItemMessage(m_hwnd,IDC_CHECK_QUALITY_MODE, BM_GETCHECK, NOT_USED, NOT_USED)) {
+        mTheoraEncodeSettings->setIsUsingQualityMode(true);
+        mTheoraEncodeSettings->setQuality(SendDlgItemMessage(m_hwnd,IDC_SLIDER_QUALITY, TBM_GETPOS, NOT_USED, NOT_USED));
+        mTheoraEncodeSettings->setTargetBitrate(0);
+        mTheoraEncodeSettings->setKeyframeDataBitrate(0);
+
+    } else {
+        mTheoraEncodeSettings->setIsUsingQualityMode(true);
+        mTheoraEncodeSettings->setQuality(0);
+        mTheoraEncodeSettings->setTargetBitrate(SendDlgItemMessage(m_hwnd,IDC_SLIDER_BITRATE, TBM_GETPOS, NOT_USED, NOT_USED) * 1000);
+        mTheoraEncodeSettings->setKeyframeDataBitrate(SendDlgItemMessage(m_hwnd,IDC_SLIDER_BITRATE_KEYFRAME, TBM_GETPOS, NOT_USED, NOT_USED) * 1000);
+
+    }
+
+    if (SendDlgItemMessage(m_hwnd,IDC_FIXED_KFI_CHECK, BM_GETCHECK, NOT_USED, NOT_USED)) {
+        //Fixed keyframe interval, no auto - keyframing
+        mTheoraEncodeSettings->setIsFixedKeyframeInterval(true);
+        mTheoraEncodeSettings->setKeyframeFreq(pow2(SendDlgItemMessage(m_hwnd,IDC_SLIDER_LOG_KEYFRAME, TBM_GETPOS, NOT_USED, NOT_USED)));
+        mTheoraEncodeSettings->setKeyframeFreqMin(pow2(SendDlgItemMessage(m_hwnd,IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_GETPOS, NOT_USED, NOT_USED)));
+        mTheoraEncodeSettings->setKeyframeAutoThreshold(SendDlgItemMessage(m_hwnd,IDC_SLIDER_KF_THRESHOLD, TBM_GETPOS, NOT_USED, NOT_USED));
+
+    } else {
+        mTheoraEncodeSettings->setIsFixedKeyframeInterval(false);
+        mTheoraEncodeSettings->setKeyframeFreq(pow2(SendDlgItemMessage(m_hwnd,IDC_SLIDER_LOG_KEYFRAME, TBM_GETPOS, NOT_USED, NOT_USED)));
+        mTheoraEncodeSettings->setKeyframeFreqMin(pow2(SendDlgItemMessage(m_hwnd,IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_GETPOS, NOT_USED, NOT_USED)));
+        mTheoraEncodeSettings->setKeyframeAutoThreshold(SendDlgItemMessage(m_hwnd,IDC_SLIDER_KF_THRESHOLD, TBM_GETPOS, NOT_USED, NOT_USED));
+
+
+    }
+
+    if (SendDlgItemMessage(m_hwnd,IDC_CHECK_QUICK_MODE, BM_GETCHECK, NOT_USED, NOT_USED)) {
+        mTheoraEncodeSettings->setIsUsingQuickMode(true);
+    } else {
+        mTheoraEncodeSettings->setIsUsingQuickMode(false);
+    }
+
+    if (SendDlgItemMessage(m_hwnd,IDC_CHECK_ALLOW_DROP_FRAMES, BM_GETCHECK, NOT_USED, NOT_USED)) {
+        mTheoraEncodeSettings->setAllowDroppedFrames(true);
+    } else {
+        mTheoraEncodeSettings->setAllowDroppedFrames(false);
+    }
+
+    mTheoraEncodeSettings->setNoiseSensitivity(SendDlgItemMessage(m_hwnd,IDC_LIST_NOISE_SENS, LB_GETCURSEL, NOT_USED, NOT_USED));
+    mTheoraEncodeSettings->setSharpness(SendDlgItemMessage(m_hwnd,IDC_LIST_SHARPNESS, LB_GETCURSEL, NOT_USED, NOT_USED));
+
+
 	SetClean();
     return S_OK;
 }
@@ -86,104 +129,122 @@
 HRESULT PropsTheoraEncoder::OnActivate(void)
 {
     
-    wchar_t* locStrBuff = new wchar_t[16];
+    if (mTheoraEncodeSettings->canModifySettings()) {
 
-	//SetupBitrateCombo();
-	//SetupKeyframeFreqCombo();
-	
-	//Set up the sliders
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_QUALITY, TBM_SETRANGE, TRUE, MAKELONG(0, 63));
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_QUALITY, TBM_SETTICFREQ, 1, 0);
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_QUALITY, TBM_SETPOS, 1, mTheoraEncodeSettings->quality());
+        wchar_t* locStrBuff = new wchar_t[16];
 
-	SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME, TBM_SETRANGE, TRUE, MAKELONG(0, 13));
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME, TBM_SETTICFREQ, 1, 0);
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME, TBM_SETPOS, 1, log2(mTheoraEncodeSettings->keyframeFreq()));
+	    //SetupBitrateCombo();
+	    //SetupKeyframeFreqCombo();
+    	
+	    //Set up the sliders
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_QUALITY, TBM_SETRANGE, TRUE, MAKELONG(1, 63));
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_QUALITY, TBM_SETTICFREQ, 1, 0);
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_QUALITY, TBM_SETPOS, 1, mTheoraEncodeSettings->quality());
 
-	SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_SETRANGE, TRUE, MAKELONG(0, 13));
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_SETTICFREQ, 1, 0);
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_SETPOS, 1, log2(mTheoraEncodeSettings->keyframeFreqMin()));
+	    SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME, TBM_SETRANGE, TRUE, MAKELONG(0, 13));
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME, TBM_SETTICFREQ, 1, 0);
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME, TBM_SETPOS, 1, log2(mTheoraEncodeSettings->keyframeFreq()));
 
-	SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE, TBM_SETRANGE, TRUE, MAKELONG(64, 3968));
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE, TBM_SETTICFREQ, 32, 0);
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE, TBM_SETPOS, 1, mTheoraEncodeSettings->targetBitrate() / 1000);
+	    SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_SETRANGE, TRUE, MAKELONG(0, 13));
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_SETTICFREQ, 1, 0);
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_LOG_KEYFRAME_MIN, TBM_SETPOS, 1, log2(mTheoraEncodeSettings->keyframeFreqMin()));
 
-	SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE_KEYFRAME, TBM_SETRANGE, TRUE, MAKELONG(64, 7936));
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE_KEYFRAME, TBM_SETTICFREQ, 32, 0);
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE_KEYFRAME, TBM_SETPOS, 1, mTheoraEncodeSettings->keyFrameDataBitrate() / 1000);
+	    SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE, TBM_SETRANGE, TRUE, MAKELONG(64, 3968));
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE, TBM_SETTICFREQ, 32, 0);
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE, TBM_SETPOS, 1, mTheoraEncodeSettings->targetBitrate() / 1000);
 
-	SendDlgItemMessage(m_Dlg, IDC_SLIDER_KF_THRESHOLD, TBM_SETRANGE, TRUE, MAKELONG(0, 100));
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_KF_THRESHOLD, TBM_SETTICFREQ, 1, 0);
-    SendDlgItemMessage(m_Dlg, IDC_SLIDER_KF_THRESHOLD, TBM_SETPOS, 1, log2(mTheoraEncodeSettings->keyframeAutoThreshold()));
+	    SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE_KEYFRAME, TBM_SETRANGE, TRUE, MAKELONG(64, 7936));
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE_KEYFRAME, TBM_SETTICFREQ, 32, 0);
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_BITRATE_KEYFRAME, TBM_SETPOS, 1, mTheoraEncodeSettings->keyFrameDataBitrate() / 1000);
 
+	    SendDlgItemMessage(m_Dlg, IDC_SLIDER_KF_THRESHOLD, TBM_SETRANGE, TRUE, MAKELONG(0, 100));
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_KF_THRESHOLD, TBM_SETTICFREQ, 1, 0);
+        SendDlgItemMessage(m_Dlg, IDC_SLIDER_KF_THRESHOLD, TBM_SETPOS, 1, mTheoraEncodeSettings->keyframeAutoThreshold());
 
 
 
 
 
-	_itow(mTheoraEncodeSettings->quality(), locStrBuff, 10);
-	SendDlgItemMessage(m_Dlg, IDC_LABEL_QUALITY, WM_SETTEXT, NOT_USED, (LPARAM)locStrBuff);
+        //Fill out the labels
+	    _itow(mTheoraEncodeSettings->quality(), locStrBuff, 10);
+	    SendDlgItemMessage(m_Dlg, IDC_LABEL_QUALITY, WM_SETTEXT, NOT_USED, (LPARAM)locStrBuff);
 
-	_itow(mTheoraEncodeSettings->keyframeFreq(), locStrBuff, 10);
-	SendDlgItemMessage(m_Dlg, IDC_LABEL_LOG_KEYFRAME, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
+	    _itow(mTheoraEncodeSettings->keyframeFreq(), locStrBuff, 10);
+	    SendDlgItemMessage(m_Dlg, IDC_LABEL_LOG_KEYFRAME, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
 
-	_itow(mTheoraEncodeSettings->targetBitrate(), locStrBuff, 10);
-	SendDlgItemMessage(m_Dlg, IDC_LABEL_BITRATE, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
+	    _itow(mTheoraEncodeSettings->targetBitrate(), locStrBuff, 10);
+	    SendDlgItemMessage(m_Dlg, IDC_LABEL_BITRATE, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
 
-	_itow(mTheoraEncodeSettings->keyFrameDataBitrate(), locStrBuff, 10);
-	SendDlgItemMessage(m_Dlg, IDC_LABEL_BITRATE_KEYFRAME, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
+	    _itow(mTheoraEncodeSettings->keyFrameDataBitrate(), locStrBuff, 10);
+	    SendDlgItemMessage(m_Dlg, IDC_LABEL_BITRATE_KEYFRAME, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
 
 
-	_itow(mTheoraEncodeSettings->keyframeFreqMin(), locStrBuff, 10);
-	SendDlgItemMessage(m_Dlg, IDC_LABEL_LOG_KEYFRAME_MIN, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
+	    _itow(mTheoraEncodeSettings->keyframeFreqMin(), locStrBuff, 10);
+	    SendDlgItemMessage(m_Dlg, IDC_LABEL_LOG_KEYFRAME_MIN, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
 
 
-	_itow(mTheoraEncodeSettings->keyframeAutoThreshold(), locStrBuff, 10);
-	SendDlgItemMessage(m_Dlg, IDC_LABEL_KF_THRESHOLD, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
+	    _itow(mTheoraEncodeSettings->keyframeAutoThreshold(), locStrBuff, 10);
+	    SendDlgItemMessage(m_Dlg, IDC_LABEL_KF_THRESHOLD, WM_SETTEXT,NOT_USED,  (LPARAM)locStrBuff);
 
 
 
+        //Setup the list boxes
+        wstring locListString = L"0 - Sharpest (default)";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    wstring locListString = L"0 - Sharpest (default)";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"1 - Sharper";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"1 - Sharper";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"2 - Sharp (fastest)";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"2 - Sharp (fastest)";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
+        SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_SETCURSEL, (WPARAM)mTheoraEncodeSettings->sharpness(), NOT_USED);
 
-    SendDlgItemMessage(m_Dlg, IDC_LIST_SHARPNESS, LB_SETSEL, (WPARAM)mTheoraEncodeSettings->sharpness(), NOT_USED);
+        locListString = L"0 - Most sensitive";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"0 - Most sensitive";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"1 - Theora default";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"1 - Theora default";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"2 - VP3 default";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"2 - VP3 default";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"3 - ";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"3 - ";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"4 - ";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"4 - ";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"5 - ";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"5 - ";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"6 - Least sensitive";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"6 - Least sensitive";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        locListString = L"? - Fallback (2.5)";
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
 
-    locListString = L"? - Fallback (2.5)";
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_ADDSTRING, NOT_USED,  (LPARAM)locListString.c_str());
+        SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_SETCURSEL, (WPARAM)mTheoraEncodeSettings->noiseSensitivity(), NOT_USED);
 
-    SendDlgItemMessage(m_Dlg, IDC_LIST_NOISE_SENS, LB_SETCURSEL, (WPARAM)mTheoraEncodeSettings->noiseSensitivity(), NOT_USED);
+        //Set the checkboxes
+        SendDlgItemMessage(m_Dlg, IDC_CHECK_QUALITY_MODE, BM_SETCHECK, (WPARAM)(mTheoraEncodeSettings->isUsingQualityMode() ? BST_CHECKED : BST_UNCHECKED), NOT_USED);
+        SendDlgItemMessage(m_Dlg, IDC_CHECK_ALLOW_DROP_FRAMES, BM_SETCHECK, (WPARAM)(mTheoraEncodeSettings->allowDroppedFrames() ? BST_CHECKED : BST_UNCHECKED), NOT_USED);
+        SendDlgItemMessage(m_Dlg, IDC_CHECK_QUICK_MODE, BM_SETCHECK, (WPARAM)(mTheoraEncodeSettings->isUsingQuickMode() ? BST_CHECKED : BST_UNCHECKED), NOT_USED);
+        SendDlgItemMessage(m_Dlg, IDC_FIXED_KFI_CHECK, BM_SETCHECK, (WPARAM)(mTheoraEncodeSettings->isFixedKeyframeInterval() ? BST_CHECKED : BST_UNCHECKED), NOT_USED);
 
-	delete[] locStrBuff;
-    return S_OK;
+        //TODO::: Disable
+        setDialogQualityModeView(mTheoraEncodeSettings->isUsingQualityMode());
+        setFixedKFIModeView(mTheoraEncodeSettings->isFixedKeyframeInterval());
+       
+
+	    delete[] locStrBuff;
+        return S_OK;
+    } else {
+
+        //TODO::: DISABLE EVERYTHING!
+        return S_OK;
+    }
 }
 
 HRESULT PropsTheoraEncoder::OnConnect(IUnknown *pUnk)
@@ -225,6 +286,81 @@
         m_pPageSite->OnStatusChange(PROPPAGESTATUS_CLEAN);
     }
 }
+
+void PropsTheoraEncoder::setDialogQualityModeView(bool inUsingQualityMode)
+{
+    if (inUsingQualityMode) {
+        //Quality Mode
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_BITRATE), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_BITRATE_KEYFRAME), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_QUALITY), TRUE);
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_BITRATE), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_BITRATE_KEYFRAME), FALSE);
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_BITRATE), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_BITRATE_KEYFRAME), FALSE);
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_Q_VALUE), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_QUALITY), TRUE);
+
+    } else {
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_BITRATE), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_BITRATE_KEYFRAME), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_QUALITY), FALSE);
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_BITRATE), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_BITRATE_KEYFRAME), TRUE);
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_BITRATE), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_BITRATE_KEYFRAME), TRUE);
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_Q_VALUE), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_QUALITY), FALSE);
+
+    }
+}
+
+
+void PropsTheoraEncoder::setFixedKFIModeView(bool inIsFixedKFIMode)
+{
+
+    if (inIsFixedKFIMode) {
+        //Fixed keyframe interval... shouldn't really ever use this.
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_LOG_KEYFRAME), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_KF_MAX), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_LOG_KEYFRAME), TRUE);
+
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_LOG_KEYFRAME_MIN), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_LOG_KEYFRAME_MIN), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_KFI_MIN), FALSE);
+
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_KF_THRESHOLD), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_KF_THRESHOLD), FALSE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_KFI_THRESHOLD), FALSE);
+
+
+
+    } else {
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_LOG_KEYFRAME), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_KF_MAX), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_LOG_KEYFRAME), TRUE);
+
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_LOG_KEYFRAME_MIN), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_LOG_KEYFRAME_MIN), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_KFI_MIN), TRUE);
+
+
+        EnableWindow(GetDlgItem(m_hwnd, IDC_SLIDER_KF_THRESHOLD), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_LABEL_KF_THRESHOLD), TRUE);
+        EnableWindow(GetDlgItem(m_hwnd, IDC_STATIC_KFI_THRESHOLD), TRUE);
+
+    }
+}
 INT_PTR PropsTheoraEncoder::OnReceiveMessage(HWND hwnd,  UINT uMsg, WPARAM wParam, LPARAM lParam)
 {
 	wchar_t locBuff[16];
@@ -232,13 +368,29 @@
     switch (uMsg)    {
 		case WM_COMMAND:
             //TODO::: Need to check the high wparam ??
-            if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_FIXED_KFI_CHECK)) {
-                if (SendDlgItemMessage(m_hwnd,IDC_FIXED_KFI_CHECK, BM_GETCHECK, NOT_USED, NOT_USED)) {
-                    //Disable the extra stuff
+            if (HIWORD(wParam) == BN_CLICKED) {
+                if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_FIXED_KFI_CHECK)) {
+                    SetDirty();
+                    setFixedKFIModeView(SendDlgItemMessage(m_hwnd,IDC_FIXED_KFI_CHECK, BM_GETCHECK, NOT_USED, NOT_USED));
+                } else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_CHECK_ALLOW_DROP_FRAMES)) {
+                    SetDirty();
+                    if (SendDlgItemMessage(m_hwnd,IDC_CHECK_ALLOW_DROP_FRAMES, BM_GETCHECK, NOT_USED, NOT_USED)) {
+                        //Do we even need to catch this one?
+                    }
+                } else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_CHECK_QUICK_MODE)) {
+                    SetDirty();
+                    if (SendDlgItemMessage(m_hwnd,IDC_CHECK_QUICK_MODE, BM_GETCHECK, NOT_USED, NOT_USED)) {
+                        //Do we even need to catch this one?
+                    }
+                } else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_CHECK_QUALITY_MODE)) {
+                    SetDirty();
+                    setDialogQualityModeView(SendDlgItemMessage(m_hwnd,IDC_CHECK_QUALITY_MODE, BM_GETCHECK, NOT_USED, NOT_USED));
                 }
-            } else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_CHECK_ALLOW_DROP_FRAMES)) {
-                if (SendDlgItemMessage(m_hwnd,IDC_CHECK_ALLOW_DROP_FRAMES, BM_GETCHECK, NOT_USED, NOT_USED)) {
-                    //Do we even need to catch this one?
+            } else if (HIWORD(wParam) == LBN_SELCHANGE) {
+                if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_LIST_SHARPNESS)) {
+                    SetDirty();
+                } else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_LIST_SHARPNESS)) {
+                    SetDirty();
                 }
             }
             break;
@@ -249,7 +401,7 @@
 				_itow(SendDlgItemMessage(m_hwnd,IDC_SLIDER_QUALITY, TBM_GETPOS, NOT_USED, NOT_USED), locBuff, 10);
 				SendDlgItemMessage(m_hwnd, IDC_LABEL_QUALITY, WM_SETTEXT, NOT_USED, (LPARAM)&locBuff);
 
-                //TODO::: Kill the bitrate one
+
                 return (INT_PTR)TRUE;
 
 			} else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_SLIDER_BITRATE)) {
@@ -257,7 +409,7 @@
 				_itow(SendDlgItemMessage(m_hwnd,IDC_SLIDER_BITRATE, TBM_GETPOS, NOT_USED, NOT_USED) * 1000, locBuff, 10);
 				SendDlgItemMessage(m_hwnd, IDC_LABEL_BITRATE, WM_SETTEXT, NOT_USED, (LPARAM)&locBuff);
 
-                //Kill the quailty one
+
                 return (INT_PTR)TRUE;
 
 			} else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_SLIDER_BITRATE_KEYFRAME)) {
@@ -265,7 +417,7 @@
 				_itow(SendDlgItemMessage(m_hwnd,IDC_SLIDER_BITRATE_KEYFRAME, TBM_GETPOS, NOT_USED, NOT_USED) * 1000, locBuff, 10);
 				SendDlgItemMessage(m_hwnd, IDC_SLIDER_BITRATE_KEYFRAME, WM_SETTEXT, NOT_USED, (LPARAM)&locBuff);
 
-                //Kill the quailty one
+
                 return (INT_PTR)TRUE;
 
 			} else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_SLIDER_LOG_KEYFRAME)) {
@@ -280,7 +432,7 @@
                 return (INT_PTR)TRUE;
             } else if (HWND(lParam) == GetDlgItem(m_hwnd, IDC_SLIDER_KF_THRESHOLD)) {
 				SetDirty();
-				_itow(pow2(SendDlgItemMessage(m_hwnd,IDC_SLIDER_KF_THRESHOLD, TBM_GETPOS, NOT_USED, NOT_USED)), locBuff, 10);
+				_itow(SendDlgItemMessage(m_hwnd,IDC_SLIDER_KF_THRESHOLD, TBM_GETPOS, NOT_USED, NOT_USED), locBuff, 10);
 				SendDlgItemMessage(m_hwnd, IDC_LABEL_KF_THRESHOLD, WM_SETTEXT, NOT_USED, (LPARAM)&locBuff);
                 return (INT_PTR)TRUE;
             }

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.h	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/PropsTheoraEncoder.h	2006-09-24 05:52:38 UTC (rev 11860)
@@ -32,6 +32,9 @@
 	//void SetupBitrateCombo();
 	//void SetupKeyframeFreqCombo();
 	//LRESULT addNumberToCombo(int inComboID, int inNum);
+
+    void setDialogQualityModeView(bool inUsingQualityMode);
+    void setFixedKFIModeView(bool inIsFixedKFIMode);
 	
 	void SetDirty();
 	void SetClean();

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.cpp	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.cpp	2006-09-24 05:52:38 UTC (rev 11860)
@@ -83,6 +83,7 @@
 
 TheoraEncodeFilter::TheoraEncodeFilter(void)
 	:	AbstractTransformFilter(NAME("Theora Encoder"), CLSID_TheoraEncodeFilter)
+    ,   mUsingQualityMode(true)
 {
 	bool locWasConstructed = ConstructPins();
 }
@@ -178,6 +179,12 @@
 }
 
 //Implementation of ITheoraEncodeSEttings
+
+STDMETHODIMP_(bool) TheoraEncodeFilter::canModifySettings()
+{
+    //TODO::: Need to check whether we are connected etc.
+    return true;
+}
 STDMETHODIMP_(unsigned long) TheoraEncodeFilter::targetBitrate() 
 {
 	return ((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->target_bitrate;
@@ -186,6 +193,16 @@
 {
 	return ((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->quality;
 }
+
+STDMETHODIMP_(bool) TheoraEncodeFilter::isUsingQualityMode()
+{
+    return mUsingQualityMode;
+}
+
+STDMETHODIMP_(bool) TheoraEncodeFilter::isUsingQuickMode()
+{
+    return ((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->quick_p;
+}
 STDMETHODIMP_(unsigned long) TheoraEncodeFilter::keyframeFreq() 
 {
 	return ((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->keyframe_frequency;
@@ -238,6 +255,17 @@
 	((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->quality = inQuality;
 	return true;
 }
+
+STDMETHODIMP_(bool) TheoraEncodeFilter::setIsUsingQualityMode(bool inIsUsingQualityMode)
+{
+    mUsingQualityMode = inIsUsingQualityMode;
+    return true;
+}
+STDMETHODIMP_(bool) TheoraEncodeFilter::setIsUsingQuickMode(bool inIsUsingQuickMode)
+{
+    ((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->quick_p = (inIsUsingQuickMode ? 1 : 0);
+    return true;
+}
 STDMETHODIMP_(bool) TheoraEncodeFilter::setKeyframeFreq(unsigned long inKeyframeFreq) {
 	//Needs error checking
 	((TheoraEncodeInputPin*)mInputPin)->theoraInfo()->keyframe_frequency = inKeyframeFreq;

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.h	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/TheoraEncodeFilter.h	2006-09-24 05:52:38 UTC (rev 11860)
@@ -62,12 +62,19 @@
 	STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
 
 	//ITheoraEncodeSettings Implementation
+    virtual STDMETHODIMP_(bool) canModifySettings();
+
 	virtual STDMETHODIMP_(unsigned long) targetBitrate();
 	virtual STDMETHODIMP_(unsigned char) quality();
+    virtual STDMETHODIMP_(bool) isUsingQualityMode();
+    virtual STDMETHODIMP_(bool) isUsingQuickMode();
 	virtual STDMETHODIMP_(unsigned long) keyframeFreq();
 
 	virtual STDMETHODIMP_(bool) setTargetBitrate(unsigned long inBitrate);
 	virtual STDMETHODIMP_(bool) setQuality(unsigned char inQuality);
+    virtual STDMETHODIMP_(bool) setIsUsingQualityMode(bool inIsUsingQualityMode);
+    virtual STDMETHODIMP_(bool) setIsUsingQuickMode(bool inIsUsingQuickMode);
+    
 	virtual STDMETHODIMP_(bool) setKeyframeFreq(unsigned long inKeyframeFreq);
 
     virtual STDMETHODIMP_(unsigned long) keyFrameDataBitrate();
@@ -102,5 +109,7 @@
 
 	//Member data
 	sTheoraFormatBlock mTheoraFormatBlock;
+
+    bool mUsingQualityMode;
 	
 };

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.aps
===================================================================
(Binary files differ)

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.rc
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.rc	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.rc	2006-09-24 05:52:38 UTC (rev 11860)
@@ -58,9 +58,9 @@
     IDD_THEORA_ENCODE_SETTINGS, DIALOG
     BEGIN
         LEFTMARGIN, 2
-        RIGHTMARGIN, 210
+        RIGHTMARGIN, 206
         TOPMARGIN, 2
-        BOTTOMMARGIN, 265
+        BOTTOMMARGIN, 269
     END
 END
 #endif    // APSTUDIO_INVOKED
@@ -71,39 +71,40 @@
 // Dialog
 //
 
-IDD_THEORA_ENCODE_SETTINGS DIALOGEX 0, 0, 217, 270
+IDD_THEORA_ENCODE_SETTINGS DIALOGEX 0, 0, 209, 274
 STYLE DS_SETFONT | WS_CHILD | WS_BORDER
 FONT 8, "MS Sans Serif", 400, 0, 0x0
 BEGIN
     GROUPBOX        "Quality Settings",IDC_GROUP_QUALITY,2,2,204,90
-    CONTROL         "",IDC_SLIDER_QUALITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,9,26,193,11
-    GROUPBOX        "Keyframe Settings",IDC_GROUP_KEYFRAME,2,94,204,101
-    CONTROL         "",IDC_SLIDER_LOG_KEYFRAME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,9,111,193,11
-    CONTROL         "",IDC_SLIDER_BITRATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,9,52,192,11
+    CONTROL         "",IDC_SLIDER_QUALITY,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,13,26,184,11
+    GROUPBOX        "Keyframe Settings",IDC_GROUP_KEYFRAME,2,94,204,96
+    CONTROL         "",IDC_SLIDER_LOG_KEYFRAME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,13,112,184,11
+    CONTROL         "",IDC_SLIDER_BITRATE,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,14,52,183,11
     LTEXT           "",IDC_LABEL_BITRATE,145,41,52,9,WS_BORDER,WS_EX_RIGHT
     LTEXT           "",IDC_LABEL_LOG_KEYFRAME,147,102,50,9,WS_BORDER,WS_EX_RIGHT
     LTEXT           "",IDC_LABEL_QUALITY,146,15,52,9,WS_BORDER,WS_EX_RIGHT
-    CONTROL         "",IDC_SLIDER_LOG_KEYFRAME_MIN,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,9,152,193,11
+    CONTROL         "",IDC_SLIDER_LOG_KEYFRAME_MIN,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,13,152,185,11
     LTEXT           "",IDC_LABEL_LOG_KEYFRAME_MIN,147,142,52,9,WS_BORDER,WS_EX_RIGHT
     CONTROL         "Fixed Keyframe Interval",IDC_FIXED_KFI_CHECK,"Button",BS_AUTOCHECKBOX | BS_NOTIFY | WS_TABSTOP,11,128,100,11
-    CONTROL         "",IDC_SLIDER_KF_THRESHOLD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,9,178,193,11
+    CONTROL         "",IDC_SLIDER_KF_THRESHOLD,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,13,178,186,11
     LTEXT           "",IDC_LABEL_KF_THRESHOLD,147,167,52,9,WS_BORDER,WS_EX_RIGHT
-    LISTBOX         IDC_LIST_SHARPNESS,89,210,111,14,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
-    LISTBOX         IDC_LIST_NOISE_SENS,89,231,110,14,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
+    LISTBOX         IDC_LIST_SHARPNESS,13,214,85,36,WS_VSCROLL | WS_TABSTOP
+    LISTBOX         IDC_LIST_NOISE_SENS,113,214,85,38,WS_VSCROLL | WS_TABSTOP
     RTEXT           "Target Bitrate",IDC_STATIC_BITRATE,84,41,56,10
     RTEXT           "Q-Value",IDC_STATIC_Q_VALUE,102,15,41,10
     CONTROL         "Allow Dropped Frames",IDC_CHECK_ALLOW_DROP_FRAMES,
-                    "Button",BS_AUTOCHECKBOX | BS_NOTIFY | WS_TABSTOP,89,250,105,8
-    GROUPBOX        "Advanced Settings",IDC_GROUP_QUALITY2,2,199,204,66
+                    "Button",BS_AUTOCHECKBOX | BS_NOTIFY | WS_TABSTOP,113,249,93,9
+    GROUPBOX        "Advanced Settings",IDC_GROUP_QUALITY2,2,191,204,71
     RTEXT           "Max. Interval",IDC_STATIC_KF_MAX,96,102,48,10
-    RTEXT           "Min. Interval",IDC_STATIC_BITRATE3,103,142,41,10
-    RTEXT           "Threshold",IDC_STATIC_BITRATE4,89,167,56,10
-    LTEXT           "Sharpness",IDC_STATIC_BITRATE5,17,213,68,10
-    LTEXT           "Noise Sensitivity",IDC_STATIC_BITRATE6,16,233,66,10
-    CONTROL         "",IDC_SLIDER_BITRATE_KEYFRAME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,9,78,192,11
-    CONTROL         "Use Q-Mode",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | BS_NOTIFY | WS_TABSTOP,15,14,77,11
+    RTEXT           "Min. Interval",IDC_STATIC_KFI_MIN,103,142,41,10
+    RTEXT           "Threshold",IDC_STATIC_KFI_THRESHOLD,89,167,56,10
+    LTEXT           "Sharpness",IDC_STATIC_BITRATE5,10,204,68,10
+    LTEXT           "Noise Sensitivity",IDC_STATIC_BITRATE6,112,203,66,10
+    CONTROL         "",IDC_SLIDER_BITRATE_KEYFRAME,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | WS_TABSTOP,14,78,182,11
+    CONTROL         "Use Q-Mode",IDC_CHECK_QUALITY_MODE,"Button",BS_AUTOCHECKBOX | BS_NOTIFY | WS_TABSTOP,15,14,77,11
     LTEXT           "",IDC_LABEL_BITRATE_KEYFRAME,144,69,52,9,WS_BORDER,WS_EX_RIGHT
     RTEXT           "Keyframe Data Bitrate",IDC_STATIC_BITRATE_KEYFRAME,53,68,87,10
+    CONTROL         "Quick Mode",IDC_CHECK_QUICK_MODE,"Button",BS_AUTOCHECKBOX | BS_NOTIFY | WS_TABSTOP,14,249,83,9
 END
 
 #endif    // English (U.S.) resources

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.vcproj
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.vcproj	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/dsfTheoraEncoder.vcproj	2006-09-24 05:52:38 UTC (rev 11860)
@@ -187,12 +187,13 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
-			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
-			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
+			Name="Release|Win32"
+			OutputDirectory="Release"
+			IntermediateDirectory="Release"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
+			WholeProgramOptimization="1"
 			>
 			<Tool
 				Name="VCPreBuildEventTool"
@@ -208,18 +209,24 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
-				TargetEnvironment="1"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
-				ExecutionBucket="7"
-				Optimization="0"
+				Optimization="2"
+				InlineFunctionExpansion="2"
+				EnableIntrinsicFunctions="true"
+				FavorSizeOrSpeed="1"
+				OmitFramePointers="true"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
-				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
-				MinimalRebuild="true"
-				RuntimeLibrary="3"
+				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;NDEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
+				StringPooling="true"
+				RuntimeLibrary="2"
+				EnableFunctionLevelLinking="true"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
+				Detect64BitPortabilityProblems="true"
+				DebugInformationFormat="3"
+				CallingConvention="2"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -232,45 +239,48 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
-				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib"
+				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib unicows.lib"
 				OutputFile="$(OutDir)/dsfTheoraEncoder.dll"
-				LinkIncremental="2"
+				LinkIncremental="1"
 				AdditionalLibraryDirectories=""
 				ModuleDefinitionFile="theoraencoder.def"
 				GenerateDebugInformation="true"
-				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
+				OptimizeReferences="2"
+				EnableCOMDATFolding="2"
+				OptimizeForWindows98="1"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
-				TargetMachine="0"
+				TargetMachine="1"
 			/>
 			<Tool
 				Name="VCALinkTool"
 			/>
 			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
 				Name="VCXDCMakeTool"
 			/>
 			<Tool
 				Name="VCBscMakeTool"
 			/>
 			<Tool
-				Name="VCCodeSignTool"
+				Name="VCFxCopTool"
 			/>
 			<Tool
-				Name="VCPostBuildEventTool"
+				Name="VCAppVerifierTool"
 			/>
-			<DeploymentTool
-				ForceDirty="-1"
-				RemoteDirectory=""
-				RegisterOutput="0"
-				AdditionalFiles=""
+			<Tool
+				Name="VCWebDeploymentTool"
 			/>
-			<DebuggerTool
+			<Tool
+				Name="VCPostBuildEventTool"
 			/>
 		</Configuration>
 		<Configuration
-			Name="Release|Win32"
-			OutputDirectory="Release"
-			IntermediateDirectory="Release"
+			Name="Release|Pocket PC 2003 (ARMV4)"
+			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
+			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
@@ -290,14 +300,15 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
+				TargetEnvironment="1"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
+				ExecutionBucket="7"
 				Optimization="2"
 				InlineFunctionExpansion="2"
 				EnableIntrinsicFunctions="true"
 				FavorSizeOrSpeed="1"
-				OmitFramePointers="true"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
 				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;NDEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
 				StringPooling="true"
@@ -305,9 +316,7 @@
 				EnableFunctionLevelLinking="true"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
-				Detect64BitPortabilityProblems="true"
 				DebugInformationFormat="3"
-				CallingConvention="2"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -320,7 +329,7 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
-				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib unicows.lib"
+				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib"
 				OutputFile="$(OutDir)/dsfTheoraEncoder.dll"
 				LinkIncremental="1"
 				AdditionalLibraryDirectories=""
@@ -331,41 +340,39 @@
 				EnableCOMDATFolding="2"
 				OptimizeForWindows98="1"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
-				TargetMachine="1"
+				TargetMachine="0"
 			/>
 			<Tool
 				Name="VCALinkTool"
 			/>
 			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
 				Name="VCXDCMakeTool"
 			/>
 			<Tool
 				Name="VCBscMakeTool"
 			/>
 			<Tool
-				Name="VCFxCopTool"
+				Name="VCCodeSignTool"
 			/>
 			<Tool
-				Name="VCAppVerifierTool"
+				Name="VCPostBuildEventTool"
 			/>
-			<Tool
-				Name="VCWebDeploymentTool"
+			<DeploymentTool
+				ForceDirty="-1"
+				RemoteDirectory=""
+				RegisterOutput="0"
+				AdditionalFiles=""
 			/>
-			<Tool
-				Name="VCPostBuildEventTool"
+			<DebuggerTool
 			/>
 		</Configuration>
 		<Configuration
-			Name="Release|Pocket PC 2003 (ARMV4)"
-			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
-			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
+			Name="Debug_CE_ARM|Win32"
+			OutputDirectory="$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
-			WholeProgramOptimization="1"
 			>
 			<Tool
 				Name="VCPreBuildEventTool"
@@ -381,23 +388,20 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
-				TargetEnvironment="1"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
-				ExecutionBucket="7"
-				Optimization="2"
-				InlineFunctionExpansion="2"
-				EnableIntrinsicFunctions="true"
-				FavorSizeOrSpeed="1"
+				Optimization="0"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
-				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;NDEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
-				StringPooling="true"
-				RuntimeLibrary="2"
-				EnableFunctionLevelLinking="true"
+				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="3"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
-				DebugInformationFormat="3"
+				Detect64BitPortabilityProblems="true"
+				DebugInformationFormat="4"
+				CallingConvention="2"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -412,49 +416,47 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib"
 				OutputFile="$(OutDir)/dsfTheoraEncoder.dll"
-				LinkIncremental="1"
+				LinkIncremental="2"
 				AdditionalLibraryDirectories=""
 				ModuleDefinitionFile="theoraencoder.def"
 				GenerateDebugInformation="true"
+				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
-				OptimizeReferences="2"
-				EnableCOMDATFolding="2"
-				OptimizeForWindows98="1"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
-				TargetMachine="0"
+				TargetMachine="1"
 			/>
 			<Tool
 				Name="VCALinkTool"
 			/>
 			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
 				Name="VCXDCMakeTool"
 			/>
 			<Tool
 				Name="VCBscMakeTool"
 			/>
 			<Tool
-				Name="VCCodeSignTool"
+				Name="VCFxCopTool"
 			/>
 			<Tool
-				Name="VCPostBuildEventTool"
+				Name="VCAppVerifierTool"
 			/>
-			<DeploymentTool
-				ForceDirty="-1"
-				RemoteDirectory=""
-				RegisterOutput="0"
-				AdditionalFiles=""
+			<Tool
+				Name="VCWebDeploymentTool"
 			/>
-			<DebuggerTool
+			<Tool
+				Name="VCPostBuildEventTool"
 			/>
 		</Configuration>
 		<Configuration
-			Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
-			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
-			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
+			Name="Debug_CE_ARM|Pocket PC 2003 (ARMV4)"
+			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
+			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
-			WholeProgramOptimization="1"
 			>
 			<Tool
 				Name="VCPreBuildEventTool"
@@ -475,18 +477,13 @@
 			<Tool
 				Name="VCCLCompilerTool"
 				ExecutionBucket="7"
-				Optimization="2"
-				InlineFunctionExpansion="2"
-				EnableIntrinsicFunctions="true"
-				FavorSizeOrSpeed="1"
+				Optimization="0"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
-				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;NDEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
-				StringPooling="true"
-				RuntimeLibrary="2"
-				EnableFunctionLevelLinking="true"
+				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
+				MinimalRebuild="true"
+				RuntimeLibrary="3"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
-				DebugInformationFormat="3"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -501,14 +498,12 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib"
 				OutputFile="$(OutDir)/dsfTheoraEncoder.dll"
-				LinkIncremental="1"
+				LinkIncremental="2"
 				AdditionalLibraryDirectories=""
 				ModuleDefinitionFile="theoraencoder.def"
 				GenerateDebugInformation="true"
+				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
-				OptimizeReferences="2"
-				EnableCOMDATFolding="2"
-				OptimizeForWindows98="1"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
 				TargetMachine="0"
 			/>
@@ -537,7 +532,7 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug_CE_ARM|Win32"
+			Name="Debug_WM5_PPC_ARM|Win32"
 			OutputDirectory="$(ConfigurationName)"
 			IntermediateDirectory="$(ConfigurationName)"
 			ConfigurationType="2"
@@ -621,7 +616,7 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug_CE_ARM|Pocket PC 2003 (ARMV4)"
+			Name="Debug_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
 			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
 			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
 			ConfigurationType="2"
@@ -702,9 +697,9 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug_CE_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
-			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
-			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
+			Name="Release_WM5_PPC_ARM|Win32"
+			OutputDirectory="$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
@@ -723,18 +718,20 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
-				TargetEnvironment="1"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
-				ExecutionBucket="7"
 				Optimization="0"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
 				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
 				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
 				RuntimeLibrary="3"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
+				Detect64BitPortabilityProblems="true"
+				DebugInformationFormat="4"
+				CallingConvention="2"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -756,36 +753,37 @@
 				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
-				TargetMachine="0"
+				TargetMachine="1"
 			/>
 			<Tool
 				Name="VCALinkTool"
 			/>
 			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
 				Name="VCXDCMakeTool"
 			/>
 			<Tool
 				Name="VCBscMakeTool"
 			/>
 			<Tool
-				Name="VCCodeSignTool"
+				Name="VCFxCopTool"
 			/>
 			<Tool
-				Name="VCPostBuildEventTool"
+				Name="VCAppVerifierTool"
 			/>
-			<DeploymentTool
-				ForceDirty="-1"
-				RemoteDirectory=""
-				RegisterOutput="0"
-				AdditionalFiles=""
+			<Tool
+				Name="VCWebDeploymentTool"
 			/>
-			<DebuggerTool
+			<Tool
+				Name="VCPostBuildEventTool"
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug_WM5_PPC_ARM|Win32"
-			OutputDirectory="$(ConfigurationName)"
-			IntermediateDirectory="$(ConfigurationName)"
+			Name="Release_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
+			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
+			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
@@ -804,20 +802,18 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
+				TargetEnvironment="1"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
+				ExecutionBucket="7"
 				Optimization="0"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
 				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
 				MinimalRebuild="true"
-				BasicRuntimeChecks="3"
 				RuntimeLibrary="3"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
-				Detect64BitPortabilityProblems="true"
-				DebugInformationFormat="4"
-				CallingConvention="2"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -839,37 +835,36 @@
 				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
-				TargetMachine="1"
+				TargetMachine="0"
 			/>
 			<Tool
 				Name="VCALinkTool"
 			/>
 			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
 				Name="VCXDCMakeTool"
 			/>
 			<Tool
 				Name="VCBscMakeTool"
 			/>
 			<Tool
-				Name="VCFxCopTool"
+				Name="VCCodeSignTool"
 			/>
 			<Tool
-				Name="VCAppVerifierTool"
+				Name="VCPostBuildEventTool"
 			/>
-			<Tool
-				Name="VCWebDeploymentTool"
+			<DeploymentTool
+				ForceDirty="-1"
+				RemoteDirectory=""
+				RegisterOutput="0"
+				AdditionalFiles=""
 			/>
-			<Tool
-				Name="VCPostBuildEventTool"
+			<DebuggerTool
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
-			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
-			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
+			Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
+			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
@@ -948,12 +943,13 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug_WM5_PPC_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+			Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
 			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
 			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
+			WholeProgramOptimization="1"
 			>
 			<Tool
 				Name="VCPreBuildEventTool"
@@ -974,13 +970,18 @@
 			<Tool
 				Name="VCCLCompilerTool"
 				ExecutionBucket="7"
-				Optimization="0"
+				Optimization="2"
+				InlineFunctionExpansion="2"
+				EnableIntrinsicFunctions="true"
+				FavorSizeOrSpeed="1"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
-				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
-				MinimalRebuild="true"
-				RuntimeLibrary="3"
+				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;NDEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
+				StringPooling="true"
+				RuntimeLibrary="2"
+				EnableFunctionLevelLinking="true"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
+				DebugInformationFormat="3"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -995,12 +996,14 @@
 				Name="VCLinkerTool"
 				AdditionalDependencies="Winmm.lib Strmiids.lib Quartz.lib"
 				OutputFile="$(OutDir)/dsfTheoraEncoder.dll"
-				LinkIncremental="2"
+				LinkIncremental="1"
 				AdditionalLibraryDirectories=""
 				ModuleDefinitionFile="theoraencoder.def"
 				GenerateDebugInformation="true"
-				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
+				OptimizeReferences="2"
+				EnableCOMDATFolding="2"
+				OptimizeForWindows98="1"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
 				TargetMachine="0"
 			/>
@@ -1029,9 +1032,9 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Release_WM5_PPC_ARM|Win32"
-			OutputDirectory="$(ConfigurationName)"
-			IntermediateDirectory="$(ConfigurationName)"
+			Name="Debug_CE_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
+			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
@@ -1050,20 +1053,18 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
+				TargetEnvironment="1"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
+				ExecutionBucket="7"
 				Optimization="0"
 				AdditionalIncludeDirectories="..\..\..\..\core\directshow\libDirectshowAbstracts;..\..\..\..\core\directshow\BaseClasses;..\..\libs\libOOTheora;..\..\..\..\core\ogg;..\..\..\..\core\ogg\libogg\include;..\..\libs\libtheora\include;..\..\..\..\core\directshow\dsfSeeking;..\..\..\..\helper"
 				PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;_USRDLL;DSFTHEORAENCODER_EXPORTS"
 				MinimalRebuild="true"
-				BasicRuntimeChecks="3"
 				RuntimeLibrary="3"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
-				Detect64BitPortabilityProblems="true"
-				DebugInformationFormat="4"
-				CallingConvention="2"
 			/>
 			<Tool
 				Name="VCManagedResourceCompilerTool"
@@ -1085,37 +1086,36 @@
 				ProgramDatabaseFile="$(OutDir)/dsfTheoraEncoder.pdb"
 				SubSystem="2"
 				ImportLibrary="$(OutDir)/dsfTheoraEncoder.lib"
-				TargetMachine="1"
+				TargetMachine="0"
 			/>
 			<Tool
 				Name="VCALinkTool"
 			/>
 			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
 				Name="VCXDCMakeTool"
 			/>
 			<Tool
 				Name="VCBscMakeTool"
 			/>
 			<Tool
-				Name="VCFxCopTool"
+				Name="VCCodeSignTool"
 			/>
 			<Tool
-				Name="VCAppVerifierTool"
+				Name="VCPostBuildEventTool"
 			/>
-			<Tool
-				Name="VCWebDeploymentTool"
+			<DeploymentTool
+				ForceDirty="-1"
+				RemoteDirectory=""
+				RegisterOutput="0"
+				AdditionalFiles=""
 			/>
-			<Tool
-				Name="VCPostBuildEventTool"
+			<DebuggerTool
 			/>
 		</Configuration>
 		<Configuration
-			Name="Release_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
-			OutputDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
-			IntermediateDirectory="Pocket PC 2003 (ARMV4)\$(ConfigurationName)"
+			Name="Debug_WM5_PPC_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+			OutputDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
+			IntermediateDirectory="Windows Mobile 5.0 Pocket PC SDK (ARMV4I)\$(ConfigurationName)"
 			ConfigurationType="2"
 			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
 			CharacterSet="1"
@@ -1306,7 +1306,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+					Name="Release|Win32"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1314,7 +1314,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release|Win32"
+					Name="Release|Pocket PC 2003 (ARMV4)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1322,7 +1322,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release|Pocket PC 2003 (ARMV4)"
+					Name="Debug_CE_ARM|Win32"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1330,7 +1330,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+					Name="Debug_CE_ARM|Pocket PC 2003 (ARMV4)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1338,7 +1338,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug_CE_ARM|Win32"
+					Name="Debug_WM5_PPC_ARM|Win32"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1346,7 +1346,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug_CE_ARM|Pocket PC 2003 (ARMV4)"
+					Name="Debug_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1354,7 +1354,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug_CE_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+					Name="Release_WM5_PPC_ARM|Win32"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1362,7 +1362,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug_WM5_PPC_ARM|Win32"
+					Name="Release_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1370,7 +1370,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
+					Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1378,7 +1378,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug_WM5_PPC_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
+					Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1386,7 +1386,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release_WM5_PPC_ARM|Win32"
+					Name="Debug_CE_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -1394,7 +1394,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release_WM5_PPC_ARM|Pocket PC 2003 (ARMV4)"
+					Name="Debug_WM5_PPC_ARM|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)"
 					>
 					<Tool
 						Name="VCCLCompilerTool"

Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/resource.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/resource.h	2006-09-23 22:58:21 UTC (rev 11859)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraEncoder/resource.h	2006-09-24 05:52:38 UTC (rev 11860)
@@ -29,13 +29,14 @@
 #define IDC_STATIC_Q_VALUE              1031
 #define IDC_CHECK_ALLOW_DROP_FRAMES     1032
 #define IDC_STATIC_KF_MAX               1033
-#define IDC_STATIC_BITRATE3             1034
+#define IDC_STATIC_KFI_MIN              1034
 #define IDC_STATIC_BITRATE4             1035
+#define IDC_STATIC_KFI_THRESHOLD        1035
 #define IDC_STATIC_BITRATE5             1036
 #define IDC_STATIC_BITRATE6             1037
-#define IDC_CHECK3                      1038
-#define IDC_STATIC_BITRATE2             1039
+#define IDC_CHECK_QUALITY_MODE          1038
 #define IDC_STATIC_BITRATE_KEYFRAME     1039
+#define IDC_CHECK_QUICK_MODE            1040
 
 // Next default values for new objects
 // 
@@ -43,7 +44,7 @@
 #ifndef APSTUDIO_READONLY_SYMBOLS
 #define _APS_NEXT_RESOURCE_VALUE        104
 #define _APS_NEXT_COMMAND_VALUE         40001
-#define _APS_NEXT_CONTROL_VALUE         1039
+#define _APS_NEXT_CONTROL_VALUE         1041
 #define _APS_NEXT_SYMED_VALUE           101
 #endif
 #endif



More information about the commits mailing list