diff options
author | wm4 <wm4@mplayer2.org> | 2011-12-22 08:25:41 +0100 |
---|---|---|
committer | wm4 <wm4@mplayer2.org> | 2012-01-18 04:21:45 +0100 |
commit | 7eac60417f3a6714675e862a8a1612d1edf183fc (patch) | |
tree | 0bcc6b3c1799f04c77db77adbf13684a123978ec /libaf | |
parent | 7e3a4578bd99313541c6da4060bcc0bd12fadb46 (diff) |
af: print audio filter chain in verbose mode
The string format used in print_fmt() is taken from init_audio_filters().
Diffstat (limited to 'libaf')
-rw-r--r-- | libaf/af.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/libaf/af.c b/libaf/af.c index 80f9871bfb..82a7d7398b 100644 --- a/libaf/af.c +++ b/libaf/af.c @@ -246,6 +246,38 @@ void af_remove(af_stream_t* s, af_instance_t* af) free(af); } +static void print_fmt(af_data_t *d) +{ + if (d) { + mp_msg(MSGT_AFILTER, MSGL_V, "%dHz/%dch/%s", d->rate, d->nch, + af_fmt2str_short(d->format)); + } else { + mp_msg(MSGT_AFILTER, MSGL_V, "(?)"); + } +} + +static void af_print_filter_chain(af_stream_t* s) +{ + mp_msg(MSGT_AFILTER, MSGL_V, "Audio filter chain:\n"); + + mp_msg(MSGT_AFILTER, MSGL_V, " [in] "); + print_fmt(&s->input); + mp_msg(MSGT_AFILTER, MSGL_V, "\n"); + + af_instance_t *af = s->first; + while (af) { + mp_msg(MSGT_AFILTER, MSGL_V, " [%s] ", af->info->name); + print_fmt(af->data); + mp_msg(MSGT_AFILTER, MSGL_V, "\n"); + + af = af->next; + } + + mp_msg(MSGT_AFILTER, MSGL_V, " [out] "); + print_fmt(&s->output); + mp_msg(MSGT_AFILTER, MSGL_V, "\n"); +} + int af_reinit(af_stream_t* s, af_instance_t* af) { do{ @@ -343,6 +375,9 @@ int af_reinit(af_stream_t* s, af_instance_t* af) return AF_ERROR; } }while(af); + + af_print_filter_chain(s); + return AF_OK; } |