Audio data transmission and reception method and apparatus

By discovering neighbor-aware network services and using fine-grained time measurement, the synchronization problem in audio data transmission is solved, achieving robust audio synchronization and high-quality audio transmission during network topology changes, adapting to user location and spatial characteristics.

CN122228705APending Publication Date: 2026-06-16SAMSUNG ELECTRONICS CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SAMSUNG ELECTRONICS CO LTD
Filing Date
2024-10-25
Publication Date
2026-06-16

AI Technical Summary

Technical Problem

Existing audio data transmission and reception technologies struggle to maintain audio synchronization when network topology changes, and lack support for adaptive synchronization and high-quality audio.

Method used

By performing neighbor-aware network service discovery in the discovery window, NAN data path sessions are established, and radio resources in different frequency bands are scheduled to achieve audio data synchronization and transmission. Audio signal playback time alignment is performed in conjunction with a fine time measurement process.

Benefits of technology

It achieves robust audio synchronization and high-quality audio data transmission during network topology changes, and can adaptively synchronize to reflect user location and spatial characteristics.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122228705A_ABST
    Figure CN122228705A_ABST
Patent Text Reader

Abstract

Various embodiments of the present disclosure relate to an audio data transmitting and receiving method and apparatus. According to one embodiment, an electronic device includes a communication circuit, a processor, and a memory for storing instructions. The instructions stored in the memory, when executed by the processor, cause the electronic device to perform at least the following operations: discover a plurality of external electronic devices included in a neighbor awareness network (NAN) cluster by performing NAN service discovery in a discovery window (DW); establish a NAN data path (NDP) session with each of the plurality of external electronic devices in a first frequency band; periodically allocate the DW in a second frequency band and schedule radio resources for an audio data transmission interval allocated in the first frequency band for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions; perform NAN synchronization and NAN service discovery in the DW; and transmit the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission interval.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Various embodiments of this disclosure relate to a method and apparatus for transmitting and receiving audio data. Background Technology

[0002] With technological advancements, electronic devices capable of wireless communication have emerged, such as portable communication devices (e.g., smartphones) and portable multimedia devices, and existing electronic devices (e.g., TVs, speakers, and headphones) have also evolved to perform wireless communication. Therefore, electronic devices have become capable of providing new forms of services through the use of new technologies.

[0003] Recently, the human-centric internet has evolved into a network of things, namely the Internet of Things (IoT). Furthermore, the Internet of Everything (IoE), which combines cloud computing, big data processing, and other technologies with IoT, has emerged. Therefore, technologies for enabling direct communication between devices have been researched.

[0004] This direct communication between devices can be utilized in various fields. More specifically, direct communication between devices can be used to send and receive audio data between audiovisual (AV) devices. One-to-one communication can be performed between one device and another, one-to-many communication can be performed between one device and multiple devices, and many-to-many communication can be performed between multiple devices.

[0005] In this regard, a technology for transmitting and receiving audio data is needed that is robust to changes in network topology while maintaining audio synchronization between transmitting and receiving devices. Additionally, a technology for transmitting and receiving audio data is needed that provides adaptive synchronization that reflects user location and spatial characteristics, as well as high-quality audio. Summary of the Invention

[0006] Technical issues

[0007] Various embodiments of this disclosure provide an audio data transmission / reception device and method.

[0008] The technical problems to be solved in this disclosure are not limited to those described above, and other technical problems not mentioned can be clearly understood by those skilled in the art from the following description.

[0009] Technical solution

[0010] An electronic device according to an embodiment of the present disclosure may include: a communication circuit; a processor; and a memory storing instructions, wherein the instructions stored in the memory, when executed by the processor, cause the electronic device to perform at least the following operations: discovering multiple external electronic devices included in a NAN cluster by performing Neighbor Awareness Networking (NAN) service discovery in a discovery window (DW); establishing respective NAN data path (NDP) sessions with the multiple external electronic devices in a first frequency band; scheduling radio resources to periodically allocate the DW in a second frequency band and allocate audio data transmission periods in the first frequency band for transmitting audio data to the multiple external electronic devices through the respective NDP sessions; performing NAN synchronization and NAN service discovery in the DW; and transmitting audio data to the multiple external electronic devices through the respective NDP sessions during the audio data transmission periods.

[0011] A method for using an electronic device according to embodiments of the present disclosure may include: discovering a plurality of external electronic devices included in a NAN cluster by performing Neighbor-Aware Network (NAN) service discovery in a discovery window (DW); establishing respective NAN Data Path (NDP) sessions with the plurality of external electronic devices in a first frequency band; scheduling radio resources to periodically allocate the DW in a second frequency band and allocating audio data transmission periods in the first frequency band for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions; performing NAN synchronization and NAN service discovery in the DW; and transmitting audio data to the plurality of external electronic devices through the respective NDP sessions during the audio data transmission periods.

[0012] An external electronic device according to an embodiment of the present disclosure may include: a communication circuit; a processor; and a memory storing instructions, wherein the instructions stored in the memory, when executed by the processor, cause the external electronic device to perform at least the following operations: discover an electronic device included in a NAN cluster by performing Neighbor Aware Network (NAN) service discovery in a discovery window (DW); establish a NAN Data Path (NDP) session with the electronic device; obtain a timing synchronization function (TSF) value by receiving a synchronization signal from the electronic device in the DW; obtain an FTM value by performing a fine time measurement (FTM) procedure with the electronic device; and perform playback timing alignment of an audio signal based on the TSF value and the FTM value.

[0013] A method for using an external electronic device according to embodiments of the present disclosure may include: discovering an electronic device included in a NAN cluster by performing Neighbor-Aware Network (NAN) service discovery in a discovery window (DW); establishing a NAN Data Path (NDP) session with the electronic device; obtaining a Timing Synchronization Function (TSF) value by receiving a synchronization signal from the electronic device in the DW; obtaining an FTM value by performing a Fine Time Measurement (FTM) procedure with the electronic device; and performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0014] Beneficial effects

[0015] According to embodiments of this disclosure, a method and apparatus for sending and receiving audio data that are robust to changes in network topology while maintaining audio synchronization are provided.

[0016] According to embodiments of this disclosure, a method and apparatus for transmitting and receiving audio data are provided, capable of providing high-quality audio and adaptive synchronization that reflects the user's location and spatial characteristics.

[0017] The beneficial effects that can be obtained from this disclosure are not limited to the above-described beneficial effects, and other beneficial effects not mentioned herein will be clearly understood by those skilled in the art from the following description. Attached Figure Description

[0018] Figure 1 This is a block diagram of an electronic device in a network environment according to an embodiment.

[0019] Figure 2 A Neighbor-Aware Network (NAN) cluster according to an embodiment is shown.

[0020] Figure 3 This is a block diagram of an electronic device according to an embodiment.

[0021] Figure 4 The network topology of the NAN cluster according to an embodiment is shown.

[0022] Figure 5 This is a flowchart illustrating an audio data transmission method according to an embodiment.

[0023] Figure 6 A scheduling method according to an embodiment is shown.

[0024] Figure 7 A scheduling method according to an embodiment is shown.

[0025] Figure 8 A scheduling method according to an embodiment is shown.

[0026] Figure 9 A scheduling method according to an embodiment is shown.

[0027] Figure 10 A scheduling method according to an embodiment is shown.

[0028] Figure 11 A scheduling method according to an embodiment is shown.

[0029] Figure 12 Subslot scheduling according to an embodiment is illustrated.

[0030] Figure 13 Subslot scheduling according to an embodiment is illustrated.

[0031] Figure 14 Subslot scheduling according to an embodiment is illustrated.

[0032] Figure 15 The illustration shows how priority is changed when radio resources allocated to different NDP sessions overlap, according to an embodiment.

[0033] Figure 16 The access categories according to an embodiment are shown.

[0034] Figure 17 An interface of an electronic device according to an embodiment is shown.

[0035] Figure 18 Commands according to an embodiment are shown.

[0036] Figure 19 Commands according to an embodiment are shown.

[0037] Figure 20 Audio alignment in a frame according to an embodiment is shown.

[0038] Figure 21 Audio alignment in an audio player according to an embodiment is shown.

[0039] Figure 22 This is a block diagram of an external electronic device according to an embodiment.

[0040] Preferred Implementation

[0041] An electronic device according to an embodiment of the present disclosure may include communication circuitry, a processor, and a memory storing instructions, wherein the instructions stored in the memory, when executed by the processor, cause the electronic device to perform at least the following operations: discovering multiple external electronic devices included in a NAN cluster by performing Neighbor Aware Network (NAN) service discovery in a discovery window (DW); establishing respective NAN Data Path (NDP) sessions with the multiple external electronic devices in a first frequency band; scheduling radio resources to periodically allocate the DW in a second frequency band; allocating audio data transmission periods in the first frequency band for transmitting audio data to the multiple external electronic devices through the respective NDP sessions; performing NAN synchronization and NAN service discovery in the DW; and transmitting audio data to the multiple external electronic devices through the respective NDP sessions during the audio data transmission periods.

[0042] In one embodiment, instructions stored in memory, when executed by a processor, can cause the electronic device to: schedule radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of the audio data, such that the transmission interval of the audio data is the same in each NDP session.

[0043] In one embodiment, instructions stored in memory, when executed by a processor, can cause the electronic device to perform: scheduling radio resources such that audio data transmission periods overlap at least some of the time in each NDP session.

[0044] In an embodiment, instructions stored in memory, when executed by a processor, can cause an electronic device to: schedule radio resources to communicate with external electronic devices not included in the NAN cluster or provide services unrelated to NAN services during periods when no audio data is being transmitted and which are not DW periods, by using at least one of a first frequency band and a second frequency band.

[0045] In one embodiment, instructions stored in memory, when executed by a processor, can cause the electronic device to perform the following: based on the access category, change the priority of at least some of the NDP sessions in the overlapping time period.

[0046] In an embodiment, the first frequency band may be a 5 GHz band or a 6 GHz band, and the second frequency band may be a 2.4 GHz band.

[0047] In an embodiment, instructions stored in memory, when executed by a processor, can cause the electronic device to perform: scheduling radio resources to allocate an additional DW in a third frequency band, performing NAN synchronization and NAN service discovery in the additional DW by switching communication circuitry from a first frequency band to a third frequency band during the period of allocating the additional DW, and transmitting audio data to multiple external electronic devices through various NDP sessions during the audio data transmission period by switching communication circuitry from a third frequency band to a first frequency band during the period after the additional DW.

[0048] In an embodiment, instructions stored in memory, when executed by a processor, can cause the electronic device to: establish various NDP sessions with multiple external electronic devices in a first frequency band and a second frequency band, and schedule radio resources to periodically allocate DW in each of the second and third frequency bands, and allocate audio data transmission periods in the first and second frequency bands for transmitting audio data to multiple external electronic devices through the various NDP sessions.

[0049] In an embodiment, the electronic device may perform: NAN synchronization and NAN service discovery in the DW by switching the communication circuit from the first frequency band to the third frequency band during the DW allocation period, and transmit audio data to multiple external electronic devices through various NDP sessions during the audio data transmission period by switching the communication circuit from the third frequency band to the first frequency band after the DW.

[0050] In an embodiment, scheduling can be performed on a time slot basis, which may include multiple sub-time slots, and instructions stored in memory can cause the electronic device to perform the following when executed by a processor: when there is a period of unscheduled audio data transmission in a time slot allocated to a first external electronic device, the idle sub-time slots that do not transmit audio data to the first external electronic device are allocated to a second external electronic device by performing scheduling on a sub-time slot basis.

[0051] In one embodiment, instructions stored in memory can cause an electronic device to perform the following when executed by a processor: when the transmission of audio data in a time slot allocated to a first external electronic device fails, the audio data is retransmitted in an idle sub-time slot by performing scheduling on a sub-time slot basis.

[0052] A method for using an electronic device according to an embodiment of this disclosure may include: discovering multiple external electronic devices included in a NAN cluster by performing Neighbor-Aware Network (NAN) service discovery in a discovery window (DW); establishing respective NAN Data Path (NDP) sessions with the multiple external electronic devices in a first frequency band; scheduling radio resources to periodically allocate the DW in a second frequency band and allocate audio data transmission periods in the first frequency band for transmitting audio data to the multiple external electronic devices through the respective NDP sessions; performing NAN synchronization and NAN service discovery in the DW; and transmitting audio data to the multiple external electronic devices through the respective NDP sessions during the audio data transmission periods.

[0053] In an embodiment, the scheduling of radio resources may include scheduling radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of the audio data, such that the transmission interval of the audio data is the same in each NDP session.

[0054] In one embodiment, scheduling of radio resources may include scheduling radio resources such that audio data transmission periods overlap at least some of the time in each NDP session.

[0055] In an embodiment, the scheduling of radio resources may include: scheduling radio resources to communicate with external electronic devices not included in the NAN cluster or to provide services unrelated to NAN services during periods when no audio data is being transmitted and which are not DW periods, by using at least one of a first frequency band and a second frequency band.

[0056] In an embodiment, the method may further include: changing the priority of at least some NDP sessions among the various NDP sessions in the overlapping time period based on the access category.

[0057] In an embodiment, the first frequency band may be a 5 GHz band or a 6 GHz band, and the second frequency band may be a 2.4 GHz band.

[0058] In an embodiment, the scheduling of radio resources may include: scheduling radio resources to allocate an additional DW in a third frequency band, and the method may further include: performing NAN synchronization and NAN service discovery in the additional DW by switching communication circuits from a first frequency band to a third frequency band during the period of allocating the additional DW, and transmitting audio data to multiple external electronic devices through various NDP sessions during the audio data transmission period by switching communication circuits from the third frequency band to the first frequency band during the period after the additional DW.

[0059] In one embodiment, the establishment of an NDP session may include: establishing various NDP sessions with multiple external electronic devices in a first frequency band and a second frequency band; the scheduling of radio resources may include: scheduling radio resources to periodically allocate DWs in each of the second and third frequency bands, and allocating audio data transmission periods in the first and second frequency bands for transmitting audio data to multiple external electronic devices through the various NDP sessions; the execution of NAN synchronization and NAN service discovery may include: performing NAN synchronization and NAN service discovery in the DW by switching the communication circuit from the first frequency band to the third frequency band during the allocated DW period; and the transmission of audio data may include: transmitting audio data to multiple external electronic devices through the various NDP sessions during the audio data transmission period by switching the communication circuit from the third frequency band to the first frequency band after the DW period.

[0060] In an embodiment, scheduling can be performed on a time slot basis, which may include multiple sub-time slots, and the method may further include: when there is a period of unscheduled audio data transmission in a time slot allocated to a first external electronic device, scheduling is performed on a sub-time slot basis to allocate an idle sub-time slot that does not transmit audio data from the first external electronic device to a second external electronic device.

[0061] In an embodiment, the method may further include: when the transmission of audio data in a time slot allocated to a first external electronic device fails, retransmitting the audio data in an idle sub-time slot by performing scheduling on a sub-time slot basis.

[0062] An external electronic device according to an embodiment of the present disclosure may include: a communication circuit; a processor; and a memory storing instructions, wherein the instructions stored in the memory, when executed by the processor, cause the external electronic device to perform at least the following operations: discover an electronic device included in a NAN cluster by performing Neighbor Aware Network (NAN) service discovery in a discovery window (DW); establish a NAN Data Path (NDP) session with the electronic device; obtain a Timing Synchronization Function (TSF) value by receiving a synchronization signal from the electronic device in the DW; obtain an FTM value by performing a Fine Time Measurement (FTM) procedure with the electronic device; and perform playback time alignment of an audio signal based on the TSF value and the FTM value.

[0063] In an embodiment, the instructions stored in the memory, when executed by the processor, can enable an external electronic device to execute through the framework of the external electronic device: obtain the local time, receive TSF and FTM values ​​directly from the Wi-Fi driver or Wi-Fi firmware via a first interface, obtain a new ESCR value based on the local time and TSF value, obtain the average latency based on the FTM value, obtain the present time stamp (PTS) value based on the new ESCR value and the average latency, and determine the playback time of the audio signal based on the PTS.

[0064] In an embodiment, instructions stored in memory, when executed by a processor, can cause an external electronic device to execute via the frame of the external electronic device: obtain local time, receive TSF and FTM values ​​directly from a Wi-Fi driver or Wi-Fi firmware via a first interface, calibrate the current clock reference, and send the TSF, FTM, and updated current time to a player, and have the player of the external electronic device receive the TSF, FTM, and updated current time from the frame, obtain a new ESCR value based on the updated current time and TSF value, obtain the average delay based on the FTM value, obtain the presentation timestamp (PTS) value based on the new ESCR value and the average delay, and determine the playback time of the audio signal based on the PTS.

[0065] A method for an external electronic device according to embodiments of the present disclosure may include: discovering an electronic device included in a NAN cluster by performing Neighbor-Aware Network (NAN) service discovery in a discovery window (DW); establishing a NAN Data Path (NDP) session with the electronic device; obtaining a Timing Synchronization Function (TSF) value by receiving a synchronization signal from the electronic device in the DW; obtaining an FTM value by performing a Fine Time Measurement (FTM) procedure with the electronic device; and performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0066] In an embodiment, the execution of playback time alignment of the audio signal may include: obtaining a local time through the framework of an external electronic device, receiving TSF and FTM values ​​directly from a Wi-Fi driver or Wi-Fi firmware through a first interface, obtaining a new ESCR value based on the local time and TSF value, obtaining an average delay based on the FTM value, obtaining a presentation timestamp (PTS) value based on the new ESCR value and the average delay, and determining the playback time of the audio signal based on the PTS.

[0067] In an embodiment, the execution of playback time alignment of the audio signal may include: obtaining a local time via the frame of an external electronic device, receiving TSF and FTM values ​​directly from a Wi-Fi driver or Wi-Fi firmware via a first interface, calibrating a current clock reference, and sending the TSF value, FTM value, and updated current time to a player; and receiving the TSF value, FTM value, and updated current time from the frame by the player of the external electronic device, obtaining a new ESCR value based on the updated current time and TSF value, obtaining an average delay based on the FTM value, obtaining a presentation timestamp (PTS) value based on the new ESCR value and average delay, and determining the playback time of the audio signal based on the PTS. Detailed Implementation

[0068] In the following, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

[0069] In describing the embodiments, descriptions of technical matters well-known in the art to which this disclosure pertains and not directly related to this disclosure will be omitted. This is to avoid unnecessary descriptions that obscure the spirit of this disclosure and to more clearly convey its meaning.

[0070] For the same reason, some components in the accompanying drawings are exaggerated, omitted, or shown schematically. Furthermore, the dimensions of each component do not perfectly reflect its actual size. In all the drawings, the same or corresponding components are labeled with the same reference numerals.

[0071] Figure 1 This is a block diagram of an electronic device in a network environment according to an embodiment.

[0072] Figure 1 This is a block diagram illustrating an electronic device 101 in a network environment 100 according to an embodiment.

[0073] Reference Figure 1In network environment 100, electronic device 101 can communicate with electronic device 102 via a first network 198 (e.g., a short-range wireless communication network), or with at least one of electronic device 104 or server 108 via a second network 199 (e.g., a long-range wireless communication network). According to an embodiment, electronic device 101 can communicate with electronic device 104 via server 108. According to an embodiment, electronic device 101 may include a processor 120, memory 130, input module 150, sound output module 155, display module 160, audio module 170, sensor module 176, interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196, or antenna module 197. In some embodiments, at least one of the components (e.g., connection terminal 178) may be omitted from electronic device 101, or one or more other components may be added to electronic device 101. In some embodiments, some of the components (e.g., sensor module 176, camera module 180, or antenna module 197) may be integrated into a single component (e.g., display module 160).

[0074] Processor 120 can execute, for example, software (e.g., program 140) to control at least one other component (e.g., hardware or software component) of electronic device 101 coupled to processor 120, and can perform various data processing or calculations. According to embodiments, as at least part of data processing or calculation, processor 120 can store commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132, process the commands or data stored in volatile memory 132, and store the resulting data in non-volatile memory 134. According to embodiments, processor 120 may include a main processor 121 (e.g., a central processing unit (CPU) or application processor (AP)) or an auxiliary processor 123 (e.g., a graphics processing unit, neural processing unit (NPU), image signal processor, sensor central processor, or communication processor) that is operationally independent of or combined with the main processor 121. For example, when electronic device 101 includes a main processor 121 and an auxiliary processor 123, the auxiliary processor 123 may use less power than the main processor 121, or it may be configured to be dedicated to a given function. The auxiliary processor 123 may be implemented independently of the main processor 121, or it may be implemented as part of the main processor 121.

[0075] When the main processor 121 is inactive (e.g., in a sleep state), the auxiliary processor 123 may, in place of the main processor 121, control at least some of the functions or states associated with at least one component of the electronic device 101 (e.g., display module 160, sensor module 176, or communication module 190). Alternatively, when the main processor 121 is active (e.g., running an application), the auxiliary processor 123 may work with the main processor 121 to control at least some of the functions or states associated with at least one component of the electronic device 101 (e.g., display module 160, sensor module 176, or communication module 190). According to embodiments, the auxiliary processor 123 (e.g., an image signal processor or a communication processor) may be implemented as part of another functionally related element (e.g., camera module 180 or communication module 190). According to embodiments, the auxiliary processor 123 (e.g., a neural processing unit) may include hardware structures designated for processing artificial intelligence models. Artificial intelligence models can be created through machine learning. For example, this learning can be performed by the electronic device 101 that executes the artificial intelligence model itself, or it can be performed via a separate server (e.g., server 108). The learning algorithm can include, but is not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. The artificial intelligence model can include multiple layers of artificial neural networks. The artificial neural network can be one or a combination of two or more of the following: deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted Boltzmann machine (RBM), deep belief network (DBN), bidirectional recurrent deep neural network (BRDNN), and deep Q-network, but is not limited to these. The artificial intelligence model may additionally or alternatively include software and hardware structures.

[0076] Memory 130 may store various data used by at least one element of electronic device 101 (e.g., processor 120 or sensor module 176). The data may include, for example, software (e.g., program 140) and input or output data regarding commands associated with it. Memory 130 may include volatile memory 132 or non-volatile memory 134.

[0077] Program 140 can be stored as software in memory 130 and may include, for example, an operating system (OS) 142, middleware 144, or application 146.

[0078] Input module 150 can receive commands or data from outside electronic device 101 (e.g., a user) to be used by another component of electronic device 101 (e.g., processor 120). Input module 150 may include, for example, a microphone, mouse, keyboard, keys (e.g., buttons), or digital pen (e.g., stylus).

[0079] The audio output module 155 can output audio signals to the outside of the electronic device 101. The audio output module 155 may include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as playing back multimedia or recording. The receiver can be used to receive incoming calls. According to embodiments, the receiver may be implemented separately from the speaker or as part of the speaker.

[0080] Display module 160 can visually provide information to the outside of electronic device 101 (e.g., to a user). Display module 160 may include, for example, a display, a holographic device, a projector, and control circuitry for controlling the corresponding device. According to an embodiment, display module 160 may include a touch sensor configured to detect a touch or a pressure sensor configured to measure the intensity of the force generated by the touch.

[0081] The audio module 170 can convert sound into electrical signals and vice versa. According to an embodiment, the audio module 170 can obtain sound via the input module 150, or output sound via the sound output module 155 or an external electronic device (e.g., electronic device 101 (e.g., a speaker or headphones)) that is directly or wirelessly connected to the electronic device 102.

[0082] Sensor module 176 can detect the operating state of electronic device 101 (e.g., power or temperature) or the environmental state outside electronic device 101 (e.g., user state), and then generate an electrical signal or data value corresponding to the detected state. According to embodiments, sensor module 176 may include, for example, a gesture sensor, gyroscope sensor, atmospheric pressure sensor, magnetic sensor, accelerometer, grip sensor, proximity sensor, color sensor, infrared (IR) sensor, biometric sensor, temperature sensor, humidity sensor, or illuminance sensor.

[0083] Interface 177 may support one or more specific protocols used to enable direct or wireless connection between electronic device 101 and external electronic device (e.g., electronic device 102). According to embodiments, interface 177 may include, for example, a high-definition multimedia interface (HDMI), a universal serial bus (USB) interface, a secure digital (SD) card interface, or an audio interface.

[0084] Connection terminal 178 may include a connector via which electronic device 101 can be physically connected to an external electronic device (e.g., electronic device 102). According to embodiments, 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).

[0085] The haptic module 179 can convert electrical signals into mechanical stimuli (e.g., vibration or motion) or electrical stimuli that can be recognized by a user through his touch or kinesthesia. According to embodiments, the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulator.

[0086] Camera module 180 can capture still or moving images. According to an embodiment, camera module 180 may include one or more lenses, an image sensor, an image signal processor, or a flash.

[0087] The power management module 188 can manage the power supply to the electronic device 101. According to an embodiment, the power management module 188 can be implemented as at least a part of, for example, a power management integrated circuit (PMIC).

[0088] Battery 189 can power at least one component of electronic device 101. According to embodiments, battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0089] Communication module 190 can support the establishment of direct (e.g., wired) or wireless communication channels between electronic device 101 and external electronic devices (e.g., electronic device 102, electronic device 104, or server 108), and perform communication via the established communication channels. Communication module 190 may include one or more communication processors that can operate independently of processor 120 (e.g., application processor) and support direct (e.g., wired) or wireless communication. According to embodiments, communication module 190 may include wireless communication module 192 (e.g., cellular communication module, short-range communication module, or global navigation satellite system (GNSS) communication module) or wired communication module 194 (e.g., local area network (LAN) communication module or power line communication module). One of these communication modules can communicate with an external electronic device 104 via a first network 198 (e.g., a short-range communication network such as Bluetooth™, Wi-Fi Direct, or Infrared Data Association (IrDA)) or a second network 199 (e.g., a long-range communication network such as a traditional cellular network, 5G network, next-generation communication network, the Internet, or a computer network (e.g., a LAN or a wide area network (WAN))). These different types of communication modules can be integrated into a single element (e.g., a single chip), or these different types of communication modules can be implemented as multiple separate elements (e.g., multiple chips). The wireless communication module 192 can identify or verify the electronic device 101 within the communication network (such as the first network 198 or the second network 199) by using subscriber information (e.g., an International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196.

[0090] The wireless communication module 192 can support 5G networks and next-generation communication technologies beyond 4G networks, such as new radio (NR) access technology. NR access technology can support high-speed transmission of large amounts of data (enhanced mobile broadband (eMBB)), minimization of terminal power consumption, and connectivity of multiple terminals (massive machine-type communications (mMTC)) or ultra-reliable and low-latency communications (URLLC). The wireless communication module 192 can support high-frequency bands (e.g., millimeter-wave bands) to achieve, for example, high data transmission rates. The wireless communication module 192 can support various technologies used to ensure performance in high-frequency bands, such as beamforming, massive multiple-input multiple-output (MIMO), full-dimensional MIMO (FD-MIMO), array antennas, analog beamforming, or massive MIMO antennas. The wireless communication module 192 can support various requirements specified in electronic device 101, external electronic device (e.g., electronic device 104), or network system (e.g., second network 199). According to embodiments, the wireless communication module 192 can support peak data rates (e.g., 20 Gbps or higher) for implementing eMBB, loss coverage (e.g., 164 dB or lower) for implementing mMTC, or U-plane delay (e.g., 0.5 ms or less for each of the downlink (DL) and uplink (UL)) for implementing URLLC.

[0091] Antenna module 197 can transmit or receive signals or power to or from an external source (e.g., an external electronic device). According to embodiments, antenna module 197 may include an antenna comprising a radiating element comprising a conductive material or conductive pattern formed on a substrate (e.g., a PCB). According to embodiments, antenna module 197 may include multiple antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication scheme used in a communication network (such as a first network 198 or a second network 199) can be selected from the multiple antennas, for example by communication module 190. Signals or power can be transmitted or received between communication module 190 and external electronic devices via the selected at least one antenna. According to some embodiments, another component besides the radiating element (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as part of antenna module 197. According to embodiments, antenna module 197 may be formed as a millimeter-wave antenna module. According to an embodiment, the millimeter-wave antenna module may include: a printed circuit board; an RFIC disposed on or adjacent to a first surface (e.g., the lower surface) of the printed circuit board and capable of supporting a specified high-frequency band (e.g., the millimeter-wave band); and a plurality of antennas (e.g., an array antenna) disposed on or adjacent to a second surface (e.g., the upper surface or the side surface) of the printed circuit board and capable of transmitting or receiving signals in a specified high-frequency band.

[0092] At least some of the aforementioned components may be coupled to each other and communicate signals (e.g., commands or data) between them via a peripheral communication scheme (e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)).

[0093] According to an embodiment, commands or data can be sent or received between electronic device 101 and external electronic device 104 via server 108 coupled to a second network 199. Each of electronic devices 102 or 104 can be a device of the same or different type as electronic device 101. According to an embodiment, all or some operations to be performed at electronic device 101 can be performed at one or more of external electronic devices 102, 104, or 108. For example, if electronic device 101 is required to automatically perform a function or service, or in response to a request from a user or another device, electronic device 101 can perform the function or service in lieu of performance, or request one or more external electronic devices to perform at least a portion of the function or service in addition to performing the function or service. Upon receiving a request, one or more external electronic devices can perform at least a portion of the requested function or service, or perform additional functions or services related to the request, and transmit the result of the performance to electronic device 101. Electronic device 101 can provide the result, with or without further processing, as at least part of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technologies can be used, for example. Electronic device 101 can provide ultra-low latency services by using, for example, distributed computing or mobile edge computing. In another embodiment, external electronic device 104 may include Internet of Things (IoT) devices. Server 108 may be an intelligent server using machine learning and / or neural networks. According to embodiments, external electronic device 104 or server 108 may be included in a second network 199. Electronic device 101 can be applied to intelligent services (e.g., smart homes, smart cities, smart cars, or healthcare) based on 5G communication technology or IoT-related technologies.

[0094] The electronic devices described in the various embodiments herein can be one of a variety of types of electronic devices. 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. According to embodiments of this disclosure, the electronic devices are not limited to those described above.

[0095] It should be understood that the various embodiments of this disclosure and the terminology used therein are not intended to limit the technical features set forth herein to the specific embodiments, but rather to include various changes, equivalents, or substitutions to the corresponding embodiments. Regarding 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 items unless the context clearly indicates otherwise. As used herein, each of the phrases such as “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” may include all possible combinations of the items listed together with their corresponding phrase. Terms such as “first,” “second,” “first,” and “second” may be used to simply distinguish one element from another and do not limit the element in other respects (e.g., importance or order). When a component (e.g., the first component) is referred to as being “coupled” or “connected” to another component (e.g., the second component), whether the terms “functionally” or “communically” are used or not, it means that the component can be directly (e.g., wired) connected to the other component, wirelessly connected to the other component, or connected to the other component via a third component.

[0096] As used in conjunction with various embodiments of this disclosure, the term "module" may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with other terms (e.g., "logic," "logic block," "component," or "circuit"). A module may be a component or the smallest unit or part of a component that performs one or more functions as a whole. For example, according to an embodiment, a module may be implemented as an application-specific integrated circuit (ASIC).

[0097] The various embodiments described herein can be implemented as software (e.g., program 140) including one or more instructions readable by a machine (e.g., electronic device 101) stored in a storage medium (e.g., internal memory 136 or external memory 138). For example, a processor (e.g., processor 120) of the machine (e.g., electronic device 101) can invoke at least one of the one or more stored instructions from the storage medium and execute it. This enables the device to be operated in response to at least one invoked instruction to perform at least one function. The one or more instructions 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, the term "non-transitory" simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and this term is not intended to distinguish between cases where data is permanently stored on the storage medium and cases where data is temporarily stored.

[0098] According to embodiments, methods according to various embodiments of this disclosure may be included and provided 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 through an app store (e.g., the Play Store). TM The computer program product may be distributed directly or directly between two user devices (e.g., smartphones), or it may be distributed online (e.g., downloaded or uploaded). If distributed online, at least a portion of the computer program product may be temporarily generated or at least temporarily stored in a machine-readable storage medium, such as the memory of a manufacturer's server, an app store's server, or a relay server.

[0099] According to various embodiments, each of the above-described components (e.g., modules or programs) may include a single entity or multiple entities, and some of the multiple entities may be placed separately from other components. According to various embodiments, one or more of the above-described components or operations may be omitted, or one or more other components or operations may be added. Alternatively or additionally, multiple components (e.g., modules or programs) may be integrated into a single component. In this case, the integrated element may perform one or more functions of each of the multiple elements in the same or similar manner as a corresponding element of the multiple elements performed before integration. According to various embodiments, operations performed by modules, programs, or other components may be performed sequentially, in parallel, repeatedly, or heuristically; one or more operations may be performed in a different order or omitted, or one or more other operations may be added.

[0100] Figure 2This is a diagram illustrating a Neighbor-Aware Network (NAN) cluster according to an embodiment.

[0101] Neighbor-aware networks (NANs) based on Wi-Fi technology can support communication between electronic devices that share common NAN parameters, such as the time interval between consecutive discovery windows (DWs), beacon intervals, and NAN discovery channels. Electronic devices sharing common NAN parameters can be referred to as NAN devices. NAN devices can be devices that implement the NAN protocol. An NAN cluster can refer to a collection of NAN devices that share a set of NAN parameters and are synchronized to the same DW scheduler. An NAN cluster can be referred to as a NAN cluster according to the NAN specification (or standard) or the Wi-Fi awareness specification (or standard).

[0102] Reference Figure 2 The diagram illustrates a NAN cluster 200 according to an embodiment. The NAN cluster 200 may include multiple electronic devices (e.g., Figure 1 Electronic devices 101), 210, 220, 230, and 240. Each of the electronic devices 210, 220, 230, and 240 in the NAN cluster 200 can be a NAN device.

[0103] In this embodiment, each of the electronic devices 210, 220, 230, and 240 can send beacons (or discover beacons or beacon frames) and receive beacons (or discover beacons or beacon frames) from other electronic devices 210, 220, 230, and 240, thereby forming a single NAN cluster 200 operating according to a synchronization clock, and the electronic devices 210, 220, 230, and 240 in the NAN cluster 200 can perform NAN cluster synchronization. That is, the clocks of the individual electronic devices 210, 220, 230, and 240 in the NAN cluster 200 can be synchronized.

[0104] A discovery beacon can refer to a signal sent to enable an electronic device not yet joined to discover the NPN cluster 200. For example, a discovery beacon can be a signal indicating the presence of the NPN cluster 200, and an external electronic device not yet joined to the NPN cluster 200 can perform a passive scan to receive the discovery beacon. The discovery beacon can include information required for synchronization with the NPN cluster 200. That is, the discovery beacon can include information elements (IEs) related to the NPN cluster 200. For example, the discovery beacon can include at least one of the following: a frame control (FC) field indicating the function of the signal (e.g., the beacon); a broadcast address; a media access control (MAC) address of the transmitting electronic device; a cluster identifier (ID); a sequence control field; a timestamp of the beacon frame; a beacon interval indicating the interval at which the discovery beacon was sent; or information about the capabilities of the electronic device sending the discovery beacon. An external electronic device can discover the NPN cluster 200 based on this information and can join the NPN cluster 200.

[0105] In an embodiment, an electronic device 210 (e.g., electronic device 101) in the NAN cluster 200 can activate a Data Warehouse (DW) at a scheduled time via a synchronized clock within the NAN cluster 200, and can transmit synchronization beacons (or beacon frames) and service discovery frames (SDFs) within the DW. The DW can be divided into time units (TUs) in milliseconds (ms). The DW used for transmitting and receiving synchronization beacons and SDFs can occupy 16 time units (TUs) and can have a cycle (or interval) repeating every 512 time units (512 TUs). Other electronic devices 220, 230, and 240 located around electronic device 210 can receive synchronization beacons and / or SDFs transmitted from electronic device 210, synchronize to the clock of electronic device 210, and obtain the NAN parameters of the NAN cluster 200.

[0106] Synchronization beacons can be periodically sent and received at each DW to continuously maintain time and channel synchronization of electronic devices 210, 220, 230, and 240 in cluster 200. Synchronization beacons can be sent by synchronization devices among the electronic devices in the cluster. For example, synchronization devices can include anchor master devices, master devices, or non-master synchronization devices as defined in the NAN standard. Synchronization beacons can include information required for electronic devices in the cluster to synchronize with each other. For example, a synchronization beacon can include at least one of the following: an FC field indicating the function of a signal (e.g., a beacon), a broadcast address, the MAC address of the transmitting electronic device, a cluster ID, a sequence control field, a timestamp of the beacon frame, a beacon interval indicating the interval between the start points of the DWs, or information about the capabilities of the transmitting electronic device. Furthermore, synchronization beacons can include at least one information element associated with NPN cluster 200. For example, information associated with NPN cluster 200 can include content for services provided through NPN cluster 200.

[0107] SDFs can be sent and received in the DW as needed to provide services to discovered electronic devices 210, 220, 230, and 240. An SDF can refer to a signal used to exchange data via the NPN cluster 200. According to embodiments, an SDF may include various fields. For example, an SDF may include a category or action field or frame, and may include at least one piece of information related to the NPN cluster 200.

[0108] In embodiments, the NAN cluster 200 may include various types of NAFs, and these various types of NAFs may include messages for establishing a NAN data path (NDP) for data communication over a duration between DWs or messages for performing NAN ranging during a Fine Time Measurement (FTM) period. In embodiments, NAN ranging may be a function that measures the distance between two NAN devices included in the NAN cluster 200.

[0109] Each of the electronic devices 210, 220, 230, and 240 in cluster 200 can operate in an active state only during the DW period and in a low-power state (e.g., sleep state) for the remaining time periods outside of the DW, thereby reducing power consumption. For example, the DW is a period in which electronic devices are active (or awake) and consume high power, and electronic devices can remain in a sleep state during the periods outside of the DW, thereby reducing power consumption. Electronic devices 210, 220, 230, and 240 in cluster 200 can be simultaneously activated at the start time of a synchronized DW (e.g., DW start) and can simultaneously switch to a sleep state at the end time of the DW (e.g., DW end).

[0110] Figure 3 This is a block diagram of an electronic device according to an embodiment.

[0111] Reference Figure 3 Electronic devices 300 (e.g., Figure 1 Electronic devices 101 or Figure 2 Electronic devices 210, 220, 230, and 240 may include: communication circuitry 310 (e.g., Figure 1 The wireless communication module 192 transmits signals to and receives signals from an external electronic device via one or more antennas; the memory 320 (e.g., Figure 1 The memory 130 stores instructions for the operation of the electronic device 300; and the processor 330 (e.g., Figure 1 The processor 120 can be configured with one or more single-core processors or one or more multi-core processors.

[0112] The communication circuit 310 may include various circuit structures for modulation and / or demodulation of signals in the electronic device 300. For example, the communication circuit 310 may modulate a baseband signal into a radio-frequency (RF) signal to output an RF signal through an antenna (not shown), or may demodulate an RF signal received through the antenna into a baseband signal to transmit the baseband signal to the processor 330.

[0113] The communication circuit 310 can support at least one of various wired and wireless communication methods. For example, the communication circuit 310 can be in the form of a chipset, or it can be a sticker / barcode that includes information necessary for communication (e.g., a sticker including an NFC tag). The communication circuit 310 can support, for example, cellular communication, Wi-Fi, Wi-Fi Direct, Bluetooth, ultra-wideband (UWB), or near-field communication (NFC).

[0114] In an embodiment, the communication circuit 310 can transmit signals to the NAN cluster (e.g., via a frequency band used by electronic devices in the NAN cluster 200, such as 2.4 GHz, 5 GHz, and / or 6 GHz) through the frequency band used by the electronic devices in the NAN cluster 200. Figure 2 To send audio data to or receive audio data from another electronic device in the NAN cluster 200.

[0115] In this embodiment, the communication circuit 310 can simultaneously support two frequency bands, i.e., dual-band. That is, the communication circuit 310 can support real simultaneous dual band (RSDB) and / or dual-band dual-concurrent (DBDC) functionality. Therefore, the electronic device 300 can connect to two frequency bands simultaneously. For example, the electronic device 300 can connect to both the 2.4 GHz band and the 5 GHz or 6 GHz band simultaneously.

[0116] Various types of data (such as applications, programs including instructions, and files) can be installed and stored in memory 320. Processor 330 can access data stored in memory 320 to use that data, or it can store new data in memory 320. In an embodiment, programs and data for sending and receiving audio data can be installed and stored in memory 320.

[0117] The processor 330 can control the overall operation of the electronic device 300. In an embodiment, the processor 330 can control other components included in the electronic device 300, enabling the electronic device 300 to send and receive audio data. For example, the processor 330 can execute programs or instructions stored in the memory 320, read files stored in the memory 320, or store new files in the memory 320.

[0118] In an embodiment, the processor 330 may perform the operation directly, or it may control another component (e.g., communication circuitry 310) to perform the operation.

[0119] In this embodiment, the processor 330 can send and receive audio data by executing a program stored in the memory 320. Instructions stored in the memory 200, when executed by the processor 330, can cause the electronic device 300 to at least perform the following: discover multiple external electronic devices included in a NAN cluster by performing Neighbor-Aware Network (NAN) service discovery in a discovery window (DW); establish individual NAN Data Path (NDP) sessions with the multiple external electronic devices in a first frequency band; schedule radio resources to periodically allocate the DW in a second frequency band and allocate audio data transmission periods in the first frequency band for sending audio data to the multiple external electronic devices via the individual NDP sessions; perform NAN synchronization and NAN service discovery in the DW; and send audio data to the multiple external electronic devices via the individual NDP sessions during the audio data transmission periods. The first frequency band can be a 5 GHz band or a 6 GHz band, and the second frequency band can be a 2.4 GHz band.

[0120] In an embodiment, instructions stored in memory 200, when executed by processor 330, can cause electronic device 300 to schedule radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of the audio data, such that the transmission interval of the audio data is the same in each NDP session.

[0121] In an embodiment, instructions stored in memory 200, when executed by processor 330, can cause electronic device 300 to: schedule radio resources such that audio data transmission periods overlap for at least some of the various NDP sessions. Furthermore, electronic device 300 can: schedule radio resources to communicate with external electronic devices not included in the NAN cluster or provide services unrelated to NAN services during periods when no audio data is transmitted and which are not DW periods, using at least one of a first frequency band and a second frequency band. Additionally, electronic device 300 can: change the priority of at least some of the various NDP sessions during overlapping periods based on access class.

[0122] In one embodiment, instructions stored in memory 200, when executed by processor 330, can cause electronic device 300 to perform: scheduling radio resources to allocate an additional DW in a third frequency band, performing NAN synchronization and NAN service discovery in the additional DW by switching communication circuitry from a first frequency band to the third frequency band during the period of allocating the additional DW, and transmitting audio data to multiple external electronic devices through various NDP sessions during the audio data transmission period by switching communication circuitry from the third frequency band to the first frequency band during the period after the additional DW.

[0123] In an embodiment, scheduling can be performed on a time slot basis, which may include multiple sub-time slots, and instructions stored in memory 200 can be executed by processor 330 to enable electronic device 300 to perform the following: when there is a period of unscheduled audio data transmission in the time slot allocated to the first external electronic device, scheduling is performed on a sub-time slot basis to allocate an idle sub-time slot that does not transmit audio data from the first external electronic device to the second external electronic device.

[0124] In an embodiment, the instructions stored in memory 200, when executed by processor 330, can cause electronic device 300 to perform the following: when the transmission of audio data in a time slot allocated to a first external electronic device fails, the audio data is retransmitted in an idle sub-time slot by performing scheduling on a sub-time slot basis.

[0125] Figure 4 The network topology of the NAN cluster according to an embodiment is shown.

[0126] Reference Figure 4TV 400, soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440 form a NAN cluster. Each device can form a NAN cluster according to Wi-Fi Sensing specifications (or standards). TV 400 and smartphone 450 are performing direct device-to-device communication. In this case, TV 400 and smartphone 450 can perform direct device-to-device communication according to Wi-Fi Direct specifications (or standards). Additionally, TV 400 and smartphone 450 are each connected to an access point (AP) 460. TV 400 and smartphone 450 can communicate with AP 460 according to Wi-Fi specifications (or standards).

[0127] exist Figure 4 In this system, portable speakers 420 and smartphones 450, which are mobile, can join or leave the NAN cluster at any time. Therefore, the network topology may change rapidly, and synchronization between devices may occur frequently.

[0128] TV 400, soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440 form a NAN cluster, thus enabling group playback of audio data. As the number of devices connected to TV 400 (which is an electronic device with an audio source) increases, desynchronization occurs more frequently. For example, as the number of devices connected to TV 400 increases, wireless channel congestion increases, leading to a higher probability of latency and jitter. Furthermore, the increased amount of audio data that TV 400 (which is an electronic device with an audio source) needs to transmit increases the likelihood of delay.

[0129] The method and apparatus for transmitting audio data according to embodiments can transmit audio data robust to changes in network topology while performing rapid synchronization. Furthermore, the method and apparatus can provide adaptive synchronization that reflects user location and spatial characteristics, as well as high-quality sound sources.

[0130] Figure 5 This is a flowchart illustrating an audio data transmission method according to an embodiment.

[0131] Figure 5 The electronic devices included in the NAN cluster 200 are shown. Figure 3 300 or Figure 4 The 400) sends audio data to external electronic devices included in the NAN cluster 200. Figure 4 Methods 410, 420, 430, or 440.

[0132] Electronic device 300 is a NAN device that has already joined the NAN cluster 200. Specifically, electronic device 300 can perform a passive scan to receive discovery beacons broadcast via DW. The discovery beacon may include information necessary for synchronization with the NPN cluster 200. Electronic device 300 that has received the discovery beacon can discover the NPN cluster 200 based on the information included in the discovery beacon and can join the NPN cluster 200.

[0133] In operation 510, electronic device 300 can perform Neighbor-Aware Network (NAN) service discovery in the discovery window (DW) to discover multiple external electronic devices included in the NAN cluster.

[0134] In an embodiment, the electronic device 300 can activate the DW at a time scheduled by a synchronized clock in the NAN cluster 200, and can send synchronization beacons (or beacon frames) and service discovery frames (SDFs) within the DW.

[0135] In an embodiment, synchronization beacons can be periodically sent and received at each DW to continuously maintain time and channel synchronization of electronic devices 210, 220, 230, and 240 in cluster 200. The synchronization beacon may include information required for the electronic devices in the cluster to synchronize with each other. For example, the synchronization beacon may include at least one of the following: an FC field indicating the function of a signal (e.g., a beacon); a broadcast address; a MAC address of the transmitting electronic device; a cluster ID; a sequence control field; a timestamp of the beacon frame; a beacon interval indicating the interval between the start points of the DWs; or information about the capabilities of the transmitting electronic device. Furthermore, the synchronization beacon may include at least one information element associated with NPN cluster 200. For example, information associated with NPN cluster 200 may include content for services provided through NPN cluster 200.

[0136] In embodiments, SDFs can be sent and received in the DW as needed to provide services to discovered electronic devices 210, 220, 230, and 240. An SDF can refer to a signal used to exchange data via the NPN cluster 200. According to embodiments, an SDF can include various fields. For example, an SDF can include a category or action field or frame, and can include at least one piece of information related to the NPN cluster 200.

[0137] In this embodiment, electronic device 300 can perform asynchronous service discovery (USD). In this case, electronic device 300 can operate as a publisher, sending at least one unsolicited NAN SDF publication message and receiving NAN SDF subscription messages from an external electronic device operating as a subscriber. Subsequently, electronic device 300 can discover the external electronic device by receiving follow-up messages from it. In this embodiment, electronic device 300 can send a solicited NAN SDF publication message to the external electronic device before receiving the follow-up message.

[0138] In this embodiment, electronic device 300 can perform discovery via NAN instant messaging. Electronic device 300 can enter instant messaging mode using, for example, out-of-band (OOB) methods triggered by NFC, BLE, and / or user actions, and can quickly perform service discovery.

[0139] In operation 520, electronic device 300 can establish various NAN data path (NDP) sessions with multiple external electronic devices in the first frequency band. In an embodiment, electronic device 300 can send a data path request message to an external electronic device discovered in operation 510, and receive a data path response message from the external electronic device receiving the data path request message, thereby establishing an NDP session between electronic device 300 and the external electronic devices. Electronic device 300 can perform the aforementioned process for each of the multiple external electronic devices, thereby establishing various NDP sessions with the multiple external electronic devices.

[0140] In this embodiment, the electronic device 300 can establish an NDP session in a first frequency band. The first frequency band may include a 2.4 GHz band. The electronic device 300 can send and receive data path request messages and data path response messages through the first frequency band to establish an NDP session in the first frequency band.

[0141] In operation 530, electronic device 300 may schedule radio resources to allocate DW in the second frequency band and allocate audio data transmission periods in the first frequency band for transmitting audio data to multiple external electronic devices through various NDP sessions. In embodiments, the first frequency band may include a 2.4 GHz band, and the second frequency band may include a 5 GHz band or a 6 GHz band.

[0142] In an embodiment, electronic device 300 can perform scheduling in a time slot comprising 16 time units (TUs). The time slot may include NAN time slots. Electronic device 300 can perform scheduling on a cycle repeating every 512 TUs (i.e., 32 time slots). A time unit may be 1.024 ms. Electronic device 300 can use a round-robin method to allocate radio resources to multiple external electronic devices. In this case, electronic device 300 can allocate a pre-configured length of radio resources to each NDP session to support group play by multiple external electronic devices. For example, electronic device 300 can perform scheduling for each NDP session at intervals of 128 TUs.

[0143] In an embodiment, electronic device 300 can schedule radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of audio data, such that the audio data transmission interval is the same in each NDP session. Additionally, electronic device 300 can schedule radio resources such that the audio data transmission periods overlap for at least some of the various NDP sessions. Furthermore, during overlapping periods, electronic device 300 can change the priority of at least some of the various NDP sessions based on the access class. In an embodiment, electronic device 300 can schedule radio resources to communicate with external electronic devices not included in the NAN cluster or provide services unrelated to NAN services during periods when no audio data is transmitted and which are not DW periods, using at least one of a first frequency band and a second frequency band.

[0144] In an embodiment, electronic device 300 can schedule radio resources to allocate additional DW in a third frequency band, switch communication circuitry from a first frequency band to the third frequency band during the period of allocating additional DW to perform NAN synchronization and NAN service discovery in the additional DW, and switch communication circuitry from the third frequency band to the first frequency band during the period after the additional DW to transmit audio data to multiple external electronic devices through various NDP sessions during the audio data transmission period. The third frequency band may include a 5 GHz band.

[0145] In an embodiment, electronic device 300 can measure the wireless channel quality and / or distance relative to an external electronic device and can perform scheduling based on the measurement results. In an embodiment, electronic device 300 can measure the wireless channel quality relative to an external electronic device by sending and receiving synchronization beacons from and from the external electronic device in the DW. When performing scheduling for multiple NDP sessions, the wireless channel quality can be used to determine transmission periods and priorities. Additionally, electronic device 300 can perform a Fine Time Measurement (FTM) procedure to perform FTM ranging for measuring the distance to the external electronic device. The distance measurement results can be used for audio synchronization between multiple external electronic devices. For example, the distance measurement results can be used for playback time synchronization based on the location of the external electronic device (such as a speaker), or for audience listening synchronization considering the relative position of the user to the external electronic device.

[0146] Reference Figures 6 to 11 To provide a more detailed description.

[0147] Figure 6 This is a diagram illustrating a scheduling method according to an embodiment.

[0148] Reference Figure 6 The TV 400 (which is an electronic device with an audio source) establishes individual NDP sessions (NDP#1, NDP#2, NDP#3, and NDP#4) with the soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440. The TV 400 (which is an electronic device with an audio source) can perform scheduling using a polling method on a repetitive cycle of 512 TUs, and can sequentially allocate the radio resources of 128 TUs to NDP#1, NDP#2, NDP#3, and NDP#4.

[0149] In an embodiment, each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4) can be established in a single frequency band (e.g., 2.4 GHz, 5 GHz, or 6 GHz).

[0150] exist Figures 7 to 11 In this context, the TV 400 (an electronic device with an audio source) can simultaneously support two frequency bands, i.e., dual-band. That is, the TV 400 can support True Simultaneous Dual-Band (RSDB) and / or Dual-Band Dual-Concurrent (DBDC) functionality. Therefore, the TV 400 can connect to two frequency bands simultaneously. For example, the TV 400 can connect to the 2.4 GHz band and the 5 GHz or 6 GHz band simultaneously. Furthermore, the TV 400 can perform scheduling on a repeating cycle of 512 TUs (i.e., 32 time slots).

[0151] Figure 7 This is a diagram illustrating a scheduling method according to an embodiment.

[0152] Reference Figure 7 TV 400 (which is an electronic device with an audio source) establishes various NDP sessions (NDP#1, NDP#2, NDP#3 and NDP#4) with soundbar 410, portable speaker #1 420, speaker #2 430 and speaker #3 440 in the 5 GHz band.

[0153] TV 400 can schedule radio resources to allocate DW0 in the first of 32 time slots in the 2.4 GHz band and allocate audio data transmission periods in the 5 GHz band for transmitting audio data through each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4). Here, TV 400 can allocate 128 TUs (specifically, 32 TUs evenly distributed across 8 time slots (i.e., 2 time slots)) to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4). According to embodiments, short periods (32 TUs) of radio resources can be scheduled multiple times for each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4) to achieve low latency and low jitter during audio data transmission.

[0154] In an embodiment, TV 400 may perform the following: scheduling radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of the audio data, such that the audio data transmission interval is the same in each NDP session.

[0155] Figure 8 This is a diagram illustrating a scheduling method according to an embodiment.

[0156] Reference Figure 8 TV 400 (which is an electronic device with an audio source) establishes various NDP sessions (NDP#1, NDP#2, NDP#3 and NDP#4) with soundbar 410, portable speaker #1 420, speaker #2 430 and speaker #3 440 in the 5 GHz band.

[0157] TV 400 can schedule radio resources to allocate DW0 in the first of 32 time slots in the 2.4 GHz band and allocate audio data transmission periods in the 5 GHz band for transmitting audio data through each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4). Here, TV 400 can allocate 128 TUs (specifically, 32 TUs evenly distributed across 8 time slots (i.e., 2 time slots)) to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4).

[0158] In an embodiment, TV 400 may schedule radio resources such that TUs allocated to the various NDP sessions (NDP#1, NDP#2, NDP#3, and NDP#4) overlap. In this case, there may be periods 810, 820, 830, or 840 where no audio data is transmitted and which is not DW. TV 400 may schedule radio resources to communicate with external electronic devices not included in the NAN cluster or to provide services unrelated to NAN services during these periods when no audio data is transmitted and which is not DW, using at least one of the 2.4 GHz band and the 5 GHz band. Here, when communicating with external electronic devices or providing services unrelated to NAN services using a band other than the 5 GHz band where NDP sessions (NDP#1, NDP#2, NDP#3, and NDP#4) are established (e.g., the 6 GHz band), overhead due to channel switching may occur. However, according to embodiments of this disclosure, despite the overhead due to channel switching, limited radio resources can be used effectively.

[0159] Furthermore, in this embodiment, TV 400 can perform the following: change the priority of at least some of the NDP sessions in overlapping time periods based on the access class. That is, the access class can be changed for certain NDP sessions to perform scheduling such that audio data can be preferentially used for transmission in the higher-priority NDP sessions among the overlapping NDP sessions. Changing the access class will be described in detail below.

[0160] Figure 9 This is a diagram illustrating a scheduling method according to an embodiment.

[0161] Reference Figure 9 TV 400 (which is an electronic device with an audio source) establishes various NDP sessions (NDP#1, NDP#2, NDP#3 and NDP#4) with soundbar 410, portable speaker #1 420, speaker #2 430 and speaker #3 440 in the 5 GHz band.

[0162] TV 400 can schedule radio resources to allocate DW0 in the first of 32 time slots in the 2.4 GHz band and allocate audio data transmission periods in the 6 GHz band for transmitting audio data through each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4). Here, TV 400 can allocate 128 TUs (specifically, 32 TUs evenly distributed across 8 time slots (i.e., 2 time slots)) to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4).

[0163] In an embodiment, TV 400 may schedule radio resources such that TUs allocated to the various NDP sessions (NDP#1, NDP#2, NDP#3, and NDP#4) overlap. In this case, time periods 810, 820, 830, or 840 may occur where no audio data is transmitted and which is not DW. TV 400 may schedule radio resources to communicate with external electronic devices not included in the NAN cluster or provide services unrelated to NAN services during these non-audio data transmission and non-DW periods, using at least one of the 2.4 GHz and 5 GHz bands. Here, when communicating with external electronic devices or providing services unrelated to NAN services using a band other than the 6 GHz band where NDP sessions (NDP#1, NDP#2, NDP#3, and NDP#4) are established (e.g., the 5 GHz band), overhead due to channel switching may occur. However, according to embodiments of this disclosure, despite the overhead due to channel switching, limited radio resources can be used effectively.

[0164] Furthermore, in this embodiment, TV 400 can perform the following: change the priority of at least some of the NDP sessions in overlapping time periods based on the access class. That is, the access class can be changed for certain NDP sessions to perform scheduling such that audio data can be preferentially used for transmission in the higher-priority NDP sessions among the overlapping NDP sessions. Changing the access class will be described in detail below.

[0165] Figure 10 This is a diagram illustrating a scheduling method according to an embodiment.

[0166] Reference Figure 10 TV 400 (which is an electronic device with an audio source) establishes various NDP sessions (NDP#1, NDP#2, NDP#3 and NDP#4) with soundbar 410, portable speaker #1 420, speaker #2 430 and speaker #3 440 in the 5 GHz band.

[0167] TV 400 can schedule radio resources to allocate DW0 in the first of 32 time slots in the 2.4 GHz band and allocate audio data transmission periods in the 6 GHz band for transmitting audio data through each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4). Here, TV 400 can allocate 128 TUs (specifically, 32 TUs evenly distributed across 8 time slots (i.e., 2 time slots)) to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4).

[0168] In this embodiment, TV 400 can schedule radio resources such that the TUs allocated to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4) overlap. Furthermore, TV 400 can additionally allocate DW16 in the seventeenth of 32 time slots within the 5 GHz band. Audio data transmission periods for each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4) can be allocated so as not to overlap with DW0 and DW16. TV 400 can switch its communication circuitry from the 6 GHz band to the 5 GHz band to perform NAN synchronization and NAN service discovery during the allocated DW16 period, and can switch its communication circuitry back from the 5 GHz band to the 6 GHz band to transmit audio data after DW16.

[0169] According to an embodiment, the DW used to perform NAN synchronization can be allocated to two time slots, thereby providing more accurate time synchronization.

[0170] Furthermore, in this embodiment, TV 400 can perform the following: change the priority of at least some of the NDP sessions in overlapping time periods based on the access class. That is, the access class can be changed for certain NDP sessions to perform scheduling such that audio data can be preferentially used for transmission in the higher-priority NDP sessions among the overlapping NDP sessions. Changing the access class will be described in detail below.

[0171] Figure 11 This is a diagram illustrating a scheduling method according to an embodiment.

[0172] Reference Figure 11The TV 400 (which is an electronic device with an audio source) establishes individual NDP sessions (NDP#1-1, NDP#2-1, NDP#3-1, and NDP#4-1) with the soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440 in the 6 GHz band. Furthermore, the TV 400 can also establish individual NDP sessions (NDP#1-2, NDP#2-2, NDP#3-2, and NDP#4-2) with the soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440 in the 2.4 GHz band.

[0173] TV 400 can schedule radio resources to allocate audio data transmission periods in the 2.4 GHz band for transmitting audio data through each NDP session (NDP#1-2, NDP#2-2, NDP#3-2, and NDP#4-2), allocate DW16 in the seventeenth of 32 time slots in the 5 GHz band, and allocate audio data transmission periods in the 6 GHz band for transmitting audio data through each NDP session (NDP#1-1, NDP#2-1, NDP#3-1, and NDP#4-1). Here, TV 400 can allocate 128 TUs (specifically, 32 TUs evenly distributed across 8 time slots (i.e., 2 time slots)) to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4).

[0174] In this embodiment, TV 400 can schedule radio resources such that TUs allocated to each NDP session (NDP#1, NDP#2, NDP#3, NDP#4) overlap. Furthermore, TV 400 can additionally allocate DW0 in the first of 32 time slots in the 2.4 GHz band. TV 400 can switch its communication circuitry from the 6 GHz band to the 5 GHz band to perform NAN synchronization and NAN service discovery during the period when DW16 is allocated, and can switch its communication circuitry back from the 5 GHz band to the 6 GHz band to transmit audio data after DW16.

[0175] According to the embodiments, NDP sessions can be established in two frequency bands, thereby providing high data rates, and the DW used to perform NAN synchronization can be selectively allocated to two time slots, thereby increasing scheduling flexibility and providing more accurate time synchronization.

[0176] Return to reference Figure 5 ,

[0177] In operation 540, electronic device 300 can perform NAN synchronization and NAN service discovery in DW, and can send audio data to multiple external electronic devices through each NDP session during audio data transmission periods.

[0178] Figures 12 to 14 This is a diagram illustrating sub-slot scheduling according to an embodiment.

[0179] Electronic device 300 can perform scheduling in units of 16 time units (TUs). However, when scheduling is performed in units of one time slot (i.e., 16 TUs), more time may be allocated to external electronic devices than is required. In embodiments, electronic device 300 can perform scheduling in units of sub-time slots instead of time slots, thereby performing efficient scheduling. Sub-time slots may include 1 TU, 2 TUs, 4 TUs, or 8 TUs.

[0180] In an embodiment, electronic device 300 can obtain information at a higher layer related to the data rate required by the codec (e.g., pulse code modulation (PCM), Dolby Digital, or Dolby Digital+) for audio signal processing. Additionally, electronic device 300 can measure the quality of the wireless channel with an external electronic device. More specifically, electronic device 300 can measure the quality of the wireless channel with the external electronic device by sending and receiving synchronization beacons from and from the external electronic device in the DW. The electronic device can determine the modulation and coding scheme (MCS) level to be used for audio data transmission based on the information about the wireless channel quality, and can estimate the throughput of the physical channel based on the MCS level. Electronic device 300 can allocate time slots or sub-time slots to the external electronic device based on the estimated throughput and the data rate required by the codec. According to the embodiment, efficient scheduling can be performed.

[0181] Reference Figure 12 Electronic device 300 can perform scheduling on a recurring cycle of 512 TUs 1210 and 1220 (i.e., 32 time slots). TV 400 (which is an electronic device with an audio source) establishes individual NDP sessions 1231, 1232, 1233, and 1234 with soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440. Each NDP session 1231, 1232, 1233, and 1234 can be equally allocated 32 TUs (i.e., 2 time slots).

[0182] Here, DW 1230 can be included in 512 TU 1210, or as... Figure 7As shown, DWs can be allocated in different frequency bands, and all 512 TUs can be allocated to individual NDP sessions 1231, 1232, 1233 and 1234 (1220).

[0183] Reference Figure 13 Idle periods 1311, 1312, 1313, and 1314, which are not used for audio data transmission, can occur in the two time slots allocated to each NDP session. According to an embodiment, for idle periods not used for audio data transmission, scheduling can be performed on a sub-time slot basis, thereby efficiently utilizing radio resources.

[0184] In this embodiment, electronic device 300 can predict the occurrence of idle periods based on estimated throughput and the data rate required by the codec. In this case, electronic device 300 can perform scheduling on a sub-slot basis, such that no idle periods occur in the middle of the 512 TUs. More specifically, electronic device 300 can continuously configure the radio resources allocated to each NDP session 1231, 1232, 1233, and 1234. In this case, idle period 1320 can occur at the end of the 512 TUs. Electronic device 300 can use idle period 1320 for additional data transmission.

[0185] Reference Figure 14 Electronic device 300 can perform scheduling on a sub-slot basis, such that idle period 1410 is located at the end of 512 TUs. In an embodiment, idle period 1410 may be referred to as an idle sub-slot. When transmitting audio data, electronic device 300 may be unable to transmit audio data in period 1421 via an NDP session with speaker #2 430 for predetermined reasons (e.g., inability to compete with another WLAN). In an embodiment, electronic device 300 may use idle period 1421 to schedule audio data to be retransmitted.

[0186] Figure 15 This is a diagram illustrating the change in priority when radio resources allocated to different NDP sessions overlap, according to an embodiment.

[0187] Electronic device 300 can schedule radio resources such that the time slots for transmitting audio data overlap in at least some of the various NDP sessions (1510, 1520, 1530, 1540). During the overlapping time slots 1510, 1520, 1530, and 1540, audio data can be transmitted for only one NDP session. In an embodiment, electronic device 300 can perform the following: change the priority of at least some of the various NDP sessions in the overlapping time slots 1510, 1520, 1530, or 1540 based on the access class.

[0188] Reference Figure 15 TV 400 (an electronic device having an audio source) establishes individual NDP sessions (NDP#1 and NDP#2) with soundbar 410 and portable speaker #1420. TV 400 can schedule radio resources to allocate DW0 in the first of 32 time slots in the 2.4 GHz band and allocate audio data transmission periods in the 5 GHz band for transmitting audio data through each NDP session (NDP#1 and NDP#2). Here, TV 400 can allocate 128 TUs (specifically, 32 TUs evenly distributed across 8 time slots (i.e., 2 time slots)) to each NDP session (NDP#1, NDP#2, NDP#3, and NDP#4). In an embodiment, TV 400 can schedule radio resources such that the TUs allocated to the NDP sessions (NDP#1, NDP#2, NDP#3, and NDP#4) overlap.

[0189] TV 400 can perform the following: Based on the access category, change the priority of at least some of the individual NDP sessions (NDP#1 and NDP#2) during overlapping time periods 1510, 1520, 1530, and 1540. (See also...) Figure 16 Describe it.

[0190] Figure 16 This is a diagram illustrating the access categories according to an embodiment.

[0191] Reference Figure 16 Access categories can be classified as AC_BK (background), AC_BE (best-effort), AC_VI (video), and AC_VO (voice), and parameter values ​​for CWmin, CWmax, AIFSN, and TXOP limits are configured for each access category. The access category classifications and parameter values ​​are merely examples and are not intended to be restrictive, but can be configured differently. AC_VO (voice) has the highest priority, and priority decreases towards AC_BK (background). Access categories with relatively high priority can be processed before those with relatively low priority. Electronic device 300 can assign an access category to each NDP session to determine transmission priorities in overlapping time periods 1510, 1520, 1530, and 1540. In embodiments, access categories can be arbitrarily assigned regardless of the service actually provided by the NDP session in order to prioritize NDP sessions.

[0192] exist Figure 15When the soundbar 410 is used as the main audio output device, the TV 400 can assign the access class of the NDP session (NDP#1) with the soundbar 410 to AC_VO with high priority, and can assign the access class of the NDP session (NDP#2) with the portable speaker #1 420 to AC_BE. In this case, radio resources can be scheduled for the high-priority NDP session (NDP#1) in overlapping periods 1510, 1520, 1530 and 1540.

[0193] Although the embodiments illustrate a TV as an electronic device and a soundbar 410, portable speaker #1 420, speaker #2 430, and speaker #3 440 as external electronic devices, the electronic devices and external electronic devices are not limited to these examples and can include various types of electronic devices. In the embodiments, the electronic device may include various electronic devices having an audio source (e.g., smartphones, MP3 players, and audio players), and the external electronic device may include various electronic devices that receive and play the audio source from the electronic device (e.g., speakers, Bluetooth speakers, earphones, earbuds, and headphone jacks). The term "external electronic device" is used to distinguish it from an electronic device, but it may also be referred to as an electronic device. Additionally, an electronic device may also operate as an external electronic device.

[0194] Figure 17 This is a diagram illustrating the interface of an electronic device according to an embodiment.

[0195] Reference Figure 17 Interfaces #1 and #2 can be defined to reduce latency when processing audio data in electronic device 300. In an embodiment, interface #1 can be defined between the firmware (e.g., firmware implemented by a chipset vendor) of electronic device 300 and the application layer. Furthermore, in an embodiment, interface #2 can be defined between the firmware (e.g., firmware implemented by a chipset vendor) (or driver) of electronic device 300 and the Wi-Fi service layer (e.g., Wi-Fi service supported by the operating system), and between the Wi-Fi service layer and the application layer. According to an embodiment, Timed Synchronization Function (TSF) information (e.g., TSF values) can be quickly transmitted to a higher layer (i.e., the application layer), thereby reducing latency.

[0196] Figure 18 and Figure 19 This is a diagram illustrating commands according to an embodiment.

[0197] Figure 18 and Figure 19 The commands defined in can be used Figure 17 Interfaces #1 and #2 are defined in [the document / document].

[0198] Figure 20 This is a diagram illustrating audio alignment within a frame according to an embodiment.

[0199] Reference Figure 20 In an electronic device (i.e., a TV), an audio digital signal processor (DSP) can encode audio signals and send the encoded audio stream to an audio player. In this case, when the audio signal processed by the DSP is played directly on the TV, audio synchronization mismatch or loss of synchronization may occur due to the audio signal processing time in the electronic device, the audio data packet transmission time, and the audio signal processing time in external devices (such as a soundbar (S-bar) or a speaker (speaker #1)). Therefore, to delay the audio signal output from the electronic device, the electronic device may include an audio delay buffer.

[0200] The TV transmit (Tx) player can convert the encoded audio stream into packet elementary stream (PES) format, which includes presentation timestamp (PTS) information and elementary stream clock reference (ESCR) information. The PTS information is about the time the player outputs the audio, and the ESCR information is about the reference time the player is referencing. Therefore, the PES information can be interpreted as including reference time information and information about when the audio is output based on that reference time. The TV transmit (Tx) player can then generate audio packets in PES format and send them to the Wi-Fi driver / firmware.

[0201] The TV's transmit (Tx) Wi-Fi driver / firmware converts audio packets into 802.11 MAC frame format. Here, the access class of the audio packets can be configured. Subsequently, the TV's transmit (Tx) Wi-Fi driver / firmware can send 802.11 MAC frames to the Wi-Fi module.

[0202] The TV's transmit (Tx) Wi-Fi module can perform synchronization by periodically sending synchronization beacons and SDFs to and from external electronic devices (i.e., soundbars (S-bars) or speakers (speaker #1)) within the DW. In an embodiment, the synchronization beacon may include Timed Synchronization Function (TSF) information (e.g., a TSF value). The TV's transmit (Tx) Wi-Fi module and the soundbar's receive (Rx) Wi-Fi module can obtain the TSF information through the transmission and reception of synchronized beacons.

[0203] The TV's transmit (Tx) Wi-Fi module and the soundbar's receive (Rx) Wi-Fi module can perform a fine time measurement (FTM) process for distance measurement. More specifically, the TV's transmit (Tx) Wi-Fi module and the soundbar's receive (Rx) Wi-Fi module can transmit and receive multiple FTM frames (e.g., action frames for FTM) within a time window known as a burst instance. Within a burst instance, the TV's transmit (Tx) Wi-Fi module and the soundbar's receive (Rx) Wi-Fi module can perform precise timing measurements based on each FTM frame and its ACK. More specifically, the TV's transmit (Tx) Wi-Fi module and the soundbar's receive (Rx) Wi-Fi module exchange FTM frames and ACK frames to measure the time of flight or round-trip time (RTT). In this case, the distance between the TV and the soundbar can be calculated by identifying the departure time information about the FTM frame and the arrival time information about the corresponding ACK frame. In an embodiment, the receiving (Rx) Wi-Fi module of the soundbar (S-bar) can obtain FTM information (e.g., FTM value) as a result of the FTM process.

[0204] The TV's transmit (Tx) Wi-Fi module sends audio data packets, including 802.11 MAC frames, to a time-synchronized soundbar (S-bar).

[0205] The S-bar's receive (Rx) Wi-Fi module can receive audio data packets from the TV and send 802.11 MAC frames to the S-bar's receive (Rx) Wi-Fi driver / firmware.

[0206] The receiver (Rx) Wi-Fi driver / firmware of the soundbar (S-bar) can convert 802.11 MAC frames into audio data packets.

[0207] According to relevant technology, the receiver (Rx) Wi-Fi driver / firmware of the soundbar (S-bar) sends PES data and the encoded audio stream, included in the audio data packet, to the soundbar (S-bar) frame. The soundbar (S-bar) frame identifies the MCU local time and PES data and sends the encoded audio stream to the audio DSP. The audio DSP decodes the encoded audio stream based on the PES data and outputs the audio signal.

[0208] However, in this embodiment, the receiver (Rx) Wi-Fi driver / firmware of the soundbar (S-bar) can identify the TSF and FTM values ​​from the 802.11 MAC frame and can send the TSF and FTM values ​​directly to the frame.

[0209] The framework can identify the MCU's local time and modify the PES data based on the MCU's local time and the TSF and FTM values ​​received from the Rx Wi-Fi driver / firmware. More specifically, the framework can calculate a new ESCR and average latency. In an embodiment, the new ESCR can be calculated using Equation 1.

[0210] The new ESCR = T(RX_TSF_value, MCU_Local_Time) (Equation 1)

[0211] In other words, a new ESCR can be calculated based on the received TSF value and the MCU's local time.

[0212] The framework can calculate the average latency based on the TSF and FTM values. The average latency can then be used to calculate the PTS. In this embodiment, the framework can calculate the PTS using the following equation.

[0213] PTS = P(new ESCR, Δ) (Equation 2)

[0214] In other words, PTS can be calculated based on the new ESCR and Δ. Here, Δ can include at least one of the maximum value in the pre-configured latency requirements or the average latency calculated based on the TSF value and FTM value.

[0215] In an embodiment, the framework may modify the PES header to include the modified PTS information and the new ESCR.

[0216] Subsequently, the soundbar (S-bar) decodes the audio stream encoded in the digital signal processor (DSP) and outputs an audio signal based on the modified PES data.

[0217] According to an embodiment, audio playback timing alignment can be performed by a higher layer (i.e., the frame).

[0218] Figure 21 This is a diagram illustrating audio alignment in an audio player according to an embodiment.

[0219] Reference Figure 21 Due to the operation of the transmitting side (i.e., TV) and Figure 20 The operation of TV is the same as that in the previous example, so its description is omitted.

[0220] exist Figure 21 In this system, the receiver (Rx) Wi-Fi module of the soundbar (S-bar) can receive audio data packets from the TV and send 802.11 MAC frames to the receiver (Rx) Wi-Fi driver / firmware of the soundbar (S-bar).

[0221] In this embodiment, the receiver (Rx) Wi-Fi driver / firmware of the soundbar (S-bar) can identify the TSF and FTM values ​​from the 802.11 MAC frame and can send the TSF and FTM values ​​directly to the frame. Here, the receiver (Rx) Wi-Fi driver / firmware can also send the TSF and FTM values ​​to the receiver (Rx) player.

[0222] and Figure 20 different, Figure 21 The image shows the receiver (Rx) player performing audio playback time alignment instead of the frame.

[0223] The framework identifies the MCU's local time and obtains it, along with the TSF and FTM values, from the receive (Rx) Wi-Fi driver / firmware. The framework then calibrates the current clock reference and / or the MCU's local time based on the TSF and / or FTM values. The framework sends the updated current time (clock) to the receive (Rx) player. Here, the framework can also send the TSF and FTM values ​​to the receive (Rx) player.

[0224] The receive (Rx) player can obtain the current time from the frame and can modify the PES data based on the TSF and FTM values. More specifically, the receive (Rx) player can calculate the new ESCR and average latency.

[0225] In this embodiment, the new ESCR can be calculated using the following equation.

[0226] The new ESCR = T(RX_TSF_value, Updated_Current_Time) (Equation 3)

[0227] Here, Updated_Current_Time can include the updated current time received from the framework. The updated current time can include the current clock reference and / or MCU local time calibrated by the framework based on the TSF value and / or FTM value.

[0228] In other words, the new ESCR can be calculated as the sum of the MCU local time and the received TSF value.

[0229] The receiving (Rx) player can calculate the average latency based on the TSF and FTM values. The average latency can be used to calculate the PTS. In this embodiment, the receiving (Rx) player can calculate the PTS using the following equation.

[0230] PTS = P(new ESCR, Δ) (Equation 2)

[0231] In other words, PTS can be calculated based on the new ESCR and Δ. Here, Δ can include at least one of the maximum value in the pre-configured latency requirements and the average latency calculated based on the TSF value and FTM value.

[0232] In an embodiment, the receiving (Rx) player can modify the PES header to include the modified PTS information and the new ESCR.

[0233] Subsequently, the soundbar (S-bar) decodes the audio stream encoded in the digital signal processor (DSP) and outputs an audio signal based on the modified PES data.

[0234] According to an embodiment, audio playback timing alignment can be performed by a higher layer (i.e., the frame).

[0235] According to an embodiment, audio playback timing alignment can be performed by a higher layer (i.e., the player).

[0236] According to an embodiment, the receiving device can send the TSF value directly from the Wi-Fi driver / firmware to the frame through a newly defined interface, thereby preventing internal delays and playing the audio signal at the correct time.

[0237] Although the embodiments illustrate a TV as an electronic device and a soundbar (S-bar) or speaker (speaker #1) as an external electronic device, the electronic device and external electronic device are not limited to these examples and can include various types of electronic devices. In the embodiments, the electronic device may include various electronic devices with an audio source (e.g., smartphones, MP3 players, and audio players), and the external electronic device may include various electronic devices that receive and play the audio source from the electronic device (e.g., speakers, Bluetooth speakers, headphones, in-ear headphones, and over-ear headphones).

[0238] The audio alignment method for an external electronic device according to an embodiment is as follows.

[0239] External electronic devices can perform the following: discover electronic devices included in the NAN cluster by performing Neighbor-Aware Network (NAN) service discovery in the discovery window (DW), and establish NAN data path (NDP) sessions with electronic devices.

[0240] In addition, external electronic devices can perform: obtaining a timing synchronization function (TSF) value by receiving a synchronization signal from the electronic device in the DW, and obtaining an FTM value by performing a fine time measurement (FTM) process with the electronic device.

[0241] External electronic devices can perform playback time alignment of audio signals based on TSF and FTM values.

[0242] In an embodiment, the operation of performing playback time alignment of an audio signal may include: obtaining a local time, receiving TSF and FTM values ​​directly from a Wi-Fi driver or Wi-Fi firmware via a first interface, obtaining a new ESCR value based on the local time and TSF value, obtaining an average delay based on the FTM value, obtaining a presentation timestamp (PTS) value based on the new ESCR value and the average delay, and determining the playback time of the audio signal based on the PTS, these operations being performed by the framework of an external electronic device.

[0243] In an embodiment, the operation of aligning the playback time of the audio signal may include: obtaining the local time, receiving TSF and FTM values ​​directly from a Wi-Fi driver or Wi-Fi firmware via a first interface, calibrating the current clock reference, and sending the TSF value, FTM value, and updated current time to the player, these operations being performed by the framework of an external electronic device. This may include: receiving the TSF value, FTM value, and updated current time from the framework; obtaining a new ESCR value based on the updated current time and TSF value; obtaining the average delay based on the FTM value; obtaining a presentation timestamp (PTS) value based on the new ESCR value and average delay; and determining the playback time of the audio signal based on the PTS, these operations being performed by the player of the external electronic device.

[0244] The term "external electronic device" is used to distinguish it from electronic devices, but it can also be referred to as an electronic device. Additionally, an electronic device can also operate as an external electronic device. External electronic devices can include, as referenced... Figure 22 Description Figure 3 The electronic device 300 shown has the same configuration.

[0245] Figure 22 This is a block diagram of an external electronic device according to an embodiment.

[0246] Reference Figure 22 External electronic devices 2200 (e.g., Figure 1 The electronic device 101 may include communication circuitry 2210 for transmitting signals to and receiving signals from external electronic devices via one or more antennas. Figure 1 The wireless communication module 192), and the memory 2220 storing instructions for external electronic devices 2200 (e.g., Figure 1 The memory 130), and the processor 2230, which may be configured with one or more single-core processors or one or more multi-core processors (e.g., memory 130), and the processor 2230, which may be configured with one or more single-core processors or one or more multi-core processors. Figure 1 The processor 120).

[0247] The communication circuit 2210 may include various circuit structures for modulating and / or demodulating signals in the external electronic device 2200. For example, the communication circuit 2210 may modulate a baseband signal into a radio frequency (RF) signal to output an RF signal through an antenna (not shown), or may demodulate an RF signal received through the antenna into a baseband signal to transmit the baseband signal to the processor 2220.

[0248] The communication circuit 2210 can support at least one of various wired and wireless communication methods. For example, the communication circuit 2210 can be in the form of a chipset, or it can be a sticker / barcode that includes information necessary for communication (e.g., a sticker including an NFC tag). The communication circuit 2210 can support, for example, cellular communication, Wi-Fi, Wi-Fi Direct, Bluetooth, Ultra Wideband (UWB), or Near Field Communication (NFC).

[0249] Various types of data (such as applications, programs including instructions, and files) can be installed and stored in memory 2220. Processor 2230 can access data stored in memory 2220 to use that data, or it can store new data in memory 2220. In an embodiment, programs and data for sending and receiving audio data can be installed and stored in memory 2220.

[0250] Processor 2230 can control the overall operation of external electronic device 2200. In an embodiment, processor 2230 can control other components included in external electronic device 2200, causing external electronic device 2200 to perform audio alignment. For example, processor 2230 can execute programs or instructions stored in memory 2220, read files stored in memory 2220, or store new files in memory 2220.

[0251] In an embodiment, the processor 2230 may perform operations directly, or it may control another component (e.g., communication circuit 2210) to perform operations.

[0252] In an embodiment, processor 2230 can perform audio alignment by executing a program stored in memory 2220. Instructions stored in memory 2200, when executed by processor 2230, can cause external electronic device 2200 to perform at least the following operations: discover electronic devices included in a NAN cluster by performing Neighbor Aware Network (NAN) service discovery in the discovery window (DW); establish a NAN Data Path (NDP) session with the electronic device; obtain a Timing Synchronization Function (TSF) value by receiving a synchronization signal from the electronic device in the DW; obtain an FTM value by performing a Fine Time Measurement (FTM) procedure with the electronic device; and perform playback time alignment of the audio signal based on the TSF and FTM values.

[0253] In an embodiment, the instructions stored in memory 2220, when executed by processor 2230, can cause external electronic device 2200 to execute through the framework of external electronic device 2200: obtain local time, receive TSF and FTM values ​​directly from Wi-Fi driver or Wi-Fi firmware via a first interface, obtain a new ESCR value based on local time and TSF value, obtain average latency based on FTM value, obtain presentation timestamp (PTS) value based on new ESCR value and average latency, and determine the playback time of audio signal based on PTS.

[0254] In an embodiment, instructions stored in memory 2220, when executed by processor 2230, can cause external electronic device 2200 to execute via its frame: obtain local time, receive TSF and FTM values ​​directly from a Wi-Fi driver or Wi-Fi firmware via a first interface, calibrate the current clock reference, and send the TSF, FTM, and updated current time to the player. Furthermore, instructions can cause external electronic device 2200 to execute via its player: receive TSF, FTM, and updated current time from the frame, obtain a new ESCR value based on the updated current time and TSF value, obtain average latency based on the FTM value, obtain a presentation timestamp (PTS) value based on the new ESCR value and average latency, and determine the playback time of the audio signal based on the PTS.

[0255] The embodiments of this disclosure described and illustrated in the specification and drawings are merely specific examples presented to facilitate the explanation of the technical content of this disclosure and to aid in understanding it, and are not intended to limit the scope of this disclosure. That is, it will be apparent to those skilled in the art that other variations based on the technical concept of this disclosure can be implemented. Furthermore, the various embodiments described above can be combined as needed.

Claims

1. An electronic device, comprising: Communication circuits; processor; as well as Memory for storing instructions The instructions stored in the memory, when executed by the processor, cause the electronic device to perform at least the following: Multiple external electronic devices included in the NAN cluster are discovered by performing Neighbor Aware Network (NAN) service discovery in the discovery window (DW). Establish NAN data path NDP sessions with the plurality of external electronic devices in the first frequency band; Radio resources are scheduled to periodically allocate the DW in the second frequency band and allocate audio data transmission periods in the first frequency band for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions; Perform NAN synchronization and NAN service discovery in the DW, and During the audio data transmission period, the audio data is sent to the plurality of external electronic devices through the respective NDP sessions.

2. The electronic device according to claim 1, wherein, The instructions stored in the memory, when executed by the processor, cause the electronic device to: schedule the radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of the audio data, such that the transmission interval of the audio data is the same in each NDP session.

3. The electronic device according to claim 2, wherein, The instructions stored in the memory, when executed by the processor, cause the electronic device to: schedule the radio resources such that the audio data transmission periods overlap at least some of the respective NDP sessions.

4. The electronic device according to claim 3, wherein, The instructions stored in the memory, when executed by the processor, cause the electronic device to: schedule the radio resources to communicate with external electronic devices not included in the NAN cluster or provide services unrelated to NAN services during periods when the audio data is not being transmitted and it is not the DW, by using at least one of the first and second frequency bands.

5. The electronic device according to claim 3, wherein, The instructions stored in the memory, when executed by the processor, cause the electronic device to perform the following: based on the access category, change the priority of at least some of the respective NDP sessions during the overlapping period.

6. The electronic device according to claim 1, wherein, The first frequency band is either the 5GHz band or the 6GHz band, and The second frequency band is the 2.4 GHz band.

7. The electronic device according to claim 1, wherein, The instructions stored in the memory cause the electronic device to execute when executed by the processor: The radio resources are scheduled to allocate additional DW in the third frequency band; The NAN synchronization and NAN service discovery are performed in the additional DW by switching the communication circuit from the first frequency band to the third frequency band during the time period when the additional DW is allocated. as well as By switching the communication circuit from the third frequency band to the first frequency band during the time period following the additional DW, the audio data is transmitted to the plurality of external electronic devices through the respective NDP sessions during the audio data transmission period.

8. The electronic device according to claim 1, wherein, The instructions stored in the memory cause the electronic device to execute when executed by the processor: Establish NDP sessions with the plurality of external electronic devices in the first frequency band and the second frequency band; The radio resources are scheduled to periodically allocate DW in the second and third frequency bands, and to allocate audio data transmission periods in the first and second frequency bands for transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions; The NAN synchronization and NAN service discovery are performed in the DW by switching the communication circuit from the first frequency band to the third frequency band during the time period when the DW is allocated. as well as By switching the communication circuit from the third frequency band to the first frequency band during the period following the DW, the audio data is transmitted to the plurality of external electronic devices through the respective NDP sessions during the audio data transmission period.

9. The electronic device according to claim 1, wherein, The scheduling is performed on a time-slot basis, and each time-slot includes multiple sub-time-slots. The instructions stored in the memory, when executed by the processor, cause the electronic device to perform the following: in the event that there is a period in the time slot allocated to the first external electronic device where the transmission of the audio data is not scheduled, the idle sub-time slots that do not transmit the audio data of the first external electronic device are allocated to the second external electronic device by performing scheduling on a sub-time slot basis.

10. The electronic device according to claim 9, wherein, The instructions stored in the memory, when executed by the processor, cause the electronic device to perform the following: in the event that the transmission of the audio data in a time slot allocated to the first external electronic device fails, the audio data is retransmitted in an idle sub-time slot by performing scheduling on a sub-time slot basis.

11. A method for an electronic device, the method comprising: Multiple external electronic devices included in the NAN cluster are discovered by performing Neighbor Aware Network (NAN) service discovery in the discovery window (DW). Establish NAN data path NDP sessions with the plurality of external electronic devices in the first frequency band; Radio resources are scheduled to periodically allocate DW in the second frequency band and allocate audio data transmission periods in the first frequency band for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions; Perform NAN synchronization and NAN service discovery in the DW; as well as During the audio data transmission period, the audio data is sent to the plurality of external electronic devices through the respective NDP sessions.

12. The method according to claim 11, wherein, The scheduling of the radio resources includes scheduling the radio resources based on at least one of the number of NDP sessions, the size of the audio data, and the type of the audio data, such that the transmission interval of the audio data is the same in each NDP session.

13. The method according to claim 12, wherein, The scheduling of the radio resources includes: Schedule the radio resources such that the audio data transmission periods overlap at least some of the times in the respective NDP sessions; and The radio resources are scheduled to communicate with external electronic devices not included in the NAN cluster or to provide services unrelated to NAN services during periods when the audio data is not being transmitted and which are not periods of the DW, by using at least one of the first and second frequency bands.

14. The method of claim 13, further comprising changing the priority of at least some of the respective NDP sessions during the overlapping period based on the access category.

15. The method according to claim 11, wherein, The scheduling of the radio resources includes scheduling the radio resources to allocate additional DW in the third frequency band, and The method further includes: By switching the communication circuit from the first frequency band to the third frequency band during the allocation period of the additional DW, the NAN synchronization and the NAN service discovery are performed in the additional DW; and By switching the communication circuit from the third frequency band to the first frequency band during the time period following the additional DW, the audio data is transmitted to the plurality of external electronic devices through the respective NDP sessions during the audio data transmission period.