Change-Id: Ie29760c49c25d7022ba2124698283181a0dd5d08
* creates a topology and separates the media types in format_cap into
* separate streams.
*
- * \param caps The format capabilities structure
+ * \param caps The format capabilities structure (NULL creates an empty topology)
*
* \retval non-NULL success
* \retval NULL failure
return;
}
- if ((!ast_channel_is_multistream(chan)) || !value) {
+ if (!ast_channel_is_multistream(chan) || !value) {
struct ast_stream_topology *new_topology;
- if (!value) {
- new_topology = ast_stream_topology_alloc();
- } else {
- new_topology = ast_stream_topology_create_from_format_cap(value);
- }
+ new_topology = ast_stream_topology_create_from_format_cap(value);
ast_channel_internal_set_stream_topology(chan, new_topology);
}
}
struct ast_stream_topology *topology;
enum ast_media_type type;
- ast_assert(cap != NULL);
-
topology = ast_stream_topology_alloc();
- if (!topology) {
- return NULL;
+ if (!topology || !cap || !ast_format_cap_count(cap)) {
+ return topology;
}
for (type = AST_MEDIA_TYPE_UNKNOWN + 1; type < AST_MEDIA_TYPE_END; type++) {