Skip to content

Commit

Permalink
[Var] Run clang-format.
Browse files Browse the repository at this point in the history
git-svn-id: https://source.openmpt.org/svn/openmpt/trunk/OpenMPT@21587 56274372-70c3-4bfc-bfc3-4c3a0b034d27
  • Loading branch information
manxorist committed Sep 13, 2024
1 parent d8d517b commit 2bd540b
Show file tree
Hide file tree
Showing 16 changed files with 308 additions and 329 deletions.
2 changes: 1 addition & 1 deletion src/openmpt/streamencoder/StreamEncoder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ static inline std::pair<bool, std::size_t> WriteInterleavedImpl(std::ostream &f,
std::size_t written = 0;
MPT_MAYBE_CONSTANT_IF(endian == mpt::get_endian() && format.encoding != Encoder::Format::Encoding::Alaw && format.encoding != Encoder::Format::Encoding::ulaw)
{
if(!mpt::IO::WriteRaw(f, reinterpret_cast<const std::byte*>(interleaved), frameCount * channels * format.GetSampleFormat().GetSampleSize()))
if(!mpt::IO::WriteRaw(f, reinterpret_cast<const std::byte *>(interleaved), frameCount * channels * format.GetSampleFormat().GetSampleSize()))
{
success = false;
}
Expand Down
281 changes: 142 additions & 139 deletions src/openmpt/streamencoder/StreamEncoder.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ OPENMPT_NAMESPACE_BEGIN



// clang-format off

inline constexpr int opus_bitrates [] = {
8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 144, 160, 192, 224, 256, 320, 384, 448, 510
};
Expand Down Expand Up @@ -65,187 +67,188 @@ inline constexpr uint32 mpeg1layer3_samplerates [] = {
48000, 44100, 32000
};

// clang-format on


namespace Encoder
{

enum Mode
enum Mode
{
ModeCBR = 1 << 0,
ModeABR = 1 << 1,
ModeVBR = 1 << 2,
ModeQuality = 1 << 3,
ModeLossless = 1 << 4,
ModeInvalid = 0
};

struct Format
{
enum class Encoding
{
ModeCBR = 1<<0,
ModeABR = 1<<1,
ModeVBR = 1<<2,
ModeQuality = 1<<3,
ModeLossless = 1<<4,
ModeInvalid = 0
Float = 1,
Integer = 2,
Alaw = 3,
ulaw = 4,
Unsigned = 5,
};

struct Format
Encoding encoding;
uint8 bits;
mpt::endian endian;
bool operator==(const Format &other) const
{
enum class Encoding
{
Float = 1,
Integer = 2,
Alaw = 3,
ulaw = 4,
Unsigned = 5,
};
Encoding encoding;
uint8 bits;
mpt::endian endian;
bool operator==(const Format &other) const
{
return encoding == other.encoding && bits == other.bits && endian == other.endian;
}
bool operator!=(const Format& other) const
{
return encoding != other.encoding || bits != other.bits || endian != other.endian;
}
int32 AsInt() const
{
return (static_cast<int32>(endian == mpt::endian::little) << 16) | (static_cast<int32>(encoding) << 8) | static_cast<int32>(bits);
}
static Format FromInt(int32 val)
{
Encoder::Format f;
f.bits = val & 0xff;
f.encoding = static_cast<Encoder::Format::Encoding>((val >> 8) & 0xff);
f.endian = ((val >> 16) & 0xff) ? mpt::endian::little : mpt::endian::big;
return f;
}
SampleFormat GetSampleFormat() const
return encoding == other.encoding && bits == other.bits && endian == other.endian;
}
bool operator!=(const Format &other) const
{
return encoding != other.encoding || bits != other.bits || endian != other.endian;
}
int32 AsInt() const
{
return (static_cast<int32>(endian == mpt::endian::little) << 16) | (static_cast<int32>(encoding) << 8) | static_cast<int32>(bits);
}
static Format FromInt(int32 val)
{
Encoder::Format f;
f.bits = val & 0xff;
f.encoding = static_cast<Encoder::Format::Encoding>((val >> 8) & 0xff);
f.endian = ((val >> 16) & 0xff) ? mpt::endian::little : mpt::endian::big;
return f;
}
SampleFormat GetSampleFormat() const
{
SampleFormat result = SampleFormat::Default;
switch(encoding)
{
SampleFormat result = SampleFormat::Default;
switch(encoding)
{
case Encoding::Float:
switch(bits)
{
case 32:
result = SampleFormat::Float32;
break;
case 64:
result = SampleFormat::Float64;
break;
case 32:
result = SampleFormat::Float32;
break;
case 64:
result = SampleFormat::Float64;
break;
}
break;
case Encoding::Integer:
switch(bits)
{
case 8:
result = SampleFormat::Int8;
break;
case 16:
result = SampleFormat::Int16;
break;
case 24:
result = SampleFormat::Int24;
break;
case 32:
result = SampleFormat::Int32;
break;
case 8:
result = SampleFormat::Int8;
break;
case 16:
result = SampleFormat::Int16;
break;
case 24:
result = SampleFormat::Int24;
break;
case 32:
result = SampleFormat::Int32;
break;
}
break;
case Encoding::Alaw:
switch (bits)
switch(bits)
{
case 16:
result = SampleFormat::Int16;
break;
case 16:
result = SampleFormat::Int16;
break;
}
break;
case Encoding::ulaw:
switch (bits)
switch(bits)
{
case 16:
result = SampleFormat::Int16;
break;
case 16:
result = SampleFormat::Int16;
break;
}
break;
case Encoding::Unsigned:
switch (bits)
switch(bits)
{
case 8:
result = SampleFormat::Unsigned8;
break;
case 8:
result = SampleFormat::Unsigned8;
break;
}
break;
}
return result;
}
};
return result;
}
};

struct Traits
{

mpt::native_path fileExtension;
mpt::ustring fileShortDescription;
mpt::ustring encoderSettingsName;

mpt::ustring fileDescription;

bool canTags = false;
std::vector<mpt::ustring> genres;
int modesWithFixedGenres = 0;

bool canCues = false;

int maxChannels = 0;
std::vector<uint32> samplerates;

int modes = Encoder::ModeInvalid;
std::vector<int> bitrates;
std::vector<Format> formats;

uint32 defaultSamplerate = 48000;
uint16 defaultChannels = 2;

Encoder::Mode defaultMode = Encoder::ModeInvalid;
int defaultBitrate = 0;
float defaultQuality = 0.0f;
Format defaultFormat = { Encoder::Format::Encoding::Float, 32, mpt::endian::little };
int defaultDitherType = 1;
};
struct Traits
{

struct StreamSettings
{
int32 FLACCompressionLevel = 5; // 8
uint32 AUPaddingAlignHint = 4096;
uint32 MP3ID3v2MinPadding = 1024;
uint32 MP3ID3v2PaddingAlignHint = 4096;
bool MP3ID3v2WriteReplayGainTXXX = true;
int32 MP3LameQuality = 3; // 0
bool MP3LameID3v2UseLame = false;
bool MP3LameCalculateReplayGain = true;
bool MP3LameCalculatePeakSample = true;
int32 OpusComplexity = -1; // 10
};
mpt::native_path fileExtension;
mpt::ustring fileShortDescription;
mpt::ustring encoderSettingsName;

struct Settings
{
mpt::ustring fileDescription;

bool Cues;
bool Tags;
bool canTags = false;
std::vector<mpt::ustring> genres;
int modesWithFixedGenres = 0;

uint32 Samplerate;
uint16 Channels;
bool canCues = false;

Encoder::Mode Mode;
int Bitrate;
float Quality;
Encoder::Format Format;
int Dither;
int maxChannels = 0;
std::vector<uint32> samplerates;

StreamSettings Details;
int modes = Encoder::ModeInvalid;
std::vector<int> bitrates;
std::vector<Format> formats;

};
uint32 defaultSamplerate = 48000;
uint16 defaultChannels = 2;

Encoder::Mode defaultMode = Encoder::ModeInvalid;
int defaultBitrate = 0;
float defaultQuality = 0.0f;
Format defaultFormat = {Encoder::Format::Encoding::Float, 32, mpt::endian::little};
int defaultDitherType = 1;
};

struct StreamSettings
{
int32 FLACCompressionLevel = 5; // 8
uint32 AUPaddingAlignHint = 4096;
uint32 MP3ID3v2MinPadding = 1024;
uint32 MP3ID3v2PaddingAlignHint = 4096;
bool MP3ID3v2WriteReplayGainTXXX = true;
int32 MP3LameQuality = 3; // 0
bool MP3LameID3v2UseLame = false;
bool MP3LameCalculateReplayGain = true;
bool MP3LameCalculatePeakSample = true;
int32 OpusComplexity = -1; // 10
};

struct Settings
{

} // namespace Encoder
bool Cues;
bool Tags;

uint32 Samplerate;
uint16 Channels;

Encoder::Mode Mode;
int Bitrate;
float Quality;
Encoder::Format Format;
int Dither;

StreamSettings Details;
};

} // namespace Encoder


class IAudioStreamEncoder
{
protected:
IAudioStreamEncoder() { }
IAudioStreamEncoder() {}
public:
virtual ~IAudioStreamEncoder() = default;
public:
Expand All @@ -257,7 +260,7 @@ class IAudioStreamEncoder
virtual void WriteInterleaved(std::size_t frameCount, const int16 *interleaved) = 0;
virtual void WriteInterleaved(std::size_t frameCount, const int8 *interleaved) = 0;
virtual void WriteInterleaved(std::size_t frameCount, const uint8 *interleaved) = 0;
virtual void WriteCues(const std::vector<uint64> &cues) = 0; // optional
virtual void WriteCues(const std::vector<uint64> &cues) = 0; // optional
virtual void WriteFinalize() = 0;
};

Expand All @@ -284,7 +287,7 @@ std::pair<bool, std::size_t> WriteInterleavedBE(std::ostream &f, uint16 channels
class StreamWriterBase
: public IAudioStreamEncoder
{
protected:
protected:
std::ostream &f;
mpt::IO::Offset fStart;
std::vector<std::byte> buf;
Expand Down Expand Up @@ -312,7 +315,7 @@ class EncoderFactoryBase
private:
Encoder::Traits m_Traits;
protected:
EncoderFactoryBase() { }
EncoderFactoryBase() {}
virtual ~EncoderFactoryBase() = default;
void SetTraits(const Encoder::Traits &traits);
public:
Expand Down
Loading

0 comments on commit 2bd540b

Please sign in to comment.