<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/94823/nrf5340-audio---6-streams-broadcasting</link><description>Dear Nordic team, 
 
 I&amp;#39;m evaluating nRF5340 Audio DK for the use-case of broadcasting multiple streams. 
 Until now I&amp;#39;ve succeeded in broadcasting 4 streams (LC4 bitrate set up to 48kbps) and I would like to to increase to 6. I&amp;#39;ve increased all the configuration</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 11 Jun 2024 09:50:12 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/94823/nrf5340-audio---6-streams-broadcasting" /><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/488278?ContentTypeID=1</link><pubDate>Tue, 11 Jun 2024 09:50:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f8f0ad72-0913-47f1-a9b6-971b44afd2ef</guid><dc:creator>uzer123</dc:creator><description>&lt;p&gt;Thank you for the detailed and clear answer&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/488118?ContentTypeID=1</link><pubDate>Mon, 10 Jun 2024 11:57:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a46a551b-1f36-43c7-9b84-58b27de78aed</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/uzer123"&gt;uzer123&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
[quote user="uzer123"]&lt;p&gt;My question is:&amp;nbsp;to enable the 4 BIS streams (in my use case audio quality is not important) you just&amp;nbsp;use the aforementioned flags in prj.conf ? (&lt;span&gt;CONFIG_BT_AUDIO_BROADCAST_24_2_1=y,&amp;nbsp;CONFIG_ENCODER_STACK_SIZE=16384,&amp;nbsp;CONFIG_LC3_ENC_CHAN_MAX=4)&lt;br /&gt;&lt;br /&gt;And if this was your only change to the default source code, how do you send the 4 streams to the board?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Can i send 4 mono streams from USB or 2 mono streams through USB and 2 through LINE IN?&lt;/span&gt;&lt;/p&gt;[/quote]
&lt;p&gt;&lt;br /&gt;Please find below some suggestions from our developers.&lt;br /&gt;Encoding each stream takes around 30% of the CPU time. Therefore, there might not be enough CPU time to encode 4 streams.&lt;br /&gt;Current USB implementation only has 2 (stereo) endpoints. As USB endpoint is synchronous, it is controlled by PC clock. For avoiding the packet loss. synchronization of USB to I2S is required but you would be on your own in potentially achieving this.&lt;br /&gt;With regard to config options, you would need to set&amp;nbsp;&lt;span dir="ltr"&gt;CONFIG_BT_CTLR_CONN_ISO_STREAMS=4 and&amp;nbsp;CONFIG_BT_CTLR_SYNC_ISO_STREAM_COUNT=4 in the controller&amp;#39;s prj.conf.&lt;br /&gt;&lt;/span&gt;In general, in trying to achieve 4 streams, issues might arise due to CPU, USB and clock sources. One could consider trying to find ways to transfer pre-encoded LC3 to the nrf5340 using for example SPI.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/487975?ContentTypeID=1</link><pubDate>Sat, 08 Jun 2024 06:49:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6624d5c4-46aa-4812-ac27-7f300b888131</guid><dc:creator>Tommy_Li</dc:creator><description>&lt;p&gt;Cool, Looking forward to your progress on lc3 encoed audio streams transferred by UART/SPI.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/408758?ContentTypeID=1</link><pubDate>Wed, 08 Feb 2023 08:41:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:98f8b144-294c-4c95-89ba-24fe62925e34</guid><dc:creator>catalinio</dc:creator><description>&lt;div&gt;
&lt;div&gt;&lt;span&gt;hi&amp;nbsp; &lt;a href="https://devzone.nordicsemi.com/members/uzer123"&gt;uzer123&lt;/a&gt;&amp;nbsp;,&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;I&amp;#39;m glad that more people are trying to stream multiple&amp;nbsp;channels, so Nordic could hear us and release a 6-8 streams BLE controller.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;I have not input more than 2 audio channels in the Gateway.&amp;nbsp;&lt;/span&gt;&lt;span&gt;I&amp;#39;ve just generated the additional 2 channels (3rd and 4th), with sine-waves. Afik, I2S and USB are each limited to 2 channels, and using both would mean redesigning the application.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Basically, my experiment was to test how many channels can be LC3 encoded and next broadcasted on BLE Audio. In my test, I see that 6 channels is a doable (85% CPU usage, 48kbps bitrate), while 8 streams is a strech-goal.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;My next plan is to input on UART/SPI already&amp;nbsp;LC3 encoded audio streams on the Gateway, and next broadcast them, maybe trying the new multi-gateway feature (available in github, not released yet).&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;As for code modifications, make sure in &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/0aea9385bd9f8f10611e85bbecd8761ef5a67095/applications/nrf5340_audio/src/audio/audio_system.c#L106"&gt;encoder_thread()&lt;/a&gt; there is enough space to handle tmp_pcm_raw_data.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Additionally, in the LC3 wrapper (file: sw_codec_selec.c), make sure LC3 is initialized with 4 channels and in the &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/0aea9385bd9f8f10611e85bbecd8761ef5a67095/applications/nrf5340_audio/src/audio/sw_codec_select.c#L46"&gt;sw_codec_encode()&lt;/a&gt;&amp;nbsp;you design a way to split/concatenate all the 4 channels.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;br, catalinio&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/408505?ContentTypeID=1</link><pubDate>Tue, 07 Feb 2023 11:05:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8424ec0c-2b89-4492-9bf9-f132947da421</guid><dc:creator>uzer123</dc:creator><description>&lt;p&gt;I am also interested in a similar configuration, so i find it beneficial to write here. From this thread i see that 4 BIS streams is the max supported by the BLE audio controller.&lt;/p&gt;
&lt;p&gt;My question is:&amp;nbsp;to enable the 4 BIS streams (in my use case audio quality is not important) you just&amp;nbsp;use the aforementioned flags in prj.conf ? (&lt;span&gt;CONFIG_BT_AUDIO_BROADCAST_24_2_1=y,&amp;nbsp;CONFIG_ENCODER_STACK_SIZE=16384,&amp;nbsp;CONFIG_LC3_ENC_CHAN_MAX=4)&lt;br /&gt;&lt;br /&gt;And if this was your only change to the default source code, how do you send the 4 streams to the board?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Can i send 4 mono streams from USB or 2 mono streams through USB and 2 through LINE IN?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/404024?ContentTypeID=1</link><pubDate>Tue, 10 Jan 2023 09:37:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f761003-39e6-4e22-9f2b-434100a47c3e</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;It is not supported at the moment. For any other information related to future plans and releases please contact your regional sales manager.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/403900?ContentTypeID=1</link><pubDate>Mon, 09 Jan 2023 15:14:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3f336b4e-048b-4877-ba63-04697cc70b7a</guid><dc:creator>catalinio</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Any news on releasing a new BL Controller with 6 or 8 BIS streams?&lt;/p&gt;
&lt;p&gt;thanks,&lt;/p&gt;
&lt;p&gt;Catalin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/401230?ContentTypeID=1</link><pubDate>Mon, 19 Dec 2022 11:49:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:73a5c3df-1da4-4c6c-b19f-c8b8da67bd76</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;As there is theoretical limit for 2M Phy of around 1.4 Mbps, that would enable support for less than 10 streams (with 48 Kbps) with 2 retransmissions each. Even with only 1 retransmission, maximum number of streams would be 14. However, these are only theoretical considerations, since audio controller currently supports maximum 4 BISes.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/401192?ContentTypeID=1</link><pubDate>Mon, 19 Dec 2022 08:43:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4a9df59c-ac7b-4310-b683-15975112c643</guid><dc:creator>catalinio</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The main idea is to demonstrate the BLE Audio capabilities of nRF5340; the use-case is: multiple audio-streams will be distributed in a room to multiple listeners, and each will choose their active stream.&lt;/p&gt;
&lt;p&gt;For now 2 streams will be from I2S (left and right from audio stereo), while the channels #3 to #6 will be generated sinewaves.&lt;/p&gt;
&lt;p&gt;On long-term, minimum 16 channels should be broadcasted; most-likely the LC3 encoding should be done on a more powerful MCU, so nRF5340 will remain just to handle LE Audio stack and decoding (only on the receiving kit).&lt;/p&gt;
&lt;p&gt;Would broadcasting 16 BIS (without LC3 encoding, 48kbps each stream (probably 2 retransmissions min), so this is 96KB/sec audio-data for all streams) is achievable for nRF5340 and BLE Audio stack?&lt;/p&gt;
&lt;p&gt;Thank you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/401071?ContentTypeID=1</link><pubDate>Fri, 16 Dec 2022 13:21:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aa1862e0-ffdf-4f39-9e21-7b56da5c6224</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;If possible, could you provide information why you would need 6 BIS streams and what would they be used for?&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/401008?ContentTypeID=1</link><pubDate>Fri, 16 Dec 2022 09:34:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8ffd0ea7-f24d-438b-898c-db129c6e96c0</guid><dc:creator>catalinio</dc:creator><description>&lt;div&gt;
&lt;div&gt;&lt;span&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/dejans"&gt;dejans&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;The first observation is that for either bitrate 32 or 48 kbps there doesn&amp;#39;t seem to be a meaningful difference in CPU load (just around 1&lt;/span&gt;&lt;span&gt;%).&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Also for 32kbps CONFIG_BT_AUDIO_BROADCAST_16_2_1=y was used, while for 48kbps I&amp;#39;ve enabled CONFIG_BT_AUDIO_BROADCAST_24_2_1=y.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;I&amp;#39;ve always kept CONFIG_ENCODER_STACK_SIZE=16384.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Also DEBUG and LOG was always active, with INFO level.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;1. CONFIG_LC3_ENC_CHAN_MAX=4 and streaming 4 channel (2 from I2S stereo and 2 sine-tones 1kHz generated): CPU load is 72&lt;/span&gt;&lt;span&gt;%. Streaming is stable for hours.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;2. CONFIG_LC3_ENC_CHAN_MAX=6, forcing LC3 encoder to process 6 streams (random data for 2 extra streams), CPU load varies between 77&lt;/span&gt;&lt;span&gt;% to 85%.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Trying to compute the time required for a single 10milisec frame to be encoded, I obtain 8milisec (using k_uptime_get_32() before and after).&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;I see spurious errors from I2S audio_datapath.c module: &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;GW [00:01:16.567,901] &amp;lt;wrn&amp;gt; audio_datapath: I2S RX overrun. Single msg&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;GW [00:01:16.568,908] &amp;lt;wrn&amp;gt; audio_datapath: I2S RX continuing stream&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Of course, in the second scenario, on BLE only 4 streams are being broadcasted.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;I realize the 6 streams broadcasting is a stretched goal, but I&amp;#39;m willing to give it a try on my setup, if a new LE Controller with #6 BIS is released.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Catalin&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/400667?ContentTypeID=1</link><pubDate>Wed, 14 Dec 2022 14:47:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7e94296c-1bd1-4f36-a248-ec9bd041e63e</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;We are investigating the effects of having more BIS&amp;#39;es.&amp;nbsp;Could you please perform a CPU load check with your settings (see below some of them)? What are the results?&lt;br /&gt;&lt;br /&gt;CONFIG_LC3_BITRATE=32000 (and 48000)&lt;br /&gt;CONFIG_LC3_ENC_CHAN_MAX=4 (and 6)&lt;br /&gt;CONFIG_ENCODER_STACK_SIZE=16384&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/400468?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 18:21:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5817c7f4-af86-49f1-962b-a047f84832da</guid><dc:creator>catalinio</dc:creator><description>&lt;p&gt;Thanks, &lt;a href="https://devzone.nordicsemi.com/members/dejans"&gt;dejans&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Is there any chance that the max BIS to be increased to 6 or 8, and a new binary of the controller to be released?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/400417?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 14:50:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:638a1f57-0b2d-43e6-bb75-4761722e658a</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;There is a limitation on the controller side to maximum 4 BIS streams.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 Audio - 6 streams broadcasting</title><link>https://devzone.nordicsemi.com/thread/400344?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 10:24:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c3de8299-9e46-4380-915d-4de686dbfb24</guid><dc:creator>catalinio</dc:creator><description>&lt;p&gt;Here is the prj.conf&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/5305.prj_5F00_conf.txt"&gt;devzone.nordicsemi.com/.../5305.prj_5F00_conf.txt&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>