<div dir="ltr">Sorry, I didn't change the Subject.<br><div><br>Hi, Thank you for prompt reply.<br><br>> Can't you use a newer version? We are at 11.1 already and the<br>> bluetooth code has changed significantly.<br><br>I hope to do so, but I am developing on a embedded system (linux kernel 3.10.49 Openwrt).<br>And I use BlueZ 5.30.<br>If pulseaudio 11.1 doesn't depend on kernel version, I would like to install pulseaudio 11.1.<br>Does it any dependency on this?<br><br>> When you record from the BT headset, the BT headset is set to HSP/HFP.<br>> This means that recording and playback stream are at 8kHz, not 16kHz.<br>> Pulseaudio only supports CVSD codec, not mSBC.<br><br>Thank you, I understand what codec pulseaudio uses.<br>So pulseaudio convert codec like this?<br> My app <- Linear 16bit 16kHz <- Pulseaudio  <-  CVSD codec ( 8kHz?) <- Bluetooth Headset<br>My application want to use a Linear 16bit 16kHz because of a DSP spec.<br>From your point out, Do I have to set a sample format to PA_SAMPLE_U8?<br>If so, Do I have to convert voice packet which I get from callback from 8kHz to 16kHz?<br>I thought pulseaudio do this.<br>And I could get a voice data by 96byte per 10ms.<br>If stream is 8kHz, What codec could get in My app? PCM 8bit?<br>I couldn't understand why My app get 96byte per 10ms.<br><br>>resample-method=trivial might result in bad audio quality.<br>I did set because CPU load is extremely high. I don't know why CPU load is high.<br>So CPU load becomes low, I'll change configuration file.<br><br>Best Regards,<br>Shinnosuke Suzuki<br><br><br>Date: Thu, 8 Feb 2018 13:24:49 +0100<br>><br>> From: Georg Chini <<a href="mailto:georg@chini.tk">georg@chini.tk</a>><br>> To: General PulseAudio Discussion<br>>         <<a href="mailto:pulseaudio-discuss@lists.freedesktop.org">pulseaudio-discuss@lists.freedesktop.org</a>>,  Shinnosuke Suzuki<br>>         <<a href="mailto:suzukisn@gmail.com">suzukisn@gmail.com</a>><br>> Subject: Re: [pulseaudio-discuss] Sample format spec with Linear 16bit<br>>         16kHz<br>> Message-ID: <<a href="mailto:3ba83b18-c006-bf24-7f84-7ebeac5fbba5@chini.tk">3ba83b18-c006-bf24-7f84-7ebeac5fbba5@chini.tk</a>><br>> Content-Type: text/plain; charset=utf-8; format=flowed<br>><br>> On 08.02.2018 12:06, Shinnosuke Suzuki wrote:<br>> > Hi<br>> ><br>> > I am developing a phone app using pulseaudio 6.0 with asynchronous API<br>> > using Bluetooth Headset.<br>><br>> Can't you use a newer version? We are at 11.1 already and the<br>> bluetooth code has changed significantly.<br>><br>> ><br>> > I create a record stream with pa_stream_new() with this parameter.<br>> >  static pa_sample_spec samplespec = {<br>> >      .format = PA_SAMPLE_S16LE, /* Linear 16bit */<br>> >      .rate = 16000, /* 16000Hz */<br>> >      .channels = 1 /* mono */<br>> >  }<br>> > And I set a callback function by pa_stream_set_read_callback().<br>> > After the stream created, I could get a voice data by 96byte per 10ms<br>> > in this callback.I checked a log with clock_gettime() in this callback.<br>> ><br>> > I think I get voice packet by 320Byte per 10ms.<br>> > 16000Hz * 1 * 16bit = 256kbps = 32KBps<br>> > This means that I can get 320Byte per 10ms.<br>> > So I need to get 320Byte per 10ms.<br>> ><br>> > I set sample format above, but I got different voice packet from callback.<br>> > I would like to get a voice with Linear 16bit 16kHz mono.<br>> > Is there additional configuration to this codec?<br>> ><br>> > For confirmation, when I use a bluetooth headset, Is this correct the<br>> > pulseaudio convert codec from SBC to Linear as follows?<br>> > My app <- Linear 16bit 16kHz <- Pulseaudio  <- SBC codec <- Bluetooth<br>> > Headset<br>><br>> When you record from the BT headset, the BT headset is set to HSP/HFP.<br>> This means that recording and playback stream are at 8kHz, not 16kHz.<br>> Pulseaudio only supports CVSD codec, not mSBC.<br>><br>> ><br>> > And addition to that, After stream connected, CPU load for pulseaudio<br>> > rose up 50%-60%.CPU load for MyAPP rose up 20%-30%.<br>> > In order to reduce CPU load, I conigure as follows:<br>> >  high-priority = no<br>> >  realtime-scheduling = no<br>> >  resample-method=trivial<br>> ><br>> resample-method=trivial might result in bad audio quality.</div></div>