/*****************************************************************************
 *
 *  confvidx264mencoderdialog.cpp -- Input the x264 codec encoding parameters.
 * 
 *  Copyright (C) 2010 Starbuck <starbuck@labdv.com>
 *  All rights reserved.
 *
 *  This file is part of the Gui4 module of the DVDx 4 application.
 *
 *  GNU Lesser General Public License Usage
 *  This file may be used under the terms of the GNU Lesser General
 *  Public License version 2.1 as published by the Free Software
 *  Foundation and appearing in the file LICENSE.LGPL included in the
 *  packaging of this file.  Please review the following information to
 *  ensure the GNU Lesser General Public License version 2.1 requirements
 *  will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
 *
 *  GNU General Public License Usage
 *  Alternatively, this file may be used under the terms of the GNU
 *  General Public License version 3.0 as published by the Free Software
 *  Foundation and appearing in the file LICENSE.GPL included in the
 *  packaging of this file.  Please review the following information to
 *  ensure the GNU General Public License version 3.0 requirements will be
 *  met: http://www.gnu.org/copyleft/gpl.html.
 *
 *****************************************************************************/

#include "confvidx264mencoderdialog.h"
#include "userdefinedrezdialog.h"
#include "userdefinedfpsdialog.h"
#include "x264partitionsdialog.h"
#include "../encoder/encoder.h"
#include <QtGui>

ConfVidX264MEncoderDialog::ConfVidX264MEncoderDialog(encoder_video_settings_t *settings, 
	video_t *track,  QWidget *parent)
	: QDialog(parent),
	fpsMin( 0.01 ),
	fpsMax( 200.0 )
{
	/*experimental
	setMinimumSize( 360, 520 );
	*/
	setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);

	verticalLayout = new QVBoxLayout(this);

	// Global buttons
	buttonBox = new QDialogButtonBox(this);

	buttonBox->setOrientation(Qt::Horizontal);
	buttonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Ok);

	// Build all tabs
	tabWidget = new QTabWidget(this);
	tabWidget->setMovable(false);

	mainTab = new QWidget();
	ratecontrolTab = new QWidget();
	frametypeTab = new QWidget();
	analysisTab = new QWidget();

	tabWidget->addTab(mainTab, QString());
	tabWidget->addTab(ratecontrolTab, QString());
	tabWidget->addTab(frametypeTab, QString());
	tabWidget->addTab(analysisTab, QString());

	verticalLayout->addWidget(tabWidget);
	verticalLayout->addWidget(buttonBox);

	tabWidget->setCurrentIndex(0);

	// Main tab 
	mainTabVLayout = new QVBoxLayout(mainTab);
	mainTabVLayout->setSpacing(12);

	// - Rez and framerate
	frameGroupBox = new QGroupBox(mainTab);
	horizontalLayout = new QHBoxLayout(frameGroupBox);
	rezComboBox = new QComboBox(frameGroupBox);
	fpsComboBox = new QComboBox(frameGroupBox);

	horizontalLayout->addWidget(rezComboBox);
	horizontalLayout->addWidget(fpsComboBox);

	mainTabVLayout->addWidget(frameGroupBox);

	// - Bitrate
	bitrateGroupBox = new QGroupBox(mainTab);
	bitrateVLayout = new QVBoxLayout(bitrateGroupBox);
	bitrateHLayout = new QHBoxLayout();
	bitrateSlider = new QSlider(bitrateGroupBox);
	bitrateLineEdit = new QLineEdit(bitrateGroupBox);

	bitrateSlider->setOrientation(Qt::Horizontal);
	bitrateSlider->setInvertedAppearance(false);
	bitrateSlider->setTickPosition(QSlider::NoTicks);

	bitrateSlider->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
	bitrateLineEdit->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
	bitrateLineEdit->setMaxLength(6);
	bitrateLineEdit->setMaximumWidth(50);

	bitrateHLayout->addWidget(bitrateSlider);
	bitrateHLayout->addWidget(bitrateLineEdit);

	bitrateVLayout->addLayout(bitrateHLayout);

	mainTabVLayout->addWidget(bitrateGroupBox);

	// - Presets
	presetGroupBox = new QGroupBox(mainTab);
	presetVLayout = new QVBoxLayout(presetGroupBox);
	presetHLayout = new QHBoxLayout();
	presetLabel = new QLabel(presetGroupBox);
	presetComboBox = new QComboBox(presetGroupBox);

	presetLabel->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
	presetComboBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Maximum);

	presetHLayout->addWidget(presetLabel);
	presetHLayout->addWidget(presetComboBox);

	presetVLayout->addLayout(presetHLayout);

	mainTabVLayout->addWidget(presetGroupBox);

	// - Profile resrictions
	profileGroupBox = new QGroupBox(mainTab);
	profileRestrictionsVLayout = new QVBoxLayout(profileGroupBox);
	profileRestrictionsHLayout = new QHBoxLayout();
	profileLabel = new QLabel(profileGroupBox);
	profileComboBox = new QComboBox(profileGroupBox);
	interlacedHLayout = new QHBoxLayout();
	interlacedCheckBox = new QCheckBox(profileGroupBox);

	profileLabel->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
	profileComboBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Maximum);

	profileRestrictionsHLayout->addWidget(profileLabel);
	profileRestrictionsHLayout->addWidget(profileComboBox);

	profileRestrictionsVLayout->addLayout(profileRestrictionsHLayout);
	profileRestrictionsVLayout->addLayout(interlacedHLayout);

	interlacedHLayout->addWidget(interlacedCheckBox);

	mainTabVLayout->addWidget(profileGroupBox);

	// - Tune
	tuneGroupBox = new QGroupBox(mainTab);
	tuneVLayout = new QVBoxLayout(tuneGroupBox);
	tuneHLayout = new QHBoxLayout();
	tuneLabel = new QLabel(tuneGroupBox);
	tuneComboBox = new QComboBox(tuneGroupBox);

	tuneLabel->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
	tuneComboBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Maximum);

	tuneHLayout->addWidget(tuneLabel);
	tuneHLayout->addWidget(tuneComboBox);

	tuneVLayout->addLayout(tuneHLayout);

	mainTabVLayout->addWidget(tuneGroupBox);

	// - Spacer
	verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);

	mainTabVLayout->addItem(verticalSpacer);

	// - Default
	defaultHLayout = new QHBoxLayout();
	horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	defaultPushButton = new QPushButton(mainTab);

	defaultHLayout->setSizeConstraint(QLayout::SetMaximumSize);
	defaultHLayout->addWidget(defaultPushButton);
	defaultHLayout->addItem(horizontalSpacer);

	mainTabVLayout->addLayout(defaultHLayout);

	// Rate control tab
	ratecontrolTabVLayout = new QVBoxLayout(ratecontrolTab);
	ratecontrolTabVLayout->setSpacing(12);
	ratecontrolTabVLayout->setContentsMargins(10, 10, 10, 10);

	// -- Secondary bitrate slider
	bitrateGroupBox_2 = new QGroupBox(ratecontrolTab);
	bitrateVLayout_2 = new QVBoxLayout(bitrateGroupBox_2);
	bitrateHLayout_2 = new QHBoxLayout();
	bitrateSlider_2 = new QSlider(bitrateGroupBox_2);
	bitrateLineEdit_2 = new QLineEdit(bitrateGroupBox_2);

	bitrateSlider_2->setOrientation(Qt::Horizontal);
	bitrateSlider_2->setInvertedAppearance(false);
	bitrateSlider_2->setTickPosition(QSlider::NoTicks);

	bitrateSlider_2->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
	bitrateLineEdit_2->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
	bitrateLineEdit_2->setMaxLength(6);
	bitrateLineEdit_2->setMaximumWidth(50);

	bitrateHLayout_2->addWidget(bitrateSlider_2);
	bitrateHLayout_2->addWidget(bitrateLineEdit_2);

	bitrateVLayout_2->addLayout(bitrateHLayout_2);

	ratecontrolTabVLayout->addWidget(bitrateGroupBox_2);

	// - Quantization mode list
	aq_modeHLayout = new QHBoxLayout();
	aq_modeComboBox = new QComboBox(ratecontrolTab);
	aq_modeLabel = new QLabel(ratecontrolTab);

	aq_modeHLayout->addWidget(aq_modeComboBox);
	aq_modeHLayout->addWidget(aq_modeLabel);

	ratecontrolTabVLayout->addLayout(aq_modeHLayout);

	// - Numeric and checkbox
	aq_strengthHLayout = new QHBoxLayout();
	aq_strengthLineEdit = new QLineEdit(ratecontrolTab);
	aq_strengthLabel = new QLabel(ratecontrolTab);
	aq_strengthSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	aq_strengthLineEdit->setMaximumSize(QSize(50, 40));
	aq_strengthHLayout->addWidget(aq_strengthLineEdit);
	aq_strengthHLayout->addWidget(aq_strengthLabel);
	aq_strengthHLayout->addItem(aq_strengthSpacer);

	no_mbtreeCheckBox = new QCheckBox(ratecontrolTab);

	rc_lookaheadHLayout = new QHBoxLayout();
	rc_lookaheadLineEdit = new QLineEdit(ratecontrolTab);
	rc_lookaheadLabel = new QLabel(ratecontrolTab);
	rc_lookaheadSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	rc_lookaheadLineEdit->setMaximumSize(QSize(50, 40));
	rc_lookaheadHLayout->addWidget(rc_lookaheadLineEdit);
	rc_lookaheadHLayout->addWidget(rc_lookaheadLabel);
	rc_lookaheadHLayout->addItem(rc_lookaheadSpacer);

	qcompHLayout = new QHBoxLayout();
	qcompLineEdit = new QLineEdit(ratecontrolTab);
	qcompLabel = new QLabel(ratecontrolTab);
	qcompSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	qcompLineEdit->setMaximumSize(QSize(50, 40));
	qcompHLayout->addWidget(qcompLineEdit);
	qcompHLayout->addWidget(qcompLabel);
	qcompHLayout->addItem(qcompSpacer);

	ipratioHLayout = new QHBoxLayout();
	ipratioLineEdit = new QLineEdit(ratecontrolTab);
	ipratioSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	ipratioLabel = new QLabel(ratecontrolTab);
	ipratioLineEdit->setMaximumSize(QSize(50, 40));
	ipratioHLayout->addWidget(ipratioLineEdit);
	ipratioHLayout->addWidget(ipratioLabel);
	ipratioHLayout->addItem(ipratioSpacer);

	pbratioHLayout = new QHBoxLayout();
	pbratioLineEdit = new QLineEdit(ratecontrolTab);
	pbratioLabel = new QLabel(ratecontrolTab);
	pbratioSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	pbratioLineEdit->setMaximumSize(QSize(50, 40));
	pbratioHLayout->addWidget(pbratioLineEdit);
	pbratioHLayout->addWidget(pbratioLabel);
	pbratioHLayout->addItem(pbratioSpacer);

	ratecontrolTabVLayout->addLayout(aq_strengthHLayout);
	ratecontrolTabVLayout->addWidget(no_mbtreeCheckBox);
	ratecontrolTabVLayout->addLayout(rc_lookaheadHLayout);
	ratecontrolTabVLayout->addLayout(qcompHLayout);
	ratecontrolTabVLayout->addLayout(ipratioHLayout);
	ratecontrolTabVLayout->addLayout(pbratioHLayout);

	// - Bitrate stats collection
	passGroupBox = new QGroupBox(ratecontrolTab);
	passVLayout = new QVBoxLayout(passGroupBox);
	passHLayout = new QHBoxLayout();
	passComboBox = new QComboBox(passGroupBox);
	passLabel = new QLabel(passGroupBox);
	statsHLayout = new QHBoxLayout();
	statsLineEdit = new QLineEdit(passGroupBox);
	statsLabel = new QLabel(passGroupBox);
	slow_firstpassCheckBox = new QCheckBox(passGroupBox);

	passHLayout->addWidget(passComboBox);
	passHLayout->addWidget(passLabel);
	passVLayout->addLayout(passHLayout);
	statsHLayout->addWidget(statsLineEdit);
	statsHLayout->addWidget(statsLabel);
	passVLayout->addLayout(statsHLayout);
	passVLayout->addWidget(slow_firstpassCheckBox);

	ratecontrolTabVLayout->addWidget(passGroupBox);

	// - Spacer
	ratecontrolVSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);

	ratecontrolTabVLayout->addItem(ratecontrolVSpacer);

	// - Default rate control
	rateDefaultHLayout = new QHBoxLayout();
	rateDefaultPushButton = new QPushButton(ratecontrolTab);
	rateDefaultHSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);

	rateDefaultHLayout->addWidget(rateDefaultPushButton);
	rateDefaultHLayout->addItem(rateDefaultHSpacer);

	ratecontrolTabVLayout->addLayout(rateDefaultHLayout);

	// Frame type tab
	frametypeTabVLayout = new QVBoxLayout(frametypeTab);
	frametypeTabVLayout->setSpacing(12);
	frametypeTabVLayout->setContentsMargins(10, 10, 10, 10);

	// - Reference frames 
	refHLayout = new QHBoxLayout();
	refLabel = new QLabel(frametypeTab);
	refLineEdit = new QLineEdit(frametypeTab);
	refSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	refLineEdit->setMaximumSize(QSize(50, 40));
	refHLayout->addWidget(refLineEdit);
	refHLayout->addWidget(refLabel);
	refHLayout->addItem(refSpacer);

	frametypeTabVLayout->addLayout(refHLayout);

	// - Extra I-frames
	scenecutHLayout = new QHBoxLayout();
	scenecutLineEdit = new QLineEdit(frametypeTab);
	scenecutLabel = new QLabel(frametypeTab);
	scenecutSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	scenecutLineEdit->setMaximumSize(QSize(50, 40));
	scenecutHLayout->addWidget(scenecutLineEdit);
	scenecutHLayout->addWidget(scenecutLabel);
	scenecutHLayout->addItem(scenecutSpacer);

	frametypeTabVLayout->addLayout(scenecutHLayout);

	// - B-frames number
	bframesHLayout = new QHBoxLayout();
	bframesLineEdit = new QLineEdit(frametypeTab);
	bframesSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	bframesLineEdit->setMaximumSize(QSize(50, 40));
	bframesHLayout->addWidget(bframesLineEdit);
	bframesLabel = new QLabel(frametypeTab);
	bframesHLayout->addWidget(bframesLabel);
	bframesHLayout->addItem(bframesSpacer);

	frametypeTabVLayout->addLayout(bframesHLayout);

	// - B-frame placement algo list
	b_adaptHLayout = new QHBoxLayout();
	b_adaptComboBox = new QComboBox(frametypeTab);
	b_adaptLabel = new QLabel(frametypeTab);

	b_adaptHLayout->addWidget(b_adaptComboBox);
	b_adaptHLayout->addWidget(b_adaptLabel);

	frametypeTabVLayout->addLayout(b_adaptHLayout);

	// - Checkboxes
	no_cabacCheckBox = new QCheckBox(frametypeTab);
	no_deblockCheckBox = new QCheckBox(frametypeTab);

	frametypeTabVLayout->addWidget(no_cabacCheckBox);
	frametypeTabVLayout->addWidget(no_deblockCheckBox);

	// - Deblock loop filter
	groupBox = new QGroupBox(frametypeTab);
	deblockHLayout = new QHBoxLayout(groupBox);
	deblockSpacer1 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	deblockAlphaLabel = new QLabel(groupBox);
	deblockAlphaLineEdit = new QLineEdit(groupBox);
	deblockBetaLabel = new QLabel(groupBox);
	deblockBetaLineEdit = new QLineEdit(groupBox);
	deblockSpacer2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	deblockHLayout->addItem(deblockSpacer1);
	deblockHLayout->addWidget(deblockAlphaLabel);
	deblockAlphaLineEdit->setMaximumSize(QSize(50, 16777215));
	deblockHLayout->addWidget(deblockAlphaLineEdit);
	deblockHLayout->addWidget(deblockBetaLabel);
	deblockBetaLineEdit->setMaximumSize(QSize(50, 16777215));
	deblockHLayout->addWidget(deblockBetaLineEdit);
	deblockHLayout->addItem(deblockSpacer2);

	frametypeTabVLayout->addWidget(groupBox);

	// - Spacer
	frametypeSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);

	frametypeTabVLayout->addItem(frametypeSpacer);

	// - Default frame type
	frametypeDefaultHLayout = new QHBoxLayout();
	frametypeDefaultPushButton = new QPushButton(frametypeTab);
	frametypeDefaultHLayout->addWidget(frametypeDefaultPushButton);
	frametypeDefaultSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	frametypeDefaultHLayout->addItem(frametypeDefaultSpacer);

	frametypeTabVLayout->addLayout(frametypeDefaultHLayout);

	// Video analysis tab
	analysisTabVLayout = new QVBoxLayout(analysisTab);
	analysisTabVLayout->setSpacing(12);
	analysisTabVLayout->setContentsMargins(10, 10, 10, 10);

	// - Motion estimation
	meHLayout = new QHBoxLayout();
	meComboBox = new QComboBox(analysisTab);
	meLabel = new QLabel(analysisTab);
	meHLayout->addWidget(meComboBox);
	meHLayout->addWidget(meLabel);
	
	analysisTabVLayout->addLayout(meHLayout);

	// - Motion range
	merangeHLayout = new QHBoxLayout();
	merangeLineEdit = new QLineEdit(analysisTab);
	merangeLabel = new QLabel(analysisTab);
	merangeSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	merangeLineEdit->setMaximumSize(QSize(50, 40));
	merangeHLayout->addWidget(merangeLineEdit);
	merangeHLayout->addWidget(merangeLabel);
	merangeHLayout->addItem(merangeSpacer);
	
	analysisTabVLayout->addLayout(merangeHLayout);

	// - Subpixel estimation
	submeHLayout = new QHBoxLayout();
	submeComboBox = new QComboBox(analysisTab);
	submeLabel = new QLabel(analysisTab);
	submeHLayout->addWidget(submeComboBox);
	submeHLayout->addWidget(submeLabel);
	
	analysisTabVLayout->addLayout(submeHLayout);

	// - Marcoblock partitions
	partitionsHLayout = new QHBoxLayout();
	partitionsLineEdit = new QLineEdit(analysisTab);
	partitionsPushButton = new QPushButton(analysisTab);
	partitionsLabel = new QLabel(analysisTab);
	partitionsHLayout->addWidget(partitionsLineEdit);
	partitionsHLayout->addWidget(partitionsPushButton);
	partitionsHLayout->addWidget(partitionsLabel);

	analysisTabVLayout->addLayout(partitionsHLayout);

	// - A bunch of checkboxes
	no_mixed_refsCheckBox = new QCheckBox(analysisTab);
	no_8x8dctCheckBox = new QCheckBox(analysisTab);
	no_fast_pskipCheckBox = new QCheckBox(analysisTab);

	analysisTabVLayout->addWidget(no_mixed_refsCheckBox);
	analysisTabVLayout->addWidget(no_8x8dctCheckBox);
	analysisTabVLayout->addWidget(no_fast_pskipCheckBox);

	// - Trellis
	trellisHLayout = new QHBoxLayout();
	trellisComboBox = new QComboBox(analysisTab);
	trellisLabel = new QLabel(analysisTab);
	trellisHLayout->addWidget(trellisComboBox);
	trellisHLayout->addWidget(trellisLabel);

	analysisTabVLayout->addLayout(trellisHLayout);

	// - Direct MV prediction
	directHLayout = new QHBoxLayout();
	directComboBox = new QComboBox(analysisTab);
	directLabel = new QLabel(analysisTab);
	directHLayout->addWidget(directComboBox);
	directHLayout->addWidget(directLabel);

	analysisTabVLayout->addLayout(directHLayout);

	// - Psychovisual optimizations
	no_psyCheckBox = new QCheckBox(analysisTab);

	psyrdGroupBox = new QGroupBox(analysisTab);
	psyrdGroupHLayout = new QHBoxLayout(psyrdGroupBox);
	psyrdGroupSpacer1 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	psy_rdoLabel = new QLabel(psyrdGroupBox);
	psy_rdoLineEdit = new QLineEdit(psyrdGroupBox);
	psy_trellisLabel = new QLabel(psyrdGroupBox);
	psy_trellisLineEdit = new QLineEdit(psyrdGroupBox);
	psyrdGroupSpacer2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	psyrdGroupHLayout->addItem(psyrdGroupSpacer1);
	psyrdGroupHLayout->addWidget(psy_rdoLabel);
	psy_rdoLineEdit->setMaximumSize(QSize(50, 16777215));
	psyrdGroupHLayout->addWidget(psy_rdoLineEdit);
	psyrdGroupHLayout->addWidget(psy_trellisLabel);
	psy_trellisLineEdit->setMaximumSize(QSize(50, 16777215));
	psyrdGroupHLayout->addWidget(psy_trellisLineEdit);
	psyrdGroupHLayout->addItem(psyrdGroupSpacer2);

	analysisTabVLayout->addWidget(no_psyCheckBox);
	analysisTabVLayout->addWidget(psyrdGroupBox);

	// - DCT decimate
	no_dct_decimateCheckBox = new QCheckBox(analysisTab);

	analysisTabVLayout->addWidget(no_dct_decimateCheckBox);

	// - Luma deadzone
	deadzoneGroupBox = new QGroupBox(analysisTab);
	deadzoneHLayout = new QHBoxLayout(deadzoneGroupBox);
	deadzoneSpacer1 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	deadzone_interLabel = new QLabel(deadzoneGroupBox);
	deadzone_interLineEdit = new QLineEdit(deadzoneGroupBox);
	deadzone_intraLabel = new QLabel(deadzoneGroupBox);
	deadzone_intraLineEdit = new QLineEdit(deadzoneGroupBox);
	deadzoneSpacer2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	deadzoneHLayout->addItem(deadzoneSpacer1);
	deadzoneHLayout->addWidget(deadzone_interLabel);
	deadzone_interLineEdit->setMaximumSize(QSize(50, 16777215));
	deadzoneHLayout->addWidget(deadzone_interLineEdit);
	deadzoneHLayout->addWidget(deadzone_intraLabel);
	deadzone_intraLineEdit->setMaximumSize(QSize(50, 16777215));
	deadzoneHLayout->addWidget(deadzone_intraLineEdit);
	deadzoneHLayout->addItem(deadzoneSpacer2);

	analysisTabVLayout->addWidget(deadzoneGroupBox);

	// - Non-symmetric weighing
	no_weightbCheckBox = new QCheckBox(analysisTab);

	analysisTabVLayout->addWidget(no_weightbCheckBox);

	// - Spacer
	analysisSpacer = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding);

	analysisTabVLayout->addItem(analysisSpacer);

	// - Analysis defaults
	analysisDefaultHLayout = new QHBoxLayout();
	analysisDefaultPushButton = new QPushButton(analysisTab);
	analysisDefaultSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
	analysisDefaultHLayout->addWidget(analysisDefaultPushButton);
	analysisDefaultHLayout->addItem(analysisDefaultSpacer);

	analysisTabVLayout->addLayout(analysisDefaultHLayout);

	// Captions
	setWindowTitle( tr("H.264 encoder settings") );

	tabWidget->setTabText(tabWidget->indexOf(mainTab), tr("General") );
	tabWidget->setTabText(tabWidget->indexOf(ratecontrolTab), tr("Rate control") );
	tabWidget->setTabText(tabWidget->indexOf(frametypeTab), tr("Frame type") );
	tabWidget->setTabText(tabWidget->indexOf(analysisTab), tr("Video analysis") );

	frameGroupBox->setTitle( tr(" Picture size - Frame rate") );
	bitrateGroupBox->setTitle( tr(" Bitrate ( kbps ) ") );
	presetGroupBox->setTitle( tr(" Quality vs. Performance presets ") );
	profileGroupBox->setTitle( tr(" Profile restrictions ") );
	tuneGroupBox->setTitle( tr(" Tune considering input content ") );
	bitrateGroupBox_2->setTitle( tr(" Bitrate ( kbps ) ") );
	passGroupBox->setTitle( tr(" Bitrate statistics collection ") );
	groupBox->setTitle( tr(" Deblock loop filter ") );
	psyrdGroupBox->setTitle( tr(" Psychovisual optimization ") );
	deadzoneGroupBox->setTitle( tr(" Luma quantization deadzone ") );

	bitrateLineEdit->setText( tr("900") );
	presetLabel->setText( tr(" Preset:") );
	profileLabel->setText( tr(" Profile:") );
	interlacedCheckBox->setText( tr("Interlaced encoding") );
	tuneLabel->setText( tr("Tuning:") );
	defaultPushButton->setText( tr("Default") );
	bitrateLineEdit_2->setText( tr("900") );
	aq_modeLabel->setText( tr("Adaptive quantization mode ") );
	aq_strengthLabel->setText( tr("Adaptive quantization strength") );
	no_mbtreeCheckBox->setText( tr("Disable macroblock-tree ratecontrol (MB-tree)") );
	rc_lookaheadLabel->setText( tr("Frames to use for MB-tree and VBV-lookahead") );
	qcompLabel->setText( tr("Quantizer curve compression factor") );
	ipratioLabel->setText( tr(" I-frames vs. P-frames ratio") );
	pbratioLabel->setText( tr("P-frames vs. B-frames ratio") );
	passLabel->setText( tr("Pass control") );
	statsLabel->setText( tr("Stats file") );
	slow_firstpassCheckBox->setText( tr("Slow first pass") );
	rateDefaultPushButton->setText( tr("Default rate control settings") );
	refLabel->setText( tr("Number of reference frames") );
	scenecutLabel->setText( tr("Extra I-frames insertion threshold") );
	no_deblockCheckBox->setText( tr("No deblock") );
	deblockAlphaLabel->setText( tr("AlphaC0:") );
	deblockBetaLabel->setText( tr("Beta:") );
	no_cabacCheckBox->setText( tr("No CABAC") );
	bframesLabel->setText( tr("Number of B-frames between I and P") );
	b_adaptLabel->setText( tr("Adaptive B-frame placement") );
	frametypeDefaultPushButton->setText( tr("Default frame type settings") );
	meLabel->setText( tr("Motion estimation") );
	merangeLabel->setText( tr("Maximum motion vector search range") );
	submeLabel->setText( tr("Subpixel estimation") );
	partitionsPushButton->setText( tr("...") );
	partitionsLabel->setText( tr("Macroblock partitions") );
	no_mixed_refsCheckBox->setText( tr("Don't decide references on a per partition basis") );
	no_8x8dctCheckBox->setText( tr("Disable adaptive spatial transform size") );
	no_fast_pskipCheckBox->setText( tr("Disable early skip detection on P-frames") );
	trellisLabel->setText( tr("Trellis") );
	directLabel->setText( tr("Direct MV prediction") );
	no_psyCheckBox->setText( tr("Disable all psychovisual optimizations") );
	psy_rdoLabel->setText( tr("Psy-RDO:") );
	psy_trellisLabel->setText( tr("Psy-Trellis:") );
	no_dct_decimateCheckBox->setText( tr("Disable coefficient thresholding on P frames") );
	deadzone_interLabel->setText( tr("Inter:") );
	deadzone_intraLabel->setText( tr("Intra:") );
	no_weightbCheckBox->setText( tr("Disables non-symmetric weighting between refs B-frames") );
	analysisDefaultPushButton->setText( tr("Default video analysis settings") );

	// Tool tips and What's this
	setToolTip();
	setWhatsThis();

	setAttribute(Qt::WA_AlwaysShowToolTips);

	settingsUpdateSetEnabled(false);  // freeze settings vs. events

	Q_CHECK_PTR(&settings);
	encSettings = settings;
	
	Q_CHECK_PTR(&track);
	videoSource = track;

	int bitrateMin = 100;
	int bitrateMax = 5000;

	bitrateSlider->setRange( bitrateMin, bitrateMax );
	bitrateSlider_2->setRange( bitrateMin, bitrateMax );

	bitrateValidator = new QIntValidator( bitrateMin, bitrateMax, this );

	bitrateLineEdit->setValidator( bitrateValidator );
	bitrateLineEdit_2->setValidator( bitrateValidator );

	partitionsLineEdit->setReadOnly(true);

	populateFps();
	populateRez();
	populatePresets();
	populateProfiles();
	populateTunes();
	populatePass();
	populateRateControlAqMode();
	populateFrameTypeBAdapt();
	populateAnalysisMe();
	populateAnalysisSubMe();
	populateAnalysisTrellis();
	populateAnalysisDirect();

	// Signals which don't change settings
	connect(bitrateLineEdit, SIGNAL(textChanged(QString)), 
		this, SLOT(bitrateLineEditChanged(QString)));
	connect(bitrateLineEdit_2, SIGNAL(textChanged(QString)), 
		this, SLOT(bitrateLineEdit_2Changed(QString)));

	connect(bitrateSlider, SIGNAL(valueChanged(int)), 
		this, SLOT(bitrateSliderChanged(int)));
	connect(bitrateSlider_2, SIGNAL(valueChanged(int)), 
		this, SLOT(bitrateSlider_2Changed(int)));

	// Now connect other signals 
	connect(rezComboBox, SIGNAL(activated(int)), 
		this, SLOT(selectRez(int)));

	connect(fpsComboBox, SIGNAL(activated(int)), 
		this, SLOT(selectFps(int)));

	connect(presetComboBox, SIGNAL(activated(int)), 
		this, SLOT(selectPreset(int)));
	connect(profileComboBox, SIGNAL(activated(int)), 
		this, SLOT(selectProfile(int)));
	connect(tuneComboBox, SIGNAL(activated(int)), 
		this, SLOT(selectTune(int)));

	connect(passComboBox, SIGNAL(currentIndexChanged(int)), 
		this, SLOT(selectPass(int)));

	connect(defaultPushButton, SIGNAL(clicked()), 
		this, SLOT(defaultPushButtonClicked()));

	connect(rateDefaultPushButton, SIGNAL(clicked()), 
		this, SLOT(rateDefaultPushButtonClicked()));
	connect(frametypeDefaultPushButton, SIGNAL(clicked()), 
		this, SLOT(frametypeDefaultPushButtonClicked()));
	connect(analysisDefaultPushButton, SIGNAL(clicked()), 
		this, SLOT(analysisDefaultPushButtonClicked()));

	connect(partitionsPushButton, SIGNAL(clicked()), 
		this, SLOT(partitionsPushButtonClicked()));

	// Global buttons
	connect(buttonBox, SIGNAL(rejected()), this, SLOT(close()));
	connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept()));

	updateControls();

	settingsUpdateSetEnabled(true);  // ready for events
}

void ConfVidX264MEncoderDialog::accept()
{
	updateSettings();

	QDialog::accept();
}

void ConfVidX264MEncoderDialog::updateControls()
{
	// Global tab controls are updated on changes, but needs to be updated on initialization
	presetComboBox->setCurrentIndex( presetComboBox->findData( encSettings->x264.preset ) );
	profileComboBox->setCurrentIndex( profileComboBox->findData( encSettings->x264.profile ) );
	interlacedCheckBox->setChecked( encSettings->x264.frametype_interlaced );
	tuneComboBox->setCurrentIndex( tuneComboBox->findData( encSettings->x264.tune ) );

	// Rate control tab controls
	bitrateSlider->setValue( encSettings->x264.ratecontrole_bitrate );
	aq_modeComboBox->setCurrentIndex( aq_modeComboBox->findData( encSettings->x264.ratecontrole_aq_mode ) );
	aq_strengthLineEdit->setText( QString::number(encSettings->x264.ratecontrole_aq_strength) );
	no_mbtreeCheckBox->setChecked( encSettings->x264.ratecontrole_no_mbtree );
	rc_lookaheadLineEdit->setText( QString::number(encSettings->x264.ratecontrole_rc_lookahead) );
	// rc_lookaheadLineEdit is always enabled because used for VBV lookahead
	qcompLineEdit->setText( QString::number(encSettings->x264.ratecontrole_qcomp) );;
	ipratioLineEdit->setText( QString::number(encSettings->x264.ratecontrole_ipratio) );;
	pbratioLineEdit->setText( QString::number(encSettings->x264.ratecontrole_pbratio) );;
	passComboBox->setCurrentIndex( passComboBox->findData( encSettings->x264.ratecontrole_pass ) );;
	statsLineEdit->setText( encSettings->x264.ratecontrole_stats );;
	slow_firstpassCheckBox->setChecked( encSettings->x264.ratecontrole_slow_firstpass );;

	// Frame type tab controls
	refLineEdit->setText( QString::number(encSettings->x264.frametype_ref) );
	scenecutLineEdit->setText( QString::number(encSettings->x264.frametype_scenecut) );
	no_deblockCheckBox->setChecked( encSettings->x264.frametype_no_deblock );
	deblockAlphaLineEdit->setText( QString::number(encSettings->x264.frametype_deblock_alpha) );
	deblockBetaLineEdit->setText( QString::number(encSettings->x264.frametype_deblock_beta) );
	no_cabacCheckBox->setChecked( encSettings->x264.frametype_no_cabac );
	bframesLineEdit->setText( QString::number(encSettings->x264.frametype_bframes) );
	b_adaptComboBox->setCurrentIndex( b_adaptComboBox->findData( encSettings->x264.frametype_b_adapt ) );
	
	// Video analysis tab controls
	meComboBox->setCurrentIndex( meComboBox->findData( encSettings->x264.analysis_me ) );
	merangeLineEdit->setText( QString::number(encSettings->x264.analysis_merange) );
	submeComboBox->setCurrentIndex( submeComboBox->findData( encSettings->x264.analysis_subme ) );
	partitionsLineEdit->setText( encSettings->x264.analysis_partitions );
	no_mixed_refsCheckBox->setChecked( encSettings->x264.analysis_no_mixed_refs );
	no_8x8dctCheckBox->setChecked( encSettings->x264.analysis_no_8x8dct );
	no_fast_pskipCheckBox->setChecked( encSettings->x264.analysis_no_fast_pskip );
	trellisComboBox->setCurrentIndex( trellisComboBox->findData( encSettings->x264.analysis_trellis ) );
	directComboBox->setCurrentIndex( directComboBox->findData( encSettings->x264.analysis_direct ) );
	no_psyCheckBox->setChecked( encSettings->x264.analysis_no_psy );
	psy_rdoLineEdit->setText( QString::number(encSettings->x264.analysis_psy_rdo) );
	psy_trellisLineEdit->setText( QString::number(encSettings->x264.analysis_psy_trellis) );
	no_dct_decimateCheckBox->setChecked( encSettings->x264.analysis_no_dct_decimate );
	deadzone_interLineEdit->setText( QString::number(encSettings->x264.analysis_deadzone_inter) );
	deadzone_intraLineEdit->setText( QString::number(encSettings->x264.analysis_deadzone_intra) );
	no_weightbCheckBox->setChecked( encSettings->x264.analysis_no_weightb );
}

void ConfVidX264MEncoderDialog::updateSettings()
{
	updateRateControlSettings();
	updateFrameTypeSettings();
	updateVideoAnalysisSettings();
}

void ConfVidX264MEncoderDialog::updateRateControlSettings()
{
	encSettings->x264.ratecontrole_aq_mode = aq_modeComboBox->itemData( aq_modeComboBox->currentIndex() ).toInt();
	encSettings->x264.ratecontrole_bitrate = bitrateLineEdit->text().toInt();
	encSettings->x264.ratecontrole_no_mbtree = no_mbtreeCheckBox->isChecked();
	encSettings->x264.ratecontrole_rc_lookahead = rc_lookaheadLineEdit->text().toInt();
	encSettings->x264.ratecontrole_qcomp = qcompLineEdit->text().toDouble();
	encSettings->x264.ratecontrole_ipratio = ipratioLineEdit->text().toDouble();
	encSettings->x264.ratecontrole_pbratio = pbratioLineEdit->text().toDouble();
	encSettings->x264.ratecontrole_pass = passComboBox->itemData( passComboBox->currentIndex() ).toInt();
	encSettings->x264.ratecontrole_stats = statsLineEdit->text();
	encSettings->x264.ratecontrole_slow_firstpass = slow_firstpassCheckBox->isChecked();
}

void ConfVidX264MEncoderDialog::updateFrameTypeSettings()
{
	encSettings->x264.frametype_ref = refLineEdit->text().toInt();
	encSettings->x264.frametype_scenecut = scenecutLineEdit->text().toInt();
	encSettings->x264.frametype_no_deblock = no_deblockCheckBox->isChecked();
	encSettings->x264.frametype_deblock_alpha = deblockAlphaLineEdit->text().toInt();
	encSettings->x264.frametype_deblock_beta = deblockBetaLineEdit->text().toInt();
	encSettings->x264.frametype_no_cabac = no_cabacCheckBox->isChecked();
	encSettings->x264.frametype_bframes = bframesLineEdit->text().toInt();
	encSettings->x264.frametype_b_adapt = b_adaptComboBox->itemData( b_adaptComboBox->currentIndex() ).toInt();
}

void ConfVidX264MEncoderDialog::updateVideoAnalysisSettings()
{
	encSettings->x264.analysis_me = meComboBox->itemData( meComboBox->currentIndex() ).toString();
	encSettings->x264.analysis_merange = merangeLineEdit->text().toInt();
	encSettings->x264.analysis_subme = submeComboBox->itemData( submeComboBox->currentIndex() ).toInt();
	encSettings->x264.analysis_partitions = partitionsLineEdit->text();
	encSettings->x264.analysis_no_mixed_refs = no_mixed_refsCheckBox->isChecked();
	encSettings->x264.analysis_no_8x8dct = no_8x8dctCheckBox->isChecked();
	encSettings->x264.analysis_no_fast_pskip = no_fast_pskipCheckBox->isChecked();
	encSettings->x264.analysis_trellis = trellisComboBox->itemData( trellisComboBox->currentIndex() ).toInt();
	encSettings->x264.analysis_direct = directComboBox->itemData( directComboBox->currentIndex() ).toString();
	encSettings->x264.analysis_no_psy = no_psyCheckBox->isChecked();
	encSettings->x264.analysis_psy_rdo = psy_rdoLineEdit->text().toDouble();
	encSettings->x264.analysis_psy_trellis = psy_trellisLineEdit->text().toDouble();
	encSettings->x264.analysis_no_dct_decimate = no_dct_decimateCheckBox->isChecked();
	encSettings->x264.analysis_deadzone_inter = deadzone_interLineEdit->text().toInt();
	encSettings->x264.analysis_deadzone_intra = deadzone_intraLineEdit->text().toInt();
	encSettings->x264.analysis_no_weightb = no_weightbCheckBox->isChecked();
}

void ConfVidX264MEncoderDialog::enterUserDefinedFps()
{
	double fps = encSettings->user_defined.x264.fps;
	
	UserDefinedFpsDialog *dlg = new UserDefinedFpsDialog(&fps, fpsMin, fpsMax, this);
	int res = dlg->exec();		
	Q_CHECK_PTR(dlg);
	delete(dlg);

	if ( res == QDialog::Rejected ) 
	{
		return;
	}

	encSettings->user_defined.x264.fps = fps;

	// Update combo box
	fpsComboBox->setItemText( 1, tr("%1 FPS (user defined)")
		.arg(fps));
	fpsComboBox->setItemData( 1, fps);

	// Select user defined rezolution
	fpsComboBox->setCurrentIndex( 1 );
}

void ConfVidX264MEncoderDialog::enterUserDefinedSize()
{
	QSize size(encSettings->user_defined.x264.resX, encSettings->user_defined.x264.resY);

	QSize min = QSize(widthMin, heightMin);
	QSize max = QSize(widthMax, heightMax);

	UserDefinedRezDialog *dlg = new UserDefinedRezDialog(&size, min, max, this);
	int res = dlg->exec();		
	Q_CHECK_PTR(dlg);
	delete(dlg);

	if ( res == QDialog::Rejected ) 
	{
		return;
	}

	encSettings->user_defined.x264.resX = size.width();
	encSettings->user_defined.x264.resY = size.height();

	// Update combo box
	rezComboBox->setItemText( 1, tr("%1x%2 (user defined)")
		.arg(size.width())
		.arg(size.height()));
	rezComboBox->setItemData( 1, size);

	// Select user defined rezolution
	rezComboBox->setCurrentIndex( 1 );
}

void ConfVidX264MEncoderDialog::settingsUpdateSetEnabled(const bool enable)
{
	settingsUpdateFrozen = !enable;
}

bool ConfVidX264MEncoderDialog::settingsUpdateIsDisabled()
{
	return settingsUpdateFrozen;
}

void ConfVidX264MEncoderDialog::populateFps()
{
	fpsComboBox->clear();

	// Item #0 (first must be the recommended framerate)
	double fps = Encoder::recommendsFps(encSettings, videoSource);

	encSettings->recommendation.x264.fps = fps;

	if (fps <= 0)
	{
		fps = 15.0;
	}

	fpsComboBox->addItem( tr("%1 FPS (recommended)")
		.arg(fps), fps);
	
	// Item #1 (second must be the user defined)
	fps = encSettings->user_defined.x264.fps;

	if (fps <= 0)
	{
		fps = 15.0;
	}

	encSettings->user_defined.x264.fps = fps;

	fpsComboBox->addItem( tr("%1 FPS (user defined)")
		.arg(fps) , fps);

	// Build a list of most common fps 
	QList<double> commonFps;
	commonFps << 15.0
		<< 23.976
		<< 24.0
		<< 25.0
		<< 29.970
		<< 30.0;

	// Item #2... (push every common rez) 
	while (!commonFps.isEmpty() )
	{
		fps = commonFps.takeFirst();

		fpsComboBox->addItem( tr("%1 FPS")
			.arg(fps) , fps);
	}

	// Select current rez
	fps =  encSettings->x264.fps;

	if (fps <= 0)
	{
		fps = 15.0;
	}

	encSettings->x264.fps = fps;


	int index = fpsComboBox->findData( fps );

	if (index == -1)
	{
		// Missing current fps in list is forced to be the user defined (item #1)
		index = 1;
		fpsComboBox->setItemText( index, tr("%1 FPS (user defined)")
			.arg(fps));
		fpsComboBox->setItemData( index, fps);
	}

	fpsComboBox->setCurrentIndex( index );
}

void ConfVidX264MEncoderDialog::populateRez()
{
	QSize size;
	
	rezComboBox->clear();

	// First must be the recommended size
	QSize sourceSize( videoSource->resX, videoSource->resY );

	size = Encoder::recommendsSize(encSettings, videoSource);

	if (size.width() <= 0)
	{
		size.setWidth(320);
	}

	if (size.height() <= 0)
	{
		size.setHeight(240);
	}

	encSettings->recommendation.x264.resX = size.width();
	encSettings->recommendation.x264.resY = size.height();

	// Item #0
	rezComboBox->addItem( tr("%1x%2 (recommended)")
		.arg(size.width())
		.arg(size.height()) , size);
	
	// Second must be the user defined
	size = QSize(encSettings->user_defined.x264.resX, encSettings->user_defined.x264.resY);

	if (size.width() <= 0)
	{
		size.setWidth(320);
	}

	if (size.height() <= 0)
	{
		size.setHeight(240);
	}

	encSettings->user_defined.x264.resX = size.width();
	encSettings->user_defined.x264.resY = size.height();

	// Item #1
	rezComboBox->addItem( tr("%1x%2 (user defined)")
		.arg(size.width())
		.arg(size.height()) , size);

	// Build a list of most common rez 
	QList<QSize> commonSizes;
	commonSizes << QSize( 176, 144 )
		<< QSize( 320, 240 )
		<< QSize( 352, 240 )
		<< QSize( 352, 288 )
		<< QSize( 640, 360 )
		<< QSize( 640, 480 )
		<< QSize( 720, 480 )
		<< QSize( 720, 576 )
		<< QSize( 1280, 720 );

	// Item #2... (push every common rez) 
	while (!commonSizes.isEmpty() )
	{
		size = commonSizes.takeFirst();

		rezComboBox->addItem( tr("%1x%2")
			.arg(size.width())
			.arg(size.height()) , size);
	}

	// Select current rez
	size = QSize(encSettings->x264.resX, encSettings->x264.resY);

	if (size.width() <= 0)
	{
		size.setWidth(320);
	}

	if (size.height() <= 0)
	{
		size.setHeight(240);
	}

	encSettings->x264.resX = size.width();
	encSettings->x264.resY = size.height();

	int index = rezComboBox->findData( size );

	if (index == -1)
	{
		// Missing current rez in list is forced to be the user defined (item #1)
		index = 1;
		rezComboBox->setItemText( index, tr("%1x%2 (user defined)")
			.arg(size.width())
			.arg(size.height()));
		rezComboBox->setItemData( index, size);
	}

	rezComboBox->setCurrentIndex( index );
}

void ConfVidX264MEncoderDialog::populatePresets()
{
	presetComboBox->clear();

	presetComboBox->addItem( "(not set)" , notset );
	presetComboBox->addItem( "Ultra Fast" , ultrafast );
	presetComboBox->addItem( "Very Fast" , veryfast );
	presetComboBox->addItem( "Faster" , faster );
	presetComboBox->addItem( "Fast" , fast );
	presetComboBox->addItem( "Medium" , medium );
	presetComboBox->addItem( "Slow" , slow );
	presetComboBox->addItem( "Slower" , slower );
	presetComboBox->addItem( "Very Slow" , veryslow );
	presetComboBox->addItem( "Placebo" , placebo );

	presetComboBox->setCurrentIndex( presetComboBox->findData( encSettings->x264.preset ) );
}

void ConfVidX264MEncoderDialog::populateProfiles()
{
	profileComboBox->clear();

	profileComboBox->addItem( "(not set)" , notset );
	profileComboBox->addItem( "High (no restrictions)" , high );
	profileComboBox->addItem( "Main" , main );
	profileComboBox->addItem( "Baseline" , baseline );
	profileComboBox->addItem( "Lossless" , lossless );  // not really a profile (do -qp 0 -crf 0)

	profileComboBox->setCurrentIndex( profileComboBox->findData( encSettings->x264.profile ) );
}

void ConfVidX264MEncoderDialog::populateTunes()
{
	tuneComboBox->clear();

	tuneComboBox->addItem( "(not set)" , notset );
	tuneComboBox->addItem( "Film: optimize for film content" , film );
	tuneComboBox->addItem( "Animation: optimize for animated content" , animation );
	tuneComboBox->addItem( "Grain: optimize for grainy content" , grain );
	tuneComboBox->addItem( "PSNR: optimize for PSNR" , psnr );
	tuneComboBox->addItem( "SSIM: optimize for SSIM" , ssim );
	tuneComboBox->addItem( "Fast Decode: optimize for fast decoding of content" , fastdecode );
	tuneComboBox->addItem( "Touhou: optimize for Touhou captures" , touhou );

	tuneComboBox->setCurrentIndex( tuneComboBox->findData( encSettings->x264.tune ) );
}

void ConfVidX264MEncoderDialog::populatePass()
{
	passComboBox->clear();

	passComboBox->addItem( "0: No stats (1 pass encoding)" , 0 );
	passComboBox->addItem( "1: Create a new stats file (first pass)" , 1 );
	passComboBox->addItem( "2: Read the stats file (final pass)" , 2 );
	passComboBox->addItem( "3: Read and update the stats file (intermediate)" , 3 );

	passComboBox->setCurrentIndex( passComboBox->findData( encSettings->x264.ratecontrole_pass ) );

	selectPass( passComboBox->currentIndex() );  // ensure processing related controls and settings
}

void ConfVidX264MEncoderDialog::populateAnalysisMe()
{
	meComboBox->clear();

	meComboBox->addItem( "Dia: diamond" , "dia" );
	meComboBox->addItem( "Hex: hexagon" , "hex" );
	meComboBox->addItem( "Umh: uneven multi-hex" , "umh" );
	meComboBox->addItem( "Exa: exhaustive" , "exa" );
	meComboBox->addItem( "Tesa: transformed exhaustive" , "tesa" );

	meComboBox->setCurrentIndex( meComboBox->findData( encSettings->x264.analysis_me ) );
}

void ConfVidX264MEncoderDialog::populateAnalysisSubMe()
{
	submeComboBox->clear();

	submeComboBox->addItem( " 0: fullpel only (not recommended)" , 0 );
	submeComboBox->addItem( " 1: QPel SAD 1 iteration" , 1 );
	submeComboBox->addItem( " 2: QPel SATD 2 iterations" , 2 );
	submeComboBox->addItem( " 3: HPel on MB then QPel" , 3 );
	submeComboBox->addItem( " 4: Always QPel" , 4 );
	submeComboBox->addItem( " 5: Multi QPel + bime" , 5 );
	submeComboBox->addItem( " 6: RD on I/P frames" , 6 );
	submeComboBox->addItem( " 7: RD on all frames" , 7 );
	submeComboBox->addItem( " 8: RD refinement on I/P frames" , 8 );
	submeComboBox->addItem( " 9: RD refinement on all frames" , 9 );
	submeComboBox->addItem( "10: QP-RD (requires trellis=2, aq-mode>0" , 10 );

	submeComboBox->setCurrentIndex( submeComboBox->findData( encSettings->x264.analysis_subme ) );
}

void ConfVidX264MEncoderDialog::populateAnalysisTrellis()
{
	trellisComboBox->clear();

	trellisComboBox->addItem( "0: No Quantization" , 0 );
	trellisComboBox->addItem( "1: Quantize on final macroblock" , 1 );
	trellisComboBox->addItem( "2: Always Quantize" , 2 );

	trellisComboBox->setCurrentIndex( trellisComboBox->findData( encSettings->x264.analysis_trellis ) );
}

void ConfVidX264MEncoderDialog::populateAnalysisDirect()
{
	directComboBox->clear();

	directComboBox->addItem( "None" , "none" );
	directComboBox->addItem( "Spatial" , "spatial" );
	directComboBox->addItem( "Temporal" , "temporal" );
	directComboBox->addItem( "Auto (spatial and temporal)" , "auto" );

	directComboBox->setCurrentIndex( directComboBox->findData( encSettings->x264.analysis_direct ) );
}

void ConfVidX264MEncoderDialog::populateFrameTypeBAdapt()
{
	b_adaptComboBox->clear();

	b_adaptComboBox->addItem( "0: Disable" , 0 );
	b_adaptComboBox->addItem( "1: Old Algorithm" , 1 );
	b_adaptComboBox->addItem( "2: New Algorithm" , 2 );

	b_adaptComboBox->setCurrentIndex( b_adaptComboBox->findData( encSettings->x264.frametype_b_adapt ) );
}

void ConfVidX264MEncoderDialog::populateRateControlAqMode()
{
	aq_modeComboBox->clear();

	aq_modeComboBox->addItem( "0: Disable" , 0 );
	aq_modeComboBox->addItem( "1: Redistribute" , 1 );
	aq_modeComboBox->addItem( "2: Auto-variance" , 2 );

	aq_modeComboBox->setCurrentIndex( aq_modeComboBox->findData( encSettings->x264.ratecontrole_aq_mode ) );
}

void ConfVidX264MEncoderDialog::defaultPushButtonClicked()
{
	settingsUpdateSetEnabled(false);  // inhibit settings changes on control changes

	encSettings->x264.clear();

	updateControls();
	settingsUpdateSetEnabled(true);
}

void ConfVidX264MEncoderDialog::rateDefaultPushButtonClicked()
{
	settingsUpdateSetEnabled(false);  // inhibit settings changes on control changes

	encoder_video_settings_t settings;

	settings.x264.clear();

	// Reset only rate control settings
	encSettings->x264.ratecontrole_aq_mode = settings.x264.ratecontrole_aq_mode;
	encSettings->x264.ratecontrole_bitrate = settings.x264.ratecontrole_bitrate;
	encSettings->x264.ratecontrole_no_mbtree = settings.x264.ratecontrole_no_mbtree;
	encSettings->x264.ratecontrole_rc_lookahead = settings.x264.ratecontrole_rc_lookahead;
	encSettings->x264.ratecontrole_qcomp = settings.x264.ratecontrole_qcomp;
	encSettings->x264.ratecontrole_ipratio = settings.x264.ratecontrole_ipratio;
	encSettings->x264.ratecontrole_pbratio = settings.x264.ratecontrole_pbratio;
	encSettings->x264.ratecontrole_pass = settings.x264.ratecontrole_pass;
	encSettings->x264.ratecontrole_stats = settings.x264.ratecontrole_stats;
	encSettings->x264.ratecontrole_slow_firstpass = settings.x264.ratecontrole_slow_firstpass;

	updateControls();
	settingsUpdateSetEnabled(true);
}

void ConfVidX264MEncoderDialog::frametypeDefaultPushButtonClicked()
{
	settingsUpdateSetEnabled(false);  // inhibit settings changes on control changes

	encoder_video_settings_t settings;

	settings.x264.clear();

	// Reset only frame type settings
	encSettings->x264.frametype_ref = settings.x264.frametype_ref;
	encSettings->x264.frametype_scenecut = settings.x264.frametype_scenecut;
	encSettings->x264.frametype_no_deblock = settings.x264.frametype_no_deblock;
	encSettings->x264.frametype_deblock_alpha = settings.x264.frametype_deblock_alpha;
	encSettings->x264.frametype_deblock_beta = settings.x264.frametype_deblock_beta;
	encSettings->x264.frametype_no_cabac = settings.x264.frametype_no_cabac;
	encSettings->x264.frametype_bframes = settings.x264.frametype_bframes;
	encSettings->x264.frametype_b_adapt = settings.x264.frametype_b_adapt;

	updateControls();
	settingsUpdateSetEnabled(true);
}

void ConfVidX264MEncoderDialog::analysisDefaultPushButtonClicked()
{
	settingsUpdateSetEnabled(false);  // inhibit settings changes on control changes

	encoder_video_settings_t settings;

	settings.x264.clear();

	// Reset only analysis settings
	encSettings->x264.analysis_me = settings.x264.analysis_me;
	encSettings->x264.analysis_merange = settings.x264.analysis_merange;
	encSettings->x264.analysis_subme = settings.x264.analysis_subme;
	encSettings->x264.analysis_partitions = settings.x264.analysis_partitions;
	encSettings->x264.analysis_no_mixed_refs = settings.x264.analysis_no_mixed_refs;
	encSettings->x264.analysis_no_8x8dct = settings.x264.analysis_no_8x8dct;
	encSettings->x264.analysis_no_fast_pskip = settings.x264.analysis_no_fast_pskip;
	encSettings->x264.analysis_trellis = settings.x264.analysis_trellis;
	encSettings->x264.analysis_direct = settings.x264.analysis_direct;
	encSettings->x264.analysis_no_psy = settings.x264.analysis_no_psy;
	encSettings->x264.analysis_psy_rdo = settings.x264.analysis_psy_rdo;
	encSettings->x264.analysis_psy_trellis = settings.x264.analysis_psy_trellis;
	encSettings->x264.analysis_no_dct_decimate = settings.x264.analysis_no_dct_decimate;
	encSettings->x264.analysis_deadzone_inter = settings.x264.analysis_deadzone_inter;
	encSettings->x264.analysis_deadzone_intra = settings.x264.analysis_deadzone_intra;
	encSettings->x264.analysis_no_weightb = settings.x264.analysis_no_weightb;

	updateControls();
	settingsUpdateSetEnabled(true);
}

void ConfVidX264MEncoderDialog::partitionsPushButtonClicked()
{
	encoder_video_settings_t defaults;
	defaults.x264.clear();

	QString partitions(encSettings->x264.analysis_partitions);

	x264PartitionsDialog *dlg = new x264PartitionsDialog(&partitions,
		defaults.x264.analysis_partitions, 
		this);
	int res = dlg->exec();		
	Q_CHECK_PTR(dlg);
	delete(dlg);

	if ( res == QDialog::Rejected ) 
	{
		return;
	}

	encSettings->x264.analysis_partitions = partitions;

	// Update line edit control
	partitionsLineEdit->setText( encSettings->x264.analysis_partitions );
}

void ConfVidX264MEncoderDialog::selectRez(const int index)
{
	// Do nothing if empty or reset
	if (index < 0)
	{
		return;
	}

	if (index == 1)
	{
		enterUserDefinedSize();
	}

	QSize size = rezComboBox->itemData(index).toSize();

	encSettings->x264.resX = size.width();
	encSettings->x264.resY = size.height();
}

void ConfVidX264MEncoderDialog::selectFps(const int index)
{
	// Do nothing if empty or reset
	if (index < 0)
	{
		return;
	}

	if (index == 1)
	{
		enterUserDefinedFps();
	}

	encSettings->x264.fps = fpsComboBox->itemData(index).toDouble();
}

void ConfVidX264MEncoderDialog::selectPreset(const int index)
{
	// Do nothing if empty or reset
	if (index < 0)
	{
		return;
	}

	encSettings->x264.preset = presetComboBox->itemData(index).toInt();

	applyPresetOnSettings(encSettings->x264.preset);
	updateControls();
}

void ConfVidX264MEncoderDialog::selectProfile(const int index)
{
	// Do nothing if empty or reset
	if (index < 0)
	{
		return;
	}

	encSettings->x264.profile = profileComboBox->itemData(index).toInt();

	interlacedCheckBox->setDisabled(encSettings->x264.profile == baseline);

	applyProfileOnSettings(encSettings->x264.profile);
	updateControls();
}

void ConfVidX264MEncoderDialog::selectTune(const int index)
{
	// Do nothing if empty or reset
	if (index < 0)
	{
		return;
	}

	encSettings->x264.tune = tuneComboBox->itemData(index).toInt();

	applyTuneOnSettings(encSettings->x264.tune);
	updateControls();
}

void ConfVidX264MEncoderDialog::selectPass(const int index)
{
	// Do nothing if empty or reset
	if (index < 0)
	{
		return;
	}

	statsLineEdit->setDisabled(index == 0);
	
	slow_firstpassCheckBox->setEnabled(index == 1);
	slow_firstpassCheckBox->setChecked(false);
	encSettings->x264.ratecontrole_slow_firstpass = false;

	encSettings->x264.ratecontrole_pass = passComboBox->itemData(index).toInt();
}

void ConfVidX264MEncoderDialog::bitrateLineEditChanged(const QString &value)
{
	encSettings->xvid.bitrate = value.toInt();

	bitrateSlider->setValue( encSettings->xvid.bitrate );
}

void ConfVidX264MEncoderDialog::bitrateLineEdit_2Changed(const QString &value)
{
	bitrateSlider->setValue( value.toInt() );
}

void ConfVidX264MEncoderDialog::bitrateSliderChanged(const int value)
{
	bitrateLineEdit->setText( QString::number(value) );

	bitrateSlider_2->setValue( value );
}

void ConfVidX264MEncoderDialog::bitrateSlider_2Changed(const int value)
{
	bitrateLineEdit_2->setText( QString::number(value) );

	bitrateSlider->setValue( value );
}

void ConfVidX264MEncoderDialog::applyPresetOnSettings(const int preset)
{
	// This option overrides all other settings
	switch ( preset )
	{
	case ultrafast:
		encSettings->x264.frametype_ref = 1;
		encSettings->x264.frametype_scenecut = 0;
		encSettings->x264.frametype_no_deblock = true;
		encSettings->x264.frametype_no_cabac = true;
		encSettings->x264.frametype_bframes = 0;
		encSettings->x264.analysis_partitions = "none";
		encSettings->x264.analysis_no_8x8dct = true;
		encSettings->x264.analysis_me = "dia";
		encSettings->x264.analysis_subme = 0;
		encSettings->x264.ratecontrole_aq_mode = 0;
		encSettings->x264.analysis_no_mixed_refs = true;
		encSettings->x264.analysis_trellis = 0;
		encSettings->x264.frametype_b_adapt = 0;
		encSettings->x264.ratecontrole_no_mbtree = true;
		break;
	case veryfast:
		encSettings->x264.analysis_partitions = "i8x8,i4x4";
		encSettings->x264.analysis_me = "dia";
		encSettings->x264.analysis_subme = 1;
		encSettings->x264.frametype_ref = 1;
		encSettings->x264.analysis_no_mixed_refs = true;
		encSettings->x264.analysis_trellis = 0;
		encSettings->x264.ratecontrole_no_mbtree = true;
		break;
	case faster:
		encSettings->x264.analysis_no_mixed_refs = true;
		encSettings->x264.frametype_ref = 2;
		encSettings->x264.analysis_subme = 4;
		encSettings->x264.ratecontrole_no_mbtree = true;
		break;
	case fast:
		encSettings->x264.frametype_ref = 2;
		encSettings->x264.analysis_subme = 6;
		encSettings->x264.ratecontrole_rc_lookahead = 30;
		break;
	case medium:
		// No changes. 
		break;
	case slow:
		encSettings->x264.analysis_me = "umh";
		encSettings->x264.analysis_subme = 8;
		encSettings->x264.frametype_ref = 5;
		encSettings->x264.ratecontrole_rc_lookahead = 50;
		encSettings->x264.frametype_b_adapt = 2;
		encSettings->x264.analysis_direct = "auto";
		break;
	case slower:
		encSettings->x264.analysis_me = "umh";
		encSettings->x264.analysis_subme = 9;
		encSettings->x264.frametype_ref = 8;
		encSettings->x264.frametype_b_adapt = 2;
		encSettings->x264.analysis_direct = "auto";
		encSettings->x264.analysis_partitions = "all";
		encSettings->x264.analysis_trellis = 2;
		encSettings->x264.ratecontrole_rc_lookahead = 60;
		break;
	case veryslow:
		encSettings->x264.analysis_me = "umh";
		encSettings->x264.analysis_subme = 10;
		encSettings->x264.analysis_merange = 24;
		encSettings->x264.frametype_ref = 16;
		encSettings->x264.frametype_b_adapt = 2;
		encSettings->x264.analysis_direct = "auto";
		encSettings->x264.analysis_partitions = "all";
		encSettings->x264.analysis_trellis = 2;
		encSettings->x264.frametype_bframes = 8;
		encSettings->x264.ratecontrole_rc_lookahead = 60;
		break;
	case placebo:
		encSettings->x264.analysis_me = "tesa";
		encSettings->x264.analysis_subme = 10;
		encSettings->x264.analysis_merange = 24;
		encSettings->x264.frametype_ref = 16;
		encSettings->x264.frametype_b_adapt = 2;
		encSettings->x264.analysis_direct = "auto";
		encSettings->x264.analysis_partitions = "all";
		encSettings->x264.analysis_no_fast_pskip = true;
		encSettings->x264.analysis_trellis = 2;
		encSettings->x264.frametype_bframes = 16;
		encSettings->x264.ratecontrole_rc_lookahead = 60;
		break;
	case notset:	// no preset
	default:
		break;
	}
}

void ConfVidX264MEncoderDialog::applyProfileOnSettings(const int profile)
{
	// "lossless" is not really a profile
	if ( profile == lossless )
	{
		encSettings->x264.ratecontrole_qp = 0;
		encSettings->x264.ratecontrole_crf = 0;
		return;
	}

	// Sure, not "lossless" anylonger
	encoder_video_settings_t resettings;
	resettings.clear();
	encSettings->x264.ratecontrole_qp = resettings.x264.ratecontrole_qp;
	encSettings->x264.ratecontrole_crf = resettings.x264.ratecontrole_crf;

	// This option overrides all other settings
	switch ( profile )
	{
	case main:
		encSettings->x264.analysis_no_8x8dct = true;
		// no cqm* options allowed
		encSettings->x264.analysis_cqm = "flat";
		encSettings->x264.analysis_cqmfile = "";	
		encSettings->x264.analysis_cqm4 = "";		
		encSettings->x264.analysis_cqm8 = "";		
		break;
	case baseline:
		encSettings->x264.analysis_no_8x8dct = true;
		encSettings->x264.frametype_no_cabac = true;
		encSettings->x264.frametype_bframes = 0;
		// no cqm* options allowed
		encSettings->x264.analysis_cqm = "flat";
		encSettings->x264.analysis_cqmfile = "";	
		encSettings->x264.analysis_cqm4 = "";		
		encSettings->x264.analysis_cqm8 = "";		
		// note: exits with error if you set interlaced flag (handled in select>profile())
		encSettings->x264.frametype_interlaced = false;
		break;
	case high:	// no restrictions
	default:
		break;
	}
}

void ConfVidX264MEncoderDialog::applyTuneOnSettings(const int tune)
{
	// This option overrides all other settings
	switch ( tune )
	{
	case film:
		encSettings->x264.frametype_deblock_alpha = -1;	
		encSettings->x264.frametype_deblock_beta = -1;
		encSettings->x264.analysis_psy_rdo = 1.0;
		encSettings->x264.analysis_psy_trellis = 0.15;
		break;
	case animation:
		encSettings->x264.frametype_deblock_alpha = 1;	
		encSettings->x264.frametype_deblock_beta = 1;
		encSettings->x264.analysis_psy_rdo = 0.4;
		encSettings->x264.analysis_psy_trellis = 0.0;
		encSettings->x264.frametype_ref *= 2;  // maybe also done by the encoder if supports --tune
		encSettings->x264.ratecontrole_aq_strength = 0.6;
		encSettings->x264.frametype_bframes += 2;  // maybe also done by the encoder if supports --tune
		break;
	case grain:
		encSettings->x264.frametype_deblock_alpha = -2;	
		encSettings->x264.frametype_deblock_beta = -2;
		encSettings->x264.analysis_psy_rdo = 1.0;
		encSettings->x264.analysis_psy_trellis = 0.25;
		encSettings->x264.analysis_no_dct_decimate = true;	
		encSettings->x264.ratecontrole_ipratio = 1.1;	
		encSettings->x264.ratecontrole_pbratio = 1.1;	
		encSettings->x264.ratecontrole_aq_strength = 0.5;
		encSettings->x264.analysis_deadzone_inter = 6;	
		encSettings->x264.analysis_deadzone_intra = 6;	
		encSettings->x264.ratecontrole_qcomp = 0.8;		
		break;
	case psnr:
		encSettings->x264.ratecontrole_aq_mode = 0;		
		encSettings->x264.analysis_no_psy = true;	
		break;
	case ssim:
		encSettings->x264.ratecontrole_aq_mode = 2;		
		encSettings->x264.analysis_no_psy = true;	
		break;
	case fastdecode:
		encSettings->x264.frametype_no_deblock = true;	
		encSettings->x264.frametype_no_cabac = true;	
		encSettings->x264.analysis_no_weightb = true;	
		break;
	case touhou:
		encSettings->x264.frametype_ref *= 2;  // maybe also done by the encoder if supports --tune
		encSettings->x264.frametype_deblock_alpha = 1;	
		encSettings->x264.frametype_deblock_beta = -1;
		encSettings->x264.analysis_psy_rdo = 1.0;
		encSettings->x264.analysis_psy_trellis = 0.2;
		encSettings->x264.ratecontrole_aq_strength = 1.3;
		// Add p4x4 if p8x8 is enabled
		if ( encSettings->x264.analysis_partitions.contains("p8x8", Qt::CaseInsensitive) 
			&& !encSettings->x264.analysis_partitions.contains("p4x4", Qt::CaseInsensitive) )
		{
			encSettings->x264.analysis_partitions.append(",p4x4");
		}
		break;
	case notset:	// no preset
	default:
		break;
	}
}

void ConfVidX264MEncoderDialog::setWhatsThis()
{
	rezComboBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html>\n"
"<head>\n"
"<meta name=\"qrichtext\" content=\"1\" />\n"
"<style type=\"text/css\">\n"
"p, li {\n"
"	white-space: pre-wrap;\n"
"}\n"
".centercell {\n"
"	text-align: center;\n"
"}\n"
".mybold {\n"
"	font-weight: 600;\n"
"}\n"
"</style>\n"
"</head>\n"
"<body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p>Output movie<span class=\"mybold\"> picture size</span>. Recommended resolutions:</p>\n"
"<p>\n"
"<table border=\"0.25\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px;\" cellspacing=\"0\" cellpadding=\"0\">\n"
"  <tr class=\"mybold\">\n"
"    <td>Display </td>\n"
"    <td class=\"centercell\"> NTSC </td>\n"
"    <td class=\"centercell\"> PAL </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Handheld </td>\n"
"    <td class=\"centercell\">192x144 </td>\n"
"    <td class=\"centercell\">192x144 </td>\n"
"  </tr>\n"
"  <tr>\n"
""
"    <td>Portable </td>\n"
"    <td class=\"centercell\">352x240 </td>\n"
"    <td class=\"centercell\">352x288 </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Large Handheld </td>\n"
"    <td class=\"centercell\">416x240 </td>\n"
"    <td class=\"centercell\">512x288 </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Notebook / Desktop </td>\n"
"    <td class=\"centercell\">640x360 </td>\n"
"    <td class=\"centercell\">640x360 </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Home Theater </td>\n"
"    <td class=\"centercell\">720x480 </td>\n"
"    <td class=\"centercell\">720x576 </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>HDTV </td>\n"
"    <td class=\"centercell\">1280x720 </td>\n"
"    <td class=\"centercell\">1280x720 </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>HDTV 1080</td>\n"
"    <td class=\"centercell\">1920x1080 </td>\n"
"    <td class=\"centercell\">1920x1080 </td>\n"
"  </tr>\n"
"</table>\n"
"</p>\n"
"<p>Recommended picture height are 480 or 240 for NTSC movies (which are  480-line video sources),  and 576 or 288 for PAL movies (which are  576-line video sources). </p>\n"
"</body>\n"
"</html>") );

	fpsComboBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html>\n"
"<head>\n"
"<meta name=\"qrichtext\" content=\"1\" />\n"
"<style type=\"text/css\">\n"
"p, li {\n"
"	white-space: pre-wrap;\n"
"}\n"
".centercell {\n"
"	text-align: center;\n"
"}\n"
".mybold {\n"
"	font-weight: 600;\n"
"}\n"
"</style>\n"
"</head>\n"
"<body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p>Output movie<span class=\"mybold\"> frame rate</span>. Recommended frame rate (fps, images/second):</p>\n"
"<p>\n"
"<table border=\"0.25\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px;\" cellspacing=\"0\" cellpadding=\"0\">\n"
"  <tr class=\"mybold\">\n"
"    <td>Display </td>\n"
"    <td class=\"centercell\"> NTSC </td>\n"
"    <td class=\"centercell\"> PAL </td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Handheld </td>\n"
"    <td class=\"centercell\">15 FPS</td>\n"
"    <td class=\"centercell\">15 FPS</td>\n"
"  </tr>\n"
""
"  <tr>\n"
"    <td>Portable </td>\n"
"    <td class=\"centercell\">15 FPS</td>\n"
"    <td class=\"centercell\">15 FPS</td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Large Handheld </td>\n"
"    <td class=\"centercell\">30 FPS</td>\n"
"    <td class=\"centercell\">25 FPS</td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Notebook / Desktop </td>\n"
"    <td class=\"centercell\">30 FPS</td>\n"
"    <td class=\"centercell\">25 FPS</td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>Home Theater </td>\n"
"    <td class=\"centercell\">30 FPS</td>\n"
"    <td class=\"centercell\">25 FPS</td>\n"
"  </tr>\n"
"  <tr>\n"
"    <td>HDTV </td>\n"
"    <td class=\"centercell\">30 FPS</td>\n"
"    <td class=\"centercell\">25 FPS</td>\n"
"  </tr>\n"
"</table>\n"
"</body>\n"
"</html>") );

	presetGroupBox->setWhatsThis(QString());

	presetLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">preset</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> Change options to trade off compression efficiency and quality. If you specify a preset, the changes it makes will be applied before all other parameters are applied.</span></p>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-"
"block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">ultrafast</span>:  <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 1, <a href=\"#scenecut\"><span style=\" text-decoration: underline; color:#0000ff;\">scenecut</span></a> 0, <a href=\"#no-deblock\"><span style=\" text-decoration: underline; color:#0000ff;\">no-deblock</span></a>, <a href=\"#no-cabac\"><span style=\" text-decoration: underline; color:#0000ff;\">no-cabac</span></a>, <a href=\"#bframes\"><span style=\" text-decoration: underline; color:#0000ff;\">bframes</span></a> 0, <a href=\"#partitions\"><span style=\" text-decoration: underline; color:#0000ff;\">partitions</span></a> none, <a href=\"#no-8x8dct\"><span style=\" text-decoration: underline; color:#0000ff;\">no-8x8dct</span></a>, <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> dia, <a href=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 0,<a href=\"#aq-"
"mode\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-mode</span></a> 0, <a href=\"#no-mixed-refs\"><span style=\" text-decoration: underline; color:#0000ff;\">no-mixed-refs</span></a>, <a href=\"#trellis\"><span style=\" text-decoration: underline; color:#0000ff;\">trellis</span></a> 0, <a href=\"#b-adapt\"><span style=\" text-decoration: underline; color:#0000ff;\">b-adapt</span></a> 0, <a href=\"#no-mbtree\"><span style=\" text-decoration: underline; color:#0000ff;\">no-mbtree</span></a></li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">veryfast</span>:  <a href=\"#partitions\"><span style=\" text-decoration: underline; color:#0000ff;\">partitions</span></a> i8x8,i4x4, <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> dia, <a href"
"=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 1, <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 1, <a href=\"#no-mixed-refs\"><span style=\" text-decoration: underline; color:#0000ff;\">no-mixed-refs</span></a>, <a href=\"#trellis\"><span style=\" text-decoration: underline; color:#0000ff;\">trellis</span></a> 0, <a href=\"#no-mbtree\"><span style=\" text-decoration: underline; color:#0000ff;\">no-mbtree</span></a></li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">faster</span>:  <a href=\"#no-mixed-refs\"><span style=\" text-decoration: underline; color:#0000ff;\">no-mixed-refs</span></a>, <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 2, <a href=\"#subme\""
"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 4, <a href=\"#no-mbtree\"><span style=\" text-decoration: underline; color:#0000ff;\">no-mbtree</span></a></li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">fast</span>:  <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 2, <a href=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 6, <a href=\"#rc-lookahead\"><span style=\" text-decoration: underline; color:#0000ff;\">rc-lookahead</span></a> 30</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><"
"span style=\" font-weight:600;\">medium</span>:  no changes</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">slow</span>:  <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> umh, <a href=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 8, <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 5, <a href=\"#b-adapt\"><span style=\" text-decoration: underline; color:#0000ff;\">b-adapt</span></a> 2, <a href=\"#direct\"><span style=\" text-decoration: underline; color:#0000ff;\">direct</span></a> auto, <a href=\"#rc-lookahead\"><span style=\" text-decoration: underline; color:#0000ff;\">rc-lookahead</span></a> 50</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-"
"family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">slower</span>:  <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> umh, <a href=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 9, <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 8, <a href=\"#b-adapt\"><span style=\" text-decoration: underline; color:#0000ff;\">b-adapt</span></a> 2, <a href=\"#direct\"><span style=\" text-decoration: underline; color:#0000ff;\">direct</span></a> auto, <a href=\"#partitions\"><span style=\" text-decoration: underline; color:#0000ff;\">partitions</span></a> all, <a href=\"#trellis\"><span style=\" text-decoration: underline; color:#0000ff;\">trellis</span></a> 2, <a href=\"#rc-lookahead\"><span style=\" text-decoration: underline; color:#0000ff;\">rc-"
"lookahead</span></a> 60</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">veryslow</span>:  <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> umh, <a href=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 10, <a href=\"#merange\"><span style=\" text-decoration: underline; color:#0000ff;\">merange</span></a> 24, <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 16, <a href=\"#b-adapt\"><span style=\" text-decoration: underline; color:#0000ff;\">b-adapt</span></a> 2, <a href=\"#direct\"><span style=\" text-decoration: underline; color:#0000ff;\">direct</span></a> auto, <a href=\"#partitions\"><span style=\" text-decoration: underline; color:#0000ff;\">partitions</span></a>"
" all, <a href=\"#trellis\"><span style=\" text-decoration: underline; color:#0000ff;\">trellis</span></a> 2, <a href=\"#bframes\"><span style=\" text-decoration: underline; color:#0000ff;\">bframes</span></a> 8,<a href=\"#rc-lookahead\"><span style=\" text-decoration: underline; color:#0000ff;\">rc-lookahead</span></a> 60</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">placebo</span>:  <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> tesa, <a href=\"#subme\"><span style=\" text-decoration: underline; color:#0000ff;\">subme</span></a> 10, <a href=\"#merange\"><span style=\" text-decoration: underline; color:#0000ff;\">merange</span></a> 24, <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> 16, <a href=\"#b"
"-adapt\"><span style=\" text-decoration: underline; color:#0000ff;\">b-adapt</span></a> 2, <a href=\"#direct\"><span style=\" text-decoration: underline; color:#0000ff;\">direct</span></a> auto, <a href=\"#partitions\"><span style=\" text-decoration: underline; color:#0000ff;\">partitions</span></a> all, <a href=\"#no-fast-pskip\"><span style=\" text-decoration: underline; color:#0000ff;\">no-fast-pskip</span></a>, <a href=\"#trellis\"><span style=\" text-decoration: underline; color:#0000ff;\">trellis</span></a>2, <a href=\"#bframes\"><span style=\" text-decoration: underline; color:#0000ff;\">bframes</span></a> 16, <a href=\"#rc-lookahead\"><span style=\" text-decoration: underline; color:#0000ff;\">rc-lookahead</span></a> 60</li></ul></body></html>") );

	profileLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html>\n"
"<head>\n"
"<meta name=\"qrichtext\" content=\"1\" />\n"
"<style type=\"text/css\">\n"
"p, li {\n"
"	white-space: pre-wrap;\n"
"}\n"
"</style>\n"
"</head>\n"
"<body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">profile</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> Limit the profile of the output stream. This option overrides all other settings, so if you use it, you will be guaranteed a compatible stream. If you set this option, you cannot use lossless encoding (--</span><a href=\"#qp\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000"
"ff;\">qp</span></a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> 0 or --</span><a href=\"#crf\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">crf</span></a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> 0).</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">The available options are:</span></p>\n"
"<ul style=\"-qt-list-indent: 1;\">\n"
"  <li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> <span style=\" font-weight:600;\">lossless</span>: Sets <a href=\"#cqm\"><span style=\" text-decoration: underline; color:#0000ff;\">qp</span></a> and <a href=\"#bframes\"><span style=\"text-decoration: underline; color:#0000ff;\">crf</span></a> to 0 for lossless encoding. </li>\n"
"  <li style=\" font-family:'"
"Arial, Helvetica, sans-serif'; font-size:8pt;\"> <span style=\" font-weight:600;\">baseline</span>: Sets <a href=\"#no-8x8dct\"><span style=\" text-decoration: underline; color:#0000ff;\">no-8x8dct</span></a>, <a href=\"#no-cabac\"><span style=\" text-decoration: underline; color:#0000ff;\">no-cabac</span></a>, no <a href=\"#cqm\"><span style=\" text-decoration: underline; color:#0000ff;\">cqm*</span></a> options allowed, no <a href=\"#bframes\"><span style=\" text-decoration: underline; color:#0000ff;\">bframes</span></a>. Exits with error if you set <a href=\"#interlaced\"><span style=\" text-decoration: underline; color:#0000ff;\">interlaced</span></a> flag. </li>\n"
"  <li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> <span style=\" font-weight:600;\">main</span>: Sets <a href=\"#no-8x8dct\"><span style=\" text-decoration: underline; color:#0000ff;\">no-8x8dct</span></a> and no <a href=\"#cqm\"><span style=\" text-decoration: underline; color:#0000ff;\">cqm*</span></a> options allo"
"wed. </li>\n"
"  <li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> <span style=\" font-weight:600;\">high</span>: No restrictions.</li>\n"
"</ul>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> High, unless your playback device only supports main or baseline.</span></p>\n"
"</body>\n"
"</html>") );

	interlacedCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'sans-serif'; font-size:8pt; font-weight:600; color:#000000;\">interlaced</span><span style=\" font-family:'sans-serif'; font-size:8pt; color:#000000;\"> Enable interlaced encoding. x264's interlaced encoding is inherently less efficient than its progressive encoding, so</span><span style=\" font-family:'sans-serif'; font-size:8pt; font-weight:600; font-style:italic; color:#000000;\"> it is probably better to deinterlace an interlaced source before encoding rather than use interlaced mode</span><span style=\" font-family:'sans-"
"serif'; font-size:8pt; color:#000000;\">.</span></p></body></html>") );

	tuneGroupBox->setWhatsThis(QString());

	tuneLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">tune</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> Tune options to further optimise them for your input content. If you specify a tuning, the changes will be applied after </span><a href=\"#preset\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">preset</span></a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> but before all o"
"ther parameters.</span></p>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">film</span>: Optimize for film content: <a href=\"#deblock\"><span style=\" text-decoration: underline; color:#0000ff;\">deblock</span></a> -1:-1, <a href=\"#psy-rd\"><span style=\" text-decoration: underline; color:#0000ff;\">psy-rd</span></a> 1:0.15</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">animation</span>: Optimize for animated content: <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> (double default reference count if greater than 1), <a href=\""
"#deblock\"><span style=\" text-decoration: underline; color:#0000ff;\">deblock</span></a> 1:1,<a href=\"#psy-rd\"><span style=\" text-decoration: underline; color:#0000ff;\">psy-rd</span></a> 0.4:0, <a href=\"#aq-strength\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-strength</span></a> 0.6, <a href=\"#bframes\"><span style=\" text-decoration: underline; color:#0000ff;\">bframes</span></a> (add 2 bframes to the default)</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">grain</span>: Optimize for grainy content: <a href=\"#deblock\"><span style=\" text-decoration: underline; color:#0000ff;\">deblock</span></a> -2:-2, <a href=\"#psy-rd\"><span style=\" text-decoration: underline; color:#0000ff;\">psy-rd</span></a> 1:0.25, <a href=\"#no-dct-decimate\"><span style=\" text-d"
"ecoration: underline; color:#0000ff;\">no-dct-decimate</span></a>, <a href=\"#ipratio\"><span style=\" text-decoration: underline; color:#0000ff;\">ipratio</span></a> 1.1, <a href=\"#pbratio\"><span style=\" text-decoration: underline; color:#0000ff;\">pbratio</span></a> 1.1,<a href=\"#aq-strength\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-strength</span></a> 0.5, <a href=\"#deadzone-inter.2Fintra\"><span style=\" text-decoration: underline; color:#0000ff;\">deadzone-intra</span></a> 6, <a href=\"#deadzone-inter.2Fintra\"><span style=\" text-decoration: underline; color:#0000ff;\">deadzone-inter</span></a> 6, <a href=\"#qcomp\"><span style=\" text-decoration: underline; color:#0000ff;\">qcomp</span></a> 0.8</li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">psnr</span"
">: Optimize for PSNR: <a href=\"#aq-mode\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-mode</span></a> 0, <a href=\"#no-psy\"><span style=\" text-decoration: underline; color:#0000ff;\">no-psy</span></a></li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">ssim</span>: Optimize for SSIM: <a href=\"#aq-mode\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-mode</span></a> 2, <a href=\"#no-psy\"><span style=\" text-decoration: underline; color:#0000ff;\">no-psy</span></a></li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">fastdecode</span>"
": Optimize for fast decoding of content: <a href=\"#no-deblock\"><span style=\" text-decoration: underline; color:#0000ff;\">no-deblock</span></a>, <a href=\"#no-cabac\"><span style=\" text-decoration: underline; color:#0000ff;\">no-cabac</span></a>, <a href=\"#no-weightb\"><span style=\" text-decoration: underline; color:#0000ff;\">no-weightb</span></a></li></ul>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">touhou</span>: Optimize for <a href=\"http://en.wikipedia.org/wiki/Touhou\"><span style=\" text-decoration: underline; color:#0000ff;\">Touhou</span></a> captures: <a href=\"#ref\"><span style=\" text-decoration: underline; color:#0000ff;\">ref</span></a> (double default reference count if greater than 1), <a href=\"#deblock\"><span style=\" text-decoration: underline; color:#0000ff;\">deb"
"lock</span></a> -1:-1, <a href=\"#psy-rd\"><span style=\" text-decoration: underline; color:#0000ff;\">psy-rd</span></a> 1:0.2, <a href=\"#aq-strength\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-strength</span></a> 1.3, <a href=\"#partitions\"><span style=\" text-decoration: underline; color:#0000ff;\">partitions</span></a> (add p4x4 if p8x8 is enabled)</li></ul>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">The </span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">peak signal-to-noise ratio</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> (PSNR) is  commonly used as a measure of quality of reconstruction of lossy  video codecs.   When the two images are identical the PSNR will be an infinite.  The PSNR is an engineering term for the ratio between the maxim"
"um possible power of a signal and the power of corrupting noise that affects the fidelity of its representation. In the case of video compression, the signal is the original data, and the noise is the error introduced by compression,  therefore in some cases one reconstruction may appear to be closer to the original than another, even though it has a lower PSNR (a higher PSNR would normally indicate that the reconstruction is of higher quality).</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">The </span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">structural similarity</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> (SSIM) index is a method for measuring the similarity between two images. </span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8p"
"t; font-style:italic;\">SSIM is designed to improve on traditional methods like peak signal-to-noise ratio (PSNR) and mean squared error (MSE), which have proved to be inconsistent with human eye perception.</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">    The  SSIM index is a decimal value between -1 and 1, and value 1 is only reachable in the case of two identical sets of data.   </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> According to your content. Do not specify if your source doesn't match any of the options.</span></p></body></html>") );

	defaultPushButton->setWhatsThis(QString());

	aq_modeLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">aq-mode</span><span style=\" font-size:8pt; font-style:italic;\"> </span><span style=\" font-size:8pt;\">Adaptive Quantization Mode </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Without AQ, x264 tends to underallocate bits to less-detailed sections. AQ is used to better distribute the available bits between all macroblocks in the video. This setting changes what scope AQ re-arranges "
"bits in: </span></p>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-size:8pt;\" style=\" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">0: Do not use AQ at all. </li>\n"
"<li style=\" font-size:8pt;\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">1: Allow AQ to redistribute bits across the whole video and within frames. </li>\n"
"<li style=\" font-size:8pt;\" style=\" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">2: Auto-variance AQ (experimental) uses log(var)^2 instead of log(var) and attempts to adapt strength per-frame. </li></ul>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">See also:</span><span style=\" font-size:8pt;\"> </span><a href=\"#aq-strength\"><span style=\" font"
"-size:8pt; text-decoration: underline; color:#0000ff;\">aq-strength</span></a><span style=\" font-size:8pt;\"> </span></p></body></html>") );

	aq_strengthLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">aq-strength </span><span style=\" font-size:8pt;\">Adaptive Quantization Strength </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Sets the strength of AQ bias towards low detail ('flat') macroblocks. Negative values are not allowed. Values more than a couple of hundred percent off from 1.0 are probably a bad idea. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-"
"left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">See also:</span><span style=\" font-size:8pt;\"> </span><a href=\"#aq-mode\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">aq-mode</span></a><span style=\" font-size:8pt;\"> </span></p></body></html>") );

	no_mbtreeCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-mbtree </span>Disable macroblock tree ratecontrol. Using macroblock tree ratecontrol overall improves the compression by keeping track of temporal propagation across frames and weighting accordingly. Requires a new large statsfile in addition to the already existing for multipass encodes. Currently does not work with <a href=\"#b-pyramid\"><span style=\" text-decoration: underline; color:#0000ff;\">b-pyramid</span></a> yet. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margi"
"n-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Recommendation:</span> Default </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">See Also:</span> <a href=\"#rc-lookahead\"><span style=\" text-decoration: underline; color:#0000ff;\">rc-lookahead</span></a> </p></body></html>") );

	rc_lookaheadLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">rc-lookahead</span><span style=\" font-size:8pt;\"> Sets the number of frames to use for MB-tree ratecontrol and VBV-lookahead. The maximum allowed value is </span><span style=\" font-size:8pt; font-weight:600;\">250</span><span style=\" font-size:8pt;\">. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">For the MB-tree portion of this, increasing the frame count generates better result"
"s but is also slower. The maximum buffer value used by MB-tree is the MIN( rc-lookahead, </span><a href=\"#keyint\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">keyint</span></a><span style=\" font-size:8pt;\"> ) </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">For the VBV-lookahead portion of this, increasing the frame count generates better stability and accuracy when using VBV. The maximum value used by VBV-lookahead is MIN( rc-lookahead, MAX( </span><a href=\"#keyint\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">keyint</span></a><span style=\" font-size:8pt;\">, MAX( </span><a href=\"#vbv-maxrate\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">vbv-maxrate</span></a><span style=\" font-size:8pt;\">, </span><a href=\"#bitrate\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\""
">bitrate</span></a><span style=\" font-size:8pt;\"> ) / </span><a href=\"#vbv-bufsize\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">vbv-bufsize</span></a><span style=\" font-size:8pt;\"> * </span><a href=\"#fps\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">fps</span></a><span style=\" font-size:8pt;\"> ) ) </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">See Also:</span><span style=\" font-size:8pt;\"> </span><a href=\"#no-mbtree\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">no-mbtree</span></a><span style=\" font-size:8pt;\">, </span><"
"a href=\"#vbv-bufsize\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">vbv-bufsize</span></a><span style=\" font-size:8pt;\">, </span><a href=\"#vbv-maxrate\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">vbv-maxrate</span></a><span style=\" font-size:8pt;\"> </span></p></body></html>") );

	qcompLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">qcomp</span><span style=\" font-size:8pt;\"> Quantizer curve compression factor. 0.0 =&gt; Constant Bitrate, 1.0 =&gt; Constant Quantizer. Note that adaptive quantization partially replaces the effect of qcomp and x264 will internally raise qcomp to compensate based on the adaptive quantization strength. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</"
"span><span style=\" font-size:8pt;\"> Default </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">See Also:</span> <a href=\"#rceq\"><span style=\" text-decoration: underline; color:#0000ff;\">rceq</span></a>, <a href=\"#cplxblur\"><span style=\" text-decoration: underline; color:#0000ff;\">cplxblur</span></a>, <a href=\"#qblur\"><span style=\" text-decoration: underline; color:#0000ff;\">qblur</span></a> </p></body></html>") );

	ipratioLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">ipratio</span><span style=\" font-size:8pt;\"> Sets the target average increase in bitrate for I-frames as compared to P-frames. Seen as 'keyframe boost' in Xvid. Higher values increase the quality of I-frames. This makes them better references, which can improve the overall image quality. The problem is that the extra bits taken by the I-frames are taken from the P- and B-frames, which makes this variable a balancing act. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; ma"
"rgin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">See also:</span> <a href=\"#pbratio\"><span style=\" text-decoration: underline; color:#0000ff;\">pbratio</span></a> </p></body></html>") );

	pbratioLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">pbratio</span><span style=\" font-size:8pt;\"> Sets the targest average reduction in bitrate for B-frames as compared to P-frames. This variable works more or less the same as ipratio, above. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">See also:</span> <a href=\"#ipratio\"><span style=\" text-decoration: underline; color:#0000ff;\">ipratio</span></a> </p></body></html>") );

	passLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">pass</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">This is an important setting for 2pass encoding. It controls what x264 will do with the </span><a href=\"#stats\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">stats</span><"
"/a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\"> file. It has three settings:</span></p>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">1</span>: Create a new stats file. Use this on the first pass.  </li>\n"
"<li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">2</span>: Read the stats file. Use this on the final pass.  </li>\n"
"<li style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\" style=\" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">3</span>: Read the stats file, and update i"
"t as well.</li></ul>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">The stats file contains information about every input frame, which can be input to x264 in order to improve the output. The idea is you run a first pass to generate the stats file, and the second pass will create an optimized encode of the video. The improvement is mostly gained from better ratecontrol.</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">See also: </span><a href=\"#stats\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">stats</span></a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">, </span><a href=\"#bitrate\"><span"
" style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">bitrate</span></a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">, </span><a href=\"#slow-firstpass\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">slow-firstpass</span></a><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">.</span></p></body></html>") );

	statsLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">stats</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">Set the location that x264 will read/write the </span><a href=\"#pass\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">pass</span></a><span style=\" font-family:'Arial, Helv"
"etica, sans-serif'; font-size:8pt;\"> statsfile from.</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">See also: </span><a href=\"#pass\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; text-decoration: underline; color:#0000ff;\">pass</span></a></p></body></html>") );

	slow_firstpassCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"table {\n"
"font-family: Arial, Helvetica, sans-serif;\n"
"font-size: 7pt;\n"
"border-top: 1pt solid #000;\n"
"border-left: 1pt solid #000;\n"
"}\n"
"td {\n"
"border-bottom: 1pt solid #000;\n"
"border-right: 1pt solid #000;\n"
"text-align: center;\n"
"}\n"
"</style></head><body style=\" font-family:' Arial, Helvetica, sans-serif'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p><strong>slow-firstpass </strong>using pass <strong>1</strong> applies the following settings at the end of parsing the command line:</p>\n"
"<ul>\n"
"  <li><a href=\"#ref\" title=\"\">ref</a> 1</li>\n"
"  <li><a href=\"#no-8x8dct\" title=\"\">no-8x8dct</a></li>\n"
"  <li><a href=\"#partitions\" title=\"\">partitions</a> i4x4 (if originally enabled, else none)</li>\n"
"  <li><a href=\"#me\" title=\"\">m"
"e</a> dia</li>\n"
"  <li><a href=\"#subme\" title=\"\">subme</a> Min(2,subme) (if original value is greater than 2, change it to 2, else do nothing)</li>\n"
"  <li><a href=\"#trellis\" title=\"\">trellis</a> 0</li>\n"
"</ul>\n"
"<p>To disable this, set this option.</p>\n"
"</body></html>") );

	rateDefaultPushButton->setWhatsThis(QString());

	refLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">ref </span><span style=\" font-size:8pt;\">Controls the size of the DPB (</span><span style=\" font-size:8pt; font-weight:600;\">D</span><span style=\" font-size:8pt;\">ecoded </span><span style=\" font-size:8pt; font-weight:600;\">P</span><span style=\" font-size:8pt;\">icture </span><span style=\" font-size:8pt; font-weight:600;\">B</span><span style=\" font-size:8pt;\">uffer). The range is from 0-16. In short, this value is the number of previous frames each P-frame can use as references. B-frames can u"
"se one or two fewer, depending on if they are used as references or not. The minimum number of refs that can be referenced is 1. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Note, this setting is used to control the number of refs used. See this doom9 post outlining the difference. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Also note that the ITU-T specification limits DPB and thus limits the ref for each level. If adhering to </span><a href=\"http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Levels\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">Level 4.1</span></a><span style=\" font-size:8pt;\"> specs, the maximum refs for full height 720p and 1080p video are 9 and 4, respectively. But if the video's height is not the full 720 or 108"
"0 pixels, a higher ref can be used. Level 4.1 is the level implemented on Blu-ray and HD DVD, and the highest level supported in most consumer electronics which support H.264 playback, including Xbox 360, Playstation 3, and Popcorn Hour A-100 Media Extender. The formula for calculating maximum ref is as follows; the value should be rounded down: </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">maximum ref = 12288 * 1024 / ( width * height * 1.5) </span></p></body></html>") );

	scenecutLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">scenecut </span>Sets the threshold for IDR frame placement (read: scene change detection). </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">x264 calculates a metric for every frame to estimate how different it is from the previous frame. If the value is lower than scenecut, an IDR frame is used. The metric is slightly more complex than this, but it's a reasonable approximation. Higher values of scenecut increase the number o"
"f scenecuts detected.</p></body></html>") );

	no_deblockCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">no-deblock</span>: This topic is going to be a bit controversial. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">H.264 defines a simple deblocking procedure on I-blocks that uses pre-set strengths and thresholds depending on the QP of the block in question. By default, high QP blocks are filtered heavily, and low QP blocks are not deblocked at all. The pre-set strengths defined by the standard are well-chosen and the odds are very good"
" that they are PSNR-optimal for whatever video you are trying to encode. The <span style=\" font-family:'Courier New,courier';\">deblock</span> allow you to specify offsets to the preset deblocking thresholds. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Many people seem to think it is a good idea to lower the deblocking filter strength by large amounts (say, -3). This is however almost never a good idea, and in most cases, people who are doing this do not understand very well how deblocking works by default. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">The first and most important thing to know about the in-loop deblocking filter is that the default thresholds are almost always PSNR-optimal. In the rare cases that they are not optimal, the ideal offset is plus or minus 1. Adjusting deblocking parameters by a larger amount is almost guaran"
"teed to hurt PSNR. Strengthening the filter will smear more details; weakening the filter will increase the appearance of blockiness. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">It is definitely a bad idea to lower the deblocking thresholds if your source is mainly low in spacial complexity (i.e., not a lot of detail or noise). The in-loop filter does a rather excellent job of concealing the artifacts that occur. If the source is high in spacial complexity, however, artifacts are less noticeable. This is because the ringing tends to look like detail or noise. Human visual perception easily notices when detail is removed, but it does not so easily notice when the noise is wrongly represented. When it comes to subjective quality, noise and detail are somewhat interchangeable. By lowering the deblocking filter strength, you are most likely increasing error by adding ringing artifacts, but the eye does not notice because it con"
"fuses the artifacts with detail.</p></body></html>") );

	groupBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">deblock</span><span style=\" font-size:8pt;\"> Controls the loop filter (aka inloop deblocker), which is part of the H.264 standard. The loop filter takes a rather large slice of decoding time for a single item, and is responsible for a similar slice of the overall quality output. It is very efficient in terms of encoding time vs. quality gained. </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; fo"
"nt-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Default loop filter </span><span style=\" font-size:8pt;\">parameters </span><span style=\" font-size:8pt;\">AlphaC0:Beta [0:0]</span></p></body></html>") );

	no_cabacCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-cabac </span><span style=\" font-size:8pt;\">Disables CABAC </span><span style=\" font-size:8pt;\">(</span><span style=\" font-size:8pt; font-weight:600;\">C</span><span style=\" font-size:8pt;\">ontext </span><span style=\" font-size:8pt; font-weight:600;\">A</span><span style=\" font-size:8pt;\">daptive </span><span style=\" font-size:8pt; font-weight:600;\">B</span><span style=\" font-size:8pt;\">inary </span><span style=\" font-size:8pt; font-weight:600;\">A</span><span style=\" font-size:8pt;\">rit"
"hmetic </span><span style=\" font-size:8pt; font-weight:600;\">C</span><span style=\" font-size:8pt;\">oder)</span><span style=\" font-size:8pt;\"> stream compression and falls back to the less efficient CAVLC </span><span style=\" font-size:8pt;\">(</span><span style=\" font-size:8pt; font-weight:600;\">C</span><span style=\" font-size:8pt;\">ontext </span><span style=\" font-size:8pt; font-weight:600;\">A</span><span style=\" font-size:8pt;\">daptive </span><span style=\" font-size:8pt; font-weight:600;\">V</span><span style=\" font-size:8pt;\">ariable </span><span style=\" font-size:8pt; font-weight:600;\">L</span><span style=\" font-size:8pt;\">ength </span><span style=\" font-size:8pt; font-weight:600;\">C</span><span style=\" font-size:8pt;\">oder)</span><span style=\" font-size:8pt;\"> system. Significantly reduces both the compression efficiency (10-20% typically) and the decoding requirements. </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; marg"
"in-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Use CABAC (i.e. don't set this option) unless your decoder really </span><span style=\" font-size:8pt; font-style:italic;\">really</span><span style=\" font-size:8pt;\"> sucks.</span></p></body></html>") );

	bframesLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">bframes </span><span style=\" font-size:8pt;\">Sets the maximum number of concurrent B-frames that x264 can use. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Without B-frames, a typical x264 stream has frametypes like so: IPPPPP...PI. With </span><span style=\" font-size:8pt; font-style:italic;\">--bframes 2</span><span style=\" font-size:8pt;\">, up to two consecutive P-frames can "
"be replaced with B-frames, like: IBPBBPBPPPB...PI. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">B-frames are similar to P-frames, except they can use motion prediction from future frames as well. This can lead to significantly better efficiency in terms of compression ratio. Their average quality is controlled by </span><a href=\"#pbratio\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">pbratio</span></a><span style=\" font-size:8pt;\">. Use </span><a href=\"#b-adapt\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\">b-adapt</span></a><span style=\" font-size:8pt;\"> to force x264 to use the prescribed number of B-frames whenever possible. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Bonus inf"
"o:</span><span style=\" font-size:8pt;\"> </span></p>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" font-size:8pt;\" style=\" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">x264 also occasionally distinguishes between two different sorts of B-frames. A 'B' can refer to a B-frame that is used as a reference by other frames, while 'b' can refer to a B-frame that is not. If you see a mix of 'B' and 'b', it's usually related to the above. When the difference is not important, just 'B' is generally used to refer to all B-frames. </li>\n"
"<li style=\" font-size:8pt;\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Frame types will look like this (in display order) (assuming <span style=\" font-style:italic;\">--bframes 3</span>): IBBBPBBBPBPI. </li>\n"
"<li style=\" font-size:8pt;\" style=\" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:"
"0; text-indent:0px;\">For an idea of how many B-frames are used in your encode, read the 'consecutive B-frames' line in x264's stats output after an encode, which shows the number of B-frame sequences exactly 'n' frames long, for n=0 (ie: PP) to the maximum allowed. </li></ul></body></html>") );

	b_adaptLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">b_adapt  </span>Set the adaptive B-frame placement decision algorithm. This setting controls how x264 decides between placing a P- or B-frame. </p>\n"
"<p style=\" margin-top:8px; margin-bottom:8px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">0. Disabled. Pick B-frames always. This is the same as what the older <span style=\" font-style:italic;\">--no-b-adapt</span> setting did. </p>\n"
"<p style=\" margin-top:8px; margin-bottom:8px; margin-left:30px; margin-right:0px; -qt-bl"
"ock-indent:0; text-indent:0px;\">1. Old algorithm, faster, speed slightly increases with higher <a href=\"#b-frames\"><span style=\" text-decoration: underline; color:#0000ff;\">b-frames</span></a> setting. </p>\n"
"<p style=\" margin-top:8px; margin-bottom:8px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">2. New algorithm, slower, speed significantly decreases with higher <a href=\"#b-frames\"><span style=\" text-decoration: underline; color:#0000ff;\">b-frames</span></a> setting. </p></body></html>") );

	frametypeDefaultPushButton->setWhatsThis(QString());

	meLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">me  </span>Set the full-pixel motion estimation method. There are five choices: </p>\n"
"<ul style=\"-qt-list-indent: 1;\"><li style=\" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">dia</span> (diamond) is the simplest search, consisting of starting at the best predictor, checking the motion vectors at one pixel upwards, left, down, and to the right, picking the best, and repeating the process until it no long"
"er finds any better motion vector. </li>\n"
"<li style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">hex</span> (hexagon) consists of a similar strategy, except it uses a range-2 search of 6 surrounding points, thus the name. It is considerably more efficient than dia and hardly any slower, and therefore makes a good choice for general-use encoding. </li>\n"
"<li style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">umh</span> (uneven multi-hex) is considerably slower than hex, but searches a complex multi-hexagon pattern in order to avoid missing harder-to-find motion vectors. Unlike hex and dia, the merange parameter directly controls umh's search radius, allowing one to increase or decrease the size of the wide search. </li>\n"
"<li style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -q"
"t-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">esa</span> (exhaustive) is a highly optimized intelligent search of the entire motion search space within merange of the best predictor. It is mathematically equivalent to the bruteforce method of searching every single motion vector in that area, though faster. However, it is still considerably slower than UMH, with not too much benefit, so is not particularly useful for everyday encoding. </li>\n"
"<li style=\" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">tesa</span> (transformed exhaustive) is an algorithm which attempts to approximate the effect of running a Hadamard transform comparison at each motion vector; like exhaustive, but a little bit better and a little bit slower. </li></ul>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">See also: <a href=\"#merange\""
"><span style=\" text-decoration: underline; color:#0000ff;\">merange</span></a> </p></body></html>") );

	merangeLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">merange</span> controls the max range of the motion search. For <span style=\" font-weight:600;\">hex</span> and <span style=\" font-weight:600;\">dia</span>, this is clamped to between 4 and 16, with a default of 16. For <span style=\" font-weight:600;\">umh</span> and <span style=\" font-weight:600;\">esa</span>, it can be increased beyond the default 16 to allow for a wider-range motion search, which is useful on HD footage and for high-motion footage. Note that for <span style=\" font-weight:600;\">umh</span>, <spa"
"n style=\" font-weight:600;\">esa</span>, and <span style=\" font-weight:600;\">tesa</span>, increasing merange will significantly slow down encoding. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">See also: <a href=\"#me\"><span style=\" text-decoration: underline; color:#0000ff;\">me</span></a> </p></body></html>") );

	submeLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">subme  </span>Set the subpixel estimation complexity. Higher numbers are better. Levels 1-5 simply control the subpixel refinement strength. Level 6 enables RDO for mode decision, and level 8 enables RDO for motion vectors and intra prediction modes. RDO levels are significantly slower than the previous levels. </p>\n"
"<p style=\" margin-top:8px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">0. fullpel only (not recommended) </p>\n"
"<p style=\" margin-top:0"
"px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">1. QPel SAD 1 iteration </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">2. QPel SATD 2 iterations </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">3. HPel on MB then QPel </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">4. Always QPel </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">5. Multi QPel + <a href=\"#bime\"><span style=\" text-decoration: underline; color:#0000ff;\">bime</span></a> </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">6. RD on I/P frames </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0p"
"x; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">7. RD on all frames </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">8. RD refinement on I/P frames </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">9. RD refinement on all frames </p>\n"
"<p style=\" margin-top:0px; margin-bottom:8px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">10. QP-RD (requires <a href=\"#trellis\"><span style=\" text-decoration: underline; color:#0000ff;\">trellis</span></a>=2, <a href=\"#aq-mode\"><span style=\" text-decoration: underline; color:#0000ff;\">aq-mode</span></a>&gt;0) </p></body></html>") );

	partitionsLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">partitions</span> H.264 video is split up into 16x16 macroblocks during compression. These blocks can be further split up into smaller partitions, which is what this option controls. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">With this option, you enable individual partitions. Partitions are enabled per-frametype (i.e., I, P, B). The available partitions are p8x8, p4x4, b8x8, i8x8, and i4x4. </p>\n"
"<ul style=\"-qt-list-indent: 1;"
"\"><li style=\" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">I</span>: i8x8, i4x4 </li>\n"
"<li style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">P</span>: p8x8 (also enables p16x8/p8x16), p4x4 (also enables p8x4/p4x8) </li>\n"
"<li style=\" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">B</span>: b8x8 (also enables b16x8/b8x16) </li></ul>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">You can also set 'none' or 'all'. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">p4x4 is generally not very useful and has an extremely high ratio of speed cost to resulting"
" quality gain. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">See also: <a href=\"#8x8dct\"><span style=\" text-decoration: underline; color:#0000ff;\">8x8dct</span></a> </p></body></html>") );

	no_mixed_refsCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-mixed-refs </span><span style=\" font-size:8pt;\">Disable references to be selected on a per-8x8 partition, rather than per-macroblock basis. This improves quality when using multiple reference frames, albeit at some speed cost. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">See also: </span><a href=\"#ref\"><span style=\" font-size:8pt; text-decoration: underline; color:#0000ff;\""
">ref</span></a><span style=\" font-size:8pt;\"> </span></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default </span></p></body></html>") );

	no_8x8dctCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-8x8dct </span><span style=\" font-size:8pt;\">Adaptive 8x8 DCT enables the intelligent adaptive use of 8x8 transforms in I-frames. This disables the feature. </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:6"
"00;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default </span></p></body></html>") );

	no_fast_pskipCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-fast-pskip </span><span style=\" font-size:8pt;\">Disables early skip detection on P-frames. Fast skip detection increases speed but may cause slight blockiness in areas of solid color or slight gradients such as dark scenes or sky. </span></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">\302\240</span></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; "
"-qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Enabled </span></p></body></html>") );

	trellisLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">trellis  </span>Performs Trellis quantization to increase efficiency. </p>\n"
"<p style=\" margin-top:8px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">0. No Quantization </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">1. Quantize on final macroblock </p>\n"
"<p style=\" margin-top:0px; margin-bottom:8px; margin-left:30px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"
"\">2. Always Quantize </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">On Macroblock provides a good compromise between speed and efficiency. On all decisions reduces speed further. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Recommendation:</span> Default </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Note:</span> Requires <a href=\"#no-cabac\"><span style=\" text-decoration: underline; color:#0000ff;\">CABAC</span></a> </p></body></html>") );

	directLabel->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">direct  </span>Set prediction mode for 'direct' motion vectors.</p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">There are two modes available: <span style=\" font-weight:600;\">spatial</span> and <span style=\" font-weight:600;\">temporal</span>. You can also select <span st"
"yle=\" font-weight:600;\">none</span> to disable direct MVs, and <span style=\" font-weight:600;\">auto</span> to allow x264 to swap between them as it sees fit. If you set auto, x264 outputs information on the usage at the end of the encode. 'auto' works best in a 2pass encode, but will work in single-pass encodes too. In first-pass auto mode, x264 keeps a running average of how well each method has so far performed, and picks the next prediction mode from that. Note that you should only enable auto on the second pass if it was enabled on the first pass; if it wasn't, the second pass will default to temporal. Direct none wastes bits and is strongly discouraged. </p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Recommendation: 'auto'</span> </p></body></html>") );

	no_psyCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-psy </span><span style=\" font-size:8pt;\">Disables all visual optimizations that worsen both PSNR and SSIM.</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-si"
"ze:8pt;\"> Default </span></p></body></html>") );

	psyrdGroupBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">psy-rd</span><span style=\" font-size:8pt;\"> The first number is the strength of Psy-RDO to use (requires subme&gt;=6 to activate). The second number is the strength of Psy-Trellis (requires trellis&gt;=1 to activate). Note that Trellis is still considered 'experimental', and almost certainly is a Bad Thing for at least cartoons.  </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\">"
"</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Default psychovisual strength parameters Psy-RDO:Psy-Trellis [1.0:0.0]</span></p></body></html>") );

	no_dct_decimateCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-dct-decimate </span><span style=\" font-size:8pt;\">Disables coefficient thresholding on P frames.</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\">"
" Default </span></p></body></html>") );

	deadzoneGroupBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">deadzone-inter/intra</span><span style=\" font-size:8pt;\"> Set the size of the inter/intra luma quantization deadzone. Deadzones should be in the range of 0 to 32. The deadzone value sets the level of fine detail that x264 will arbitrarily drop without attempting to preserve. Very fine detail is both hard to see and expensive to encode, dropping this detail without attempting to preserve it stops wasting bits on such a low-return section of the video. Deadzone is incompatible with Trellis. </span></p>\n"
""
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Default </span><span style=\" font-size:8pt;\"> luma quantization deadzone</span><span style=\" font-size:8pt;\"> sizes Inter:Intra [21:11]</span></p></body></html>") );

	no_weightbCheckBox->setWhatsThis( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no_weightb </span><span style=\" font-size:8pt;\">Disables non-symmetric weighting between references in B-frames. H.264 allows you to 'weight' references in B-frames, which allows you to change how much each reference affects the predicted picture. Generally recommended for film footage and probably not useful for animated footage. </span></p></body></html>") );
}

void ConfVidX264MEncoderDialog::setToolTip()
{
	bitrateGroupBox->setToolTip( tr("Minimum 100 kbps\n"
"Maximum 5000 kbps") );

	presetLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">preset</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> Medium</span></p></body></html>") );

	presetComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">preset</span></p></body></html>") );

	profileLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">profile</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> High (no restrictions)</span></p></body></html>") );

	profileComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">profile</span></p></body></html>") );

	interlacedCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">interlaced</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set</span></p></body></html>") );

	tuneLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">tune</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> Not Set</span></p></body></html>") );

	tuneComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">preset</span></p></body></html>") );

	defaultPushButton->setToolTip( tr("Reset x264 codec settings to default values") );

	aq_modeComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">aq-mode</span></p></body></html>") );

	aq_modeLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">1</span><span style=\" font-size:8pt;\"> </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default </s"
"pan></p></body></html>") );

	aq_strengthLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">aq-strength</span></p></body></html>") );

	aq_strengthLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 1.0 </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default </span></p></body></html>") );

	no_mbtreeCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-mbtree</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	rc_lookaheadLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">rc-lookahead</span></p></body></html>") );

	rc_lookaheadLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 40  </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">The maximum allowed value is </span><span style=\" font-size:8pt; font-weight:600;\">250</span><span style=\" font-size:"
"8pt;\">. </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-style:italic;\">Note: VBV-lookahead does not require MB-tree.</span></p></body></html>") );

	qcompLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">qcomp</span></p></body></html>") );

	qcompLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 0.6</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">0.0 =&gt; Constant Bitrate, 1.0 =&gt; Constant Quantizer</p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px;"
" margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default</span></p></body></html>") );

	ipratioLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">ipratio</span></p></body></html>") );

	ipratioLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 1.40</span></p></body></html>") );

	pbratioLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">pbratio</span></p></body></html>") );

	pbratioLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 1.30</span></p></body></html>") );

	passComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">pass</span></p></body></html>") );

	passLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">No stats</span></p></body></html>") );

	statsLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">stats</span></p></body></html>") );

	statsLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-family:'Arial, Helvetica, sans-serif'; font-size:8pt;\">\"x264_2pass.log\"</span></p></body></html>") );

	slow_firstpassCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">slow-firstpass</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	rateDefaultPushButton->setToolTip( tr("Reset rate control settings to default values") );

	refLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">ref</span></p></body></html>") );

	refLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 3</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Around 4-6. Each increase has a reduced benefit and"
" constant speed loss. Very large numbers of refs are normally not very useful, but even up to 16 can be helpful for animated content, video game capture, CGI, and other similar content. </span></p></body></html>") );

	scenecutLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">scenecut</span></p></body></html>") );

	scenecutLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">40</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Setting scenecut to 0 disables it, which then causes x264 to output static length GOPs of </span><span style=\" font-size:"
"8pt; font-weight:600;\">keyint</span><span style=\" font-size:8pt;\"> size.</span></p></body></html>") );

	no_deblockCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-deblock </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; m"
"argin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600; font-style:italic;\">no-deblock </span><span style=\" font-size:8pt; font-style:italic;\">disables loop filter.</span><span style=\" font-size:8pt; font-style:italic;\"> </span></p></body></html>") );

	groupBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">deblock </span><span style=\" font-size:8pt;\">loop filter </span><span style=\" font-size:8pt;\">parameters</span><span style=\" font-size:8pt;\"> </span><span style=\" font-size:8pt; font-weight:600;\">AlphaC0</span><span style=\" font-size:8pt;\">:</span><span style=\" font-size:8pt; font-weight:600;\">Beta</span><span style=\" font-size:8pt;\"> </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; "
"font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">[0:0]</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default. Lower values can be used if you feel x264 is blurring too much, although this only helps if you have enough spare bitrate. Sane values are probably within the range -3 to 3. Note that at higher bitrates (and thus lower quantizers), deblocking is inherently weaker, so you do not need to 'compensate' for higher bitrate with lower deblockin"
"g settings or vice versa. </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600; font-style:italic;\">deblock </span><span style=\" font-size:8pt; font-style:italic;\">loop filter is also known as inloop deblocker</span></p></body></html>") );

	no_cabacCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-cabac</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	bframesLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">bframes</span></p></body></html>") );

	bframesLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">3</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Unless you use </span><span style=\" font-size:8pt; font-style:italic;\">--b-adapt 2</span><span style=\" font-size:8pt;\">, choose </span><span style=\" font-size:8pt; font-style:italic;\">--bframes 16</span><span styl"
"e=\" font-size:8pt;\">, the maximum. This is the fastest and most flexible option for the encoder. If you use </span><span style=\" font-size:8pt; font-style:italic;\">--b-adapt 2</span><span style=\" font-size:8pt;\">, higher values will significantly slow the encoding process without major benefit. Try values more like 2-5. </span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Sometimes you'll have to settle for less: Blu-Ray limits the maximum number of B-frames to 3. </span></p></body></html>") );

	b_adaptComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">b-adapt</span></p></body></html>") );

	b_adaptLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default:</span><span style=\" font-size:8pt;\"> 1</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Recommendation:</span><span style=\" font-size:8pt;\"> Default, use 2 if you have time to waste. </span></"
"p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Note: For a multi-pass encode, this option is only needed for the first pass where frame types are decided. </span></p></body></html>") );

	frametypeDefaultPushButton->setToolTip( tr("Reset frame type settings to default values") );

	meComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">me</span></p></body></html>") );

	meLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">\"hex\"</span></p></body></html>") );

	merangeLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">merange</span></p></body></html>") );

	merangeLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">16 </span></p></body></html>") );

	submeComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">subme</span></p></body></html>") );

	submeLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">7 </span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">Higher numbers are better. </span></p></body></html>") );

	partitionsLineEdit->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">partitions</span></p></body></html>") );

	partitionsPushButton->setToolTip( tr("Set macroblock partioning") );

	partitionsLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">\"p8x8,b8x8,i8x8,i4x4\"</span></p></body></html>") );

	no_mixed_refsCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-mixed-refs</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	no_8x8dctCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-8x8dct</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	no_fast_pskipCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-fast-pskip</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	trellisComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">trellis</span></p></body></html>") );

	trellisLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">1</span></p></body></html>") );

	directComboBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">direct</span></p></body></html>") );

	directLabel->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">\"spatial\"</span></p></body></html>") );

	no_psyCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-psy</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	psyrdGroupBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">psy-rd </span><span style=\" font-size:8pt;\">strength </span><span style=\" font-size:8pt;\">parameters </span><span style=\" font-size:8pt; font-weight:600;\">Psy-RDO</span><span style=\" font-size:8pt;\">:</span><span style=\" font-size:8pt; font-weight:600;\">Psy-Trellis</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; mar"
"gin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">[1.0:0.0]</span></p></body></html>") );

	no_dct_decimateCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no-dct-decimate</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	deadzoneGroupBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">deadzone-inter/intra </span><span style=\" font-size:8pt;\">sizes</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">[21:11]</span></p></body></html>") );

	no_weightbCheckBox->setToolTip( tr("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">no_weightb</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt; font-weight:600;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Default: </span><span style=\" font-size:8pt;\">Not Set </span></p></body></html>") );

	analysisDefaultPushButton->setToolTip( tr("Reset video analysis settings to default values") );
}
