Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #9176 from lioncash/audiofmt
AudioCommon: Migrate logging over to fmt
  • Loading branch information
leoetlino committed Oct 21, 2020
2 parents 3176f4d + 22a7928 commit 96ce3e5
Show file tree
Hide file tree
Showing 9 changed files with 69 additions and 70 deletions.
42 changes: 21 additions & 21 deletions Source/Core/AudioCommon/AlsaSoundStream.cpp
Expand Up @@ -64,7 +64,7 @@ void AlsaSound::SoundLoop()
}
else if (rc < 0)
{
ERROR_LOG(AUDIO, "writei fail: %s", snd_strerror(rc));
ERROR_LOG_FMT(AUDIO, "writei fail: {}", snd_strerror(rc));
}
}
if (m_thread_status.load() == ALSAThreadStatus::PAUSED)
Expand Down Expand Up @@ -107,7 +107,7 @@ bool AlsaSound::AlsaInit()
err = snd_pcm_open(&handle, "default", SND_PCM_STREAM_PLAYBACK, 0);
if (err < 0)
{
ERROR_LOG(AUDIO, "Audio open error: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Audio open error: {}", snd_strerror(err));
return false;
}

Expand All @@ -116,73 +116,73 @@ bool AlsaSound::AlsaInit()
err = snd_pcm_hw_params_any(handle, hwparams);
if (err < 0)
{
ERROR_LOG(AUDIO, "Broken configuration for this PCM: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Broken configuration for this PCM: {}", snd_strerror(err));
return false;
}

err = snd_pcm_hw_params_set_access(handle, hwparams, SND_PCM_ACCESS_RW_INTERLEAVED);
if (err < 0)
{
ERROR_LOG(AUDIO, "Access type not available: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Access type not available: {}", snd_strerror(err));
return false;
}

err = snd_pcm_hw_params_set_format(handle, hwparams, SND_PCM_FORMAT_S16_LE);
if (err < 0)
{
ERROR_LOG(AUDIO, "Sample format not available: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Sample format not available: {}", snd_strerror(err));
return false;
}

dir = 0;
err = snd_pcm_hw_params_set_rate_near(handle, hwparams, &sample_rate, &dir);
if (err < 0)
{
ERROR_LOG(AUDIO, "Rate not available: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Rate not available: {}", snd_strerror(err));
return false;
}

err = snd_pcm_hw_params_set_channels(handle, hwparams, CHANNEL_COUNT);
if (err < 0)
{
ERROR_LOG(AUDIO, "Channels count not available: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Channels count not available: {}", snd_strerror(err));
return false;
}

periods = BUFFER_SIZE_MAX / FRAME_COUNT_MIN;
err = snd_pcm_hw_params_set_periods_max(handle, hwparams, &periods, &dir);
if (err < 0)
{
ERROR_LOG(AUDIO, "Cannot set maximum periods per buffer: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Cannot set maximum periods per buffer: {}", snd_strerror(err));
return false;
}

buffer_size_max = BUFFER_SIZE_MAX;
err = snd_pcm_hw_params_set_buffer_size_max(handle, hwparams, &buffer_size_max);
if (err < 0)
{
ERROR_LOG(AUDIO, "Cannot set maximum buffer size: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Cannot set maximum buffer size: {}", snd_strerror(err));
return false;
}

err = snd_pcm_hw_params(handle, hwparams);
if (err < 0)
{
ERROR_LOG(AUDIO, "Unable to install hw params: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Unable to install hw params: {}", snd_strerror(err));
return false;
}

err = snd_pcm_hw_params_get_buffer_size(hwparams, &buffer_size);
if (err < 0)
{
ERROR_LOG(AUDIO, "Cannot get buffer size: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Cannot get buffer size: {}", snd_strerror(err));
return false;
}

err = snd_pcm_hw_params_get_periods_max(hwparams, &periods, &dir);
if (err < 0)
{
ERROR_LOG(AUDIO, "Cannot get periods: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Cannot get periods: {}", snd_strerror(err));
return false;
}

Expand All @@ -195,41 +195,41 @@ bool AlsaSound::AlsaInit()
// it is probably a bad idea to try to send more than one buffer of data
if ((unsigned int)frames_to_deliver > buffer_size)
frames_to_deliver = buffer_size;
NOTICE_LOG(AUDIO,
"ALSA gave us a %ld sample \"hardware\" buffer with %d periods. Will send %d "
"samples per fragments.",
buffer_size, periods, frames_to_deliver);
NOTICE_LOG_FMT(AUDIO,
"ALSA gave us a {} sample \"hardware\" buffer with {} periods. Will send {} "
"samples per fragments.",
buffer_size, periods, frames_to_deliver);

snd_pcm_sw_params_alloca(&swparams);

err = snd_pcm_sw_params_current(handle, swparams);
if (err < 0)
{
ERROR_LOG(AUDIO, "cannot init sw params: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "cannot init sw params: {}", snd_strerror(err));
return false;
}

err = snd_pcm_sw_params_set_start_threshold(handle, swparams, 0U);
if (err < 0)
{
ERROR_LOG(AUDIO, "cannot set start thresh: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "cannot set start thresh: {}", snd_strerror(err));
return false;
}

err = snd_pcm_sw_params(handle, swparams);
if (err < 0)
{
ERROR_LOG(AUDIO, "cannot set sw params: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "cannot set sw params: {}", snd_strerror(err));
return false;
}

err = snd_pcm_prepare(handle);
if (err < 0)
{
ERROR_LOG(AUDIO, "Unable to prepare: %s", snd_strerror(err));
ERROR_LOG_FMT(AUDIO, "Unable to prepare: {}", snd_strerror(err));
return false;
}
NOTICE_LOG(AUDIO, "ALSA successfully initialized.");
NOTICE_LOG_FMT(AUDIO, "ALSA successfully initialized.");
return true;
}

Expand Down
15 changes: 7 additions & 8 deletions Source/Core/AudioCommon/AudioCommon.cpp
Expand Up @@ -54,16 +54,15 @@ void InitSoundStream()

if (!g_sound_stream)
{
WARN_LOG(AUDIO, "Unknown backend %s, using %s instead.", backend.c_str(),
GetDefaultSoundBackend().c_str());
WARN_LOG_FMT(AUDIO, "Unknown backend {}, using {} instead.", backend, GetDefaultSoundBackend());
backend = GetDefaultSoundBackend();
g_sound_stream = CreateSoundStreamForBackend(GetDefaultSoundBackend());
}

if (!g_sound_stream || !g_sound_stream->Init())
{
WARN_LOG(AUDIO, "Could not initialize backend %s, using %s instead.", backend.c_str(),
BACKEND_NULLSOUND);
WARN_LOG_FMT(AUDIO, "Could not initialize backend {}, using {} instead.", backend,
BACKEND_NULLSOUND);
g_sound_stream = std::make_unique<NullSound>();
g_sound_stream->Init();
}
Expand All @@ -83,15 +82,15 @@ void InitSoundStream()

void ShutdownSoundStream()
{
INFO_LOG(AUDIO, "Shutting down sound stream");
INFO_LOG_FMT(AUDIO, "Shutting down sound stream");

if (SConfig::GetInstance().m_DumpAudio && s_audio_dump_start)
StopAudioDump();

SetSoundStreamRunning(false);
g_sound_stream.reset();

INFO_LOG(AUDIO, "Done shutting down sound stream");
INFO_LOG_FMT(AUDIO, "Done shutting down sound stream");
}

std::string GetDefaultSoundBackend()
Expand Down Expand Up @@ -180,9 +179,9 @@ void SetSoundStreamRunning(bool running)
if (g_sound_stream->SetRunning(running))
return;
if (running)
ERROR_LOG(AUDIO, "Error starting stream.");
ERROR_LOG_FMT(AUDIO, "Error starting stream.");
else
ERROR_LOG(AUDIO, "Error stopping stream.");
ERROR_LOG_FMT(AUDIO, "Error stopping stream.");
}

void SendAIBuffer(const short* samples, unsigned int num_samples)
Expand Down
4 changes: 2 additions & 2 deletions Source/Core/AudioCommon/AudioStretcher.cpp
Expand Up @@ -58,8 +58,8 @@ void AudioStretcher::ProcessSamples(const short* in, unsigned int num_in, unsign
m_stretch_ratio = std::max(m_stretch_ratio, 0.1);
m_sound_touch.setTempo(m_stretch_ratio);

DEBUG_LOG(AUDIO, "Audio stretching: samples:%u/%u ratio:%f backlog:%f gain: %f", num_in, num_out,
m_stretch_ratio, backlog_fullness, lpf_gain);
DEBUG_LOG_FMT(AUDIO, "Audio stretching: samples:{}/{} ratio:{} backlog:{} gain: {}", num_in,
num_out, m_stretch_ratio, backlog_fullness, lpf_gain);

m_sound_touch.putSamples(in, num_in);
}
Expand Down
4 changes: 2 additions & 2 deletions Source/Core/AudioCommon/CubebStream.cpp
Expand Up @@ -56,8 +56,8 @@ bool CubebStream::Init()

u32 minimum_latency = 0;
if (cubeb_get_min_latency(m_ctx.get(), &params, &minimum_latency) != CUBEB_OK)
ERROR_LOG(AUDIO, "Error getting minimum latency");
INFO_LOG(AUDIO, "Minimum latency: %i frames", minimum_latency);
ERROR_LOG_FMT(AUDIO, "Error getting minimum latency");
INFO_LOG_FMT(AUDIO, "Minimum latency: {} frames", minimum_latency);

return cubeb_stream_init(m_ctx.get(), &m_stream, "Dolphin Audio Output", nullptr, nullptr,
nullptr, &params, std::max(BUFFER_SAMPLES, minimum_latency),
Expand Down
8 changes: 4 additions & 4 deletions Source/Core/AudioCommon/CubebUtils.cpp
Expand Up @@ -38,7 +38,7 @@ static void DestroyContext(cubeb* ctx)
cubeb_destroy(ctx);
if (cubeb_set_log_callback(CUBEB_LOG_DISABLED, nullptr) != CUBEB_OK)
{
ERROR_LOG(AUDIO, "Error removing cubeb log callback");
ERROR_LOG_FMT(AUDIO, "Error removing cubeb log callback");
}
}

Expand All @@ -59,16 +59,16 @@ std::shared_ptr<cubeb> CubebUtils::GetContext()
}
if (cubeb_set_log_callback(CUBEB_LOG_NORMAL, LogCallback) != CUBEB_OK)
{
ERROR_LOG(AUDIO, "Error setting cubeb log callback");
ERROR_LOG_FMT(AUDIO, "Error setting cubeb log callback");
}

cubeb* ctx;
if (cubeb_init(&ctx, "Dolphin", nullptr) != CUBEB_OK)
{
ERROR_LOG(AUDIO, "Error initializing cubeb library");
ERROR_LOG_FMT(AUDIO, "Error initializing cubeb library");
return nullptr;
}
INFO_LOG(AUDIO, "Cubeb initialized using %s backend", cubeb_get_backend_id(ctx));
INFO_LOG_FMT(AUDIO, "Cubeb initialized using {} backend", cubeb_get_backend_id(ctx));

weak = shared = {ctx, DestroyContext};
return shared;
Expand Down
24 changes: 12 additions & 12 deletions Source/Core/AudioCommon/Mixer.cpp
Expand Up @@ -36,7 +36,7 @@ Mixer::Mixer(unsigned int BackendSampleRate)
m_surround_decoder(BackendSampleRate,
DPL2QualityToFrameBlockSize(Config::Get(Config::MAIN_DPL2_QUALITY)))
{
INFO_LOG(AUDIO_INTERFACE, "Mixer is initialized");
INFO_LOG_FMT(AUDIO_INTERFACE, "Mixer is initialized");
}

Mixer::~Mixer()
Expand Down Expand Up @@ -193,7 +193,7 @@ unsigned int Mixer::MixSurround(float* samples, unsigned int num_samples)
size_t available_frames = Mix(m_scratch_buffer.data(), static_cast<u32>(needed_frames));
if (available_frames != needed_frames)
{
ERROR_LOG(AUDIO, "Error decoding surround frames.");
ERROR_LOG_FMT(AUDIO, "Error decoding surround frames.");
return 0;
}

Expand Down Expand Up @@ -296,17 +296,17 @@ void Mixer::StartLogDTKAudio(const std::string& filename)
{
m_log_dtk_audio = true;
m_wave_writer_dtk.SetSkipSilence(false);
NOTICE_LOG(AUDIO, "Starting DTK Audio logging");
NOTICE_LOG_FMT(AUDIO, "Starting DTK Audio logging");
}
else
{
m_wave_writer_dtk.Stop();
NOTICE_LOG(AUDIO, "Unable to start DTK Audio logging");
NOTICE_LOG_FMT(AUDIO, "Unable to start DTK Audio logging");
}
}
else
{
WARN_LOG(AUDIO, "DTK Audio logging has already been started");
WARN_LOG_FMT(AUDIO, "DTK Audio logging has already been started");
}
}

Expand All @@ -316,11 +316,11 @@ void Mixer::StopLogDTKAudio()
{
m_log_dtk_audio = false;
m_wave_writer_dtk.Stop();
NOTICE_LOG(AUDIO, "Stopping DTK Audio logging");
NOTICE_LOG_FMT(AUDIO, "Stopping DTK Audio logging");
}
else
{
WARN_LOG(AUDIO, "DTK Audio logging has already been stopped");
WARN_LOG_FMT(AUDIO, "DTK Audio logging has already been stopped");
}
}

Expand All @@ -333,17 +333,17 @@ void Mixer::StartLogDSPAudio(const std::string& filename)
{
m_log_dsp_audio = true;
m_wave_writer_dsp.SetSkipSilence(false);
NOTICE_LOG(AUDIO, "Starting DSP Audio logging");
NOTICE_LOG_FMT(AUDIO, "Starting DSP Audio logging");
}
else
{
m_wave_writer_dsp.Stop();
NOTICE_LOG(AUDIO, "Unable to start DSP Audio logging");
NOTICE_LOG_FMT(AUDIO, "Unable to start DSP Audio logging");
}
}
else
{
WARN_LOG(AUDIO, "DSP Audio logging has already been started");
WARN_LOG_FMT(AUDIO, "DSP Audio logging has already been started");
}
}

Expand All @@ -353,11 +353,11 @@ void Mixer::StopLogDSPAudio()
{
m_log_dsp_audio = false;
m_wave_writer_dsp.Stop();
NOTICE_LOG(AUDIO, "Stopping DSP Audio logging");
NOTICE_LOG_FMT(AUDIO, "Stopping DSP Audio logging");
}
else
{
WARN_LOG(AUDIO, "DSP Audio logging has already been stopped");
WARN_LOG_FMT(AUDIO, "DSP Audio logging has already been stopped");
}
}

Expand Down
12 changes: 6 additions & 6 deletions Source/Core/AudioCommon/OpenALStream.cpp
Expand Up @@ -101,7 +101,7 @@ bool OpenALStream::Init()
}

const char* default_device_dame = palcGetString(nullptr, ALC_DEFAULT_DEVICE_SPECIFIER);
INFO_LOG(AUDIO, "Found OpenAL device %s", default_device_dame);
INFO_LOG_FMT(AUDIO, "Found OpenAL device {}", default_device_dame);

ALCdevice* device = palcOpenDevice(default_device_dame);
if (!device)
Expand Down Expand Up @@ -204,7 +204,7 @@ static ALenum CheckALError(const char* desc)
break;
}

ERROR_LOG(AUDIO, "Error %s: %08x %s", desc, err, type.c_str());
ERROR_LOG_FMT(AUDIO, "Error {}: {:08x} {}", desc, err, type);
}

return err;
Expand Down Expand Up @@ -246,8 +246,8 @@ void OpenALStream::SoundLoop()
frames_per_buffer = OAL_MAX_FRAMES;
}

INFO_LOG(AUDIO, "Using %d buffers, each with %d audio frames for a total of %d.", OAL_BUFFERS,
frames_per_buffer, frames_per_buffer * OAL_BUFFERS);
INFO_LOG_FMT(AUDIO, "Using {} buffers, each with {} audio frames for a total of {}.", OAL_BUFFERS,
frames_per_buffer, frames_per_buffer * OAL_BUFFERS);

// Should we make these larger just in case the mixer ever sends more samples
// than what we request?
Expand Down Expand Up @@ -352,8 +352,8 @@ void OpenALStream::SoundLoop()
if (err == AL_INVALID_ENUM)
{
// 5.1 is not supported by the host, fallback to stereo
WARN_LOG(AUDIO,
"Unable to set 5.1 surround mode. Updating OpenAL Soft might fix this issue.");
WARN_LOG_FMT(
AUDIO, "Unable to set 5.1 surround mode. Updating OpenAL Soft might fix this issue.");
use_surround = false;
}
}
Expand Down

0 comments on commit 96ce3e5

Please sign in to comment.