mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-18 17:10:05 +02:00
Fix indentation (to multiple of three) and remove trailing spaces.
This commit is contained in:
parent
cda7ade23a
commit
b556d83c54
@ -71,8 +71,8 @@ bool LoadFFmpeg(bool showerror)
|
||||
PickFFmpegLibs();
|
||||
if (FFmpegLibsInst->ValidLibsLoaded())
|
||||
{
|
||||
DropFFmpegLibs();
|
||||
return true;
|
||||
DropFFmpegLibs();
|
||||
return true;
|
||||
}
|
||||
if (!FFmpegLibsInst->LoadLibs(NULL,showerror))
|
||||
{
|
||||
@ -189,16 +189,16 @@ static int64_t ufile_seek(void *opaque, int64_t pos, int whence)
|
||||
switch (whence & ~AVSEEK_FORCE)
|
||||
{
|
||||
case (SEEK_SET):
|
||||
mode = wxFromStart;
|
||||
break;
|
||||
mode = wxFromStart;
|
||||
break;
|
||||
case (SEEK_CUR):
|
||||
mode = wxFromCurrent;
|
||||
break;
|
||||
mode = wxFromCurrent;
|
||||
break;
|
||||
case (SEEK_END):
|
||||
mode = wxFromEnd;
|
||||
break;
|
||||
mode = wxFromEnd;
|
||||
break;
|
||||
case (AVSEEK_SIZE):
|
||||
return ((wxFile *) opaque)->Length();
|
||||
return ((wxFile *) opaque)->Length();
|
||||
}
|
||||
|
||||
return ((wxFile *) opaque)->Seek(pos, mode);
|
||||
@ -213,7 +213,7 @@ int ufile_close(AVIOContext *pb)
|
||||
delete f;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Open a file with a (possibly) Unicode filename
|
||||
@ -404,15 +404,15 @@ int import_ffmpeg_decode_frame(streamContext *sc, bool flushing)
|
||||
}
|
||||
}
|
||||
if (frame->data[1]) {
|
||||
for (int i = 0; i<frame->nb_samples; i++) {
|
||||
for (int ch = 0; ch<channels; ch++) {
|
||||
memcpy(sc->m_decodedAudioSamples + sc->m_samplesize * (ch + channels*i),
|
||||
frame->extended_data[ch] + sc->m_samplesize*i,
|
||||
sc->m_samplesize);
|
||||
}
|
||||
}
|
||||
for (int i = 0; i<frame->nb_samples; i++) {
|
||||
for (int ch = 0; ch<channels; ch++) {
|
||||
memcpy(sc->m_decodedAudioSamples + sc->m_samplesize * (ch + channels*i),
|
||||
frame->extended_data[ch] + sc->m_samplesize*i,
|
||||
sc->m_samplesize);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
memcpy(sc->m_decodedAudioSamples, frame->data[0], newsize);
|
||||
memcpy(sc->m_decodedAudioSamples, frame->data[0], newsize);
|
||||
}
|
||||
|
||||
av_frame_free(&frame);
|
||||
@ -697,9 +697,9 @@ bool FFmpegLibs::LoadLibs(wxWindow * WXUNUSED(parent), bool showerr)
|
||||
gPrefs->Read(wxT("/FFmpeg/NotFoundDontShow"),&dontShowDlg,0);
|
||||
if ((dontShowDlg == 0) && (showerr))
|
||||
{
|
||||
dlg = new FFmpegNotFoundDialog(NULL);
|
||||
dlg->ShowModal();
|
||||
delete dlg;
|
||||
dlg = new FFmpegNotFoundDialog(NULL);
|
||||
dlg->ShowModal();
|
||||
delete dlg;
|
||||
}
|
||||
}
|
||||
*/
|
||||
@ -791,8 +791,8 @@ bool FFmpegLibs::InitLibs(wxString libpath_format, bool WXUNUSED(showerr))
|
||||
if (actual.GetFullPath().IsSameAs(name.GetFullPath())) {
|
||||
actual = FileNames::PathFromAddr(avformat->GetSymbol(wxT("avcodec_version")));
|
||||
if (actual.GetFullPath().IsSameAs(name.GetFullPath())) {
|
||||
util = avformat;
|
||||
codec = avformat;
|
||||
util = avformat;
|
||||
codec = avformat;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -104,7 +104,7 @@ public:
|
||||
/// Writes metadata
|
||||
bool AddTags(Tags *metadata);
|
||||
|
||||
/// Sets individual metadata values
|
||||
/// Sets individual metadata values
|
||||
void SetMetadata(Tags *tags, const char *name, const wxChar *tag);
|
||||
|
||||
/// Encodes audio
|
||||
@ -341,9 +341,9 @@ bool ExportFFmpeg::CheckSampleRate(int rate, int lowrate, int highrate, const in
|
||||
|
||||
static int set_dict_int(AVDictionary **dict, const char *key, int val)
|
||||
{
|
||||
char val_str[256];
|
||||
snprintf(val_str, sizeof(val_str), "%d", val);
|
||||
return av_dict_set(dict, key, val_str, 0);
|
||||
char val_str[256];
|
||||
snprintf(val_str, sizeof(val_str), "%d", val);
|
||||
return av_dict_set(dict, key, val_str, 0);
|
||||
}
|
||||
|
||||
bool ExportFFmpeg::InitCodecs(AudacityProject *project)
|
||||
@ -404,7 +404,7 @@ bool ExportFFmpeg::InitCodecs(AudacityProject *project)
|
||||
mEncAudioCodecCtx->cutoff = gPrefs->Read(wxT("/FileFormats/FFmpegCutOff"),(long)0);
|
||||
mEncAudioCodecCtx->flags2 = 0;
|
||||
if (gPrefs->Read(wxT("/FileFormats/FFmpegBitReservoir"),true))
|
||||
av_dict_set(&options, "reservoir", "1", 0);
|
||||
av_dict_set(&options, "reservoir", "1", 0);
|
||||
if (gPrefs->Read(wxT("/FileFormats/FFmpegVariableBlockLen"),true)) mEncAudioCodecCtx->flags2 |= 0x0004; //WMA only?
|
||||
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(53, 0, 0)
|
||||
mEncAudioCodecCtx->use_lpc = gPrefs->Read(wxT("/FileFormats/FFmpegUseLPC"),true);
|
||||
@ -497,7 +497,7 @@ bool ExportFFmpeg::InitCodecs(AudacityProject *project)
|
||||
|
||||
default_frame_size = mEncAudioCodecCtx->frame_size;
|
||||
if (default_frame_size == 0)
|
||||
default_frame_size = 1024; // arbitrary non zero value;
|
||||
default_frame_size = 1024; // arbitrary non zero value;
|
||||
|
||||
wxLogDebug(wxT("FFmpeg : Audio Output Codec Frame Size: %d samples."), mEncAudioCodecCtx->frame_size);
|
||||
|
||||
|
@ -1316,150 +1316,149 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
|
||||
S.StartVerticalLay(1);
|
||||
S.StartMultiColumn(1, wxEXPAND);
|
||||
{
|
||||
S.SetStretchyRow(3);
|
||||
S.StartMultiColumn(7, wxEXPAND);
|
||||
{
|
||||
S.SetStretchyCol(1);
|
||||
mPresetCombo = S.Id(FEPresetID).AddCombo(_("Preset:"), gPrefs->Read(wxT("/FileFormats/FFmpegPreset"),wxEmptyString), mPresetNames);
|
||||
mLoadPreset = S.Id(FELoadPresetID).AddButton(_("Load Preset"));
|
||||
mSavePreset = S.Id(FESavePresetID).AddButton(_("Save Preset"));
|
||||
mDeletePreset = S.Id(FEDeletePresetID).AddButton(_("Delete Preset"));
|
||||
mImportPresets = S.Id(FEImportPresetsID).AddButton(_("Import Presets"));
|
||||
mExportPresets = S.Id(FEExportPresetsID).AddButton(_("Export Presets"));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
S.SetStretchyCol(1);
|
||||
S.SetStretchyCol(3);
|
||||
S.Id(FEFormatLabelID).AddFixedText(_("Format:"));
|
||||
mFormatName = S.Id(FEFormatNameID).AddVariableText(wxT(""));
|
||||
S.Id(FECodecLabelID).AddFixedText(_("Codec:"));
|
||||
mCodecName = S.Id(FECodecNameID).AddVariableText(wxT(""));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.AddVariableText(_("Not all formats and codecs are compatible. Nor are all option combinations compatible with all codecs."), false);
|
||||
S.StartMultiColumn(2, wxEXPAND);
|
||||
{
|
||||
S.StartMultiColumn(2, wxEXPAND);
|
||||
{
|
||||
S.SetStretchyRow(1);
|
||||
S.Id(FEAllFormatsID).AddButton(_("Show All Formats"));
|
||||
S.Id(FEAllCodecsID).AddButton(_("Show All Codecs"));
|
||||
mFormatList = S.Id(FEFormatID).AddListBox(&mFormatNames);
|
||||
mFormatList->DeselectAll();
|
||||
mCodecList = S.Id(FECodecID).AddListBox(&mCodecNames);
|
||||
mCodecList->DeselectAll();
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.StartVerticalLay();
|
||||
{
|
||||
// S.StartScroller( );
|
||||
S.SetBorder( 3 );
|
||||
S.StartStatic(_("General Options"), 0);
|
||||
{
|
||||
S.StartMultiColumn(8, wxEXPAND);
|
||||
{
|
||||
mLanguageText = S.Id(FELanguageID).TieTextBox(_("Language:"), wxT("/FileFormats/FFmpegLanguage"), wxEmptyString, 9);
|
||||
mLanguageText->SetToolTip(_("ISO 639 3-letter language code\nOptional\nempty - automatic"));
|
||||
S.SetStretchyRow(3);
|
||||
S.StartMultiColumn(7, wxEXPAND);
|
||||
{
|
||||
S.SetStretchyCol(1);
|
||||
mPresetCombo = S.Id(FEPresetID).AddCombo(_("Preset:"), gPrefs->Read(wxT("/FileFormats/FFmpegPreset"),wxEmptyString), mPresetNames);
|
||||
mLoadPreset = S.Id(FELoadPresetID).AddButton(_("Load Preset"));
|
||||
mSavePreset = S.Id(FESavePresetID).AddButton(_("Save Preset"));
|
||||
mDeletePreset = S.Id(FEDeletePresetID).AddButton(_("Delete Preset"));
|
||||
mImportPresets = S.Id(FEImportPresetsID).AddButton(_("Import Presets"));
|
||||
mExportPresets = S.Id(FEExportPresetsID).AddButton(_("Export Presets"));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
S.SetStretchyCol(1);
|
||||
S.SetStretchyCol(3);
|
||||
S.Id(FEFormatLabelID).AddFixedText(_("Format:"));
|
||||
mFormatName = S.Id(FEFormatNameID).AddVariableText(wxT(""));
|
||||
S.Id(FECodecLabelID).AddFixedText(_("Codec:"));
|
||||
mCodecName = S.Id(FECodecNameID).AddVariableText(wxT(""));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.AddVariableText(_("Not all formats and codecs are compatible. Nor are all option combinations compatible with all codecs."), false);
|
||||
S.StartMultiColumn(2, wxEXPAND);
|
||||
{
|
||||
S.StartMultiColumn(2, wxEXPAND);
|
||||
{
|
||||
S.SetStretchyRow(1);
|
||||
S.Id(FEAllFormatsID).AddButton(_("Show All Formats"));
|
||||
S.Id(FEAllCodecsID).AddButton(_("Show All Codecs"));
|
||||
mFormatList = S.Id(FEFormatID).AddListBox(&mFormatNames);
|
||||
mFormatList->DeselectAll();
|
||||
mCodecList = S.Id(FECodecID).AddListBox(&mCodecNames);
|
||||
mCodecList->DeselectAll();
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.StartVerticalLay();
|
||||
{
|
||||
//S.StartScroller( );
|
||||
S.SetBorder( 3 );
|
||||
S.StartStatic(_("General Options"), 0);
|
||||
{
|
||||
S.StartMultiColumn(8, wxEXPAND);
|
||||
{
|
||||
mLanguageText = S.Id(FELanguageID).TieTextBox(_("Language:"), wxT("/FileFormats/FFmpegLanguage"), wxEmptyString, 9);
|
||||
mLanguageText->SetToolTip(_("ISO 639 3-letter language code\nOptional\nempty - automatic"));
|
||||
|
||||
S.AddSpace( 20,0 );
|
||||
S.AddVariableText(_("Bit Reservoir"));
|
||||
S.Id(FEBitReservoirID).TieCheckBox(wxEmptyString, wxT("/FileFormats/FFmpegBitReservoir"), true);
|
||||
S.AddSpace( 20,0 );
|
||||
S.AddVariableText(_("Bit Reservoir"));
|
||||
S.Id(FEBitReservoirID).TieCheckBox(wxEmptyString, wxT("/FileFormats/FFmpegBitReservoir"), true);
|
||||
|
||||
S.AddSpace( 20,0 );
|
||||
S.AddVariableText(_("VBL"));
|
||||
S.Id(FEVariableBlockLenID).TieCheckBox(wxEmptyString, wxT("/FileFormats/FFmpegVariableBlockLen"), true);
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
mTag = S.Id(FETagID).TieTextBox(_("Tag:"), wxT("/FileFormats/FFmpegTag"), wxEmptyString, 4);
|
||||
mTag->SetToolTip(_("Codec tag (FOURCC)\nOptional\nempty - automatic"));
|
||||
S.AddSpace( 20,0 );
|
||||
S.AddVariableText(_("VBL"));
|
||||
S.Id(FEVariableBlockLenID).TieCheckBox(wxEmptyString, wxT("/FileFormats/FFmpegVariableBlockLen"), true);
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
mTag = S.Id(FETagID).TieTextBox(_("Tag:"), wxT("/FileFormats/FFmpegTag"), wxEmptyString, 4);
|
||||
mTag->SetToolTip(_("Codec tag (FOURCC)\nOptional\nempty - automatic"));
|
||||
|
||||
mBitrateSpin = S.Id(FEBitrateID).TieSpinCtrl(_("Bit Rate:"), wxT("/FileFormats/FFmpegBitRate"), 0, 1000000, 0);
|
||||
mBitrateSpin->SetToolTip(_("Bit Rate (bits/second) - influences the resulting file size and quality\nSome codecs may only accept specific values (128k, 192k, 256k etc)\n0 - automatic\nRecommended - 192000"));
|
||||
mBitrateSpin = S.Id(FEBitrateID).TieSpinCtrl(_("Bit Rate:"), wxT("/FileFormats/FFmpegBitRate"), 0, 1000000, 0);
|
||||
mBitrateSpin->SetToolTip(_("Bit Rate (bits/second) - influences the resulting file size and quality\nSome codecs may only accept specific values (128k, 192k, 256k etc)\n0 - automatic\nRecommended - 192000"));
|
||||
|
||||
mQualitySpin = S.Id(FEQualityID).TieSpinCtrl(_("Quality:"), wxT("/FileFormats/FFmpegQuality"), 0, 500, -1);
|
||||
mQualitySpin->SetToolTip(_("Overall quality, used differently by different codecs\nRequired for vorbis\n0 - automatic\n-1 - off (use bitrate instead)"));
|
||||
mQualitySpin = S.Id(FEQualityID).TieSpinCtrl(_("Quality:"), wxT("/FileFormats/FFmpegQuality"), 0, 500, -1);
|
||||
mQualitySpin->SetToolTip(_("Overall quality, used differently by different codecs\nRequired for vorbis\n0 - automatic\n-1 - off (use bitrate instead)"));
|
||||
|
||||
mSampleRateSpin = S.Id(FESampleRateID).TieSpinCtrl(_("Sample Rate:"), wxT("/FileFormats/FFmpegSampleRate"), 0, 200000, 0);
|
||||
mSampleRateSpin->SetToolTip(_("Sample rate (Hz)\n0 - don't change sample rate"));
|
||||
mSampleRateSpin = S.Id(FESampleRateID).TieSpinCtrl(_("Sample Rate:"), wxT("/FileFormats/FFmpegSampleRate"), 0, 200000, 0);
|
||||
mSampleRateSpin->SetToolTip(_("Sample rate (Hz)\n0 - don't change sample rate"));
|
||||
|
||||
mCutoffSpin = S.Id(FECutoffID).TieSpinCtrl(_("Cutoff:"), wxT("/FileFormats/FFmpegCutOff"), 0, 10000000, 0);
|
||||
mCutoffSpin->SetToolTip(_("Audio cutoff bandwidth (Hz)\nOptional\n0 - automatic"));
|
||||
mCutoffSpin = S.Id(FECutoffID).TieSpinCtrl(_("Cutoff:"), wxT("/FileFormats/FFmpegCutOff"), 0, 10000000, 0);
|
||||
mCutoffSpin->SetToolTip(_("Audio cutoff bandwidth (Hz)\nOptional\n0 - automatic"));
|
||||
|
||||
mProfileChoice = S.Id(FEProfileID).TieChoice(_("Profile:"), wxT("/FileFormats/FFmpegAACProfile"),
|
||||
mProfileLabels[0], mProfileNames, mProfileLabels);
|
||||
mProfileChoice->SetSizeHints( 100,-1);
|
||||
mProfileChoice->SetToolTip(_("AAC Profile\nLow Complexity -default\nMost players won't play anything other than LC"));
|
||||
mProfileChoice = S.Id(FEProfileID).TieChoice(_("Profile:"), wxT("/FileFormats/FFmpegAACProfile"),
|
||||
mProfileLabels[0], mProfileNames, mProfileLabels);
|
||||
mProfileChoice->SetSizeHints( 100,-1);
|
||||
mProfileChoice->SetToolTip(_("AAC Profile\nLow Complexity -default\nMost players won't play anything other than LC"));
|
||||
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndStatic();
|
||||
S.StartStatic(_("FLAC options"),0);
|
||||
{
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
mCompressionLevelSpin = S.Id(FECompLevelID).TieSpinCtrl(_("Compression:"), wxT("/FileFormats/FFmpegCompLevel"), 0, 10, -1);
|
||||
mCompressionLevelSpin->SetToolTip(_("Compression level\nRequired for FLAC\n-1 - automatic\nmin - 0 (fast encoding, large output file)\nmax - 10 (slow encoding, small output file)"));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndStatic();
|
||||
S.StartStatic(_("FLAC options"),0);
|
||||
{
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
mCompressionLevelSpin = S.Id(FECompLevelID).TieSpinCtrl(_("Compression:"), wxT("/FileFormats/FFmpegCompLevel"), 0, 10, -1);
|
||||
mCompressionLevelSpin->SetToolTip(_("Compression level\nRequired for FLAC\n-1 - automatic\nmin - 0 (fast encoding, large output file)\nmax - 10 (slow encoding, small output file)"));
|
||||
|
||||
mFrameSizeSpin = S.Id(FEFrameSizeID).TieSpinCtrl(_("Frame:"), wxT("/FileFormats/FFmpegFrameSize"), 0, 65535, 0);
|
||||
mFrameSizeSpin->SetToolTip(_("Frame size\nOptional\n0 - default\nmin - 16\nmax - 65535"));
|
||||
mFrameSizeSpin = S.Id(FEFrameSizeID).TieSpinCtrl(_("Frame:"), wxT("/FileFormats/FFmpegFrameSize"), 0, 65535, 0);
|
||||
mFrameSizeSpin->SetToolTip(_("Frame size\nOptional\n0 - default\nmin - 16\nmax - 65535"));
|
||||
|
||||
mLPCCoeffsPrecisionSpin = S.Id(FELPCCoeffsID).TieSpinCtrl(_("LPC"), wxT("/FileFormats/FFmpegLPCCoefPrec"), 0, 15, 0);
|
||||
mLPCCoeffsPrecisionSpin->SetToolTip(_("LPC coefficients precision\nOptional\n0 - default\nmin - 1\nmax - 15"));
|
||||
mLPCCoeffsPrecisionSpin = S.Id(FELPCCoeffsID).TieSpinCtrl(_("LPC"), wxT("/FileFormats/FFmpegLPCCoefPrec"), 0, 15, 0);
|
||||
mLPCCoeffsPrecisionSpin->SetToolTip(_("LPC coefficients precision\nOptional\n0 - default\nmin - 1\nmax - 15"));
|
||||
|
||||
mPredictionOrderMethodChoice = S.Id(FEPredOrderID).TieChoice(_("PdO Method:"), wxT("/FileFormats/FFmpegPredOrderMethod"),
|
||||
mPredictionOrderMethodLabels[4], mPredictionOrderMethodNames, mPredictionOrderMethodLabels);
|
||||
mPredictionOrderMethodChoice->SetSizeHints( 100,-1);
|
||||
mPredictionOrderMethodChoice->SetToolTip(_("Prediction Order Method\nEstimate - fastest, lower compression\nLog search - slowest, best compression\nFull search - default"));
|
||||
mPredictionOrderMethodChoice = S.Id(FEPredOrderID).TieChoice(_("PdO Method:"), wxT("/FileFormats/FFmpegPredOrderMethod"),
|
||||
mPredictionOrderMethodLabels[4], mPredictionOrderMethodNames, mPredictionOrderMethodLabels);
|
||||
mPredictionOrderMethodChoice->SetSizeHints( 100,-1);
|
||||
mPredictionOrderMethodChoice->SetToolTip(_("Prediction Order Method\nEstimate - fastest, lower compression\nLog search - slowest, best compression\nFull search - default"));
|
||||
|
||||
mMinPredictionOrderSpin = S.Id(FEMinPredID).TieSpinCtrl(_("Min. PdO"), wxT("/FileFormats/FFmpegMinPredOrder"), -1, 32, -1);
|
||||
mMinPredictionOrderSpin->SetToolTip(_("Minimal prediction order\nOptional\n-1 - default\nmin - 0\nmax - 32 (with LPC) or 4 (without LPC)"));
|
||||
mMinPredictionOrderSpin = S.Id(FEMinPredID).TieSpinCtrl(_("Min. PdO"), wxT("/FileFormats/FFmpegMinPredOrder"), -1, 32, -1);
|
||||
mMinPredictionOrderSpin->SetToolTip(_("Minimal prediction order\nOptional\n-1 - default\nmin - 0\nmax - 32 (with LPC) or 4 (without LPC)"));
|
||||
|
||||
mMaxPredictionOrderSpin = S.Id(FEMaxPredID).TieSpinCtrl(_("Max. PdO"), wxT("/FileFormats/FFmpegMaxPredOrder"), -1, 32, -1);
|
||||
mMaxPredictionOrderSpin->SetToolTip(_("Maximal prediction order\nOptional\n-1 - default\nmin - 0\nmax - 32 (with LPC) or 4 (without LPC)"));
|
||||
mMaxPredictionOrderSpin = S.Id(FEMaxPredID).TieSpinCtrl(_("Max. PdO"), wxT("/FileFormats/FFmpegMaxPredOrder"), -1, 32, -1);
|
||||
mMaxPredictionOrderSpin->SetToolTip(_("Maximal prediction order\nOptional\n-1 - default\nmin - 0\nmax - 32 (with LPC) or 4 (without LPC)"));
|
||||
|
||||
mMinPartitionOrderSpin = S.Id(FEMinPartOrderID).TieSpinCtrl(_("Min. PtO"), wxT("/FileFormats/FFmpegMinPartOrder"), -1, 8, -1);
|
||||
mMinPartitionOrderSpin->SetToolTip(_("Minimal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"));
|
||||
mMinPartitionOrderSpin = S.Id(FEMinPartOrderID).TieSpinCtrl(_("Min. PtO"), wxT("/FileFormats/FFmpegMinPartOrder"), -1, 8, -1);
|
||||
mMinPartitionOrderSpin->SetToolTip(_("Minimal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"));
|
||||
|
||||
mMaxPartitionOrderSpin = S.Id(FEMaxPartOrderID).TieSpinCtrl(_("Max. PtO"), wxT("/FileFormats/FFmpegMaxPredOrder"), -1, 8, -1);
|
||||
mMaxPartitionOrderSpin->SetToolTip(_("Maximal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"));
|
||||
mMaxPartitionOrderSpin = S.Id(FEMaxPartOrderID).TieSpinCtrl(_("Max. PtO"), wxT("/FileFormats/FFmpegMaxPredOrder"), -1, 8, -1);
|
||||
mMaxPartitionOrderSpin->SetToolTip(_("Maximal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"));
|
||||
|
||||
S.AddVariableText(_("Use LPC"));
|
||||
S.Id(FEUseLPCID).TieCheckBox(wxEmptyString, wxT("/FileFormats/FFmpegUseLPC"), true);
|
||||
S.AddVariableText(_("Use LPC"));
|
||||
S.Id(FEUseLPCID).TieCheckBox(wxEmptyString, wxT("/FileFormats/FFmpegUseLPC"), true);
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndStatic();
|
||||
S.StartStatic(_("MPEG container options"),0);
|
||||
{
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
/* i18n-hint: 'mux' is short for multiplexor, a device that selects between several inputs
|
||||
'Mux Rate' is a parameter that has some bearing on compression ratio for MPEG
|
||||
it has a hard to predict effect on the degree of compression */
|
||||
mMuxRate = S.Id(FEMuxRateID).TieSpinCtrl(_("Mux Rate:"), wxT("/FileFormats/FFmpegMuxRate"), 0, 10000000, 0);
|
||||
mMuxRate->SetToolTip(_("Maximum bit rate of the multiplexed stream\nOptional\n0 - default"));
|
||||
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndStatic();
|
||||
S.StartStatic(_("MPEG container options"),0);
|
||||
{
|
||||
S.StartMultiColumn(4, wxALIGN_LEFT);
|
||||
{
|
||||
/* i18n-hint: 'mux' is short for multiplexor, a device that selects between several inputs
|
||||
'Mux Rate' is a parameter that has some bearing on compression ratio for MPEG
|
||||
it has a hard to predict effect on the degree of compression */
|
||||
mMuxRate = S.Id(FEMuxRateID).TieSpinCtrl(_("Mux Rate:"), wxT("/FileFormats/FFmpegMuxRate"), 0, 10000000, 0);
|
||||
mMuxRate->SetToolTip(_("Maximum bit rate of the multiplexed stream\nOptional\n0 - default"));
|
||||
|
||||
/* i18n-hint: 'Packet Size' is a parameter that has some bearing on compression ratio for MPEG
|
||||
compression. It measures how big a chunk of audio is compressed in one piece. */
|
||||
mPacketSize = S.Id(FEPacketSizeID).TieSpinCtrl(_("Packet Size:"), wxT("/FileFormats/FFmpegPacketSize"), 0, 10000000, 0);
|
||||
mPacketSize->SetToolTip(_("Packet size\nOptional\n0 - default"));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndStatic();
|
||||
// S.EndScroller();
|
||||
S.SetBorder( 5 );
|
||||
S.AddStandardButtons();
|
||||
}
|
||||
S.EndVerticalLay();
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
/* i18n-hint: 'Packet Size' is a parameter that has some bearing on compression ratio for MPEG
|
||||
compression. It measures how big a chunk of audio is compressed in one piece. */
|
||||
mPacketSize = S.Id(FEPacketSizeID).TieSpinCtrl(_("Packet Size:"), wxT("/FileFormats/FFmpegPacketSize"), 0, 10000000, 0);
|
||||
mPacketSize->SetToolTip(_("Packet size\nOptional\n0 - default"));
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndStatic();
|
||||
//S.EndScroller();
|
||||
S.SetBorder( 5 );
|
||||
S.AddStandardButtons();
|
||||
}
|
||||
S.EndVerticalLay();
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
}
|
||||
S.EndMultiColumn();
|
||||
S.EndVerticalLay();
|
||||
|
@ -429,14 +429,14 @@ bool FFmpegImportFileHandle::InitCodecs()
|
||||
wxString strinfo;
|
||||
int duration = 0;
|
||||
if (sc->m_stream->duration > 0)
|
||||
duration = sc->m_stream->duration * sc->m_stream->time_base.num / sc->m_stream->time_base.den;
|
||||
duration = sc->m_stream->duration * sc->m_stream->time_base.num / sc->m_stream->time_base.den;
|
||||
else
|
||||
duration = mFormatContext->duration / AV_TIME_BASE;
|
||||
duration = mFormatContext->duration / AV_TIME_BASE;
|
||||
wxString bitrate = wxT("");
|
||||
if (sc->m_codecCtx->bit_rate > 0)
|
||||
bitrate.Printf(wxT("%d"),sc->m_codecCtx->bit_rate);
|
||||
bitrate.Printf(wxT("%d"),sc->m_codecCtx->bit_rate);
|
||||
else
|
||||
bitrate.Printf(wxT("?"));
|
||||
bitrate.Printf(wxT("?"));
|
||||
|
||||
AVDictionaryEntry *tag = av_dict_get(sc->m_stream->metadata, "language", NULL, 0);
|
||||
wxString lang;
|
||||
|
Loading…
x
Reference in New Issue
Block a user