mirror of
https://github.com/mpv-player/mpv
synced 2025-04-01 00:07:33 +00:00
audio: make mp_audio_config_to_str return a stack-allocated string
Simpler overall.
This commit is contained in:
parent
8a7b686597
commit
7d6e58471f
@ -91,17 +91,12 @@ bool mp_audio_config_valid(const struct mp_audio *mpa)
|
||||
&& mpa->rate >= 1 && mpa->rate < 10000000;
|
||||
}
|
||||
|
||||
char *mp_audio_fmt_to_str(int srate, const struct mp_chmap *chmap, int format)
|
||||
char *mp_audio_config_to_str_buf(char *buf, size_t buf_sz, struct mp_audio *mpa)
|
||||
{
|
||||
char *res = talloc_asprintf(NULL, "%dHz %s %dch %s", srate,
|
||||
mp_chmap_to_str(chmap), chmap->num,
|
||||
af_fmt_to_str(format));
|
||||
return res;
|
||||
}
|
||||
|
||||
char *mp_audio_config_to_str(struct mp_audio *mpa)
|
||||
{
|
||||
return mp_audio_fmt_to_str(mpa->rate, &mpa->channels, mpa->format);
|
||||
snprintf(buf, buf_sz, "%dHz %s %dch %s", mpa->rate,
|
||||
mp_chmap_to_str(&mpa->channels), mpa->channels.num,
|
||||
af_fmt_to_str(mpa->format));
|
||||
return buf;
|
||||
}
|
||||
|
||||
void mp_audio_force_interleaved_format(struct mp_audio *mpa)
|
||||
|
@ -49,8 +49,8 @@ void mp_audio_copy_config(struct mp_audio *dst, const struct mp_audio *src);
|
||||
bool mp_audio_config_equals(const struct mp_audio *a, const struct mp_audio *b);
|
||||
bool mp_audio_config_valid(const struct mp_audio *mpa);
|
||||
|
||||
char *mp_audio_fmt_to_str(int srate, const struct mp_chmap *chmap, int format);
|
||||
char *mp_audio_config_to_str(struct mp_audio *mpa);
|
||||
char *mp_audio_config_to_str_buf(char *buf, size_t buf_sz, struct mp_audio *mpa);
|
||||
#define mp_audio_config_to_str(m) mp_audio_config_to_str_buf((char[64]){0}, 64, (m))
|
||||
|
||||
void mp_audio_force_interleaved_format(struct mp_audio *mpa);
|
||||
|
||||
|
@ -308,11 +308,8 @@ static void af_print_filter_chain(struct af_stream *s, struct af_instance *at,
|
||||
while (af) {
|
||||
char b[128] = {0};
|
||||
mp_snprintf_cat(b, sizeof(b), " [%s] ", af->info->name);
|
||||
if (af->data) {
|
||||
char *info = mp_audio_config_to_str(af->data);
|
||||
mp_snprintf_cat(b, sizeof(b), "%s", info);
|
||||
talloc_free(info);
|
||||
}
|
||||
if (af->data)
|
||||
mp_snprintf_cat(b, sizeof(b), "%s", mp_audio_config_to_str(af->data));
|
||||
if (af == at)
|
||||
mp_snprintf_cat(b, sizeof(b), " <-");
|
||||
MP_MSG(s, msg_level, "%s\n", b);
|
||||
@ -320,9 +317,7 @@ static void af_print_filter_chain(struct af_stream *s, struct af_instance *at,
|
||||
af = af->next;
|
||||
}
|
||||
|
||||
char *info = mp_audio_config_to_str(&s->output);
|
||||
MP_MSG(s, msg_level, " [ao] %s\n", info);
|
||||
talloc_free(info);
|
||||
MP_MSG(s, msg_level, " [ao] %s\n", mp_audio_config_to_str(&s->output));
|
||||
}
|
||||
|
||||
static int af_count_filters(struct af_stream *s)
|
||||
|
@ -275,9 +275,8 @@ void reinit_audio_chain(struct MPContext *mpctx)
|
||||
mpctx->ao_decoder_fmt = talloc(NULL, struct mp_audio);
|
||||
*mpctx->ao_decoder_fmt = in_format;
|
||||
|
||||
char *s = mp_audio_config_to_str(&fmt);
|
||||
MP_INFO(mpctx, "AO: [%s] %s\n", ao_get_name(ao), s);
|
||||
talloc_free(s);
|
||||
MP_INFO(mpctx, "AO: [%s] %s\n", ao_get_name(ao),
|
||||
mp_audio_config_to_str(&fmt));
|
||||
MP_VERBOSE(mpctx, "AO: Description: %s\n", ao_get_description(ao));
|
||||
update_window_title(mpctx, true);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user