Audacity 3.2.0
Classes | Namespaces | Macros | Enumerations | Functions | Variables
ExportFFmpeg.cpp File Reference
#include "../FFmpeg.h"
#include "FFmpegFunctions.h"
#include "FifoBuffer.h"
#include <wx/app.h>
#include <wx/log.h>
#include <wx/window.h>
#include <wx/button.h>
#include <wx/textctrl.h>
#include "BasicSettings.h"
#include "Mix.h"
#include "Tags.h"
#include "Track.h"
#include "wxFileNameWrapper.h"
#include "ExportFFmpegOptions.h"
#include "SelectFile.h"
#include "ShuttleGui.h"
#include "ExportPluginHelpers.h"
#include "PlainExportOptionsEditor.h"
#include "FFmpegDefines.h"
#include "ExportOptionsUIServices.h"
#include "ExportPluginRegistry.h"
Include dependency graph for ExportFFmpeg.cpp:

Go to the source code of this file.

Classes

class  anonymous_namespace{ExportFFmpeg.cpp}::ExportOptionsFFmpegCustomEditor
 
class  FFmpegExporter
 Performs actual export. More...
 
class  FFmpegExportProcessor
 
class  ExportFFmpeg
 Controlling class for FFmpeg exporting. Creates the options dialog of the appropriate type, adds tags and invokes the export function. More...
 

Namespaces

namespace  anonymous_namespace{ExportFFmpeg.cpp}
 

Macros

#define FFMPEG_AUTO_RESAMPLE   1
 

Enumerations

enum  : int { anonymous_namespace{ExportFFmpeg.cpp}::AC3OptionIDBitRate = 0 }
 
enum  : int { anonymous_namespace{ExportFFmpeg.cpp}::AACOptionIDQuality = 0 }
 
enum  : int { anonymous_namespace{ExportFFmpeg.cpp}::AMRNBOptionIDBitRate = 0 }
 
enum  : int { anonymous_namespace{ExportFFmpeg.cpp}::WMAOptionIDBitRate = 0 }
 

Functions

static int AdjustFormatIndex (int format)
 
ExportOptionsEditor::SampleRateList anonymous_namespace{ExportFFmpeg.cpp}::ToSampleRateList (const int *rates)
 
TranslatableString anonymous_namespace{ExportFFmpeg.cpp}::n_kbps (int n)
 
TranslatableString anonymous_namespace{ExportFFmpeg.cpp}::f_kbps (double d)
 
void AddStringTagUTF8 (char field[], int size, wxString value)
 
void AddStringTagANSI (char field[], int size, wxString value)
 

Variables

const int anonymous_namespace{ExportFFmpeg.cpp}::iAC3SampleRates []
 
const int anonymous_namespace{ExportFFmpeg.cpp}::iWMASampleRates []
 
const std::initializer_list< PlainExportOptionsEditor::OptionDescanonymous_namespace{ExportFFmpeg.cpp}::AC3Options
 
const std::initializer_list< PlainExportOptionsEditor::OptionDescanonymous_namespace{ExportFFmpeg.cpp}::AACOptions
 
const std::initializer_list< PlainExportOptionsEditor::OptionDescanonymous_namespace{ExportFFmpeg.cpp}::AMRNBOptions
 
const std::initializer_list< PlainExportOptionsEditor::OptionDescanonymous_namespace{ExportFFmpeg.cpp}::WMAOptions
 
const std::vector< ExportOptionanonymous_namespace{ExportFFmpeg.cpp}::FFmpegOptions
 
static ExportPluginRegistry::RegisteredPlugin sRegisteredPlugin
 

Macro Definition Documentation

◆ FFMPEG_AUTO_RESAMPLE

#define FFMPEG_AUTO_RESAMPLE   1

Definition at line 54 of file ExportFFmpeg.cpp.

Function Documentation

◆ AddStringTagANSI()

void AddStringTagANSI ( char  field[],
int  size,
wxString  value 
)

Definition at line 1688 of file ExportFFmpeg.cpp.

1689{
1690 memset(field,0,size);
1691 memcpy(field,value.mb_str(),(int)strlen(value.mb_str()) > size -1 ? size -1 : strlen(value.mb_str()));
1692}
#define field(n, t)
Definition: ImportAUP.cpp:165

References field, and size.

◆ AddStringTagUTF8()

void AddStringTagUTF8 ( char  field[],
int  size,
wxString  value 
)

Definition at line 1682 of file ExportFFmpeg.cpp.

1683{
1684 memset(field,0,size);
1685 memcpy(field,value.ToUTF8(),(int)strlen(value.ToUTF8()) > size -1 ? size -1 : strlen(value.ToUTF8()));
1686}

References field, and size.

◆ AdjustFormatIndex()

static int AdjustFormatIndex ( int  format)
static

Definition at line 56 of file ExportFFmpeg.cpp.

57{
58 int subFormat = -1;
59 for (int i = 0; i <= FMT_OTHER; i++)
60 {
61 if (ExportFFmpegOptions::fmts[i].compiledIn) subFormat++;
62 if (subFormat == format || i == FMT_OTHER)
63 {
64 subFormat = i;
65 break;
66 }
67 }
68 return subFormat;
69}
@ FMT_OTHER
static ExposedFormat fmts[]
List of export types.

References FMT_OTHER, ExportFFmpegOptions::fmts, and anonymous_namespace{ExportPCM.cpp}::format.

Referenced by ExportFFmpeg::CreateOptionsEditor(), and FFmpegExportProcessor::Initialize().

Here is the caller graph for this function:

Variable Documentation

◆ sRegisteredPlugin

ExportPluginRegistry::RegisteredPlugin sRegisteredPlugin
static
Initial value:
{ "FFmpeg",
[]{ return std::make_unique< ExportFFmpeg >(); }
}

Definition at line 1833 of file ExportFFmpeg.cpp.