Audacity  3.0.3
ExportFFmpegDialogs.h
Go to the documentation of this file.
1 /**********************************************************************
2 
3 Audacity: A Digital Audio Editor
4 
5 ExportFFmpegDialogs.h
6 
7 LRN
8 
9 **********************************************************************/
10 
11 #if !defined(__EXPORT_FFMPEG_DIALOGS_H__)
12 #define __EXPORT_FFMPEG_DIALOGS_H__
13 
14 
15 
16 #if defined(USE_FFMPEG)
17 
18 #include "../FFmpeg.h"
19 
20 #include "XMLFileReader.h"
21 #include "FileNames.h"
22 
23 #include <unordered_map>
24 #include "Identifier.h"
25 
26 class wxArrayStringEx;
27 
28 class wxArrayString;
29 class wxCheckBox;
30 class wxStaticText;
31 class wxTextCtrl;
32 
35 {
42  FMT_LAST
43 };
44 
45 #define AV_CANMETA (AV_VERSION_INT(255, 255, 255))
46 
49 {
51  const wxChar *name;
53  const wxChar *shortname;
54  unsigned maxchannels;
55  const int canmetadata;
56  bool canutf8;
58  AVCodecID codecid;
59  bool compiledIn;
60 };
61 
62 
65 {
66  const wxChar *fmt;
67  AVCodecID codec;
68 };
69 
70 
73 {
74 public:
75 
76  ExportFFmpegAC3Options(wxWindow *parent, int format);
77  virtual ~ExportFFmpegAC3Options();
78 
80  bool TransferDataToWindow() override;
81  bool TransferDataFromWindow() override;
82 
85  static const int iAC3SampleRates[];
86 
87 private:
88 
89  wxChoice *mBitRateChoice;
91 };
92 
94 {
95 public:
96 
97  ExportFFmpegAACOptions(wxWindow *parent, int format);
98  virtual ~ExportFFmpegAACOptions();
99 
100  void PopulateOrExchange(ShuttleGui & S);
101  bool TransferDataToWindow() override;
102  bool TransferDataFromWindow() override;
103 };
104 
106 {
107 public:
108 
109  ExportFFmpegAMRNBOptions(wxWindow *parent, int format);
110  virtual ~ExportFFmpegAMRNBOptions();
111 
112  void PopulateOrExchange(ShuttleGui & S);
113  bool TransferDataToWindow() override;
114  bool TransferDataFromWindow() override;
115 
116 private:
117 
118  wxChoice *mBitRateChoice;
120 };
121 
123 {
124 public:
125 
126  ExportFFmpegOPUSOptions(wxWindow *parent, int format);
128 
129  void PopulateOrExchange(ShuttleGui & S);
130  bool TransferDataToWindow() override;
131  bool TransferDataFromWindow() override;
132 
133  static const int iOPUSSampleRates[];
134 
135 private:
136 
137  wxSlider *mBitRateSlider;
139 
140  wxChoice *mVbrChoice;
142 
143  wxSlider *mComplexitySlider;
145 
146  wxChoice *mFramesizeChoice;
148 
151 
152  wxChoice *mCuttoffChoice;
154 };
155 
157 {
158 public:
159 
160  ExportFFmpegWMAOptions(wxWindow *parent, int format);
162 
163  void PopulateOrExchange(ShuttleGui & S);
164  bool TransferDataToWindow() override;
165  bool TransferDataFromWindow() override;
166 
167  static const int iWMASampleRates[];
168 
169 private:
170 
171  wxChoice *mBitRateChoice;
173 };
174 
176 {
177 public:
178 
179  ExportFFmpegCustomOptions(wxWindow *parent, int format);
181 
182  void PopulateOrExchange(ShuttleGui & S);
183  bool TransferDataToWindow() override;
184  bool TransferDataFromWindow() override;
185 
186  void OnOpen(wxCommandEvent & evt);
187 
188 private:
189  wxTextCtrl *mFormat;
190  wxTextCtrl *mCodec;
191 
192  DECLARE_EVENT_TABLE()
193 };
194 
197 {
198  bool enable;
199  int control;
200  AVCodecID codec;
201  const char *format;
202 };
203 
204 class FFmpegPresets;
205 
208 {
209 public:
210 
211  ExportFFmpegOptions(wxWindow *parent);
213  void PopulateOrExchange(ShuttleGui & S);
214  void OnOK(wxCommandEvent& event);
215  void OnGetURL(wxCommandEvent& event);
216  void OnFormatList(wxCommandEvent& event);
217  void DoOnFormatList();
218  void OnCodecList(wxCommandEvent& event);
219  void DoOnCodecList();
220  void OnAllFormats(wxCommandEvent& event);
221  void OnAllCodecs(wxCommandEvent& event);
222  void OnSavePreset(wxCommandEvent& event);
223  void OnLoadPreset(wxCommandEvent& event);
224  void OnDeletePreset(wxCommandEvent& event);
225  void OnImportPresets(wxCommandEvent& event);
226  void OnExportPresets(wxCommandEvent& event);
227  bool SavePreset( bool bCheckForOverwrite);
228 
229 
230  // Static tables
232  static ExposedFormat fmts[];
233  static const int iAACSampleRates[];
235 
236 private:
237 
238  wxArrayString mShownFormatNames;
239  wxArrayString mShownFormatLongNames;
240  wxArrayString mShownCodecNames;
241  wxArrayString mShownCodecLongNames;
243  wxArrayString mFormatLongNames;
245  wxArrayString mCodecLongNames;
246 
247  wxListBox *mFormatList;
248  wxListBox *mCodecList;
249 
250  wxStaticText *mFormatName;
251  wxStaticText *mCodecName;
252 
253  wxComboBox *mPresetCombo;
254 
257 
258  std::unique_ptr<FFmpegPresets> mPresets;
259 
261 
263  void FindSelectedFormat(wxString **name, wxString **longname);
264 
266  void FindSelectedCodec(wxString **name, wxString **longname);
267 
269  void FetchFormatList();
270 
275  int FetchCompatibleFormatList(AVCodecID id, wxString *selfmt);
276 
278  void FetchCodecList();
279 
284  int FetchCompatibleCodecList(const wxChar *fmt, AVCodecID id);
285 
288 
289  bool ReportIfBadCombination();
290 
291 
292  // Enables/disables controls based on format/codec combination,
293  // leaving only relevant controls enabled.
294  // Hiding the controls may have been a better idea,
295  // but it's hard to hide their text labels too
296  void EnableDisableControls(AVCodec *cdc, wxString *selfmt);
297  DECLARE_EVENT_TABLE()
298 };
299 
300 //----------------------------------------------------------------------------
301 // FFmpegPresets
302 //----------------------------------------------------------------------------
303 
305 {
306 public:
307  FFmpegPreset();
308  ~FFmpegPreset();
309 
310  wxString mPresetName;
311  wxArrayString mControlState;
312 
313 };
314 
315 using FFmpegPresetMap = std::unordered_map<wxString, FFmpegPreset>;
316 
318 {
319 public:
320  FFmpegPresets();
321  ~FFmpegPresets();
322 
323  void GetPresetList(wxArrayString &list);
324  void LoadPreset(ExportFFmpegOptions *parent, wxString &name);
325  bool SavePreset(ExportFFmpegOptions *parent, wxString &name);
326  void DeletePreset(wxString &name);
327  bool OverwriteIsOk( wxString &name );
328  FFmpegPreset *FindPreset(wxString &name);
329 
330  void ImportPresets(wxString &filename);
331  void ExportPresets(wxString &filename);
332 
333  bool HandleXMLTag(const wxChar *tag, const wxChar **attrs) override;
334  XMLTagHandler *HandleXMLChild(const wxChar *tag) override;
335  void WriteXMLHeader(XMLWriter &xmlFile) const;
336  void WriteXML(XMLWriter &xmlFile) const;
337 
338 private:
339 
341  FFmpegPreset *mPreset; // valid during XML parsing only
342  bool mAbortImport; // tells importer to ignore the rest of the import
343 };
344 
345 #endif
346 
347 #endif //__EXPORT_FFMPEG_DIALOGS_H__
XMLWriter
Base class for XMLFileWriter and XMLStringWriter that provides the general functionality for creating...
Definition: XMLWriter.h:23
ApplicableFor
Entry for the Applicability table.
Definition: ExportFFmpegDialogs.h:197
ExportFFmpegOptions::mShownCodecNames
wxArrayString mShownCodecNames
Definition: ExportFFmpegDialogs.h:240
TranslatableString
Holds a msgid for the translation catalog; may also bind format arguments.
Definition: TranslatableString.h:32
FFmpegPresets::WriteXML
void WriteXML(XMLWriter &xmlFile) const
Definition: ExportFFmpegDialogs.cpp:1266
ExportFFmpegAC3Options::ExportFFmpegAC3Options
ExportFFmpegAC3Options(wxWindow *parent, int format)
Definition: ExportFFmpegDialogs.cpp:196
ExportFFmpegOptions::FindSelectedCodec
void FindSelectedCodec(wxString **name, wxString **longname)
Finds the codec currently selected and returns its name and description.
Definition: ExportFFmpegDialogs.cpp:2025
ExportFFmpegWMAOptions::iWMASampleRates
static const int iWMASampleRates[]
Definition: ExportFFmpegDialogs.h:167
ExportFFmpegWMAOptions::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition: ExportFFmpegDialogs.cpp:758
ExportFFmpegAMRNBOptions::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition: ExportFFmpegDialogs.cpp:399
ExportFFmpegOptions::OnExportPresets
void OnExportPresets(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2305
ExportFFmpegOptions::OnAllCodecs
void OnAllCodecs(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2345
ExportFFmpegAACOptions::ExportFFmpegAACOptions
ExportFFmpegAACOptions(wxWindow *parent, int format)
Definition: ExportFFmpegDialogs.cpp:258
ExportFFmpegOptions::FetchPresetList
void FetchPresetList()
Retrieves list of presets from configuration file.
ExportFFmpegOPUSOptions::TransferDataToWindow
bool TransferDataToWindow() override
Definition: ExportFFmpegDialogs.cpp:650
ExportFFmpegOptions::OnSavePreset
void OnSavePreset(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2224
ExportFFmpegAACOptions::~ExportFFmpegAACOptions
virtual ~ExportFFmpegAACOptions()
Definition: ExportFFmpegDialogs.cpp:267
CompatibilityEntry::fmt
const wxChar * fmt
format, recognizable by guess_format()
Definition: ExportFFmpegDialogs.h:66
ExportFFmpegAC3Options::TransferDataToWindow
bool TransferDataToWindow() override
Definition: ExportFFmpegDialogs.cpp:237
ExportFFmpegOptions::FetchFormatList
void FetchFormatList()
Retrieves format list from libavformat.
Definition: ExportFFmpegDialogs.cpp:1770
FFmpegPresets::mPreset
FFmpegPreset * mPreset
Definition: ExportFFmpegDialogs.h:341
ExportFFmpegAACOptions::TransferDataToWindow
bool TransferDataToWindow() override
Definition: ExportFFmpegDialogs.cpp:297
ExposedFormat::compiledIn
bool compiledIn
support for this codec/format is compiled in (checked at runtime)
Definition: ExportFFmpegDialogs.h:59
ExportFFmpegOPUSOptions::mComplexityFromSlider
int mComplexityFromSlider
Definition: ExportFFmpegDialogs.h:144
ExportFFmpegOptions::OnAllFormats
void OnAllFormats(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2335
FMT_AC3
@ FMT_AC3
Definition: ExportFFmpegDialogs.h:37
FFmpegPresets
Definition: ExportFFmpegDialogs.h:318
ExportFFmpegOPUSOptions::mFramesizeFromChoice
int mFramesizeFromChoice
Definition: ExportFFmpegDialogs.h:147
ExportFFmpegOptions::iAACSampleRates
static const int iAACSampleRates[]
Definition: ExportFFmpegDialogs.h:233
ExposedFormat::maxchannels
unsigned maxchannels
how many channels this format could handle
Definition: ExportFFmpegDialogs.h:54
wxPanelWrapper
Definition: wxPanelWrapper.h:41
ExportFFmpegOptions::FetchCodecList
void FetchCodecList()
Retrieves codec list from libavcodec.
Definition: ExportFFmpegDialogs.cpp:1791
FFmpegPresets::mPresets
FFmpegPresetMap mPresets
Definition: ExportFFmpegDialogs.h:340
ApplicableFor::codec
AVCodecID codec
Codec ID.
Definition: ExportFFmpegDialogs.h:200
ExposedFormat::fmtid
FFmpegExposedFormat fmtid
one of the FFmpegExposedFormat
Definition: ExportFFmpegDialogs.h:50
ExportFFmpegOptions::FindSelectedFormat
void FindSelectedFormat(wxString **name, wxString **longname)
Finds the format currently selected and returns its name and description.
Definition: ExportFFmpegDialogs.cpp:2004
FFmpegPresets::HandleXMLTag
bool HandleXMLTag(const wxChar *tag, const wxChar **attrs) override
Definition: ExportFFmpegDialogs.cpp:1145
ExportFFmpegOptions::OnGetURL
void OnGetURL(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2564
ExportFFmpegAMRNBOptions::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:367
ExportFFmpegCustomOptions
Definition: ExportFFmpegDialogs.h:176
ExportFFmpegAMRNBOptions
Options dialog for FFmpeg exporting of AMRNB format.
Definition: ExportFFmpegDialogs.h:106
FFmpegPreset::FFmpegPreset
FFmpegPreset()
Definition: ExportFFmpegDialogs.cpp:867
FFmpegPresets::SavePreset
bool SavePreset(ExportFFmpegOptions *parent, wxString &name)
Definition: ExportFFmpegDialogs.cpp:972
ExportFFmpegAC3Options::mBitRateFromChoice
int mBitRateFromChoice
Definition: ExportFFmpegDialogs.h:90
ExposedFormat::extension
const FileExtension extension
default extension for this format. More extensions may be added later via AddExtension.
Definition: ExportFFmpegDialogs.h:52
ExportFFmpegAC3Options::iAC3SampleRates
static const int iAC3SampleRates[]
Definition: ExportFFmpegDialogs.h:85
ExportFFmpegOPUSOptions::ExportFFmpegOPUSOptions
ExportFFmpegOPUSOptions(wxWindow *parent, int format)
Definition: ExportFFmpegDialogs.cpp:582
FFmpegPresets::FFmpegPresets
FFmpegPresets()
Definition: ExportFFmpegDialogs.cpp:876
ApplicableFor::format
const char * format
Format short name.
Definition: ExportFFmpegDialogs.h:201
ExportFFmpegOptions::SavePreset
bool SavePreset(bool bCheckForOverwrite)
Definition: ExportFFmpegDialogs.cpp:2230
ExportFFmpegOPUSOptions::mVbrChoice
wxChoice * mVbrChoice
Definition: ExportFFmpegDialogs.h:140
ExportFFmpegOptions::mPresetCombo
wxComboBox * mPresetCombo
Definition: ExportFFmpegDialogs.h:253
FFmpegPresets::ExportPresets
void ExportPresets(wxString &filename)
Definition: ExportFFmpegDialogs.cpp:913
ExportFFmpegCustomOptions::OnOpen
void OnOpen(wxCommandEvent &evt)
Definition: ExportFFmpegDialogs.cpp:838
ExportFFmpegOptions::FetchCompatibleFormatList
int FetchCompatibleFormatList(AVCodecID id, wxString *selfmt)
Definition: ExportFFmpegDialogs.cpp:2128
ExposedFormat::canmetadata
const int canmetadata
!=0 if format supports metadata, AV_CANMETA any avformat version, otherwise version support added
Definition: ExportFFmpegDialogs.h:55
ExportFFmpegOptions::OnOK
void OnOK(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2543
ExportFFmpegWMAOptions::~ExportFFmpegWMAOptions
~ExportFFmpegWMAOptions()
Definition: ExportFFmpegDialogs.cpp:719
ExportFFmpegCustomOptions::TransferDataToWindow
bool TransferDataToWindow() override
Definition: ExportFFmpegDialogs.cpp:819
wxArrayStringEx
Extend wxArrayString with move operations and construction and insertion fromstd::initializer_list.
Definition: wxArrayStringEx.h:18
ExposedFormat::description
const TranslatableString description
format description (will be shown in export dialog)
Definition: ExportFFmpegDialogs.h:57
ExportFFmpegOptions::apptable
static ApplicableFor apptable[]
Definition: ExportFFmpegDialogs.h:234
ExportFFmpegCustomOptions::ExportFFmpegCustomOptions
ExportFFmpegCustomOptions(wxWindow *parent, int format)
Definition: ExportFFmpegDialogs.cpp:778
FFmpegPreset::mPresetName
wxString mPresetName
Definition: ExportFFmpegDialogs.h:310
FFmpegExposedFormat
FFmpegExposedFormat
Identifiers for pre-set export types.
Definition: ExportFFmpegDialogs.h:35
ExposedFormat
Describes export type.
Definition: ExportFFmpegDialogs.h:49
FFmpegPresets::~FFmpegPresets
~FFmpegPresets()
Definition: ExportFFmpegDialogs.cpp:886
CompatibilityEntry
Describes format-codec compatibility.
Definition: ExportFFmpegDialogs.h:65
ExportFFmpegOptions::mPresetNames
wxArrayStringEx mPresetNames
Definition: ExportFFmpegDialogs.h:260
ExportFFmpegOPUSOptions::mFramesizeChoice
wxChoice * mFramesizeChoice
Definition: ExportFFmpegDialogs.h:146
FileExtension
wxString FileExtension
File extension, not including any leading dot.
Definition: Identifier.h:224
ExportFFmpegOptions::ReportIfBadCombination
bool ReportIfBadCombination()
Definition: ExportFFmpegDialogs.cpp:2360
ExportFFmpegOPUSOptions::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition: ExportFFmpegDialogs.cpp:657
ExportFFmpegCustomOptions::mFormat
wxTextCtrl * mFormat
Definition: ExportFFmpegDialogs.h:189
ExportFFmpegOptions::OnFormatList
void OnFormatList(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2528
FFmpegPresets::ImportPresets
void ImportPresets(wxString &filename)
Definition: ExportFFmpegDialogs.cpp:899
ExportFFmpegWMAOptions::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:726
ExportFFmpegOptions::DoOnFormatList
void DoOnFormatList()
Definition: ExportFFmpegDialogs.cpp:2439
ExportFFmpegOptions::mCodecList
wxListBox * mCodecList
Definition: ExportFFmpegDialogs.h:248
ExportFFmpegWMAOptions::ExportFFmpegWMAOptions
ExportFFmpegWMAOptions(wxWindow *parent, int format)
Definition: ExportFFmpegDialogs.cpp:710
ExportFFmpegOPUSOptions::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:598
ExportFFmpegAACOptions
Options dialog for FFmpeg exporting of AAC format.
Definition: ExportFFmpegDialogs.h:94
ExportFFmpegOptions::OnDeletePreset
void OnDeletePreset(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2196
ExportFFmpegOptions::OnCodecList
void OnCodecList(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2535
FFmpegPresetMap
std::unordered_map< wxString, FFmpegPreset > FFmpegPresetMap
Definition: ExportFFmpegDialogs.h:315
ExportFFmpegOptions::OnLoadPreset
void OnLoadPreset(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2256
ExposedFormat::name
const wxChar * name
format name (internal, should be unique; if not - export dialog may show unusual behaviour)
Definition: ExportFFmpegDialogs.h:51
FMT_OTHER
@ FMT_OTHER
Definition: ExportFFmpegDialogs.h:41
ExportFFmpegAC3Options
AC3 export options dialog.
Definition: ExportFFmpegDialogs.h:73
ExportFFmpegOptions::mFormatList
wxListBox * mFormatList
Definition: ExportFFmpegDialogs.h:247
ExportFFmpegOptions::CompatibilityList
static CompatibilityEntry CompatibilityList[]
Definition: ExportFFmpegDialogs.h:231
ExportFFmpegAMRNBOptions::TransferDataToWindow
bool TransferDataToWindow() override
Definition: ExportFFmpegDialogs.cpp:392
FMT_AMRNB
@ FMT_AMRNB
Definition: ExportFFmpegDialogs.h:38
ExportFFmpegAMRNBOptions::mBitRateChoice
wxChoice * mBitRateChoice
Definition: ExportFFmpegDialogs.h:118
name
const TranslatableString name
Definition: Distortion.cpp:98
ExportFFmpegOptions
Custom FFmpeg export dialog.
Definition: ExportFFmpegDialogs.h:208
Identifier.h
ExportFFmpegOptions::mCodecName
wxStaticText * mCodecName
Definition: ExportFFmpegDialogs.h:251
ExportFFmpegAC3Options::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:212
format
int format
Definition: ExportPCM.cpp:56
FFmpegPresets::HandleXMLChild
XMLTagHandler * HandleXMLChild(const wxChar *tag) override
Definition: ExportFFmpegDialogs.cpp:1228
FFmpegPresets::DeletePreset
void DeletePreset(wxString &name)
Definition: ExportFFmpegDialogs.cpp:935
ExportFFmpegOPUSOptions::mCutoffFromChoice
int mCutoffFromChoice
Definition: ExportFFmpegDialogs.h:153
FFmpegPresets::OverwriteIsOk
bool OverwriteIsOk(wxString &name)
Definition: ExportFFmpegDialogs.cpp:956
ExportFFmpegAMRNBOptions::mBitRateFromChoice
int mBitRateFromChoice
Definition: ExportFFmpegDialogs.h:119
ExportFFmpegWMAOptions::TransferDataToWindow
bool TransferDataToWindow() override
Definition: ExportFFmpegDialogs.cpp:751
ExportFFmpegAACOptions::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition: ExportFFmpegDialogs.cpp:304
ExportFFmpegOPUSOptions::mComplexitySlider
wxSlider * mComplexitySlider
Definition: ExportFFmpegDialogs.h:143
FFmpegPreset::~FFmpegPreset
~FFmpegPreset()
Definition: ExportFFmpegDialogs.cpp:872
XMLFileReader.h
ExportFFmpegOptions::mShownFormatNames
wxArrayString mShownFormatNames
Definition: ExportFFmpegDialogs.h:238
FFmpegPresets::WriteXMLHeader
void WriteXMLHeader(XMLWriter &xmlFile) const
Definition: ExportFFmpegDialogs.cpp:1246
ExportFFmpegWMAOptions::mBitRateFromChoice
int mBitRateFromChoice
Definition: ExportFFmpegDialogs.h:172
XMLTagHandler
This class is an interface which should be implemented by classes which wish to be able to load and s...
Definition: XMLTagHandler.h:62
FFmpegPreset
Definition: ExportFFmpegDialogs.h:305
FFmpegPresets::GetPresetList
void GetPresetList(wxArrayString &list)
Definition: ExportFFmpegDialogs.cpp:923
ExportFFmpegOptions::fmts
static ExposedFormat fmts[]
List of export types.
Definition: ExportFFmpegDialogs.h:232
wxDialogWrapper
Definition: wxPanelWrapper.h:81
ExposedFormat::shortname
const wxChar * shortname
used to guess the format
Definition: ExportFFmpegDialogs.h:53
FFmpegPresets::FindPreset
FFmpegPreset * FindPreset(wxString &name)
Definition: ExportFFmpegDialogs.cpp:944
ExportFFmpegWMAOptions
Options dialog for FFmpeg exporting of WMA format.
Definition: ExportFFmpegDialogs.h:157
ApplicableFor::enable
bool enable
true if this control should be enabled, false otherwise
Definition: ExportFFmpegDialogs.h:198
ExportFFmpegOptions::mShownFormatLongNames
wxArrayString mShownFormatLongNames
Definition: ExportFFmpegDialogs.h:239
ExportFFmpegOptions::mShownCodecLongNames
wxArrayString mShownCodecLongNames
Definition: ExportFFmpegDialogs.h:241
ExportFFmpegCustomOptions::mCodec
wxTextCtrl * mCodec
Definition: ExportFFmpegDialogs.h:190
ExportFFmpegOPUSOptions::mApplicationFromChoice
int mApplicationFromChoice
Definition: ExportFFmpegDialogs.h:150
ExportFFmpegOptions::mSampleRateFromChoice
int mSampleRateFromChoice
Definition: ExportFFmpegDialogs.h:256
ExportFFmpegAMRNBOptions::ExportFFmpegAMRNBOptions
ExportFFmpegAMRNBOptions(wxWindow *parent, int format)
Definition: ExportFFmpegDialogs.cpp:351
ExportFFmpegAACOptions::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:274
ExportFFmpegOptions::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:1814
ExportFFmpegOptions::OnImportPresets
void OnImportPresets(wxCommandEvent &event)
Definition: ExportFFmpegDialogs.cpp:2286
ExportFFmpegOptions::EnableDisableControls
void EnableDisableControls(AVCodec *cdc, wxString *selfmt)
Definition: ExportFFmpegDialogs.cpp:2415
ExportFFmpegOptions::mFormatLongNames
wxArrayString mFormatLongNames
Definition: ExportFFmpegDialogs.h:243
ApplicableFor::control
int control
control ID
Definition: ExportFFmpegDialogs.h:199
FileNames.h
ExposedFormat::canutf8
bool canutf8
true if format supports metadata in UTF-8, false otherwise
Definition: ExportFFmpegDialogs.h:56
ExportFFmpegAC3Options::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition: ExportFFmpegDialogs.cpp:244
ExportFFmpegOPUSOptions::mApplicationChoice
wxChoice * mApplicationChoice
Definition: ExportFFmpegDialogs.h:149
ExportFFmpegAC3Options::~ExportFFmpegAC3Options
virtual ~ExportFFmpegAC3Options()
Definition: ExportFFmpegDialogs.cpp:205
ExportFFmpegOPUSOptions::iOPUSSampleRates
static const int iOPUSSampleRates[]
Definition: ExportFFmpegDialogs.h:133
ExportFFmpegCustomOptions::~ExportFFmpegCustomOptions
~ExportFFmpegCustomOptions()
Definition: ExportFFmpegDialogs.cpp:789
ExportFFmpegAC3Options::mBitRateChoice
wxChoice * mBitRateChoice
Definition: ExportFFmpegDialogs.h:89
ExposedFormat::codecid
AVCodecID codecid
codec ID (see libavcodec/avcodec.h)
Definition: ExportFFmpegDialogs.h:58
ExportFFmpegAMRNBOptions::~ExportFFmpegAMRNBOptions
virtual ~ExportFFmpegAMRNBOptions()
Definition: ExportFFmpegDialogs.cpp:360
ExportFFmpegOptions::FetchCompatibleCodecList
int FetchCompatibleCodecList(const wxChar *fmt, AVCodecID id)
Definition: ExportFFmpegDialogs.cpp:2046
ExportFFmpegOptions::mCodecLongNames
wxArrayString mCodecLongNames
Definition: ExportFFmpegDialogs.h:245
FFmpegPreset::mControlState
wxArrayString mControlState
Definition: ExportFFmpegDialogs.h:311
ExportFFmpegOPUSOptions::~ExportFFmpegOPUSOptions
~ExportFFmpegOPUSOptions()
Definition: ExportFFmpegDialogs.cpp:591
ExportFFmpegOPUSOptions::mBitRateFromSlider
int mBitRateFromSlider
Definition: ExportFFmpegDialogs.h:138
ExportFFmpegOptions::mFormatName
wxStaticText * mFormatName
Definition: ExportFFmpegDialogs.h:250
ExportFFmpegOPUSOptions::mBitRateSlider
wxSlider * mBitRateSlider
Definition: ExportFFmpegDialogs.h:137
ExportFFmpegOptions::mFormatNames
wxArrayStringEx mFormatNames
Definition: ExportFFmpegDialogs.h:242
FMT_LAST
@ FMT_LAST
Definition: ExportFFmpegDialogs.h:42
FFmpegPresets::LoadPreset
void LoadPreset(ExportFFmpegOptions *parent, wxString &name)
Definition: ExportFFmpegDialogs.cpp:1066
FMT_OPUS
@ FMT_OPUS
Definition: ExportFFmpegDialogs.h:39
ExportFFmpegOPUSOptions::mCuttoffChoice
wxChoice * mCuttoffChoice
Definition: ExportFFmpegDialogs.h:152
ExportFFmpegOPUSOptions::mVbrFromChoice
int mVbrFromChoice
Definition: ExportFFmpegDialogs.h:141
ExportFFmpegOptions::~ExportFFmpegOptions
~ExportFFmpegOptions()
Definition: ExportFFmpegDialogs.cpp:1732
ExportFFmpegOPUSOptions
Options dialog for FFmpeg exporting of OPUS format.
Definition: ExportFFmpegDialogs.h:123
ExportFFmpegOptions::DoOnCodecList
void DoOnCodecList()
Definition: ExportFFmpegDialogs.cpp:2483
ExportFFmpegOptions::mCodecNames
wxArrayStringEx mCodecNames
Definition: ExportFFmpegDialogs.h:244
ExportFFmpegOptions::ExportFFmpegOptions
ExportFFmpegOptions(wxWindow *parent)
Definition: ExportFFmpegDialogs.cpp:1737
ExportFFmpegCustomOptions::PopulateOrExchange
void PopulateOrExchange(ShuttleGui &S)
Definition: ExportFFmpegDialogs.cpp:796
FMT_M4A
@ FMT_M4A
Definition: ExportFFmpegDialogs.h:36
FFmpegPresets::mAbortImport
bool mAbortImport
Definition: ExportFFmpegDialogs.h:342
ExportFFmpegCustomOptions::TransferDataFromWindow
bool TransferDataFromWindow() override
Definition: ExportFFmpegDialogs.cpp:831
ShuttleGui
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Definition: ShuttleGui.h:631
ExportFFmpegOptions::mPresets
std::unique_ptr< FFmpegPresets > mPresets
Definition: ExportFFmpegDialogs.h:258
CompatibilityEntry::codec
AVCodecID codec
codec ID
Definition: ExportFFmpegDialogs.h:67
ExportFFmpegOptions::mBitRateFromChoice
int mBitRateFromChoice
Definition: ExportFFmpegDialogs.h:255
FMT_WMA2
@ FMT_WMA2
Definition: ExportFFmpegDialogs.h:40
ExportFFmpegWMAOptions::mBitRateChoice
wxChoice * mBitRateChoice
Definition: ExportFFmpegDialogs.h:171