Electronic device and method for transmitting packets for outputting audio, and non-transitory computer-readable recording medium
By generating multiple connected isochronous groups with varying transmission parameters for BLE audio packet transmission, the solution ensures reliable and synchronized audio output across external devices, addressing existing challenges in BLE audio transmission.
Patent Information
- Application Number
- PCT/KR2024/015313
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-07
- Filing Date
- 2024-10-08
- Publication Date
- 2025-05-30
AI Technical Summary
Existing technologies face challenges in efficiently transmitting packets for audio output over Bluetooth low energy (BLE) connections, particularly in ensuring reliable and synchronized audio playback across external devices.
The proposed solution involves generating multiple connected isochronous groups (CIGs) with different transmission parameters for transmitting packets intended for audio output to external devices via BLE communication. This approach allows for prioritization and differential transmission of audio packets, ensuring optimal playback quality.
This method effectively addresses the challenges of packet transmission and synchronization, enabling reliable and high-quality audio output across external devices connected via BLE, with improved power efficiency and communication range.
Smart Images

Figure KR2024015313_30052025_PF_FP_ABST
Abstract
Description
Electronic device, method, and non-transitory computer-readable recording medium for transmitting packets for audio output
[0001] The following descriptions relate to electronic devices, methods, and non-transitory computer-readable recording media for transmitting packets for audio output.
[0002] Compared to legacy Bluetooth® (or classic Bluetooth), BLE (Bluetooth® low energy) offers reduced power consumption and a wider communication range between devices. BLE can be provided on the ISM (industrial, scientific, and medical) radio band.
[0003] An electronic device is disclosed. The electronic device may include a communication circuit for BLE (Bluetooth low energy). The electronic device may include a processor. The electronic device may include a memory storing instructions. The instructions, when executed by the processor, may cause the electronic device to generate a plurality of connected isochronous groups (CIGs) for an external electronic device via the communication circuit. The plurality of CIGs may be generated by different transmission parameters for transmitting packets for audio output to the external electronic device. The instructions, when executed by the processor, may cause the electronic device to transmit the packets for audio output to the external electronic device via the plurality of CIGs.
[0004] An electronic device is disclosed. The electronic device may include a communication circuit for BLE. The electronic device may include a processor. The electronic device may include a memory storing instructions. The instructions, when executed by the processor, may cause the electronic device to generate a first CIG event and a second CIG event to be used for outputting audio using an external electronic device. The instructions, when executed by the processor, may cause the electronic device to transmit a first packet to the external electronic device using the communication circuit via a CIS event within the first CIG event according to a first transmission parameter set for the first CIG event. The instructions, when executed by the processor, may cause the electronic device to transmit a second packet to the external electronic device using the communication circuit via a CIS event within the second CIG event according to a second transmission parameter set for the second CIG event and different from the first transmission parameter.
[0005] An electronic device is disclosed. The electronic device may include a communication circuit for BLE. The electronic device may include a processor. The electronic device may include a memory storing instructions. The instructions, when executed by the processor, may cause the electronic device to generate a CIG event to be used for outputting audio using an operating external electronic device. The instructions, when executed by the processor, may cause the electronic device to transmit a first packet to the external electronic device using the communication circuit via a first CIS event within the CIG event according to a first transmission parameter set for the first CIS event. The instructions, when executed by the processor, may cause the electronic device to transmit a second packet to the external electronic device using the communication circuit via a second CIS event within the CIG event according to a second transmission parameter set for the second CIS event and different from the first transmission parameter.
[0006] An electronic device is disclosed. The external electronic device may include a speaker. The external electronic device may include a communication circuit for BLE. The external electronic device may include a processor. The external electronic device may include a memory storing instructions. The instructions, when executed by the processor, may cause the electronic device to receive a first packet from the external electronic device using the communication circuit via a CIS event within a first CIG event, according to a first transmission parameter set for the first CIG event. The instructions, when executed by the processor, may cause the electronic device to receive a second packet from the external electronic device using the communication circuit via a CIS event within a second CIG event, according to a second transmission parameter set for the second CIG event and different from the first transmission parameter. The instructions, when executed by the processor, may cause the electronic device to output audio obtained using the first packet and the second packet via the speaker.
[0007] A method is disclosed. The method can be performed by an electronic device including a communication circuit for BLE. The method can include an operation of generating a plurality of CIGs for an external electronic device via the communication circuit. The plurality of CIGs can be generated by different transmission parameters for transmitting packets for outputting audio to the external electronic device. The method can include an operation of transmitting the packets for outputting the audio to the external electronic device via the plurality of CIGs.
[0008] A method is disclosed. The method can be performed by an electronic device including a communication circuit for BLE. The method can include an operation of generating a first CIG event and a second CIG event to be used for outputting audio using an external electronic device. The method can include an operation of transmitting a first packet to the external electronic device using the communication circuit through a CIS event within the first CIG event according to a first transmission parameter set for the first CIG event. The method can include an operation of transmitting a second packet to the external electronic device using the communication circuit through a CIS event within the second CIG event according to a second transmission parameter set for the second CIG event and different from the first transmission parameter.
[0009] A method is disclosed. The method can be performed by an electronic device including a communication circuit for BLE. The method can include an operation of generating a CIG event to be used for outputting audio using an external electronic device. The method can include an operation of transmitting a first packet to the external electronic device using the communication circuit through a first CIS event within the CIG event according to a first transmission parameter set for the first CIS event. The method can include an operation of transmitting a second packet to the external electronic device using the communication circuit through a second CIS event within the CIG event according to a second transmission parameter set for the second CIS event and different from the first transmission parameter.
[0010] A method is disclosed. The method can be performed by an electronic device including a communication circuit for BLE. The method can include receiving a first packet from an external electronic device using the communication circuit through a CIS event within a first CIG event, according to a first transmission parameter set for the first CIG event. The method can include receiving a second packet from the external electronic device using the communication circuit through a CIS event within a second CIG event, according to a second transmission parameter set for the second CIG event and different from the first transmission parameter. The method can include outputting the audio obtained using the first packet and the second packet through the speaker.
[0011] A non-transitory computer-readable storage medium is disclosed. The non-transitory computer-readable storage medium can store a program including instructions. The instructions, when executed by a processor of an electronic device including a communication circuit for BLE, can cause the electronic device to generate a plurality of CIGs for an external electronic device via the communication circuit. The plurality of CIGs can be generated with different transmission parameters for transmitting packets for outputting audio to the external electronic device. The instructions, when executed by the processor, can cause the electronic device to transmit the packets for outputting audio to the external electronic device via the plurality of CIGs.
[0012] A non-transitory computer-readable recording medium is disclosed. The non-transitory computer-readable recording medium can store a program including instructions. The instructions, when executed by a processor of an electronic device including a communication circuit for BLE, can cause the electronic device to generate a first CIG event and a second CIG event to be used for outputting audio using an external electronic device. The instructions, when executed by the processor, can cause the electronic device to transmit a first packet to the external electronic device using the communication circuit via a CIS event within the first CIG event according to a first transmission parameter set for the first CIG event. The instructions, when executed by the processor, can cause the electronic device to transmit a second packet to the external electronic device using the communication circuit via a CIS event within the second CIG event according to a second transmission parameter set for the second CIG event and different from the first transmission parameter.
[0013] A non-transitory computer-readable recording medium is disclosed. The non-transitory computer-readable recording medium can store a program including instructions. The instructions, when executed by a processor of an electronic device including communication circuitry for BLE, can cause the electronic device to generate a CIG event to be used for outputting audio using an external electronic device. The instructions, when executed by the processor, can cause the electronic device to transmit a first packet to the external electronic device via a first CIS event within the CIG event using the communication circuitry according to a first transmission parameter set for the first CIS event. The instructions, when executed by the processor, can cause the electronic device to transmit a second packet to the external electronic device via a second CIS event within the CIG event using the communication circuitry according to a second transmission parameter set for the second CIS event and different from the first transmission parameter.
[0014] A non-transitory computer-readable recording medium is disclosed. The non-transitory computer-readable recording medium can store a program including instructions. The instructions, when executed by a processor of an electronic device including a communication circuit for BLE, can cause the electronic device to receive a first packet from an external electronic device using the communication circuit via a CIS event within a first CIG event according to a first transmission parameter set for the first CIG event. The instructions, when executed by the processor, can cause the electronic device to receive a second packet from the external electronic device using the communication circuit via a CIS event within a second CIG event according to a second transmission parameter set for the second CIG event and different from the first transmission parameter. The instructions, when executed by the processor, can cause the electronic device to output audio obtained using the first packet and the second packet through the speaker.
[0015] FIG. 1 is a block diagram of an electronic device within a network environment according to various embodiments.
[0016] Figure 2 illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0017] Figure 3a is a simplified block diagram of an exemplary electronic device.
[0018] Figure 3b is a simplified block diagram of an exemplary external electronic device.
[0019] Figure 3c is a simplified block diagram of an exemplary external electronic device.
[0020] FIG. 4 is a flowchart illustrating an exemplary method executed within an electronic device to transmit packets for audio output.
[0021] Figure 5 is a diagram showing an example of CIG events.
[0022] FIG. 6A is a diagram illustrating an example of a signal flow for generating a CIG event including at least one CIS event.
[0023] FIG. 6b is a diagram illustrating an example of a signal flow for generating multiple CIS events.
[0024] FIG. 7 is a flowchart illustrating an exemplary method by which an electronic device utilizes information determined for transmitting packets for audio output.
[0025] Figure 8 illustrates an exemplary method for generating service data units (SDUs) used to generate packets to be transmitted to external electronic devices.
[0026] Figure 9 illustrates an exemplary method for storing SDUs in a buffer.
[0027] FIG. 10a is a diagram illustrating an example of data transmitted according to CIG events based on determined information.
[0028] FIG. 10b is a diagram illustrating an example of data transmitted according to CIG events based on determined information.
[0029] FIG. 11A illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0030] Figure 11b illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0031] FIG. 11c illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0032] Figure 12a is a diagram showing an example of CIG events based on determined information.
[0033] Figure 12b is a diagram showing an example of CIS events based on determined information.
[0034] Figure 12c is a diagram showing an example of CIG events based on determined information.
[0035] Figure 13a illustrates an exemplary signal flow for generating SDUs used to generate packets to be transmitted to an external electronic device.
[0036] Figure 13b illustrates an exemplary signal flow for generating SDUs used to generate packets to be transmitted to an external electronic device.
[0037] FIG. 14a illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0038] Figure 14b illustrates an example of a wireless environment including electronic devices and external electronic devices.
[0039] Figure 14c illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0040] FIG. 15a illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0041] FIG. 15b illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0042] FIG. 15c illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0043] FIG. 15d illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0044] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to various embodiments.
[0045] Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) via a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).
[0046] The processor (120) may control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) by executing, for example, software (e.g., a program (140)), and may perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculation, the processor (120) may store a command or data received from another component (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the command or data stored in the volatile memory (132), and store the resulting data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.
[0047] The auxiliary processor (123) may control at least a part of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.
[0048] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).
[0049] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
[0050] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
[0051] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. According to one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
[0052] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
[0053] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).
[0054] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
[0055] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
[0056] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
[0057] A haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
[0058] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.
[0059] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).
[0060] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
[0061] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).
[0062] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) may support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 664 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 6 ms or less for round trip) for URLLC realization.
[0063] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). According to one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). According to one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas, for example, by the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the at least one selected antenna. According to some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).
[0064] According to various embodiments, the antenna module (197) may form a mmWave antenna module. According to one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.
[0065] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).
[0066] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service by itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
[0067] Figure 2 illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0068] Referring to FIG. 2, the wireless environment may include an electronic device (101), an external electronic device (201), and an external electronic device (202).
[0069] In one embodiment, the electronic device (101) within the wireless environment may be an audio source device, such as a smartphone, a laptop computer, a desktop computer, or a tablet PC. For example, the electronic device (101) may transmit data regarding audio being played within the electronic device (101) to each of the external electronic device (201) and the external electronic device (202). For example, the data may be usable within each of the external electronic device (201) and the external electronic device (202) to output the audio from each of the external electronic device (201) and the external electronic device (202). In one embodiment, the electronic device (101) may be referred to as an audio streaming endpoint (ASE), a client device, a central device, a primary device, or a main device.
[0070] In one embodiment, the external electronic device (201) within the wireless environment may be an audio sink device, such as earbuds or earphones. In one embodiment, the external electronic device (201) may receive data regarding audio from the electronic device (101) and output the audio through the speaker of the external electronic device (201) based on the data. In one embodiment, the external electronic device (201) may be referred to as a sink ASE, a server device, a peripheral device, a secondary device, or a sub device.
[0071] In one embodiment, the electronic device (101) can establish a first asynchronous connection-less (ACL) (251) with an external electronic device (201). For example, the first ACL (251) can be used to control an ASE occurring between the electronic device (101) and the external electronic device (201).
[0072] In one embodiment, the electronic device (101) may detect an event. For example, the event may include receiving a user request (e.g., a request to output audio using an external electronic device (201). In one embodiment, event detection may be described in more detail below with reference to FIG. 4.
[0073] In one embodiment, the electronic device (101) may determine information for an audio service to be provided through an external electronic device (201) based on (or in response to) an event. In one embodiment, the determination of information for an audio service may be described in more detail below with reference to FIG. 4.
[0074] In one embodiment, the electronic device (101) may transmit packets for an audio service to an external electronic device (201) according to information for the audio service. In one embodiment, the electronic device (101) may use a plurality of connected isochronous groups (CIGs) (210, 220, 230) including connected isochronous streams (CISs) (211, 221, 231) to transmit packets for the audio service to the external electronic device (201). In one embodiment, the electronic device (101) may use the CISs (211, 221, 231) of the plurality of CIGs (210, 220, 230) to transmit packets for the audio service to the external electronic device (201).
[0075] In one embodiment, each of the plurality of CIGs (210, 220, 230) may have transmission parameters (or quality of service (QoS)) set (or designated) (or determined) according to information for an audio service. In one embodiment, the transmission parameters (or QoS) may be set (or designated) (or determined) so that the plurality of CIGs (210, 220, 230) include one or more CISs for transmitting packets for an audio service to an external electronic device (201).
[0076] For example, each of the plurality of CIGs (210, 220, 230) may be generated to transmit packets for an audio service having a designated priority to the external electronic device (201). For example, packets having a first priority among the packets for the audio service may be transmitted to the external electronic device (201) through the first CIG (210) (or the first CIS (211) included in the first CIG (210)). For example, packets having a second priority among the packets for the audio service may be transmitted to the external electronic device (201) through the second CIG (220) (or the second CIS (221) included in the second CIG (220)). For example, packets having a third priority among packets for audio services may be transmitted to an external electronic device (201) via the third CIG (230) (or the fourth CIS (231) included in the third CIG (230)). In one embodiment, transmission of packets for audio services may be described in more detail below with reference to FIG. 4.
[0077] In one embodiment, the external electronic device (201) can obtain packets for an audio service from the electronic device (101) through a plurality of CIGs (210, 220, 230) (or CISs (211, 221, 231) included in the CIGs (210, 220, 230)). In one embodiment, the external electronic device (201) can decode packets for an audio service or data obtained from packets (e.g., service data unit (SDU)). In one embodiment, the external electronic device (201) can decode packets for an audio service or data obtained from packets (e.g., SDU) based on (or in response to) (or using) information and / or transmission parameters for the audio service.
[0078] In one embodiment, the external electronic device (201) can identify a group of packets and a playback order of the packets based on transmission parameters used to generate the plurality of CIGs (210, 220, 230). For example, the external electronic device (201) can output (or play back) the plurality of packets (or the plurality of SDUs included in the plurality of packets) transmitted through the plurality of CIGs (210, 220, 230) (or the CISs (211, 221, 231) included in the CIGs (210, 220, 230)) at corresponding (or identical) (or substantially identical) points in time, based on the transmission parameters. The output time (or playback) (or transport latency) of multiple packets (or multiple SDUs included in multiple packets) can be identified based on an isochronous (ISO) interval, a flush timeout (FT), and a synchronous delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay). Accordingly, multiple packets (or multiple SDUs included in multiple packets) transmitted through multiple CIGs (210, 220, 230) (or CISs (211, 221, 231) included in the CIGs (210, 220, 230)) having different ISO_Intervals and FTs can be output (or played) at corresponding (or identical) (or substantially identical) times due to the synchronous delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay). However, the present invention is not limited thereto. In one embodiment, the external electronic device (201) can identify a group of packets and a playback order of packets through information (e.g., group number, subgroup number, or sequence number) of packets obtained from the electronic device (101) through a plurality of CIGs (210, 220, 230).
[0079] In one embodiment, the external electronic device (201) can decode one or more associated packets identified through a group of packets and a playback order of the packets. In one embodiment, the external electronic device (201) can decode one or more packets having the same playback order identified through the group of packets and the playback order of the packets. In one embodiment, the external electronic device (201) can decode one or more packets generated by encoding a bitstream for a specified playback time identified through the group of packets and the playback order of the packets.
[0080] In one embodiment, the external electronic device (201) can output audio based on the decoded data.
[0081] In one embodiment, the external electronic device (202) within the wireless environment may be an audio sync device, such as an earbud or earphone. In one embodiment, the external electronic device (201) and the external electronic device (202) may be configured as a pair. In one embodiment, the external electronic device (202) may establish a communication link (240) with the external electronic device (201). For example, the communication link (240) may be established based on recognizing that a state of a door of a device (e.g., a cradle) that is available for charging a rechargeable battery of each of the external electronic devices (201, 202) changes from a closed state to an open state while the device (e.g., a cradle) houses the external electronic devices (201, 202).
[0082] In one embodiment, the external electronic device (202) may receive data regarding audio from the electronic device (101) and output the audio through a speaker of the external electronic device (202) based on the data. In one embodiment, the external electronic device (202) may be referred to as a sync ASE, a server device, a peripheral device, a secondary device, or a sub-device.
[0083] In one embodiment, the electronic device (101) can establish a second ACL connection (252) with an external electronic device (202). For example, the second ACL connection (252) can be used to control an ASE occurring between the electronic device (101) and the external electronic device (202).
[0084] In one embodiment, the electronic device (101) may detect an event. For example, the event may include receiving a user request (e.g., a request to output audio using an external electronic device (202).
[0085] In one embodiment, the electronic device (101) may determine information for an audio service to be provided through an external electronic device (202) based on (or in response to) an event.
[0086] In one embodiment, the electronic device (101) may transmit packets for an audio service to an external electronic device (202) according to information for the audio service. In one embodiment, the electronic device (101) may use a plurality of CIGs (210, 220, 230) including CISs (211, 222, 232) to transmit packets for the audio service to the external electronic device (202). In one embodiment, the electronic device (101) may use the CISs (211, 222, 232) of the plurality of CIGs (210, 220, 230) to transmit packets for the audio service to the external electronic device (202).
[0087] In one embodiment, an external electronic device (202) may obtain packets for an audio service from an electronic device (101) through a plurality of CIGs (210, 220, 230) (or CISs (211, 222, 232) included in the CIGs (210, 220, 230)). In one embodiment, the external electronic device (202) may obtain information about a plurality of CIGs (210, 220, 230) (or CISs (211, 222, 232) included in the CIGs (210, 220, 230)) from the electronic device (101) or the external electronic device (201), and, based on the obtained information, obtain packets for an audio service through the plurality of CIGs (210, 220, 230) (or CISs (211, 222, 232) included in the CIGs (210, 220, 230)). For example, the external electronic device (202) may obtain information about the CIG (210) (or CISs (211) included in the CIG (210)) from the external electronic device (201) through the communication link (240). For example, the external electronic device (202) can sniff (or acquire) (or receive) packets transmitted through the CIG (210) (or the CIS (211) included in the CIG (210)) based on information acquired through the communication link (240). For example, the external electronic device (202) can acquire information about the CIG (210) (or the CIS (211) included in the CIG (210)) from the electronic device (101) through a communication link (e.g., the second ACL (252)) between the electronic device (101) and the external electronic device (202). For example, the external electronic device (202) can acquire (or receive) packets transmitted through the CIG (210) (or the CIS (211) included in the CIG (210)) based on information acquired through the second ACL (252).
[0088] In one embodiment, the external electronic device (202) can identify a group of packets and a playback order of the packets based on transmission parameters used to generate the plurality of CIGs (210, 220, 230). For example, the external electronic device (202) can output (or play back) the plurality of packets (or the plurality of SDUs included in the plurality of packets) transmitted through the plurality of CIGs (210, 220, 230) (or the CISs (211, 222, 232) included in the CIGs (210, 220, 230)) at corresponding (or identical) (or substantially identical) points in time, based on the transmission parameters. The output timing (or playback) (or transport latency) of multiple packets (or multiple SDUs included in multiple packets) can be identified based on the ISO interval, FT, and synchronization delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay). Accordingly, multiple packets (or multiple SDUs included in multiple packets) transmitted through multiple CIGs (210, 220, 230) (or CISs (211, 222, 232) included in the CIGs (210, 220, 230)) having different ISO_Intervals and FTs can be output (or played) at corresponding (or identical) (or substantially identical) timings due to the synchronization delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay). However, the present invention is not limited thereto. In one embodiment, the external electronic device (202) can identify a group of packets and a playback order of packets through information (e.g., group number, subgroup number, or sequence number) of packets obtained from the electronic device (101) through a plurality of CIGs (210, 220, 230).
[0089] In one embodiment, the external electronic device (202) can decode one or more associated packets identified by a group of packets and a playback order of the packets. In one embodiment, the external electronic device (202) can decode one or more packets having the same playback order identified by the group of packets and the playback order of the packets. In one embodiment, the external electronic device (202) can decode one or more packets generated by encoding a bitstream for a specified playback time identified by the group of packets and the playback order of the packets.
[0090] In one embodiment, the external electronic device (202) can output audio based on the decoded data.
[0091] Figure 3a is a simplified block diagram of an exemplary electronic device.
[0092] Referring to FIG. 3A, the electronic device (101) may include a processor (120), a memory (130), and a communication circuit (390).
[0093] The processor (120) may be used to execute the operations of the electronic device (101) exemplified in the descriptions of FIGS. 4 to 13B. For example, the processor (120) may include at least a portion of the processor (120) of FIG. 1 or may correspond to at least a portion of the processor (120) of FIG. 1. For example, the processor (120) may include one or more processors, including an application processor (AP) and / or a communication processor (CP). For example, the processor (120) may be implemented as a single chip, such as a system on chip (SoC), or may be implemented as multiple chips. For example, the processor (120) may be implemented as a single integrated circuit or may be implemented as multiple integrated circuits. For example, the processor (120) may be distributed within the electronic device (101).
[0094] The memory (130) may (at least temporarily) store instructions for executing operations of the electronic device (101) exemplified in the descriptions of FIGS. 4 to 13B. The instructions may be executed by the processor (120). The instructions may be included in one or more programs stored in the memory (130). For example, the memory (130) may include at least a portion of the memory (130) of FIG. 1 (or at least a portion of the non-volatile memory (134)) or may correspond to at least a portion of the memory (130) of FIG. 1 (or at least a portion of the non-volatile memory (134)). For example, the memory (130) may include a main memory (e.g., a random access memory (RAM), a register for the processor (120), a cache for the processor (120), a register for the communication circuit (390), a buffer (or soft buffer) for the communication circuit (390), and / or an auxiliary memory (e.g., a hard disk drive (HDD), a solid state drive (SSD)) of the electronic device (101) within the electronic device (101). For example, the memory (130) may be implemented as a single chip or may be implemented as multiple chips. For example, the memory (130) may be implemented as one integrated circuit or may be implemented as multiple integrated circuits. For example, the memory (130) may be distributedly arranged within the electronic device (101).
[0095] The communication circuit (390) can be used to support Bluetooth communication (e.g., legacy Bluetooth communication (or classic Bluetooth communication and / or BLE (Bluetooth low energy)) between the electronic device (101) and another electronic device (e.g., external electronic devices (201, 202)). For example, the communication circuit (390) can include at least a part of the communication module (190) (or wireless communication module (192)) of FIG. 1, or can correspond to at least a part of the communication module (190) (or wireless communication module (192)) of FIG. 1. For example, the communication circuit (390) can include a communication circuit for Bluetooth. For example, the communication circuit (390) can be used to establish a communication link. For example, the communication circuit (390) can be used to transmit a packet to the external electronic device (201, 202) through the communication link. For example, the communication circuit (390) can be used to transmit a packet to the external electronic device (201, 202) through the communication link. It can be used to receive packets from electronic devices (201, 202). For example, the communication circuit (390) can be used to further support other communication techniques (e.g., Wi-Fi (wireless fidelity)) that are distinct from the Bluetooth communication technique. For example, the communication circuit (390) can be implemented as a single chip or as multiple chips. For example, the communication circuit (390) can be implemented as a single integrated circuit or as multiple integrated circuits. For example, the communication circuit (390) can be arranged in a distributed manner within the electronic device (101).
[0096] Figure 3b is a simplified block diagram of an exemplary external electronic device.
[0097] Referring to FIG. 3b, the external electronic device (201) may include a processor (321), a memory (331), a communication circuit (391), and a speaker (351).
[0098] In one embodiment, the processor (321) may be used to execute operations of the external electronic device (201) exemplified in the descriptions of FIGS. 4 to 13B. For example, the processor (321) may include at least a portion of the processor (120) of FIG. 1 or may correspond to at least a portion of the processor (120) of FIG. 1.
[0099] In one embodiment, the memory (331) may (at least temporarily) store instructions for executing operations of the external electronic device (201) exemplified in the descriptions of FIGS. 4 to 13B. The instructions may be executed by the processor (321). The instructions may be included in one or more programs stored in the memory (331). For example, the memory (130) may include at least a portion of the memory (130) of FIG. 1 (or at least a portion of the non-volatile memory (134)) or may correspond to at least a portion of the memory (130) of FIG. 1 (or at least a portion of the non-volatile memory (134)).
[0100] In one embodiment, the communication circuit (391) may be used to support Bluetooth communication (e.g., legacy Bluetooth communication (or classic Bluetooth communication and / or BLE)) between the external electronic device (201) and another electronic device (e.g., the electronic device (101), the external electronic device (202)). For example, the communication circuit (391) may include at least a portion of the communication module (190) (or the wireless communication module (192)) of FIG. 1, or may correspond to at least a portion of the communication module (190) (or the wireless communication module (192)) of FIG. 1. For example, the communication circuit (391) may include a communication circuit for Bluetooth. For example, the communication circuit (391) may be used to further support another communication technique (e.g., Wi-Fi) that is distinct from the Bluetooth communication technique.
[0101] In one embodiment, the speaker (351) may be used to output audio to the outside of the external electronic device (201). For example, the speaker (351) may include at least a portion of the audio output module (155) (or audio module (170)) of FIG. 1, or may correspond to at least a portion of the audio output module (155) (or audio module (170)) of FIG. 1. For example, the speaker (351) may include a circuit for converting an electrical signal into sound to output audio.
[0102] Figure 3c is a simplified block diagram of an exemplary external electronic device.
[0103] Referring to FIG. 3c, the external electronic device (202) may include a processor (325), memory (335), communication circuitry (395), and a speaker (355).
[0104] In one embodiment, the processor (325) may be utilized to execute operations of the external electronic device (202) exemplified in the descriptions of FIGS. 4 through 13B. For example, the processor (325) may include at least a portion of the processor (120) of FIG. 1 or may correspond to at least a portion of the processor (120) of FIG. 1.
[0105] In one embodiment, the memory (335) may (at least temporarily) store instructions for executing operations of the external electronic device (202) exemplified in the descriptions of FIGS. 4 through 13B. The instructions may be executed by the processor (325). The instructions may be included in one or more programs stored in the memory (335). For example, the memory (335) may include at least a portion of the memory (130) of FIG. 1 (or at least a portion of the non-volatile memory (134)) or may correspond to at least a portion of the memory (130) of FIG. 1 (or at least a portion of the non-volatile memory (134)).
[0106] In one embodiment, the communication circuit (395) can be used to support Bluetooth communication (e.g., legacy Bluetooth communication (or classic Bluetooth communication and / or BLE)) between the external electronic device (202) and another electronic device (e.g., the electronic device (101), the external electronic device (201)). For example, the communication circuit (395) can include at least a portion of the communication module (190) (or the wireless communication module (192)) of FIG. 1, or can correspond to at least a portion of the communication module (190) (or the wireless communication module (192)) of FIG. 1. For example, the communication circuit (395) can include a communication circuit for Bluetooth. For example, the communication circuit (395) can be used to further support another communication technique (e.g., Wi-Fi) that is distinct from the Bluetooth communication technique.
[0107] In one embodiment, the speaker (355) may be used to output audio to the outside of the external electronic device (202). For example, the speaker (355) may include at least a portion of the audio output module (155) (or audio module (170)) of FIG. 1, or may correspond to at least a portion of the audio output module (155) (or audio module (170)) of FIG. 1. For example, the speaker (355) may include circuitry for converting an electrical signal into sound to output audio.
[0108] Figure 4 is a flowchart illustrating an exemplary method executed within an electronic device for transmitting packets for audio output. Figure 5 is a diagram illustrating an example of CIG events.
[0109] Referring to FIG. 4, in operation 410, the electronic device (101) may establish a communication link (e.g., the first ACL (251)) with an external electronic device (201). For example, operation 410 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120). For example, operation 410 may be executed using the communication circuit (390). As a non-limiting example, operation 410 may be executed according to the method exemplified in the description of FIG. 2.
[0110] In operation 420, the electronic device (101) may detect an event. For example, operation 420 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120).
[0111] The above event may represent an event that causes execution of operation 430 and / or operation 440. The event may be defined within the electronic device (101) to execute transmission (or differential transmission) (or adaptive transmission) (or selective transmission) executed in operation 440 using information determined (or acquired) (or identified) (or generated) (or scheduled) in operation 430.
[0112] For example, the event may include receiving (or recognizing) (or identifying) (or confirming) (or obtaining) a user request (e.g., a request to output lossless audio using an external electronic device (201). As a non-limiting example, the event may include receiving a touch input on an executable object indicating that music is being played that is set to output lossless audio (e.g., an executable object within a user interface of a software application for playing music). As a non-limiting example, the event may include recognizing (or identifying) (or obtaining) a voice command (e.g., “play music”) received via a microphone of the electronic device (101).
[0113] For example, the event may include receiving a user input for executing a software application for playing music. As a non-limiting example, the event may include receiving a touch input on an icon (or item) (or object) (or executable object) representing the software application. As a non-limiting example, the event may include receiving (or recognizing) (or identifying) (or obtaining) a voice command (e.g., “Run Samsung Music”) indicating execution of the software application through a microphone of the electronic device (101).
[0114] For example, the event may include receiving (or recognizing) (or confirming) (or identifying) (or obtaining) a request from the external electronic device (201) (or another external electronic device (112)). As a non-limiting example, the event may include receiving the request transmitted from the external electronic device (201) via a communication link (e.g., the first ACL (251)) in response to a user input of pressing a button exposed through a portion of a housing of the external electronic device (201) (or a user input on a touch area formed on the housing of the external electronic device (201)). As a non-limiting example, the event may include receiving the request transmitted from the external electronic device (201) via a communication link (e.g., the first ACL (251)) in response to a voice command obtained through a microphone of the external electronic device (201) (e.g., "play music").
[0115] For example, the event may include recognizing (or confirming) (or identifying) a change in the state of a wireless environment. As a non-limiting example, the event may include recognizing that the state of a communication link (e.g., the first ACL (251)) has changed. As a non-limiting example, the event may include confirming a decrease in the reception rate of packets transmitted through the communication link (e.g., the first ACL (251)).
[0116] In operation 430, the electronic device (101) may determine (or identify) (or obtain) (or define) information for an audio service to be provided through the external electronic device (201) based on (or in response to) the event. For example, operation 430 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120). For example, the information determined in operation 430 may be transmitted from the electronic device (101) to the external electronic device (201) via a communication link (e.g., the first ACL (251)). However, the present invention is not limited thereto.
[0117] For example, the information for the audio service determined in operation 430 may include, for example, information for the audio service, information about a codec (e.g., a lossless audio codec without audio loss, a lossy audio codec with a high compression rate, or a codec capable of compressing audio at a variable bit rate), information about the number of sets of audio bitstreams (or the number of layers of the audio bitstream) (or the number of packets of the audio bitstream), information about the size of each of the sets (or layers) (or packets) of audio bitstreams for audio output (or information about a bitrate), information about the priority of each of the sets (or layers) (or packets) of audio bitstreams for audio output, time available for transmission (and / or one or more retransmissions) of each of the sets (or layers) (or packets) of audio bitstreams for audio output (e.g., a maximum transport latency (MTL), a flush timeout, and / or a maximum number of retransmissions (or count)), and / or information on how to decode sets (or layers) (or packets) to be transmitted to an external electronic device (201) for audio services.
[0118] In one embodiment, the sets (or layers) (or packets) of the audio bitstream may be either mandatory (or essential) (or core (or common) data) for audio output, or optional (or extension or residual) data for audio output. In one embodiment, the priority of the essential data may be higher than the priority of the optional data.
[0119] For example, if sets (or layers) (or packets) of an audio bitstream are divided into core data, first extension data for additional sound quality improvement, and second extension data for sound field effects, priorities may be given in the order of core data, first extension data, and second extension data.
[0120] For example, if sets (or layers) (or packets) of an audio bitstream are divided into common data of audio for providing stereophonic sound, left residual data to be output from the left channel of the audio for providing stereophonic sound, and right residual data to be output from the right channel of the audio for providing stereophonic sound, the priority of the essential data may be higher than the priorities of the left residual data and the right residual data. For example, the priorities of the left residual data to be output from the left channel of the audio for providing stereophonic sound and the right residual data to be output from the right channel of the audio for providing stereophonic sound may be the same.
[0121] For example, essential data may be data that can be independently decoded without additional data. Independent decoding without additional data may refer to the ability to restore (or output) audio by decoding the essential data. In one embodiment, the essential data may be referred to as the base layer (or core data). For example, the essential data may be common audio data for providing stereophonic sound.
[0122] For example, incidental data may be data that cannot be independently decoded without essential data. The incidental data may not allow restoration (or output) of audio without the essential data. In one embodiment, the incidental data may be referred to as an extension layer (or extension data). In one embodiment, the incidental data may include data for enhancing the quality of audio output through the external electronic device (201) (e.g., data for additional sound quality improvement and / or additional sound field effects). In one embodiment, the priority of incidental data in a higher layer may be higher than the priority of incidental data in a lower layer. For example, in a hierarchical structure of essential data and incidental data, the further the incidental data is located in a layer from the essential data, the lower the priority may be. In some embodiments, the incidental data may allow restoration (or output) of audio without the essential data.
[0123] For example, the secondary data may be residual data of audio for providing stereo sound. For example, the residual data may be data indicating the difference between the left channel and the right channel of audio for providing stereo sound. For example, the residual data may be either left residual data to be output from the left channel or right left data output from the right channel.
[0124] For example, information for audio services for core data, first extension data, and second extension data of sets (or layers) (or packets) of an audio bitstream can be determined as shown in Table 1 below.
[0125] Group Codec Data Type SDU Size Interval MTL Max Retransmissions Priority 1SS SSCCore 120 bytes 10ms 100ms 2812SS SSCExtension 1100 bytes 10ms 100ms 1023SS SSCExtension 280 bytes 10ms 20ms 13
[0126] In Table 1, Group 1, Group 2, and Group 3 can be encoded by the same codec (e.g., SS SSC).
[0127] For example, information for audio services for common data, left residual data, and right residual data of sets (or layers) (or packets) of audio bitstreams can be determined as shown in Table 2 below.
[0128] Group Codec Data Type SDU Size Interval MTL Maximum Retransmissions Priority 1 SS SSC Common 120 bytes 10 ms 100 ms 28 12 SS SS CResidual L 64 bytes 10 ms 40 ms 102 3 SS SS CResidual R 64 bytes 10 ms 40 ms 102
[0129] In Table 2, Group 1, Group 2, and Group 3 can be encoded by the same codec (e.g., SS SSC). In Table 2, the parameters of Group 2 and Group 3 can be identical.
[0130] For example, referring to Tables 1 and 2, the electronic device (101) may set a group with a high priority to have a large SDU size, a high bit rate (e.g., SDU size / interval), a long MTL, a long flush timeout, or a large maximum number of retransmissions. For example, the electronic device (101) may set a group with a low priority to have a small SDU size, a low bit rate (e.g., SDU size / interval), a short MTL, a short flush timeout, or a small maximum number of retransmissions.
[0131] In operation 440, the electronic device (101) may transmit packets for an audio service to an external electronic device (201) according to information for the audio service. In one embodiment, the electronic device (101) may generate (or use) a plurality of connected isochronous groups (CIGs) (210, 220, 230) including connected isochronous streams (CISs) (211, 221, 231) to transmit packets for the audio service to the external electronic device (201).
[0132] In one embodiment, the electronic device (101) may transmit packets to the external electronic device (201) through a CIG corresponding to the priority of each packet for the audio service. In one embodiment, the electronic device (101) may transmit packets to the external electronic device (201) according to the priority of each packet for the audio service, using a number of CIGs corresponding to the number of priorities. For example, packets (or essential data) (or core data) (or common data) having a priority of first priority may be transmitted to the external electronic device (201) through CIG (210). For example, packets (or additional data) (or extension data) (or residual data) having a priority of second priority may be transmitted to the external electronic device (201) through CIG (220) or CIG (230).
[0133] For example, the electronic device (101) can transmit core data for an audio service to an external electronic device (201) through a CIG (210) including a first CIS (211). For example, the electronic device (101) can transmit first extension data for an audio service to an external electronic device (201) through a CIG (220) including a second CIS (221). For example, the electronic device (101) can transmit second extension data for an audio service to an external electronic device (201) through a CIG (230) including a fourth CIS (231).
[0134] For example, the electronic device (101) can transmit common data for an audio service to an external electronic device (201) through a CIG (210) including a first CIS (211). For example, the electronic device (101) can transmit right-side remaining data for an audio service to the external electronic device (201) through a CIG (220) including a second CIS (221).
[0135] In one embodiment, each of the plurality of CIGs (210, 220, 230) may have transmission parameters (or communication parameters) (or quality of service (QoS)) set (or designated) (or determined) according to information for an audio service.
[0136] For example, the transmission parameters (or communication parameters) may include data indicating an identifier of a CIG for audio streaming (e.g., CIG_ID), data indicating an identifier of a CIS for audio streaming (e.g., CIS_ID), data indicating a period for audio streaming (e.g., SDU (service data unit)_Interval), data indicating a method for arranging sub-events of multiple CISs (e.g., Packing), data indicating whether data packets for audio streaming can be framed (e.g., Framing), data indicating a maximum transport latency for audio streaming (e.g., Max_Transport_Latency), data indicating a maximum size of a data packet for audio streaming (e.g., Max_SDU), data indicating the number of retransmissions of the data packet for audio streaming (e.g., Retransmission_Number), data indicating the number of sub-events in a CIS event (e.g., NSE), data indicating a time interval between two consecutive sub-events in one CIS event (e.g., Sub_Interval), Data indicating the maximum length of the sub-event (e.g., SE_Length), data indicating the maximum number of bytes (Max_PDU) that a PDU can transmit, data indicating the time interval (ISO_Interval) between two consecutive CIS anchor points, data indicating the number of time intervals (ISO_Interval) that can be used before discarding the data packet (FT (flush timeout)), data for a synchronization delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay) to adjust the playback time (or output time) (or transport latency) of the data packet,The transmission parameters may include at least one of data indicating an offset time (CIS_Offset) between the first CIS anchor point and the ACL anchor point, or data indicating a presentation delay (e.g., Presentation_Delay) of the audio streaming. In one embodiment, the flush timeout (FT) may mean a time that can be used before the data packet is discarded. For example, the transmission parameters may include at least one of data indicating a codec identifier (e.g., Codec_ID) of the audio streaming, data indicating a codec-specific configuration (e.g., Codec_Specific_Configuration), or data indicating a length of the codec-specific configuration (e.g., Codec_Specific_Configuration_Length). However, the present invention is not limited thereto. In one embodiment, the output timing (or playback) (or transport latency) of a plurality of data packets (or a plurality of SDUs included in a plurality of data packets) may be set (or designated) (or determined) based on an ISO interval, a FT, and a synchronization delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay). Accordingly, the electronic device (101) may set (or designate) (or determine) a synchronization delay (e.g., CIG_Sync_Delay and / or CIS_Sync_Delay) so that a plurality of data packets (or a plurality of SDUs included in a plurality of data packets) transmitted through a plurality of CIGs (or CISs included in a CIG) having different ISO intervals and FTs are output (or played) at corresponding (or identical) (or substantially identical) timings.
[0137] In one embodiment, the electronic device (101) may set the NSE and / or FT (flush timeout) to be high for a high priority group. In one embodiment, the electronic device (101) may apply hybrid packing instead of general packing (e.g., sequential packing or interleaved packing) for the high priority group. For example, the hybrid packing may be a method of arranging sub-events so that the CISs of two or more CIGs overlap each other in time and then the CIS of the CIG with the higher priority occupies the corresponding section. In one embodiment, the electronic device (101) may arrange the CISs of two or more CIGs after a minimum time (e.g., T_IFS, T_MSS) required for a channel change or a transmission / reception mode change.
[0138] For example, the electronic device (101) may set the ISO (isochronous) interval to 10 ms as a transmission parameter of the CIG (210) including the first CIS (211) for core data for an audio service. For example, the electronic device (101) may set the ISO interval to 30 ms as a transmission parameter of the CIG (220) including the second CIS (221) for the first extension data for an audio service. For example, the electronic device (101) may set the ISO interval to 60 ms as a transmission parameter of the CIG (230) including the fourth CIS (231) for the second extension data for an audio service. However, the present invention is not limited thereto.
[0139] For example, the electronic device (101) may set the ISO interval to 10 ms as a transmission parameter of the CIG (210) including the first CIS (211) for common data for audio services. For example, the electronic device (101) may set the ISO interval to 30 ms as a transmission parameter of the CIG (220) including the second CIS (221) for right residual data for audio services. However, the present invention is not limited thereto.
[0140] For example, the electronic device (101) may generate at least two CISs based on the same access address and / or the same used channel map for identifying a piconet. For example, the electronic device (101) may use the same physical channel based on the same access address and / or the same used channel map for the CIS for the external electronic device (201) and the CIS for the external electronic device (202).
[0141] For example, the transmission parameters determined in operation 440 may be transmitted from the electronic device (101) to the external electronic device (201) via the first ACL (251). However, this is not limited thereto. In one embodiment, an operation for transmitting information about a plurality of generated CIGs (210, 220, 230) to the external electronic device (201) by the electronic device (101) may be described in more detail with reference to FIGS. 6A and 6B.
[0142] For example, referring to FIG. 5, the highest priority packets transmitted via CIS events of the first CIG events (511, 513, 515, 517) may have the most transmission opportunities (541, 542, 543, 544, 545, 546). Additionally, the ISO interval (e.g., the first ISO interval) between CIS events of the first CIG events (511, 513, 515, 517) for transmitting the highest priority packets may be the shortest. The second highest priority packets transmitted via CIS events of the second CIG events (521, 523) may have the next most transmission opportunities (551, 552, 553, 554). Additionally, the ISO interval (e.g., the second ISO interval) between CIS events of the second CIG events (521, 523) for transmitting packets with the second highest priority may be shorter than the first ISO interval. The packets with the lowest priority transmitted through the CIS events of the third CIG events (531, 533) may have the fewest transmission opportunities (561, 562). Additionally, the ISO interval (e.g., the third ISO interval) between CIS events of the third CIG events (531, 533) for transmitting packets with the lowest priority may be the longest. As can be seen from FIG. 5, the electronic device (101) may perform differential transmission (or selective transmission) (or adaptive transmission) to the external electronic device (201) for an audio service. For example, the electronic device (101) can perform the differential transmission so that packets having a higher priority among packets for outputting audio to be transmitted to the external electronic device (201) for the audio service have more transmission opportunities than other packets having a lower priority.For example, the electronic device (101) may classify SDUs for generating packets to be transmitted to an external electronic device (201) for the audio service into a plurality of groups, and determine information and / or transmission parameters for the audio service such that SDUs within a group having a higher priority among the plurality of groups have more transmission opportunities than SDUs within a group having a lower priority. The differential transmission is exemplified in more detail in the description of FIG. 7.
[0143] FIG. 6A is a diagram illustrating an example of a signal flow for generating a CIG event including at least one CIS event.
[0144] In one embodiment, in operation 610, the electronic device (101) may set (or generate) communication parameters (or transmission parameters). For example, the transmission parameters (or communication parameters) may include at least one of CIG_ID, CIS_ID, SDU_Interval, Packing, Framing, Max_Transport_Latency, Max_SDU, Retransmission_Number, NSE, Sub_Interval, SE_Length, Max_PDU, ISO_Interval, FT, CIS_Offset, or Presentation_Delay. However, the present invention is not limited thereto. For example, the transmission parameters (or communication parameters) may include at least one of Codec_ID, Codec_Specific_Configuration, or Codec_Specific_Configuration_Length.
[0145] In one embodiment, at operation 620, the electronic device (101) may transmit (or transfer) communication parameters (or transmission parameters) to the external electronic device (201). For example, the electronic device (101) may transmit an LL_CIS_REQ packet including communication parameters (or transmission parameters) to the external electronic device (201) through the first ACL (the first ACL (251) of FIG. 1).
[0146] In one embodiment, at operation 630, the external electronic device (201) may transmit a response to the electronic device (101). For example, the external electronic device (201) may transmit an LL_CIS_RES packet to the electronic device (101) via the first ACL (the first ACL (251) of FIG. 1).
[0147] In one embodiment, at operation 640, the electronic device (101) may transmit (or forward) an indication signal indicating that a CIS PDU is to be transmitted to the external electronic device (201). For example, the electronic device (101) may transmit an LL_CIS_IND packet including communication parameters (or transmission parameters) to the external electronic device (201) through the first ACL (the first ACL (251) of FIG. 1).
[0148] In one embodiment, in operation 651, the electronic device (101) may transmit (or forward) a CIS NULL PDU to an external electronic device (201) through a CIS (e.g., a first CIS (211)) set through communication parameters. The external electronic device (201) that receives the CIS NULL PDU through the CIS (e.g., the first CIS (211)) may identify that a CIS (e.g., the first CIS (211)) and a CIG (e.g., a CIG (210)) including the CIS (e.g., the first CIS (211)) are generated.
[0149] In one embodiment, at operation 655, the external electronic device (201) may transmit (or forward) a CIS NULL PDU to the electronic device (101) through a CIS (e.g., the first CIS (211)) set through communication parameters. The electronic device (101) that receives the CIS NULL PDU through the CIS (e.g., the first CIS (211)) may identify that a CIS (e.g., the first CIS (211)) and a CIG (e.g., the CIG (210)) including the CIS (e.g., the first CIS (211)) are generated.
[0150] In one embodiment, the electronic device (101) and the external electronic device (201) can generate at least one CIS included in a CIG (e.g., CIG (210)) by repeating operations 620 to 655. For example, the electronic device (101) and the external electronic device (201) can generate two CISs (221, 222) included in a CIG (e.g., CIG (220)) by repeating operations 620 to 655 twice.
[0151] According to an embodiment, the electronic device (101) can simultaneously generate multiple CISs included in one CIG by transmitting (or transferring) communication parameters (or transmission parameters) for generating multiple CISs included in one CIG to an external electronic device (201) through one message.
[0152] According to an embodiment, the electronic device (101) can simultaneously generate a plurality of CISs included in a plurality of CIGs by transmitting (or transferring) communication parameters (or transmission parameters) for generating a plurality of CISs included in each of the plurality of CIGs to an external electronic device (201) through a single message.
[0153] FIG. 6b is a diagram illustrating an example of a signal flow for generating multiple CIS events.
[0154] In one embodiment, in operation 661, the electronic device (101) may transmit a message (e.g., CIS_REQ_EXT) including communication parameters (or transmission parameters) to an external electronic device (e.g., the external electronic device (201)) via an ACL (e.g., the first ACL (251)). For example, the transmission parameters (or communication parameters) may include at least one of CIG_ID, CIS_ID, SDU_Interval, Packing, Framing, Max_Transport_Latency, Max_SDU, Retransmission_Number, NSE, Sub_Interval, SE_Length, Max_PDU, ISO_Interval, FT, CIS_Offset, or Presentation_Delay. However, the present invention is not limited thereto. For example, the transmission parameters (or communication parameters) may include at least one of Codec_ID, Codec_Specific_Configuration, or Codec_Specific_Configuration_Length.
[0155] In one embodiment, at operation 662, the electronic device (101) may obtain a response (e.g., ACK, NACK) indicating whether a message (e.g., CIS_REQ_EXT) including communication parameters (or transmission parameters) has been received from an external electronic device (e.g., external electronic device (201)) via an ACL (e.g., first ACL (251)).
[0156] In one embodiment, at operation 663, the electronic device (101) may transmit a message (e.g., E) to the external electronic device (e.g., the external electronic device (201)) via an ACL (e.g., the first ACL (251)) that causes the external electronic device (e.g., the external electronic device (201)) to transmit a packet for a response (e.g., CIS_RES_EXT) to the CIS_REQ_EXT.
[0157] In one embodiment, at operation 664, the electronic device (101) may obtain a response (e.g., CIS_RES_EXT) to CIS_REQ_EXT from an external electronic device (e.g., the external electronic device (201)) via an ACL (e.g., the first ACL (251)).
[0158] In one embodiment, at operation 665, the electronic device (101) may transmit a message (e.g., CIS_IND_EXT) including some transmission parameters (e.g., CIS_Offset, synchronous delay (e.g., CIG_Sync_Delay, or CIS_Sync_Delay)) to an external electronic device (e.g., external electronic device (201)) via an ACL (e.g., first ACL (251)) at a specified time (e.g., a time set by an event counter for CIS_IND_EXT).
[0159] In one embodiment, at operation 666, the electronic device (101) may obtain a response (e.g., ACK, NACK) from an external electronic device (e.g., external electronic device (201)) indicating receipt of a message (e.g., CIS_IND_EXT) including some transmission parameters (e.g., CIS_Offset, synchronous delay (e.g., CIG_Sync_Delay, or CIS_Sync_Delay)) via an ACL (e.g., first ACL (251)).
[0160] In one embodiment, at operation 667, the electronic device (101) may transmit a specified packet (e.g., CIS_empty) to an external electronic device (e.g., the external electronic device (201)) via the first CIS (e.g., the first CIS (211)) at a time by the CIS1 offset for the first CIS (e.g., the first CIS (211)) from a specified time (e.g., a time set by an instant event counter for CIS_IND_EXT).
[0161] In one embodiment, at operation 668, the electronic device (101) may obtain a designated packet (e.g., CIS_Null) from an external electronic device (e.g., the external electronic device (201)) through a first CIS (e.g., the first CIS (211)). Accordingly, a first CIS (e.g., the first CIS (211)) may be established between the electronic device (101) and the external electronic device (e.g., the external electronic device (201)).
[0162] In one embodiment, at operation 669, the electronic device (101) may transmit a specified packet (e.g., CIS_empty) to an external electronic device (e.g., external electronic device (201)) via a second CIS (e.g., the second CIS (221)) at a time by a CIS2 offset for the second CIS (e.g., the second CIS (221)) from a specified time (e.g., a time set by an instant event counter for CIS_IND_EXT).
[0163] In one embodiment, at operation 670, the electronic device (101) may obtain a designated packet (e.g., CIS_Null) from an external electronic device (e.g., the external electronic device (201)) through a second CIS (e.g., the second CIS (221)). Accordingly, a second CIS (e.g., the second CIS (221)) may be established between the electronic device (101) and the external electronic device (e.g., the external electronic device (201)).
[0164] In one embodiment, at operation 671, the electronic device (101) may transmit a specified packet (e.g., CIS_empty) to an external electronic device (e.g., the external electronic device (201)) via a third CIS (e.g., the fourth CIS (231)) at a time point by a CIS3 offset for the third CIS (e.g., the fourth CIS (231)) from a specified time point (e.g., a time point set by an instant event counter for CIS_IND_EXT).
[0165] In one embodiment, at operation 672, the electronic device (101) may obtain a designated packet (e.g., CIS_Null) from an external electronic device (e.g., the external electronic device (201)) through a third CIS (e.g., the fourth CIS (231)). Accordingly, a third CIS (e.g., the fourth CIS (231)) may be established between the electronic device (101) and the external electronic device (e.g., the external electronic device (201)).
[0166] As described above, the electronic device (101) can generate multiple CISs by transmitting one CIS_REQ_EXT, CIS_RES_EXT, and CIS_IND_EXT to an external electronic device (e.g., external electronic device (201)).
[0167] FIG. 7 is a flowchart illustrating an exemplary method by which an electronic device utilizes information determined for transmitting packets for audio output.
[0168] Referring to FIG. 7, in operation 710, the electronic device (101) may obtain SDUs according to the information for the audio service determined in operation 430. For example, operation 710 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120).
[0169] For example, the electronic device (101) can obtain (or generate) encoded data by encoding data for a sound source within the electronic device (101) using a codec for the audio service (e.g., the codec exemplified in the description of operation 430). For example, the encoded data can include data essential for audio output (e.g., core data or common data) and auxiliary data for audio output (e.g., extension data or residual data). For example, the electronic device (101) can obtain the SDUs from the encoded data.
[0170] In operation 720, the electronic device (101) may classify the SDUs obtained in operation 710 into a plurality of groups according to the information for the audio service determined in operation 430. For example, operation 720 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120). In one embodiment, the electronic device (101) may determine the number of groups into which the SDUs obtained in operation 710 are classified based on a communication environment (e.g., communication speed or communication congestion). In one embodiment, the electronic device (101) may classify the SDUs obtained in operation 710 into a number of groups determined based on a communication environment (e.g., communication speed or communication congestion).
[0171] For example, a first group among the plurality of groups may have a first priority. For example, a second group among the plurality of groups may have a second priority lower than the first priority. For example, some of the SDUs containing data essential for audio output may be classified into the first group, and other some of the SDUs containing auxiliary data for audio output may be classified into the second group. Classifying the SDUs into the plurality of groups in operation 720 is exemplified in the description of FIG. 8.
[0172] The type of data in each of the SDUs included in a first group among the plurality of groups may be different from the type of data in each of the SDUs included in a second group among the plurality of groups having a lower priority than the priority of the first group. For example, the type of data in each of the SDUs included in a third group among the plurality of groups having a lower priority than the priority of the second group may be different from the type of data in each of the SDUs in the first group and the type of data in each of the SDUs in the second group. For example, the type of data in each of the SDUs in the first group may be core data, which is essential data for audio output, the type of data in each of the SDUs in the second group may be first extension data, which is auxiliary data for audio output, and the type of data in each of the SDUs in the third group may be second extension data, which is auxiliary data for audio output and has a lower priority than the priority of the first extension data.
[0173] For example, the size of each of the SDUs included in the first group among the plurality of groups may be larger than the size of each of the SDUs included in the second group among the plurality of groups. For example, the size of each of the SDUs included in the third group among the plurality of groups may be smaller than the size of each of the SDUs included in the second group among the plurality of groups.
[0174] For example, the SDU interval for each of the SDUs included in the first group among the plurality of groups may be (substantially) the same as the SDU interval for each of the SDUs included in the second group among the plurality of groups and the SDU interval for each of the SDUs included in the third group among the plurality of groups. However, this is not limited thereto. For example, the SDU interval for each of the SDUs included in the plurality of groups may be determined according to the priorities of each of the plurality of groups. For example, the SDU interval for each of the SDUs included in the first group among the plurality of groups may be shorter than the SDU interval for each of the SDUs included in the second group among the plurality of groups and the SDU interval for each of the SDUs included in the third group among the plurality of groups.
[0175] For example, since the size of each of the SDUs in the first group is greater than the size of each of the SDUs in the second group and the SDU interval for each of the SDUs in the first group is the same as the SDU interval for each of the SDUs in the second group, the bit rate for each of the SDUs in the first group may be higher than the bit rate for each of the SDUs in the second group. For example, since the size of each of the SDUs in the second group is greater than the size of each of the SDUs in the third group and the SDU interval for each of the SDUs in the second group is the same as the SDU interval for each of the SDUs in the third group, the bit rate for each of the SDUs in the second group may be higher than the bit rate for each of the SDUs in the third group.
[0176] For example, the transmission opportunities of packets (e.g., protocol data units (PDUs)) obtained from each of the SDUs within the first group may be greater than the transmission opportunities of packets obtained from each of the SDUs within the second group. For example, the transmission opportunities of the packets obtained from each of the SDUs within the second group may be greater than the transmission opportunities of packets obtained from each of the SDUs within the third group. For example, the time allocated for transmission of the packets obtained from each of the SDUs within the first group and one or more retransmissions of the packets obtained from each of the SDUs within the first group may be greater than the time allocated for transmission of the packets obtained from each of the SDUs within the second group and one or more retransmissions of the packets obtained from each of the SDUs within the second group. For example, the time allocated for transmission of the packet obtained from each of the SDUs within the second group and one or more retransmissions of the packet obtained from each of the SDUs within the second group may be longer than the time allocated for transmission of the packet obtained from each of the SDUs within the third group and one or more retransmissions of the packet obtained from each of the SDUs within the third group.
[0177] For example, the maximum number of retransmissions (or counter) of the packet obtained from each of the SDUs within the first group may be greater than the maximum number of retransmissions of the packet obtained from each of the SDUs within the second group. For example, the maximum number of retransmissions (or counter) of the packet obtained from each of the SDUs within the second group may be greater than the maximum number of retransmissions of the packet obtained from each of the SDUs within the third group.
[0178] In operation 730, the electronic device (101) may store the SDUs classified into the plurality of groups in a buffer for the communication circuit (390). For example, operation 730 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120). For example, the instructions may also be executed by the communication circuit (390) under the control of the processor (120).
[0179] For example, the buffer may be implemented in hardware or software. Storing the SDUs within the buffer is exemplified in the description of FIG. 9.
[0180] In operation 740, the electronic device (101) may execute transmissions of packets using SDUs stored in the buffer according to the information for the audio service determined in operation 430. For example, operation 740 may be executed by executing instructions stored in the memory (130). For example, the instructions may be executed by the processor (120). For example, the instructions may be executed by the communication circuit (390) under the control of the processor (120). For example, the instructions may be executed using the communication circuit (390). Operation 740 is illustrated in more detail in the description of FIG. 10A or FIG. 10B.
[0181] Figure 8 illustrates an exemplary method for generating service data units (SDUs) used to generate packets to be transmitted to external electronic devices.
[0182] Referring to FIG. 8, a chart (800) illustrates a method of classifying acquired SDUs into multiple groups. The horizontal axis of the chart (800) represents time.
[0183] For example, the plurality of groups may include a first group (860) for SDUs having a first priority, a second group (870) for SDUs having a second priority lower than the first priority, and a third group (880) for SDUs having a third priority lower than the second priority.
[0184] For example, the electronic device (101) may classify the SDU (800-1) into a first group (860) based on acquiring the SDU (800-1) including essential data for outputting the first audio (or may include the SDU (800-1) in the first group (860)). For example, the electronic device (101) may classify the SDU (810-1) into a second group (870) based on acquiring the SDU (810-1) including auxiliary data for outputting the first audio after classifying the SDU (800-1) into the first group (860) (or after acquiring the SDU (800-1)). As a non-limiting example, the data in the SDU (810-1) may be available for applying an effect (e.g., sound quality improvement and / or sound field effect) to the first audio.
[0185] For example, the electronic device (101) may classify the SDU (800-2) into the first group (860) based on acquiring the SDU (800-2) that includes essential data for outputting the second audio following the first audio after classifying the SDU (810-1) into the second group (870) (or after acquiring the SDU (810-1)). For example, the electronic device (101) may classify the SDU (810-2) into the second group (870) based on acquiring the SDU (810-2) that includes auxiliary data for outputting the second audio after classifying the SDU (800-2) into the first group (860). As a non-limiting example, the data in the SDU (810-2) may be available for applying an effect to the second audio.
[0186] For example, the electronic device (101) may classify the SDU (800-3) into the first group (860) based on obtaining the SDU (800-3) containing essential data for outputting the third audio following the second audio after classifying the SDU (810-2) into the second group (870). For example, the electronic device (101) may classify the SDU (820-1) into the third group (880) based on obtaining the SDU (820-1) containing auxiliary data for outputting the first audio to the third audio, respectively, after classifying the SDU (800-3) into the first group (860). As a non-limiting example, the data within the SDU (820-1) may be available for applying an effect to each of the first audio to the third audio, respectively. For example, the electronic device (101) may classify the SDU (810-3) into the second group (870) based on classifying the SDU (820-1) into the third group (880) and then obtaining the SDU (810-3) containing auxiliary data for outputting the third audio. The data in the SDU (810-3) may be available for applying an effect to the third audio.
[0187] For example, the electronic device (101) may classify the SDU (800-4) into the first group (860) based on obtaining the SDU (800-4) containing essential data for outputting the fourth audio following the third audio after classifying the SDU (810-3) into the second group (870). For example, the electronic device (101) may classify the SDU (810-4) into the second group (870) based on obtaining the SDU (810-4) containing auxiliary data for outputting the fourth audio after classifying the SDU (800-4) into the first group (860). The data in the SDU (810-4) may be available for applying an effect to the fourth audio.
[0188] For example, the electronic device (101) may classify the SDU (800-5) into the first group (860) based on obtaining the SDU (800-5) containing essential data for outputting the fifth audio following the fourth audio after classifying the SDU (810-4) into the second group (870). For example, the electronic device (101) may classify the SDU (810-5) into the second group (870) based on obtaining the SDU (810-5) containing auxiliary data for outputting the fifth audio after classifying the SDU (800-5) into the first group (860). The data in the SDU (810-5) may be available for applying an effect to the fifth audio.
[0189] For example, the electronic device (101) may classify the SDU (800-6) into the first group (860) based on obtaining the SDU (800-6) containing essential data for outputting the sixth audio following the fifth audio after classifying the SDU (810-5) into the second group (870). For example, the electronic device (101) may classify the SDU (820-2) into the third group (880) based on obtaining the SDU (820-2) containing auxiliary data for outputting the fourth audio to the sixth audio, respectively, after classifying the SDU (800-6) into the first group (860). For example, the data in the SDU (820-2) may be available for applying an effect to each of the fourth audio to the sixth audio, respectively. For example, the electronic device (101) may classify the SDU (810-6) into the second group (870) based on obtaining the SDU (810-6) containing auxiliary data for outputting the sixth audio after classifying the SDU (820-2) into the third group (880). The data in the SDU (810-6) may be available for applying an effect to the sixth audio.
[0190] For example, the electronic device (101) may classify the SDU (800-7) into the first group (860) based on obtaining the SDU (800-7) that includes essential data for outputting the seventh audio following the sixth audio after classifying the SDU (810-6) into the second group (870). For example, the electronic device (101) may classify the SDU (810-7) into the second group (870) based on obtaining the SDU (810-7) that includes auxiliary data for outputting the seventh audio after classifying the SDU (800-7) into the first group (860). The data in the SDU (810-7) may be available for applying an effect to the seventh audio.
[0191] For example, the electronic device (101) may classify the SDU (800-8) into the first group (860) based on obtaining the SDU (800-8) containing essential data for outputting the eighth audio following the seventh audio after classifying the SDU (810-7) into the second group (870). For example, the electronic device (101) may classify the SDU (810-8) into the second group (870) based on obtaining the SDU (810-8) containing auxiliary data for outputting the eighth audio after classifying the SDU (800-8) into the first group (860). The data in the SDU (810-5) may be available for applying an effect to the eighth audio.
[0192] For example, the electronic device (101) may classify the SDU (800-9) into the first group (860) based on obtaining the SDU (800-9) containing essential data for outputting the ninth audio following the eighth audio after classifying the SDU (810-8) into the second group (870). For example, the electronic device (101) may classify the SDU (820-3) into the third group (880) based on obtaining the SDU (820-3) containing auxiliary data for outputting each of the seventh audio to the ninth audio after classifying the SDU (800-9) into the first group (860). For example, the data in the SDU (820-3) may be available for applying an effect to each of the seventh audio to the ninth audio. For example, the electronic device (101) may classify the SDU (810-9) into the second group (870) based on obtaining the SDU (810-9) containing auxiliary data for outputting the ninth audio after classifying the SDU (820-3) into the third group (880). The data in the SDU (810-9) may be available for applying an effect to the ninth audio.
[0193] In one embodiment, the CIS for the first group (860) (e.g., the first CIS (211)), the CIS for the second group (e.g., the second CIS (221), the third CIS (222)), and the CIS for the third group (e.g., the fourth CIS (231), the fifth CIS (232)) may be different from each other.
[0194] Figure 9 illustrates an exemplary method for storing SDUs in a buffer.
[0195] Referring to FIG. 9, the electronic device (101) may have a buffer for each of the plurality of groups. For example, as in state (900), the electronic device (101) may have a buffer (910) for a first group (860) among the plurality of groups, a buffer (920) for a second group (870) among the plurality of groups, and a buffer (930) for a third group (880) among the plurality of groups.
[0196] For example, the buffer (910) may be used to (at least temporarily) store SDUs classified into the first group (860). For example, the SDUs classified into the first group (860) may be sequentially stored in the buffer (910). For example, the SDUs (800-1) to the SDUs (800-9) may be stored in the buffer (910) according to the order in which the SDUs (800-1) to the SDUs (800-9) are acquired (or the order in which the SDUs (800-1) to the SDUs (800-9) are classified into the first group (860)). For example, the SDUs stored first in the buffer (910) may be read first by the electronic device (101) (or the communication circuit (390)) (or the processor (120)). For example, SDU (800-1) stored in buffer (910) can be read by electronic device (101) (or communication circuit (390)) (or processor (120)) with priority over SDU (800-2) to SDU (800-9) stored in buffer (910).
[0197] For example, the buffer (920) may be used to (at least temporarily) store SDUs classified into the second group (870). For example, the SDUs classified into the second group (870) may be sequentially stored in the buffer (920). For example, SDUs (810-1) to SDUs (810-9) may be stored in the buffer (920) according to the order in which the SDUs (810-1) to SDUs (810-9) are acquired (or the order in which the SDUs (810-1) to SDUs (810-9) are classified into the second group (870)). For example, the SDU stored first in the buffer (920) may be read first by the electronic device (101) (or the communication circuit (390)) (or the processor (120)). For example, SDU (810-1) stored in buffer (920) can be read by electronic device (101) (or communication circuit (390)) (or processor (120)) with priority over SDU (810-2) to SDU (810-9) stored in buffer (920).
[0198] For example, the buffer (930) may be used to (at least temporarily) store SDUs classified into the third group (880). For example, the SDUs classified into the third group (880) may be sequentially stored in the buffer (930). For example, SDUs (820-1) to SDUs (820-3) may be stored in the buffer (930) according to the order in which the SDUs (820-1) to SDUs (820-3) are acquired (or the order in which the SDUs (820-1) to SDUs (820-3) are classified into the third group (880)). For example, the SDU stored first in the buffer (930) may be read first by the electronic device (101) (or the communication circuit (390)) (or the processor (120)). For example, SDU (820-1) stored in buffer (930) can be read by electronic device (101) (or communication circuit (390)) (or processor (120)) with priority over SDU (820-2) to SDU (820-3) stored in buffer (930).
[0199] The electronic device (101) may have one buffer (or a single buffer). For example, as in state (980), the electronic device (101) may have a buffer (960).
[0200] For example, the electronic device (101) may store the SDUs in the buffer (960) according to the order in which the SDUs are acquired. For example, the electronic device (101) may store SDUs (800-1) to SDUs (800-9), SDUs (820-1) to SDUs (820-3), and SDUs (810-1) to SDUs (810-9) in the buffer (960) according to the order indicated by the chart (800) of FIG. 5. For example, the SDUs stored first in the buffer (960) may be read first by the electronic device (101) (or the communication circuit (390)) (or the processor (120)). For example, the SDU (800-1) stored in the buffer (960) may be read by the electronic device (101) (or the communication circuit (390)) (or the processor (120)) with priority over the remaining SDUs stored in the buffer (960).
[0201] Figure 10a is a diagram illustrating an example of data transmitted according to CIG events based on determined information. The horizontal axis of Figure 10a may represent time. The order of the first, second, and third CIG events in Figure 10a may be changed.
[0202] In FIG. 10A, four sub-events may be utilized for transmission of packets (1000-1, 1000-2) in a first CIG event, four sub-events may be utilized for transmission of packets (1010-1, 1010-2) in a second CIG event, and two sub-events may be utilized for transmission of packets (1020-1, 1020-2) in a third CIG event. Referring to FIG. 10A, the number of transmission (or retransmission) opportunities of packets (1000-1, 1000-2) transmitted via the first CIG event (or the CIS event of the first CIG event) may be four. The number of transmission (or retransmission) opportunities of packets (1010-1, 1010-2) transmitted via the second CIG event (or the CIS event of the second CIG event) may be two. The number of transmission (or retransmission) opportunities for packets (1020-1, 1020-2) transmitted via the third CIG event (or the CIS event of the third CIG event) may be one, but is not limited thereto. Depending on the wireless environment and / or the group to which the packets are classified, two or more sub-events may be utilized for the transmission of packets.
[0203] In one embodiment, the electronic device (101) may transmit (or forward) a packet (1000-1) containing data essential for audio output via the communication circuit (390) during a first CIG event, via a CIS event within the first CIG event. In one embodiment, the first CIG event may be related to the CIG (210) of FIG. 2, and the CIS event within the first CIG event may be related to the first CIS (211) of FIG. 2.
[0204] In one embodiment, the external electronic device (202) may acquire (or receive) a packet (1000-1) transmitted (or transmitted) through a CIS event within a first CIG event via a communication circuit (392). In one embodiment, the external electronic device (202) may transmit (or forward) a response (1011) (e.g., ACK or NACK) indicating whether the packet (1000-1) has been acquired (or received) through a CIS event within the first CIG event. For example, the external electronic device (202) may transmit (or forward) the response (1011) to the external electronic device (201) via a communication link (e.g., the communication link (240) of FIG. 2) indicating whether the packet (1000-1) has been acquired (or received) through a CIS event (e.g., the first CIS (211)) within the first CIG event.
[0205] In one embodiment, the external electronic device (201) may acquire (or receive) a packet (1000-1) transmitted (or transmitted) through a CIS event (e.g., the first CIS (211)) within a first CIG event via a communication circuit (391). In one embodiment, the external electronic device (201) may transmit (or transmit) a response (1021) (e.g., ACK or NACK) indicating whether the packet (1000-1) has been acquired (or received) through a CIS event (e.g., the first CIS (211)) within the first CIG event. For example, the external electronic device (201) may directly transmit (or forward) a response (1021) (e.g., ACK) to the electronic device (101) via a CIS event (e.g., the first CIS (211)) within the first CIG event, indicating whether the packet (1000-1) has been acquired (or received). For example, the external electronic device (201) may directly transmit (or forward) a response (1021) (e.g., ACK or NACK) to the electronic device (101) via a CIS event within the first CIG event, based on whether the response (1011) from the external electronic device (202) has been received and whether the packet (1000-1) has been acquired. For example, if at least one of the external electronic devices (201) or the external electronic device (202) fails to acquire (or receive) the packet (1000-1), the external electronic device (201) may transmit (or forward) a response (1021) (e.g., NACK) indicating that the packet (1000-1) was not received to the electronic device (101). For example, if the external electronic device (201) and the external electronic device (202) acquire (or receive) the packet (1000-1), the external electronic device (201) may transmit (or forward) a response (1021) (e.g., ACK) indicating that the packet (1000-1) was received to the electronic device (101).
[0206] In one embodiment, the electronic device (101) may determine the next packet to transmit based on (or in response to) a response (1011) from the external electronic device (201). For example, if the external electronic device (201) transmits a packet (1021) (e.g., NACK) indicating that it did not acquire (or receive) the packet (1000-1), the electronic device (201) may retransmit the packet (1000-1) via a subsequent sub-event of a CIS event (e.g., the first CIS (211)) within the first CIG event. In one embodiment, the electronic device (101) may retransmit the packet (1000-1) until the available time for transmission (and / or one or more retransmissions) of the packet (1000-1) having the first priority (e.g., a maximum transmission delay (MTL), a flush timeout, and / or a maximum number (or count) of retransmissions). In one embodiment, the electronic device (101) may retransmit the packet (1000-1) as many times as there are sub-events available for transmission (and / or one or more retransmissions) of the packet (1000-1) having a first priority (e.g., four).
[0207] For example, if an external electronic device (201) transmits a packet (1021) (e.g., ACK) indicating acquisition (or reception) of a packet (1000-1), the electronic device (101) may transmit packets (1010-1, 1010-2) via a CIS event (e.g., a second CIS (221), a third CIS (222)) of a CIG event (e.g., a second CIG event) following the first CIG event. For example, if an external electronic device (201) transmits a packet (1021) (e.g., ACK) indicating acquisition (or reception) of a packet (1000-1), the electronic device (101) may terminate the first CIG event and transmit packets (1010-1, 1010-2) through a CIS event (e.g., a second CIS (221), a third CIS (222)) of a CIG event (e.g., a second CIG event) following the first CIG event.
[0208] In one embodiment, a response may be made regarding the transmission of packet (1000-1) and reception of packet (1000-1) within a first sub-interval for a sub-event.
[0209] In one embodiment, the electronic device (101) may transmit (or forward) a packet (1010-1) containing ancillary data for audio output through the communication circuit (390) during a second CIG event, through a CIS event within the second CIG event. In one embodiment, the second CIG event may be related to the CIG (220) of FIG. 2, and the CIS event within the second CIG event may be related to the second CIS (221) and the third CIS (222) of FIG. 2. The external electronic device (201) may be related to the second CIS (221), and the external electronic device (202) may be related to the third CIS (222).
[0210] In one embodiment, the external electronic device (201) may acquire (or receive) a packet (1010-1) transmitted (or transmitted) through a CIS event (e.g., the second CIS (221)) within a second CIG event via the communication circuit (391). In one embodiment, the external electronic device (201) may directly transmit (or transmit) a response (1023) (e.g., ACK or NACK) to the electronic device (101) via a CIS event (e.g., the second CIS (221)) within the second CIG event, indicating whether the packet (1010-1) has been acquired (or received).
[0211] In one embodiment, the electronic device (101) may determine the next packet to transmit based on (or in response to) a response (1023) from the external electronic device (201). For example, if the external electronic device (201) transmits a packet (1021) (e.g., a NACK) indicating that it did not acquire (or receive) the packet (1010-1), the electronic device (101) may retransmit the packet (1010-1) via a subsequent sub-event of a CIS event (e.g., a second CIS (221)) within the second CIG event. In one embodiment, the electronic device (101) may retransmit the packet (1010-1) until the available time (e.g., a maximum transmission delay (MTL), a flush timeout, and / or a maximum number (or count) of retransmissions) of the packet (1010-1) having the second priority is reached. In one embodiment, the electronic device (101) may retransmit the packet (1010-1) as many times as there are sub-events available for transmission (and / or one or more retransmissions) of the packet (1010-1) having a second priority (e.g., two).
[0212] For example, if the external electronic device (201) transmits a packet (1023) (e.g., ACK) indicating acquisition (or reception) of the packet (1010-1), the electronic device (201) may transmit packets (1010-2) through a subsequent CIS event (e.g., a third CIS (222)) within the second CIG event. For example, if the external electronic device (101) transmits a packet (1023) (e.g., ACK) indicating acquisition (or reception) of the packet (1010-1), the electronic device (101) may terminate a CIS event (e.g., a second CIS (221)) of the second CIG event for transmitting the packet (1010-1) and transmit the packet (1010-2) through a subsequent CIS event (e.g., a third CIS (222)).
[0213] In one embodiment, the transmission of packet (1010-1) and the response to whether packet (1010-1) was received may be made within a second sub-interval for the sub-event. In one embodiment, the second sub-interval of the sub-event for packet (1010-1) may be shorter than the first sub-interval of the sub-event for packet (1000-1).
[0214] In one embodiment, the electronic device (101) may transmit (or forward) a packet (1010-2) containing ancillary data for audio output through the communication circuit (390) during a second CIG event, through a CIS event within a second CIG event. In one embodiment, the second CIG event may be related to the CIG (220) of FIG. 2, and the CIS event within the second CIG event may be related to the second CIS (221) and the third CIS (222) of FIG. 2. The external electronic device (201) may be related to the second CIS (221), and the external electronic device (202) may be related to the third CIS (222).
[0215] In one embodiment, the external electronic device (202) may acquire (or receive) a packet (1010-2) transmitted (or transmitted) through a CIS event (e.g., a third CIS (222)) within a second CIG event via the communication circuit (392). In one embodiment, the external electronic device (202) may directly transmit (or transmit) a response (1013) (e.g., an ACK) to the electronic device (101) via a CIS event (e.g., a third CIS (222)) within the second CIG event, indicating whether the packet (1010-2) has been acquired (or received).
[0216] In one embodiment, the electronic device (101) may determine the next packet to transmit based on (or in response to) a response (1013) from the external electronic device (202). For example, if the external electronic device (202) transmits a packet (1021) (e.g., a NACK) indicating that it did not acquire (or receive) the packet (1010-2), the electronic device (101) may retransmit the packet (1010-2) via a subsequent sub-event of a CIS event (e.g., a third CIS (222)) within the second CIG event. In one embodiment, the electronic device (101) may retransmit the packet (1010-2) until the available time (e.g., a maximum transmission delay (MTL), a flush timeout, and / or a maximum number (or count) of retransmissions) of the packet (1010-2) having the second priority is reached. In one embodiment, the electronic device (101) may retransmit the packet (1010-2) as many times as there are sub-events available for transmission (and / or one or more retransmissions) of the packet (1010-2) having a second priority (e.g., two).
[0217] For example, if an external electronic device (201) transmits a packet (1013) (e.g., ACK) indicating acquisition (or reception) of a packet (1010-2), the electronic device (101) may transmit packets (1020-1, 1020-2) via a CIS event (e.g., a fourth CIS (231), a fifth CIS (232)) of a CIG event (e.g., a third CIG event) following a second CIG event. For example, if an external electronic device (201) transmits a packet (1013) (e.g., ACK) indicating acquisition (or reception) of a packet (1010-2), the electronic device (101) may terminate a CIS event of a second CIG event for transmitting the packet (1010-2) and transmit packets (1020-1, 1020-2) through a CIS event (e.g., a fourth CIS (231), a fifth CIS (232)) of a CIG event (e.g., a third CIG event) following the second CIG event.
[0218] In one embodiment, the transmission of packet (1010-2) and the response to whether packet (1010-2) was received may be made within a second sub-interval for the sub-event. In one embodiment, the second sub-interval of the sub-event for packet (1010-2) may be shorter than the first sub-interval of the sub-event for packet (1000-2).
[0219] In one embodiment, the electronic device (101) may transmit (or forward) a packet (1020-1) containing ancillary data for audio output through the communication circuit (390) during a third CIG event, through a CIS event within a third CIG event. In one embodiment, the third CIG event may be related to the CIG (230) of FIG. 2, and the CIS event within the third CIG event may be related to the fourth CIS (231) and the fifth CIS (232) of FIG. 2. The external electronic device (201) may be related to the fourth CIS (231), and the external electronic device (202) may be related to the fifth CIS (232).
[0220] In one embodiment, the external electronic device (201) may acquire (or receive) a packet (1020-1) transmitted (or transmitted) through a CIS event (e.g., a fourth CIS (231)) within a third CIG event via a communication circuit (391). In one embodiment, the external electronic device (201) may directly transmit (or transmit) a response (1025) (e.g., an ACK or NACK) to the electronic device (101) via a CIS event (e.g., a fourth CIS (231)) within the third CIG event, indicating whether the packet (1020-1) has been acquired (or received).
[0221] In one embodiment, the electronic device (101) may determine the next packet to be transmitted based on (or in response to) the number of sub-events determined for transmission of the packet (1020-1) (e.g., 1). For example, if the external electronic device (201) transmits a packet (1021) (e.g., NACK) indicating that it has not acquired (or received) the packet (1020-1), the electronic device (101) may transmit the packet (1020-2) through another CIS event (e.g., the fifth CIS (232)) within the third CIG event.
[0222] In one embodiment, the transmission of packet (1020-1) and the response regarding the reception of packet (1020-1) may be made within a third sub-interval for a sub-event. In one embodiment, the third sub-interval of the sub-event for packet (1020-1) may be shorter than the second sub-interval of the sub-event for packet (1010-1), but is not limited thereto.
[0223] In one embodiment, the electronic device (101) may transmit (or forward) a packet (1020-2) containing ancillary data for audio output through the communication circuit (390) during a third CIG event, through a CIS event within a third CIG event. In one embodiment, the third CIG event may be related to the CIG (230) of FIG. 2, and the CIS event within the third CIG event may be related to the fourth CIS (231) and the fifth CIS (232) of FIG. 2. The external electronic device (201) may be related to the fourth CIS (231), and the external electronic device (202) may be related to the fifth CIS (232).
[0224] In one embodiment, the external electronic device (202) may acquire (or receive) a packet (1020-2) transmitted (or transmitted) through a CIS event (e.g., the fifth CIS (232)) within a third CIG event via the communication circuit (392). In one embodiment, the external electronic device (202) may directly transmit (or transmit) a response (1015) (e.g., an ACK) to the electronic device (101) via a CIS event (e.g., the fifth CIS (232)) within the third CIG event, indicating whether the packet (1020-2) has been acquired (or received).
[0225] In one embodiment, the electronic device (101) may determine the next packet to transmit based on (or in response to) the number of sub-events determined for transmission of the packet (1020-2) (e.g., 1). For example, if the external electronic device (202) transmits a packet (1021) (e.g., NACK) indicating that it has not acquired (or received) the packet (1020-2), the electronic device (101) may transmit the packet (10-0-2) via another CIG event (e.g., a first CIG event) subsequent to the third CIG event.
[0226] In one embodiment, the transmission of packet (1020-2) and the response regarding the reception of packet (1020-2) may be made within a third sub-interval for a sub-event. In one embodiment, the third sub-interval of the sub-event for packet (1020-2) may be shorter than the second sub-interval of the sub-event for packet (1010-1), but is not limited thereto.
[0227] In one embodiment, the electronic device (101) may transmit (or forward) a packet (1000-2) containing data essential for output of audio after a first ISO interval, via the communication circuit (390), during a first CIG event, via a CIS event within the first CIG event. In one embodiment, the first CIG event may be associated with the CIG (210) of FIG. 2, and the CIS event within the first CIG event may be associated with the first CIS (211) of FIG. 2.
[0228] In one embodiment, the external electronic device (202) may acquire (or receive) a packet (1000-2) transmitted (or transmitted) via a CIS event within a first CIG event via the communication circuit (392). In one embodiment, the external electronic device (202) may transmit (or transmit) a response (1017) (e.g., ACK or NACK) indicating whether the packet (1000-2) was acquired (or received) via a CIS event (e.g., the first CIS (211)) within the first CIG event. For example, the external electronic device (202) may transmit (or forward) a response (1017) to the external electronic device (201) via a communication link (e.g., the communication link (240) of FIG. 2) indicating whether the packet (1000-2) was acquired (or received) via a CIS event (e.g., the first CIS (211)) within the first CIG event.
[0229] In one embodiment, the external electronic device (201) may acquire (or receive) a packet (1000-2) transmitted (or transmitted) through a CIS event (e.g., the first CIS (211)) within a first CIG event via a communication circuit (391). In one embodiment, the external electronic device (201) may transmit (or transmit) a response (1027) (e.g., ACK or NACK) indicating whether the packet (1000-2) has been acquired (or received) through a CIS event (e.g., the first CIS (211)) within the first CIG event. For example, the external electronic device (201) may directly transmit (or forward) a response (1027) (e.g., ACK) to the electronic device (101) via a CIS event (e.g., the first CIS (211)) within the first CIG event, indicating whether the packet (1000-2) has been acquired (or received). For example, the external electronic device (201) may directly transmit (or forward) a response (1027) (e.g., ACK or NACK) to the electronic device (101) via a CIS event (e.g., the first CIS (211)) within the first CIG event, based on whether the response (1017) from the external electronic device (202) has been received and whether the packet (1000-2) has been acquired. For example, if at least one of the external electronic devices (201) or the external electronic device (202) fails to acquire (or receive) the packet (1000-2), the external electronic device (201) may transmit (or forward) a response (1027) (e.g., NACK) indicating that the packet (1000-2) was not received to the electronic device (101). For example, if the external electronic device (201) and the external electronic device (202) acquire (or receive) the packet (1000-2), the external electronic device (201) may transmit (or forward) a response (1027) (e.g., ACK) indicating that the packet (1000-2) was received to the electronic device (101).
[0230] In one embodiment, the electronic device (101) may determine the next packet to transmit based on (or in response to) a response (1017) from the external electronic device (201). For example, if the external electronic device (201) transmits a packet (1027) (e.g., a NACK) indicating that it did not acquire (or receive) the packet (1000-2), the electronic device (201) may retransmit the packet (1000-2) via a subsequent sub-event of a CIS event (e.g., the first CIS (211)) within the first CIG event. In one embodiment, the electronic device (101) may retransmit the packet (1000-2) until the available time for transmission (and / or one or more retransmissions) of the packet (1000-2) having the first priority (e.g., a maximum transmission delay (MTL), a flush timeout, and / or a maximum number (or count) of retransmissions). In one embodiment, the electronic device (101) may retransmit the packet (1000-1) as many times as there are sub-events available for transmission (and / or one or more retransmissions) of the packet (1000-1) having a first priority (e.g., four).
[0231] For example, if the external electronic device (201) transmits a packet (1021) (e.g., ACK) indicating acquisition (or reception) of the packet (1000-1), the electronic device (101) may transmit packets through a CIS event of a CIG event (e.g., a second CIG event or a third CIG event) following the first CIG event. For example, if the external electronic device (201) transmits a packet (1021) (e.g., ACK) indicating acquisition (or reception) of the packet (1000-1), the electronic device (101) may terminate the first CIG event and transmit packets through a CIS event of a CIG event (e.g., a second CIG event or a third CIG event) following the first CIG event.
[0232] In one embodiment, a response may be made regarding the transmission of a packet (1000-2) and the reception of a packet (1000-2) within a first sub-interval for a sub-event.
[0233] As described above, the electronic device (101) can reduce the resources required to transmit data to each of the external electronic devices (201, 202) by transmitting essential data (or common data) to the external electronic devices (201, 202) within one CIS event.
[0234] Figure 10b is a diagram illustrating an example of data transmitted according to CIG events based on determined information. The horizontal axis of Figure 10b may represent time. The order of the first, second, and third CIG events in Figure 10b may be changed.
[0235] In FIG. 10b, four sub-events may be utilized for transmission of packets (1000-1, 1000-2) in a first CIG event, four sub-events may be utilized for transmission of packets (1010-1, 1010-2) in a second CIG event, and two sub-events may be utilized for transmission of packets (1020-1, 1020-2) in a third CIG event. Referring to FIG. 10b, the number of transmission (or retransmission) opportunities of packets (1000-1, 1000-2) transmitted via the first CIG event (or the CIS event of the first CIG event) may be four. The number of transmission (or retransmission) opportunities of packets (1010-1, 1010-2) transmitted via the second CIG event (or the CIS event of the second CIG event) may be two. The number of transmission (or retransmission) opportunities for packets (1020-1, 1020-2) transmitted via the third CIG event (or the CIS event of the third CIG event) may be one, but is not limited thereto. Depending on the wireless environment and / or the group to which the packets are classified, two or more sub-events may be utilized for the transmission of packets.
[0236] Referring to FIG. 10b, compared to FIG. 10a, the external electronic device (202) can directly transmit a response (1011) indicating whether or not the packet (1000-1) has been acquired (or received) to the electronic device (101) via a CIS event (e.g., the first CIS (211)) within the first CIG event, rather than via a communication link (e.g., the communication link (240) of FIG. 2).
[0237] Accordingly, the external electronic device (202) may not transmit a response indicating whether the external electronic device (202) has acquired (or received) the packet (1000-1) to the external electronic device (201) via a communication link (e.g., the communication link (240) of FIG. 2). Accordingly, the external electronic device (201) may not obtain a response indicating whether the external electronic device (202) has acquired (or received) the packet (1000-1) via a communication link (e.g., the communication link (240) of FIG. 2). Accordingly, the external electronic device (201) may directly transmit (or transfer) a response (1021) indicating whether the external electronic device (201) has acquired (or received) its own packet (1000-1) to the electronic device (101).
[0238] As described above, the electronic device (101) can reduce the resources required to transmit data to each of the external electronic devices (201, 202) by transmitting essential data (or common data) to the external electronic devices (201, 202) within one CIS event.
[0239] FIG. 11A illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0240] Referring to FIG. 11A, the wireless environment may include an electronic device (101), an external electronic device (201), and an external electronic device (202).
[0241] The wireless environment of FIG. 11a may be a state in which a sixth CIS (1112) is generated in the first CIG (210), compared to the wireless environment of FIG. 2. For example, the electronic device (101) may further generate an additional CIS (e.g., the sixth CIS (1112)) for transmitting packets having a first priority. For example, the electronic device (101) may generate the first CIG (210) including CISs (211, 1112) corresponding to each of the external electronic device (201) or the external electronic device (202).
[0242] In one embodiment, the electronic device (101) can transmit communication parameters related to the first CIS (211) of the first CIG (210) to the external electronic device (201) through the first ACL (251) related to the first CIS (211) of the first CIG (210). In one embodiment, the electronic device (101) can transmit essential data for a right channel to the external electronic device (201) through a CIS event related to the first CIS (211) of the first CIG (210). In one embodiment, the electronic device (101) can receive a response to the essential data for the right channel from the external electronic device (201) through a CIS event related to the first CIS (211) of the first CIG (210).
[0243] In one embodiment, the electronic device (101) can transmit communication parameters related to the sixth CIS (1112) of the first CIG (210) to the external electronic device (202) through the second ACL (252) related to the sixth CIS (1112) of the first CIG (210). In one embodiment, the electronic device (101) can transmit essential data for a left channel to the external electronic device (202) through a CIS event related to the sixth CIS (1112) of the first CIG (210). In one embodiment, the electronic device (101) can receive a response to the essential data for the left channel from the external electronic device (202) through a CIS event related to the sixth CIS (1112) of the first CIG (210).
[0244] Figure 11b illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0245] Referring to FIG. 11b, the wireless environment may include an electronic device (101), an external electronic device (201), and an external electronic device (202).
[0246] The wireless environment of FIG. 11b may be a state in which multiple CISs (211, 221, 222, 231, 232, 1112) are created in one CIG (1110), compared to the wireless environment of FIG. 2. For example, the electronic device (101) may create multiple CISs (211, 221, 222, 231, 232, 1112) in one CIG (1110) through different communication parameters. For example, some of the multiple CISs (211, 221, 222, 231, 232, 1112) may have different communication parameters. For example, some of the multiple CISs (211, 221, 222, 231, 232, 1112) may have different ISO intervals. For example, among the plurality of CISs (211, 221, 222, 231, 232, 1112), the ISO interval of the CISs (211, 1112) for the packet of the first priority may be shorter than the ISO interval of the CISs (221, 222) for the packet of the second priority among the plurality of CISs (211, 221, 222, 231, 232, 1112).
[0247] In one embodiment, the electronic device (101) can transmit communication parameters associated with the plurality of CISs (211, 221, 231) of one CIG (1110) to the external electronic device (201) via the first ACL (251) associated with the plurality of CISs (211, 221, 231) of one CIG (1110). In one embodiment, the electronic device (101) can transmit essential data for a right channel to the external electronic device (201) via a CIS event associated with the CIS (211) of one CIG (1110). In one embodiment, the electronic device (101) can transmit ancillary data for a right channel to the external electronic device (201) via a CIS event associated with the CIS (221) or the CIS (231) of one CIG (1110). In one embodiment, the electronic device (101) may receive a response for data (e.g., essential data or incidental data) for the right channel from an external electronic device (201) via a CIS event associated with multiple CISs (211, 221, 231) of one CIG (1110).
[0248] In one embodiment, the electronic device (101) can transmit communication parameters associated with the plurality of CISs (222, 232, 1112) of one CIG (1110) to the external electronic device (202) via the second ACL (252) associated with the plurality of CISs (222, 232, 1112) of one CIG (1110). In one embodiment, the electronic device (101) can transmit essential data for a left channel to the external electronic device (202) via a CIS event associated with the CIS (1112) of one CIG (1110). In one embodiment, the electronic device (101) can transmit ancillary data for a left channel to the external electronic device (202) via a CIS event associated with the CIS (222) or the CIS (232) of one CIG (1110). In one embodiment, the electronic device (101) may receive a response for data (e.g., essential data or incidental data) for the left channel from an external electronic device (202) via a CIS event associated with multiple CISs (222, 232, 1112) of one CIG (1110).
[0249] FIG. 11c illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0250] Referring to FIG. 11c, the wireless environment may include an electronic device (101), an external electronic device (201), and an external electronic device (202).
[0251] The wireless environment of FIG. 11c may be a state in which multiple CISs (211, 221, 222, 231, 232, 1112) are created in multiple CIGs (1120, 1130) compared to the wireless environment of FIG. 2. For example, the electronic device (101) may create multiple CISs (211, 221, 222, 231, 232, 1112) in multiple CIGs (1120, 1130) through different communication parameters. For example, the communication parameters may be the same or different between the multiple CISs (211, 1112) included in the CIG (1120). For example, communication parameters may be the same or different between multiple CISs (221, 222, 231, 232) included in CIG (1130).
[0252] In one embodiment, the electronic device (101) can transmit communication parameters related to the CIS (211) of the CIG (1120) to the external electronic device (201) via the first ACL (251) associated with the CIS (211) of the CIG (1120). In one embodiment, the electronic device (101) can transmit communication parameters related to the plurality of CISs (221, 231) of the CIG (1130) to the external electronic device (201) via the first ACL (251) associated with the plurality of CISs (221, 231) of the CIG (1120). In one embodiment, the electronic device (101) can transmit essential data for the right channel to the external electronic device (201) via a CIS event associated with the CIS (211) of the CIG (1120). In one embodiment, the electronic device (101) may transmit ancillary data for the right channel to the external electronic device (201) via a CIS event associated with the CIS (221) or CIS (231) of the CIG (1130).
[0253] In one embodiment, the electronic device (101) can transmit communication parameters associated with the CIS (1112) of the CIG (1120) to the external electronic device (202) via the second ACL (252) associated with the CIS (1112) of the CIG (1120). In one embodiment, the electronic device (101) can transmit communication parameters associated with the plurality of CISs (222, 232) of the CIG (1130) to the external electronic device (201) via the first ACL (251) associated with the plurality of CISs (222, 232) of the CIG (1120). In one embodiment, the electronic device (101) can transmit essential data for the left channel to the external electronic device (202) via a CIS event associated with the CIS (1112) of the CIG (1120). In one embodiment, the electronic device (101) may transmit ancillary data for the left channel to the external electronic device (202) via a CIS event associated with the CIS (222) or CIS (232) of the CIG (1130).
[0254] Figure 12a is a diagram showing an example of CIG events based on determined information.
[0255] In one embodiment, the electronic device (101) may set NSE and / or FT (flush timeout) to a high value for a high-priority group. In one embodiment, the electronic device (101) may apply hybrid packing instead of a typical packing (e.g., sequential packing or interleaved packing) for the high-priority group. The hybrid packing may be described with reference to FIG. 12c.
[0256] For example, referring to FIG. 12A, sub-events (1231 to 1252) for right core data (1231, 1233, 1235, 1237, 1239, 1241, 1243, 1245, 1247, 1249, 1251) and sub-events (1232, 1234, 1236, 1238, 1240, 1242, 1244, 1246, 1248, 1250, 1252) for left core data may be interleaved packed within the first CIG event (1205).
[0257] For example, referring to FIG. 12A, sub-events (1221 to 1226) for right extension data and sub-events (1222, 1223, 1225) for left extension data may be interleaved packed within the sub-events (1221 to 1226) within the second CIG event (1203). According to an embodiment, the electronic device (101) may also allocate time intervals corresponding to the sub-events (1223 to 1226) within the second CIG event (1203) to the first CIG event (1205). For example, the electronic device (101) may use the simultaneously allocated sub-events (1223 to 1226) for high-priority core data. For example, if high priority core data is not transmitted by the flush timeout, or if sub-events for high priority core data are occupied by other tasks, the electronic device (101) may use the time intervals corresponding to sub-events (1223 to 1226) within the second CIG event (1203) for core data associated with the first CIG event (1205).
[0258] For example, referring to FIG. 12A, sub-events (1211, 1213) within the third CIG event (1201) may be sub-events for extension data. For example, sub-events (1211, 1213) within the third CIG event (1201) may be sub-events for left extension data and right extension data, which have one transmission opportunity. In one embodiment, the electronic device (101) may abandon transmission of extension data in sub-events (1211, 1213) for low-priority extension data. For example, the electronic device (101) may abandon transmission of extension data in sub-events (1211, 1213) for low-priority extension data when the electronic device (101) is low on power (e.g., below a reference state of charge (SOC)).
[0259] For example, while an audio service is being provided, the electronic device (101) may detect the occurrence of another task with a higher priority than the task for the audio service. For example, the other task may cause interference with the task for the audio service. For example, the other task may include transmitting or receiving a signal on a frequency (or frequency band) corresponding to the frequency (or frequency band) of packets for the audio service. For example, the other task may be a task executed via Wi-Fi and / or a task executed via Bluetooth.
[0260] For example, in response to detecting another task having a higher priority than the task for the audio service, the electronic device (101) may cause time intervals for sub-events of lower priority CIGs to be occupied by the other task having a higher priority. For example, the electronic device (101) may cause time intervals for sub-events (1221 to 1226) within the second CIG event (1203) and / or time intervals for sub-events (1211, 1213) within the third CIG event (1201) to be occupied by the other task having a higher priority.
[0261] Figure 12b is a diagram showing an example of CIS events based on determined information.
[0262] FIG. 12b, compared to FIG. 12a, may include CIS events (1202, 1204, 1206) generated by different transmission parameters in one CIG event (1210).
[0263] The same algorithm as the CIG events (1201, 1203, 1205) of FIG. 12a can also be applied to the CIS events (1202, 1204, 1206) of FIG. 12b.
[0264] For example, a hybrid packing rather than a general packing (e.g., sequential packing or interleaved packing) may be applied to the CIS events (1202, 1204, 1206) of FIG. 12b.
[0265] For example, the electronic device (101) may also allocate time intervals corresponding to sub-events (1223 to 1226) within the second CIS event (1204) to the first CIS event (1206). For example, the electronic device (101) may use the simultaneously allocated sub-events (1223 to 1226) for high-priority core data. For example, if the high-priority core data is not transmitted by the flush timeout, or if the sub-events for the high-priority core data are occupied by another task, the electronic device (101) may use the time intervals corresponding to sub-events (1223 to 1226) within the second CIS event (1204) for core data associated with the first CIS event (1206).
[0266] In one embodiment, the electronic device (101) may forgo transmission of extension data in sub-events (1211, 1213) for low-priority extension data. For example, the electronic device (101) may forgo transmission of extension data in sub-events (1211, 1213) for low-priority extension data when the electronic device (101) is underpowered (e.g., below a reference SOC).
[0267] For example, in response to detecting another task having a higher priority than the task for the audio service, the electronic device (101) may cause time intervals for sub-events of lower priority CISs to be occupied by the other task having a higher priority. For example, the electronic device (101) may cause time intervals for sub-events (1221 to 1226) within the second CIS event (1204) and / or time intervals for sub-events (1211, 1213) within the third CIS event (1202) to be occupied by the other task having a higher priority.
[0268] Figure 12c is a diagram showing an example of CIG events based on determined information.
[0269] In one embodiment, the electronic device (101) may set the NSE and / or FT (flush timeout) to be high for a high priority group. In one embodiment, the electronic device (101) may apply hybrid packing instead of general packing (e.g., sequential packing or interleaved packing) for the high priority group. For example, the hybrid packing may be a method of arranging sub-events so that two or more CISs are set to overlap each other in time and then a CIS with a high priority occupies the corresponding section. In one embodiment, the electronic device (101) may arrange the CISs of two or more CIGs after a minimum time required for a channel change or a transmission / reception mode change (e.g., a time interval between two consecutive packets within a sub-event (e.g., T_IFS), a minimum sub-event interval (e.g., T_MSS)).
[0270] For example, referring to FIG. 12C, a first CIS event set to occupy sub-events (1231 to 1249) for right core data and a second CIS event set to occupy sub-events (1234 to 1252) for left core data within sub-events (1231 to 1252) of a first CIG event (1205) may be hybrid packed. In FIG. 12C, sub-events (1231 to 1233) may be utilized as sub-events for right core data, sub-events (1250 to 1232) may be utilized as sub-events for left core data, and sub-events (1234 to 1249) within a time-overlapping section (1260) may be utilized as sub-events for right core data and / or left core data. In one embodiment, the electronic device (101) may cause the CIS event of the core data with a higher priority among the left core data or the right core data to occupy the overlapping sub-events (1234 to 1249).
[0271] Figure 13a illustrates an exemplary signal flow for generating SDUs used to generate packets to be transmitted to an external electronic device.
[0272] Referring to FIG. 13a, the audio source (1310) may be composed of audio data (1320) for stereophonic sound in which left audio data (L1, L2, L3, L4) and right audio data (R1, R2, R3, R4) are combined.
[0273] In one embodiment, audio data (1320) may be encoded into SDUs (LC1, LC2, LC3, LC4, LE1, LE2, LE3, LE4, Le1, Le2, Le3, Le4, RC1, RC2, RC3, RC4, RE1, RE2, RE3, RE4, Re1, Re2, Re3, Re4) included in a plurality of groups (1341, 1343, 1345, 1351, 1353, 1355) via a codec (1330). In one embodiment, SDUs (LC1, LC2, LC3, LC4, RC1, RC2, RC3, RC4) included in groups (1341, 1351) having a first priority may be essential data. In one embodiment, SDUs (LE1, LE2, LE3, LE4, RE1, RE2, RE3, RE4) included in groups (1343, 1353) having a second priority may be ancillary data (e.g., extension data). In one embodiment, SDUs (Le1, Le2, Le3, Le4, Re1, Re2, Re3, Re4) included in groups (1343, 1353) having a third priority may be ancillary data (e.g., extension data). In one embodiment, the codec (1330) may be included as a part of the processor (120). In one embodiment, the codec (1330) may be included as a program in the memory (130). In one embodiment, the codec (1330) may be included as a part of the communication circuit (390).
[0274] In one embodiment, a BTC (Bluetooth chip, or Bluetooth controller) (1360) included in a communication circuit (290) can convert SDUs (LC1, LC2, LC3, LC4, LE1, LE2, LE3, LE4, Le1, Le2, Le3, Le4, RC1, RC2, RC3, RC4, RE1, RE2, RE3, RE4, Re1, Re2, Re3, Re4) into PDUs. In one embodiment, the BTC (1360) can transmit the PDUs to external electronic devices (201, 202) via an antenna (1370) within a CIS event included in a CIG event corresponding to a priority.
[0275] In one embodiment, since the audio data (1320) is encoded as data for each channel without common data, the electronic device (101) can transmit the PDU to the external electronic devices (201, 202) through a wireless environment such as FIG. 11A or FIG. 11B instead of a wireless environment such as FIG. 2. For example, the electronic device (101) can transmit a PDU including each of the SDUs (RC1, RC2, RC3, RC4) to the external electronic device (201) through the first CIS (211). For example, the electronic device (101) can transmit a PDU including each of the SDUs (LC1, LC2, LC3, LC4) to the external electronic device (201) through the sixth CIS (1112).
[0276] Figure 13b illustrates an exemplary signal flow for generating SDUs used to generate packets to be transmitted to an external electronic device.
[0277] Referring to FIG. 13b, the audio source (1310) may be composed of audio data (1320) for stereo sound in which left audio data (L1, L2, L3, L4) and right audio data (R1, R2, R3, R4) are combined.
[0278] In one embodiment, audio data (1320) may be encoded into SDUs (C1, C2, C3, C4, LR1, LR2, LR3, LR4, RR1, RR2, RR3, RR4) included in a plurality of groups (1380, 1381, 1385) via a codec (1330). In one embodiment, SDUs (C1, C2, C3, C4) included in a group (1380) having a first priority may be essential data (or common data). In one embodiment, SDUs (LR1, LR2, LR3, LR4, RR1, RR2, RR3, RR4) included in groups (1381, 1385) having a second priority may be incidental data (e.g., residual data).
[0279] In one embodiment, the BTC (1360) can convert SDUs (C1, C2, C3, C4, LR1, LR2, LR3, LR4, RR1, RR2, RR3, RR4) into PDUs. In one embodiment, the BTC (1360) can transmit the PDUs to external electronic devices (201, 202) via the antenna (1370) within a CIS event included in a CIG event corresponding to the priority.
[0280] In one embodiment, since the audio data (1320) is encoded with common data and data for each channel, the electronic device (101) can transmit the PDU to the external electronic devices (201, 202) through a wireless environment such as FIG. 2. For example, the electronic device (101) can transmit a PDU including each of the SDUs (C1, C2, C3, C4) to the external electronic device (201) and the external electronic device (202) through the first CIS (211). For example, when a PDU including C1 is transmitted (over the air) through the first CIS (211), both the external electronic device (201) and the external electronic device (202) can receive (or acquire) the PDU including C1. For example, both the external electronic device (201) and the external electronic device (202) can respond to the electronic device (101) via the first CIS (211) whether or not a PDU containing C1 has been received.
[0281] Figure 14a illustrates an example of a wireless environment including an electronic device and an external electronic device. Figure 14b illustrates an example of a wireless environment including an electronic device and an external electronic device. Figure 14c illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0282] Referring to FIGS. 14a, 14b, and 14c, the wireless environment may include an electronic device (101), an external electronic device (201), and an external electronic device (202).
[0283] The wireless environment of FIG. 14a may be a state in which a communication link (e.g., a first ACL (251)) between an electronic device (101) and an external electronic device (201) and a communication link (240) between an external electronic device (201) and an external electronic device (202) are established. In one embodiment, the communication link (240) between the external electronic device (201) and the external electronic device (202) may be an ACL.
[0284] In one embodiment, the electronic device (101) may generate one or more CISs (or set transmission parameters for one or more CISs). In one embodiment, the electronic device (101) may generate (or set) one or more CISs (or set transmission parameters for one or more CISs) for transmitting packets for audio services to an external electronic device (201) and / or an external electronic device (202). In one embodiment, one or more CISs may be included in one CIG, but is not limited thereto.
[0285] In one embodiment, the electronic device (101) may transmit one or more CISs (or transmission parameters for one or more CISs) for transmitting packets for an audio service through a communication link (e.g., the first ACL (251)) between the electronic device (101) and an external electronic device (201). In one embodiment, one or more CISs may be included in one CIG, but is not limited thereto.
[0286] In one embodiment, the electronic device (101) may transmit transmission parameters for a communication link (e.g., CIS) between the electronic device (101) and an external electronic device (201) and / or transmission parameters for a communication link (e.g., CIS) between the electronic device (101) and an external electronic device (202) to the external electronic device (201) via a communication link (e.g., the first ACL (251)).
[0287] In one embodiment, the external electronic device (201) may transmit transmission parameters for an audio service via the external electronic device (202) to the external electronic device (202) via the communication link (240). For example, transmission parameters for at least one CIS for transmitting a packet for the external electronic device (202) (e.g., common data of audio for providing stereophonic sound, and / or left residual data to be output from a left channel of audio) may be transmitted to the external electronic device (202) via the communication link (240).
[0288] For example, referring to FIG. 14B, the electronic device (101) can generate a CIG (1420) including CISs (1421, 1425) (or set transmission parameters for a CIG (1420) including CISs (1421, 1425)) via a communication link (e.g., a first ACL (251)) between the electronic device (101) and an external electronic device (201). In one embodiment, the electronic device (101) can transmit transmission parameters for a CIG (1420) including CISs (1421, 1425) to the external electronic device (201) via the first ACL (251). In one embodiment, the external electronic device (201) can transmit transmission parameters for the left CIS (1425) for data to be output from the left channel among the CISs (1421, 1425) to the external electronic device (202) via the communication link (240). In one embodiment, the external electronic device (202) can obtain a packet transmitted from the electronic device (101) via the left CIS (1425). In one embodiment, the external electronic device (202) can transmit a response to the packet transmitted from the electronic device (101) via the left CIS (1425) to the electronic device (101) via the left CIS (1425).
[0289] For example, referring to FIG. 14C, the electronic device (101) can generate a CIG (1430) including a CIS (1431) (or set transmission parameters for a CIG (1430) including a CIS (1431)) through a communication link (e.g., a first ACL (251)) between the electronic device (101) and an external electronic device (201). In one embodiment, the electronic device (101) can transmit transmission parameters for a CIG (1430) including a CIS (1431) to the external electronic device (201) through the first ACL (251). In one embodiment, the external electronic device (201) can transmit transmission parameters for the CIS (1431) to the external electronic device (202) through the communication link (240) based on the CIS (1431) being a CIS for common data. In one embodiment, the external electronic device (202) can obtain a packet transmitted from the electronic device (101) through the CIS (1431). In one embodiment, the external electronic device (202) can transmit a response to the packet transmitted from the electronic device (101) through the CIS (1431) to the external electronic device (201) through the communication link (240). The external electronic device (201) can transmit a response to the packet transmitted from the electronic device (101) through the CIS (1431) to the electronic device (101) through the CIS (1431) based on whether the packet is received through the CIS (1431) and a response (e.g., ACK or NACK) from the external electronic device (202).
[0290] Figure 15a illustrates an example of a wireless environment including an electronic device and an external electronic device. Figure 15b illustrates an example of a wireless environment including an electronic device and an external electronic device. Figure 15c illustrates an example of a wireless environment including an electronic device and an external electronic device. Figure 15d illustrates an example of a wireless environment including an electronic device and an external electronic device.
[0291] Referring to FIGS. 15a, 15b, 15c, and 15d, the wireless environment may include an electronic device (101), an external electronic device (201), and an external electronic device (202).
[0292] The wireless environment of FIG. 15A may be a state in which a communication link (e.g., a first ACL (251)) between an electronic device (101) and an external electronic device (201), a communication link (e.g., a second ACL (252)) between an electronic device (101) and an external electronic device (202), and a communication link (240) between an external electronic device (201) and an external electronic device (202) are established. In one embodiment, the communication link (240) between the external electronic device (201) and the external electronic device (202) may be an ACL.
[0293] In one embodiment, the electronic device (101) can generate one or more CISs (or transmit transmission parameters for one or more CISs). In one embodiment, the electronic device (101) can generate (or set) one or more CISs (or transmit parameters for one or more CISs) for transmitting packets for an audio service to an external electronic device (201) and / or an external electronic device (202). In one embodiment, one or more CISs can be included in one CIG, but is not limited thereto.
[0294] In one embodiment, the electronic device (101) may transmit one or more CISs (or transmission parameters for one or more CISs) for transmitting packets for an audio service through a communication link (e.g., the first ACL (251)) between the electronic device (101) and the external electronic device (201). In one embodiment, the electronic device (101) may transmit one or more CISs (or transmission parameters for one or more CISs) related to the external electronic device (201) through a communication link (e.g., the first ACL (251)) between the electronic device (101) and the external electronic device (201). For example, transmission parameters for at least one CIS for transmitting a packet (e.g., common data of audio for providing stereophonic sound, and / or right residual data to be output from a right channel of audio) for an external electronic device (201) among one or more CISs may be transmitted to the external electronic device (201) through the first ACL (251).
[0295] In one embodiment, the electronic device (101) may transmit one or more CISs (or transmission parameters for one or more CISs) for transmitting packets for an audio service via a communication link (e.g., the second ACL (252)) between the electronic device (101) and the external electronic device (202). In one embodiment, the electronic device (101) may transmit one or more CISs (or transmission parameters for one or more CISs) related to the external electronic device (202) via a communication link (e.g., the second ACL (252)) between the electronic device (101) and the external electronic device (202). For example, transmission parameters for at least one CIS for transmitting a packet (e.g., common data of audio for providing stereophonic sound, and / or left residual data to be output from a left channel of audio) for an external electronic device (202) among one or more CISs may be transmitted to the external electronic device (202) via the second ACL (252).
[0296] For example, referring to FIG. 15B, the first CIS (1521) may be a CIS for right residual data to be output from the right channel of the audio, and the second CIS (1525) may be a CIS for left residual data to be output from the left channel of the audio. For example, the electronic device (101) may transmit transmission parameters for the first CIS (1521) related to the external electronic device (201) among the CISs (1521, 1525) included in the CIG (1520) to the external electronic device (201) through the first ACL (251) between the electronic device (101) and the external electronic device (201). For example, the electronic device (101) can transmit transmission parameters for a second CIS (1525) related to the external electronic device (202) among the CISs (1521, 1525) included in the CIG (1520) to the external electronic device (202) through the second ACL (252) between the electronic device (101) and the external electronic device (202).
[0297] For example, referring to FIGS. 15C and 15D , the CIS (1531) may be a CIS for common data of audio for providing stereo sound. For example, the electronic device (101) may transmit transmission parameters for the CIS (1531) included in the CIG (1530) to the external electronic device (201) through the first ACL (251) between the electronic device (101) and the external electronic device (201). For example, the electronic device (101) may transmit transmission parameters for the CIS (1531) included in the CIG (1530) to the external electronic device (202) through the second ACL (252) between the electronic device (101) and the external electronic device (202).
[0298] In one embodiment, the electronic device (101) may, through the second ACL (252), instruct the external electronic device (202) on how to respond to data transmitted through the CIS (1531).
[0299] For example, the electronic device (101) may request an external electronic device (202) to respond to a packet transmitted through the CIS (1531). For example, the electronic device (101) may request responses from the external electronic device (201) and the external electronic device (202) to transmit responses to the packet at different times through the CIS (1531). For example, referring to FIG. 15C, the external electronic device (201) may transmit a response (1533) to the electronic device (101) at a first time specified through the CIS (1531), and the external electronic device (202) may transmit a response (1535) to the electronic device (101) at a second time specified through the CIS (1531). The specified first time and second time may not overlap with each other.
[0300] For example, the electronic device (101) may not request a response to a packet transmitted through the CIS (1531) to the external electronic device (202). For example, the electronic device (101) may request the external electronic device (201) to transmit a response to the packet through the CIS (1531) and request the external electronic device (202) not to transmit a response through the CIS (1531). For example, referring to FIG. 15D, the external electronic device (202) may transmit a response (1545) to the external electronic device (201) at a first time specified through the communication link (240). The external electronic device (201) may transmit a response (1533) to the electronic device (101) at a second time specified through the CIS (1531). In one embodiment, the response (1533) may be determined based on the content of the response (1545) and whether the packet was received through the CIS (1531) of the external electronic device (201). For example, if the response (1545) is a NACK, the response (1533) may be a NACK. For example, if the response (1545) is an ACK, but the external electronic device (201) did not receive the packet, the response (1533) may be a NACK. For example, if the response (1545) is an ACK and the external electronic device (201) received the packet, the response (1533) may be an ACK. The specified first time and the second time may not overlap each other. In one embodiment, the specified first time may be earlier than the second time.
[0301] As described above, the electronic device (101) can operate as a central device in a wireless environment. The electronic device (101) can include a communication circuit (390) for BLE (Bluetooth low energy). The electronic device (101) can include a processor (120). The electronic device (101) can include a memory (130) that stores instructions. The instructions, when executed by the processor (120), can cause the electronic device (101) to generate a plurality of connected isochronous groups (CIGs) (210, 220, 230) for an external electronic device (201) operating as a peripheral device through the communication circuit (390). The plurality of CIGs (210, 220, 230) may be generated by different transmission parameters for transmitting packets for outputting audio to the external electronic device (201). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit the packets for outputting audio to the external electronic device (201) through the plurality of CIGs (210, 220, 230).
[0302] As described above, the electronic device (101) can operate as a central device within a wireless environment. The electronic device (101) can include a communication circuit (390) for BLE (Bluetooth low energy). The electronic device (101) can include a processor (120). The electronic device (101) can include a memory (130) that stores instructions. The instructions, when executed by the processor (120), can cause the electronic device (101) to generate a first CIG event (511) and a second CIG event (512) to be used to output audio using an external electronic device (201) operating as a peripheral device within the wireless environment. The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a first packet to the external electronic device (201) using the communication circuit (390) through a CIS event within the first CIG event (511) according to a first transmission parameter set for the first CIG event (511). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a second packet to the external electronic device (201) using the communication circuit (390) through a CIS event within the second CIG event (512) according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter.
[0303] The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit, to the external electronic device (201), the first packet including data essential for outputting the audio, via the CIS event within the first CIG event (511). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit, to the external electronic device (201), the second packet including data incidental to outputting the audio, via the CIS event within the second CIG event (512).
[0304] The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit the first packet to the external electronic device (201) through the CIS event within the first CIG event (511) rather than the second CIG event (512) at least some of the time occupied by the ISO (isochronous) interval for the first CIG event (511) overlaps with the time occupied by the ISO interval for the second CIG event (512).
[0305] The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit the first packet to the external electronic device (201) via the CIS event within the first CIG event (511) during at least a portion of the time occupied by an isochronous interval for the second CIG event (512) in response to a lapse of time available for one or more retransmissions of the first packet via the first CIG event (511).
[0306] The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit, through the communication circuit (390), a signal indicating that the first packet is transmitted to another external electronic device (201) distinct from the external electronic device (201) via the CIS event within the first CIG event (511). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit, through the CIS event within the first CIG event (511), the first packet to the external electronic device (201) and the other external electronic device (202).
[0307] The instructions, when executed by the processor (120), may cause the electronic device (101) to generate a signal indicating that the first packet is transmitted via the CIS event within the first CIG event (511) to another external electronic device (202) distinct from the external electronic device (201). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit the first packet to the external electronic device (201) and the other external electronic device (202) via the CIS event within the first CIG event (511).
[0308] The above instructions, when executed by the processor (120), may cause the electronic device (101) to receive a response to the first packet from the external electronic device (201) among the external electronic device (201) and the other external electronic device (202), using the communication circuit (390).
[0309] The above instructions, when executed by the processor (120), may cause the electronic device (101) to receive a response to the first packet from each of the external electronic device (201) and the other external electronic device (202) using the communication circuit (390) through the CIS event within the first CIG event (511).
[0310] The second CIG event (512) may include a first CIS event for transmitting the second packet to the external electronic device (201) and a second CIS event for transmitting a third packet including other data incidental to the output of the audio to another external electronic device (202) distinct from the external electronic device (201).
[0311] The bit rate of the first CIG event (511) may be higher than the bit rate of the second CIG event (512).
[0312] The above instructions, when executed by the processor (120), may cause the electronic device (101) to discard a packet to be transmitted via the CIS event within the second CIG event (512) during the time based on the communication circuit (390) operating for transmission of other packets of other data during the time by the isochronous interval for the second CIG event (512).
[0313] The instructions, when executed by the processor (120), may cause the electronic device (101) to generate service data units (SDUs) by encoding the audio according to a specified coding technique. The instructions, when executed by the processor (120), may cause the electronic device (101) to generate the first packet to be transmitted through the CIS event within the first CIG event (511) using a first type of SDU among the SDUs. The instructions, when executed by the processor (120), may cause the electronic device (101) to generate the second packet to be transmitted through the CIS event within the second CIG event (512) using a second type of SDU among the SDUs.
[0314] The above instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a message to the external electronic device (201) via the communication circuit (390) notifying the generation of the first CIG event (511) and the second CIG event (512).
[0315] The above instructions, when executed by the processor (120), may cause the electronic device (101) to determine the first CIG_Sync_Delay of the first transmission parameter and the second CIG_Sync_Delay of the second transmission parameter such that the first playback time of the first SDU (service data unit) included in the first packet corresponds to the playback time of the second SDU included in the second packet.
[0316] Each of the first packet and the second packet may include information related to the playback time of the audio. The first packet and the second packet may include information related to the playback time of the audio.
[0317] As described above, the electronic device (101) can operate as a central device within a wireless environment. The electronic device (101) can include a communication circuit (390) for BLE (Bluetooth low energy). The electronic device (101) can include a processor (120). The electronic device (101) can include a memory (130) that stores instructions. The instructions, when executed by the processor (120), can cause the electronic device (101) to generate a CIG event (1210) to be used to output audio using an external electronic device (201) operating as a peripheral device within the wireless environment. The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a first packet to the external electronic device (201) via the communication circuit (390) through a first CIS event (1209) within the CIG event (1210) according to a first transmission parameter set for the first CIS event (1209). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a second packet to the external electronic device (201) via the communication circuit (390) through a second CIS event (1204) within the CIG event (1210) according to a second transmission parameter set for the second CIS event (1204) and different from the first transmission parameter.
[0318] The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit, to the external electronic device (201), via the first CIS event (1209), the first packet containing data essential for outputting the audio. The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit, to the external electronic device (201), via the second CIS event (1204), the second packet containing data incidental to outputting the audio.
[0319] As described above, the electronic device (201) can operate as a peripheral device in a wireless environment. The external electronic device (201) can include a speaker (351). The external electronic device (201) can include a communication circuit (391) for BLE (Bluetooth low energy). The external electronic device (201) can include a processor (321). The external electronic device (201) can include a memory (331) that stores instructions. The instructions, when executed by the processor (321), may cause the electronic device (201) to receive a first packet from an external electronic device (101) operating as a central device via a CIS event within a first CIG event (511) using the communication circuit (391) according to a first transmission parameter set for the first CIG event (511). The instructions, when executed by the processor (321), may cause the electronic device (201) to receive a second packet from the external electronic device (101) via a CIS event within a second CIG event (512) using the communication circuit (391) according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter. The above instructions, when executed by the processor (321), may cause the electronic device (201) to output the audio obtained using the first packet and the second packet through the speaker (351).
[0320] The instructions, when executed by the processor (321), may cause the electronic device (201) to receive, from the external electronic device (101), the first packet including data essential for outputting the audio, via the CIS event within the first CIG event (511). The instructions, when executed by the processor (321), may cause the electronic device (201) to receive, from the external electronic device (101), the second packet including data incidental to outputting the audio, via the CIS event within the second CIG event (512).
[0321] The instructions, when executed by the processor (321), may cause the electronic device (201) to obtain a response indicating whether the first packet has been received from another external electronic device (202) operating as the peripheral device with respect to the external electronic device (101) through the communication circuit (391). The instructions, when executed by the processor (321), may cause the electronic device (201) to transmit a final response indicating whether the first packet has been received to the external electronic device (101) based on whether the electronic device (201) has received the first packet and the response.
[0322] The above instructions, when executed by the processor (321), may cause the electronic device (201) to obtain the audio by decoding the first packet and the second packet according to a specified coding technique.
[0323] The instructions, when executed by the processor (321), may cause the electronic device (201) to identify information related to a playback point of the audio included in the packets. The instructions, when executed by the processor (321), may cause the electronic device (201) to identify a first packet and a second packet among a plurality of first packets and a plurality of second packets, the playback points of which correspond to each other. The instructions, when executed by the processor (321), may cause the electronic device (201) to obtain the audio to be played at the playback point by decoding the identified first packet and the identified second packet according to the designated coding technique.
[0324] The information related to the playback point of the audio may include a sequence number of an SDU (service data unit) included in a packet.
[0325] As described above, the method can be performed by an electronic device (101) that operates as a central device in a wireless environment and includes a communication circuit (390) for BLE (Bluetooth low energy). The method can include an operation of generating a plurality of connected isochronous groups (CIGs) (210, 220, 230) for an external electronic device (201) that operates as a peripheral device through the communication circuit (390). The plurality of CIGs (210, 220, 230) can be generated by different transmission parameters for transmitting packets for outputting audio to the external electronic device (201). The method can include an operation of transmitting the packets for outputting audio to the external electronic device (201) through the plurality of CIGs (210, 220, 230).
[0326] As described above, the method can be performed by an electronic device (101) that operates as a central device in a wireless environment and includes a communication circuit (390) for BLE (Bluetooth low energy). The method can include an operation of generating a first CIG event (511) and a second CIG event (512) to be used for outputting audio using an external electronic device (201) that operates as a peripheral device in the wireless environment. The method can include an operation of transmitting a first packet to the external electronic device (201) through the communication circuit (390) according to a first transmission parameter set for the first CIG event (511) through a CIS event in the first CIG event (511). The method may include an operation of transmitting a second packet to the external electronic device (201) using the communication circuit (390) through a CIS event within the second CIG event (512) and according to a second transmission parameter that is set for the second CIG event (512) and is different from the first transmission parameter.
[0327] As described above, the method can be performed by an electronic device (101) operating as a central device in a wireless environment and including a communication circuit (390) for BLE (Bluetooth low energy). The method can include an operation of generating a CIG event (1210) to be used for outputting audio using an external electronic device (201) operating as a peripheral device in the wireless environment. The method can include an operation of transmitting a first packet to the external electronic device (201) through a first CIS event (1209) in the CIG event (1210) using the communication circuit (390) according to a first transmission parameter set for the first CIS event (1209). The method may include an operation of transmitting a second packet to the external electronic device (201) using the communication circuit (390) through a second CIS event (1204) within the CIG event (1210) according to a second transmission parameter set for the second CIS event (1204) and different from the first transmission parameter.
[0328] As described above, the method can be performed by an electronic device (201) operating as a peripheral device in a wireless environment and including a communication circuit (391) for BLE (Bluetooth low energy). The method can include an operation of receiving a first packet from an external electronic device (101) operating as a central device through a CIS event in a first CIG event (511) using the communication circuit (391) according to a first transmission parameter set for the first CIG event (511). The method can include an operation of receiving a second packet from the external electronic device (101) through a CIS event in a second CIG event (512) using the communication circuit (391) according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter. The above method may include an operation of outputting the audio obtained using the first packet and the second packet through the speaker (351).
[0329] As described above, a non-transitory computer readable storage medium can store a program including instructions. When the instructions are executed by a processor (120) of an electronic device (101) operating as a central device in a wireless environment and including a communication circuit (390) for BLE (Bluetooth low energy), the electronic device can cause the electronic device to generate a plurality of connected isochronous groups (CIGs) (210, 220, 230) for an external electronic device (201) operating as a peripheral device through the communication circuit (390). The plurality of CIGs (210, 220, 230) can be generated by different transmission parameters for transmitting packets for outputting audio to the external electronic device (201). The above instructions, when executed by the processor (120), may cause the electronic device (101) to transmit the packets for outputting the audio to the external electronic device (201) through the plurality of CIGs (210, 220, 230).
[0330] As described above, a non-transitory computer readable storage medium can store a program including instructions. The instructions, when executed by a processor (120) of an electronic device (101) operating as a central device in a wireless environment and including a communication circuit (390) for BLE (Bluetooth low energy), can cause the electronic device to generate a first CIG event (511) and a second CIG event (512) to be used for outputting audio using an external electronic device (201) operating as a peripheral device in the wireless environment. The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a first packet to the external electronic device (201) using the communication circuit (390) through a CIS event within the first CIG event (511) according to a first transmission parameter set for the first CIG event (511). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a second packet to the external electronic device (201) using the communication circuit (390) through a CIS event within the second CIG event (512) according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter.
[0331] As described above, a non-transitory computer readable storage medium can store a program including instructions. The instructions, when executed by a processor (120) of an electronic device (101) operating as a central device in a wireless environment and including a communication circuit (390) for BLE (Bluetooth low energy), can cause the electronic device to generate a CIG event (1210) to be used to output audio using an external electronic device (201) operating as a peripheral device in the wireless environment. The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a first packet to the external electronic device (201) via the communication circuit (390) through a first CIS event (1209) within the CIG event (1210) according to a first transmission parameter set for the first CIS event (1209). The instructions, when executed by the processor (120), may cause the electronic device (101) to transmit a second packet to the external electronic device (201) via the communication circuit (390) through a second CIS event (1204) within the CIG event (1210) according to a second transmission parameter set for the second CIS event (1204) and different from the first transmission parameter.
[0332] As described above, a non-transitory computer readable storage medium can store a program including instructions. The instructions, when executed by a processor (321) of an electronic device (201) operating as a peripheral device in a wireless environment and including a communication circuit (391) for BLE (Bluetooth low energy), can cause the electronic device to receive a first packet from an external electronic device (101) operating as a central device through a CIS event in a first CIG event (511) using the communication circuit (391) according to a first transmission parameter set for the first CIG event (511). The instructions, when executed by the processor (321), may cause the electronic device (201) to receive a second packet from the external electronic device (101) using the communication circuit (391) via a CIS event within the second CIG event (512) according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter. The instructions, when executed by the processor (321), may cause the electronic device (201) to output the audio obtained using the first packet and the second packet via the speaker (351).
[0333] Electronic devices according to the various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments disclosed in this document are not limited to the aforementioned devices.
[0334] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another component (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
[0335] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0336] Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more commands stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one command among the one or more commands stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one command called. The one or more commands may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
[0337] According to one embodiment, the method according to the various embodiments disclosed in the present document may be provided as included in a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disc read only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
[0338] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and placed in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Claims
1. In an electronic device (101), Communication circuit for BLE (Bluetooth low energy) (390); At least one processor (120) comprising a processing circuit, and A memory (130) storing instructions and including one or more storage media, wherein the instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Generate a first CIG (connected isochronous group) event (511) and a second CIG event (512) to be used to output audio using an external electronic device (201), Transmitting a first packet to the external electronic device (201) using the communication circuit (390) according to the first transmission parameter set for the first CIG event (511) through a CIS (connected isochronous stream) event within the first CIG event (511), Causing the external electronic device (201) to transmit a second packet using the communication circuit (390) according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter, through the CIS event in the second CIG event (512). Electronic devices.
2. In claim 1, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Through the CIS event in the first CIG event (511), the first packet including data essential for outputting the audio is transmitted to the external electronic device (201), Causing the external electronic device (201) to transmit the second packet containing data incidental to the output of the audio through the CIS event within the second CIG event (512). Electronic devices.
3. In claim 2, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Generate a signal indicating that the first packet is transmitted through the CIS event within the first CIG event (511) to another external electronic device (202) that is distinct from the external electronic device (201); Causing the external electronic device (201) and the other external electronic device (202) to transmit the first packet through the CIS event within the first CIG event (511). Electronic devices.
4. In claim 3, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Using the above communication circuit (390), a response to the first packet is caused to be received only from the external electronic device (201) among the external electronic device (201) and the other external electronic device (202). Electronic devices.
5. In claim 3, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: By means of the CIS event within the first CIG event (511), a response to the first packet is caused to be received from each of the external electronic device (201) and the other external electronic device (202) using the communication circuit (390). Electronic devices.
6. In claim 2, The second CIG event (512) includes a first CIS event for transmitting the second packet to the external electronic device (201) and a second CIS event for transmitting a third packet including other data incidental to the output of the audio to another external electronic device (202) distinct from the external electronic device (201). Electronic devices.
7. In claim 2, The bit rate of the first CIG event (511) is higher than the bit rate of the second CIG event (512). Electronic devices.
8. In any one of claims 1 to 7, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Based on the operation of the communication circuit (390) for transmission of other packets of other data during the time by the ISO (isochronous) interval for the second CIG event (512), causing the packet to be transmitted through the CIS event within the second CIG event (512) to be discarded during the time. Electronic devices.
9. In any one of claims 1 to 8, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: By encoding the above audio according to a specified coding technique, SDUs (service data units) are generated, Generate the first packet to be transmitted through the CIS event within the first CIG event (511) using the first type of SDU among the above SDUs, Causing the second packet to be transmitted through the CIS event within the second CIG event (512) by using the second type of SDU among the above SDUs. Electronic devices.
10. In any one of claims 1 to 9, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Causing the external electronic device (201) to transmit one message notifying the generation of the first CIG event (511) and the second CIG event (512) through the communication circuit (390). Electronic devices.
11. In any one of claims 1 to 10, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Causing the first CIG_Sync_Delay of the first transmission parameter and the second CIG_Sync_Delay of the second transmission parameter to be determined so that the first playback time of the first SDU (service data unit) included in the first packet corresponds to the playback time of the second SDU included in the second packet. Electronic devices.
12. In any one of claims 1 to 11, The first packet and the second packet include information related to the playback time of the audio. Electronic devices.
13. In an electronic device (101), Communication circuit for BLE (Bluetooth low energy) (390); At least one processor (120) comprising a processing circuit, and A memory (130) storing instructions and including one or more storage media, wherein the instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Generate a CIG event (1210) to be used to output audio using an external electronic device (201), Transmitting a first packet to the external electronic device (201) through the first CIS event (1209) within the above CIG event (1210) using the communication circuit (390) according to the first transmission parameter set for the first CIS event (1209), Causing the external electronic device (201) to transmit a second packet using the communication circuit (390) according to a second transmission parameter set for the second CIS event (1204) and different from the first transmission parameter, through the second CIS event (1204) within the above CIG event (1210). Electronic devices.
14. In claim 13, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101) to: Through the first CIS event (1209), the first packet including data essential for outputting the audio is transmitted to the external electronic device (201), Causing the external electronic device (201) to transmit the second packet containing data incidental to the output of the audio through the second CIS event (1204). Electronic devices.
15. In the operating method of an electronic device (101), An operation of generating a first CIG (connected isochronous group) event (511) and a second CIG event (512) to be used to output audio using an external electronic device (201); An operation of transmitting a first packet to the external electronic device (201) using the communication circuit (390) according to a first transmission parameter set for the first CIG event (511) through a CIS (connected isochronous stream) event within the first CIG event (511), and An operation of transmitting a second packet to the external electronic device (201) through the communication circuit (390) through a CIS event within the second CIG event (512) and according to a second transmission parameter set for the second CIG event (512) and different from the first transmission parameter. method.
Citation Information
Patent Citations
Method and electronic apparatus for transmitting audio data to a plurality of external devices
KR1020180108310A
Connected isochronous stream swapping
US20210376884A1
Point-to-Multipoint Data Transmission Method and Electronic Device
US20220039041A1
Synchronization of bluetooth low energy isochronous transmissions
US20220124471A1
Method and non-transitory computer-readable storage medium and apparatus for transmitting wireless multi-channel data
US20220240018A1