diff --git a/plugins/coreaudio-encoder/encoder.cpp b/plugins/coreaudio-encoder/encoder.cpp index 1a6d019ba1156b24e087138e8620baa64c00aa12..c33076a9aecec5e9c1d1e498c9d36cb22e9fd2b0 100644 --- a/plugins/coreaudio-encoder/encoder.cpp +++ b/plugins/coreaudio-encoder/encoder.cpp @@ -1036,7 +1036,8 @@ static void aac_defaults(obs_data_t *settings) obs_data_set_default_bool(settings, "allow he-aac", true); } -static vector get_bitrates(DStr &log, ca_encoder *ca) +static vector get_bitrates(DStr &log, ca_encoder *ca, + Float64 samplerate) { vector bitrates; @@ -1068,12 +1069,14 @@ static vector get_bitrates(DStr &log, ca_encoder *ca) }; for (UInt32 format_id : (ca ? *ca->allowed_formats : aac_formats)) { - log_to_dstr(log, ca, "Trying %s (0x%x)\n", + log_to_dstr(log, ca, "Trying %s (0x%x) at %g hz\n", format_id_to_str(format_id), - static_cast(format_id)); + static_cast(format_id), + samplerate); auto out = get_default_out_asbd_builder() .format_id(format_id) + .sample_rate(samplerate) .asbd; auto converter = get_converter(log, ca, out); @@ -1085,11 +1088,12 @@ static vector get_bitrates(DStr &log, ca_encoder *ca) return bitrates; } -static void add_bitrates(obs_property_t *prop, ca_encoder *ca) +static void add_bitrates(obs_property_t *prop, ca_encoder *ca, + Float64 samplerate=44100.) { DStr log; - auto bitrates = get_bitrates(log, ca); + auto bitrates = get_bitrates(log, ca, samplerate); if (!bitrates.size()) { CA_CO_DLOG_(LOG_ERROR, "Couldn't find available bitrates");