diff options
-rw-r--r-- | src/map-file | 1 | ||||
-rw-r--r-- | src/pulse/stream.c | 10 | ||||
-rw-r--r-- | src/pulse/stream.h | 3 |
3 files changed, 14 insertions, 0 deletions
diff --git a/src/map-file b/src/map-file index 5283a5e36..1acc6e987 100644 --- a/src/map-file +++ b/src/map-file @@ -258,6 +258,7 @@ pa_stream_get_channel_map; pa_stream_get_context; pa_stream_get_device_index; pa_stream_get_device_name; +pa_stream_get_format_info; pa_stream_get_index; pa_stream_get_latency; pa_stream_get_monitor_stream; diff --git a/src/pulse/stream.c b/src/pulse/stream.c index 10e431cd7..bd2e6ca1e 100644 --- a/src/pulse/stream.c +++ b/src/pulse/stream.c @@ -2470,6 +2470,16 @@ const pa_channel_map* pa_stream_get_channel_map(pa_stream *s) { return &s->channel_map; } +const pa_format_info* pa_stream_get_format_info(pa_stream *s) { + pa_assert(s); + pa_assert(PA_REFCNT_VALUE(s) >= 1); + + /* We don't have the format till routing is done */ + PA_CHECK_VALIDITY_RETURN_NULL(s->context, s->state == PA_STREAM_READY, PA_ERR_BADSTATE); + PA_CHECK_VALIDITY_RETURN_NULL(s->context, !pa_detect_fork(), PA_ERR_FORKED); + + return s->format; +} const pa_buffer_attr* pa_stream_get_buffer_attr(pa_stream *s) { pa_assert(s); pa_assert(PA_REFCNT_VALUE(s) >= 1); diff --git a/src/pulse/stream.h b/src/pulse/stream.h index 48bf09df6..b265fae6f 100644 --- a/src/pulse/stream.h +++ b/src/pulse/stream.h @@ -709,6 +709,9 @@ const pa_sample_spec* pa_stream_get_sample_spec(pa_stream *s); /** Return a pointer to the stream's channel map. */ const pa_channel_map* pa_stream_get_channel_map(pa_stream *s); +/** Return a pointer to the stream's format \since 1.0 */ +const pa_format_info* pa_stream_get_format_info(pa_stream *s); + /** Return the per-stream server-side buffer metrics of the * stream. Only valid after the stream has been connected successfuly * and if the server is at least PulseAudio 0.9. This will return the |