diff options
author | Andrei Emeltchenko <andrei.emeltchenko@intel.com> | 2014-07-18 12:48:03 +0300 |
---|---|---|
committer | Szymon Janc <szymon.janc@tieto.com> | 2014-07-18 13:41:22 +0200 |
commit | fa05f8f8fad0895918766603e61f8fcddfa45513 (patch) | |
tree | 49521dd731cbb238ebea5bb3bce4678bf4f54fa5 /android/hal-sco.c | |
parent | 6166bddbbb08f7d8bc9846413328dd9ec0cd35a6 (diff) | |
download | bluez-fa05f8f8fad0895918766603e61f8fcddfa45513.tar.gz |
android/hal-sco: Make use of config parameter
Use config parameter when opening output stream.
Diffstat (limited to 'android/hal-sco.c')
-rw-r--r-- | android/hal-sco.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/android/hal-sco.c b/android/hal-sco.c index 7e1a981a0..e476f8452 100644 --- a/android/hal-sco.c +++ b/android/hal-sco.c @@ -584,7 +584,7 @@ static int sco_open_output_stream(struct audio_hw_device *dev, size_t resample_size; uint16_t mtu; - DBG(""); + DBG("config %p device flags 0x%02x", config, devices); if (ipc_connect_sco(&fd, &mtu) != SCO_STATUS_SUCCESS) { error("sco: cannot get fd"); @@ -614,10 +614,20 @@ static int sco_open_output_stream(struct audio_hw_device *dev, out->stream.write = out_write; out->stream.get_render_position = out_get_render_position; - /* Configuration for Android */ - out->cfg.format = AUDIO_STREAM_DEFAULT_FORMAT; - out->cfg.channels = AUDIO_CHANNEL_OUT_STEREO; - out->cfg.rate = AUDIO_STREAM_DEFAULT_RATE; + if (config) { + DBG("config: rate %u chan mask %x format %d offload %p", + config->sample_rate, config->channel_mask, + config->format, &config->offload_info); + + out->cfg.format = config->format; + out->cfg.channels = config->channel_mask; + out->cfg.rate = config->sample_rate; + } else { + out->cfg.format = AUDIO_STREAM_DEFAULT_FORMAT; + out->cfg.channels = AUDIO_CHANNEL_OUT_STEREO; + out->cfg.rate = AUDIO_STREAM_DEFAULT_RATE; + } + out->cfg.frame_num = OUT_STREAM_FRAMES; /* we get wrong mtu size for some reason */ |