From f79a3729416e3f0ce98b07c2f084630126e43206 Mon Sep 17 00:00:00 2001 From: George Joseph Date: Fri, 13 Apr 2018 14:14:47 -0600 Subject: streams: Add string metadata capability Replaces the never used opaque data array. Updated stream tests to include get/set metadata and stream clone with metadata. Added stream metadata dump to "core show channel" Change-Id: Id7473aa4b374d7ab53046c20e321037ba9a56863 --- main/cli.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'main/cli.c') diff --git a/main/cli.c b/main/cli.c index 5730be17b..cf51d0d95 100644 --- a/main/cli.c +++ b/main/cli.c @@ -1614,19 +1614,29 @@ static char *handle_showchan(struct ast_cli_entry *e, int cmd, struct ast_cli_ar ast_str_append(&output, 0, " -- Streams --\n"); for (stream_num = 0; stream_num < ast_stream_topology_get_count(ast_channel_get_stream_topology(chan)); stream_num++) { struct ast_stream *stream = ast_stream_topology_get_stream(ast_channel_get_stream_topology(chan), stream_num); + struct ast_variable *metadata = ast_stream_get_metadata_list(stream); ast_str_append(&output, 0, "Name: %s\n" " Type: %s\n" " State: %s\n" " Group: %d\n" - " Formats: %s\n", + " Formats: %s\n" + " Metadata:\n", ast_stream_get_name(stream), ast_codec_media_type2str(ast_stream_get_type(stream)), ast_stream_state2str(ast_stream_get_state(stream)), ast_stream_get_group(stream), ast_format_cap_get_names(ast_stream_get_formats(stream), &codec_buf) ); + + if (metadata) { + struct ast_variable *v; + for(v = metadata; v; v = v->next) { + ast_str_append(&output, 0, " %s: %s\n", v->name, v->value); + } + ast_variables_destroy(metadata); + } } ast_channel_unlock(chan); -- cgit v1.2.3