Audio data transmission and reception method and device

The method addresses the challenge of transmitting and receiving audio data across changing network topologies by using neighbor awareness networking and radio resource scheduling to ensure robust and synchronized audio delivery that adapts to user location and spatial characteristics.

WO2025110505A1PCT designated stage expired Publication Date: 2025-05-30SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/016396
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-20
Filing Date
2024-10-25
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

Existing technologies struggle to transmit and receive audio data robustly across changing network topologies while maintaining audio synchronization and providing adaptive synchronization that reflects user location and spatial characteristics.

Method used

The method involves an electronic device performing neighbor awareness networking (NAN) service discovery, establishing NAN data path sessions, scheduling radio resources for audio data transmission, and ensuring NAN synchronization to transmit audio data effectively across multiple devices.

Benefits of technology

This approach enables robust audio data transmission that is resilient to changes in network topology, maintains audio synchronization, and provides adaptive synchronization tailored to user location and spatial characteristics, resulting in high-quality audio delivery.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024016396_30052025_PF_FP_ABST
    Figure KR2024016396_30052025_PF_FP_ABST
Patent Text Reader

Abstract

Various embodiments of the present disclosure relate to an audio data transmission and reception method and device. An electronic device, according to one embodiment, comprises: a communication circuit; a processor; and a memory for storing instructions. The instructions stored in the memory, when executed by the processor, instruct the electronic device to carry out the operations at least of: discovering a plurality of external electronic devices included in a neighbor awareness networking (NAN) cluster by carrying out NAN service discovery in a discovery window (DW); establishing an NAN data path (NDP) session with each of the plurality of external electronic devices in a first frequency band; periodically allocating the DW in a second frequency band and scheduling a radio resource for allocating an audio data transmission interval for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band; carrying out NAN synchronization and the NAN service discovery in the DW; and transmitting 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

Method and device for transmitting and receiving audio data

[0001] Various embodiments of the present disclosure relate to a method and device for transmitting and receiving audio data.

[0002] Technological advancements have led to the emergence of wireless-capable electronic devices, such as portable communication devices (e.g., smartphones) and portable multimedia devices. Existing electronic devices (e.g., TVs, speakers, earphones) have also evolved to enable wireless communication. Consequently, these devices have been able to utilize new technologies to provide new forms of services.

[0003] Recently, the human-centric Internet has evolved into a network of things, the Internet of Things (IoT). Furthermore, the Internet of Everything (IoE), which combines IoT technologies with cloud computing and big data processing, is emerging. Accordingly, technologies for direct communication between devices are being researched.

[0004] This direct communication between devices can be utilized in a variety of fields. More specifically, direct communication between devices can be used to transmit and receive audio data between audiovisual (AV) devices. It can be used for 1:1 communication between one device and another, 1:N communication between one device and multiple devices, or M:N communication between multiple devices.

[0005] At this time, audio data transmission and reception technology that is robust to changes in network topology while maintaining audio synchronization between the transmitting device and the receiving device is required. Furthermore, audio data transmission and reception technology capable of adaptive synchronization that reflects the user's location and spatial characteristics and providing high-quality audio is required.

[0006] Various embodiments of the present disclosure provide methods and devices for transmitting and receiving audio data.

[0007] The technical problems to be achieved in the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by a person having ordinary skill in the technical field to which the present invention pertains from the description below.

[0008] An electronic device according to one embodiment of the present disclosure includes 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: an operation of performing neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover a plurality of external electronic devices included in a NAN cluster, an operation of establishing NAN data path (NDP) sessions with the plurality of external electronic devices in a first frequency band, an operation of scheduling radio resources to periodically allocate the DW in a second frequency band and allocate audio data transmission sections for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band, an operation of performing NAN synchronization and the NAN service discovery in the DW, and an operation of transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission sections.

[0009] According to one embodiment of the present disclosure, a method of an electronic device may be configured to perform an operation of performing a neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover a plurality of external electronic devices included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with each of the plurality of external electronic devices in a first frequency band, an operation of scheduling a radio resource to periodically allocate the DW in a second frequency band and allocate an audio data transmission section for transmitting audio data to the plurality of external electronic devices through each of the NDP sessions in the first frequency band, an operation of performing NAN synchronization and the NAN service discovery in the DW, and an operation of transmitting the audio data to the plurality of external electronic devices through each of the NDP sessions in the audio data transmission section.

[0010] An external electronic device according to one embodiment of the present disclosure includes 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: an operation of performing neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover an electronic device included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with the electronic device, an operation of receiving a synchronization signal from the electronic device in the DW to obtain a timing synchronization function (TSF) value, an operation of performing a fine time measurement (FTM) procedure with the electronic device to obtain an FTM value, and an operation of performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0011] A method of an external electronic device according to one embodiment of the present disclosure may include an operation of performing neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover an electronic device included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with the electronic device, an operation of receiving a synchronization signal from the electronic device in the DW to obtain a timing synchronization function (TSF) value, an operation of performing a fine time measurement (FTM) procedure with the electronic device to obtain an FTM value, and an operation of performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0012] According to one embodiment of the present disclosure, a method and device for transmitting and receiving audio data that is robust to changes in network topology while maintaining audio synchronization are provided.

[0013] In addition, according to one embodiment of the present disclosure, a method and device for transmitting and receiving audio data are provided that can provide adaptive synchronization and high-quality audio that reflects the user's location and spatial characteristics.

[0014] The effects that can be obtained from the present disclosure are not limited to the effects mentioned above, and other effects that are not mentioned can be clearly understood by a person having ordinary skill in the art to which the present disclosure belongs from the description below.

[0015] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment.

[0016] FIG. 2 is a diagram illustrating a neighbor awareness network (NAN) cluster according to one embodiment.

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

[0018] FIG. 4 is a diagram illustrating a network topology of a NAN cluster according to one embodiment.

[0019] Fig. 5 is a flowchart illustrating an audio data transmission method according to one embodiment.

[0020] FIG. 6 is a diagram for explaining a scheduling method according to one embodiment.

[0021] FIG. 7 is a diagram for explaining a scheduling method according to one embodiment.

[0022] FIG. 8 is a diagram for explaining a scheduling method according to one embodiment.

[0023] FIG. 9 is a diagram for explaining a scheduling method according to one embodiment.

[0024] FIG. 10 is a diagram for explaining a scheduling method according to one embodiment.

[0025] Fig. 11 is a drawing for explaining a scheduling method according to one embodiment.

[0026] FIG. 12 is a diagram for explaining sub-slot scheduling according to one embodiment.

[0027] FIG. 13 is a diagram for explaining sub-slot scheduling according to one embodiment.

[0028] FIG. 14 is a diagram for explaining sub-slot scheduling according to one embodiment.

[0029] FIG. 15 is a diagram illustrating an operation for changing priorities when wireless resources allocated to different NDP sessions overlap according to one embodiment.

[0030] FIG. 16 is a diagram for explaining an access category according to one embodiment.

[0031] FIG. 17 is a drawing for explaining an interface of an electronic device according to one embodiment.

[0032] Figure 18 is a drawing for explaining a command according to one embodiment.

[0033] Figure 19 is a drawing for explaining a command according to one embodiment.

[0034] FIG. 20 is a diagram for explaining audio alignment in a framework according to one embodiment.

[0035] FIG. 21 is a drawing for explaining audio alignment in an audio player according to one embodiment.

[0036] Fig. 22 is a block diagram of an external electronic device according to one embodiment.

[0037] An electronic device according to one embodiment of the present disclosure includes 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: an operation of performing neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover a plurality of external electronic devices included in a NAN cluster, an operation of establishing NAN data path (NDP) sessions with the plurality of external electronic devices in a first frequency band, an operation of scheduling radio resources to periodically allocate the DW in a second frequency band and allocate audio data transmission sections for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band, an operation of performing NAN synchronization and the NAN service discovery in the DW, and an operation of transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission sections.

[0038] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to perform an operation of scheduling the wireless resources so that a transmission interval of the audio data is the same in each of the NDP sessions based on at least one of the number of the NDP sessions, the size of the audio data, and the type of the audio data.

[0039] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to perform an operation of scheduling the wireless resources such that sections for transmitting the audio data for at least some of the respective NDP sessions overlap.

[0040] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to perform an operation of scheduling the radio resources to communicate with an external electronic device not included in the NAN cluster, or to provide a service unrelated to a NAN service, using at least one of the first frequency band and the second frequency band in a section other than the DW and in which the audio data is not transmitted.

[0041] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to perform an operation of changing a priority based on an access category for at least some of the NDP sessions among the respective NDP sessions in the overlapping section.

[0042] In one 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.

[0043] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to perform the following operations: scheduling the radio resources to allocate an additional DW in a third frequency band; switching the communication circuit from the first frequency band to the third frequency band in a section where the additional DW is allocated to perform the NAN synchronization and the NAN service discovery in the additional DW; and switching the communication circuit from the third frequency band to the first frequency band in a section after the additional DW to transmit the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission section.

[0044] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to schedule radio resources to form NDP sessions with the plurality of external electronic devices in the first frequency band and the second frequency band, respectively, periodically allocate DWs in the second frequency band and the third frequency band, and allocate audio data transmission sections for transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band and the second frequency band.

[0045] In one embodiment, the DW may be configured to perform an operation of switching the communication circuit from the first frequency band to the third frequency band in the allocated section to perform the NAN synchronization and the NAN service discovery in the DW, and an operation of switching the communication circuit from the third frequency band to the first frequency band in the post-DW section to transmit the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission section.

[0046] In one embodiment, the scheduling is performed in slot units, the slot includes a plurality of sub-slots, and the instructions stored in the memory, when executed by the processor, cause the electronic device to perform an operation of allocating an idle sub-slot in which audio data for the first external electronic device is not transmitted to the second external electronic device by performing scheduling in sub-slot units when a period in which transmission of the audio data is not scheduled occurs within a slot allocated to the first external electronic device.

[0047] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the electronic device to perform scheduling in units of sub-slots to perform retransmission in the idle sub-slot when transmission of the audio data in the slot allocated to the first external electronic device fails.

[0048] According to one embodiment of the present disclosure, a method of an electronic device may be configured to perform an operation of performing a neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover a plurality of external electronic devices included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with each of the plurality of external electronic devices in a first frequency band, an operation of scheduling a radio resource to periodically allocate the DW in a second frequency band and allocate an audio data transmission section for transmitting audio data to the plurality of external electronic devices through each of the NDP sessions in the first frequency band, an operation of performing NAN synchronization and the NAN service discovery in the DW, and an operation of transmitting the audio data to the plurality of external electronic devices through each of the NDP sessions in the audio data transmission section.

[0049] In one embodiment, the operation of scheduling the wireless resources may include an operation of scheduling the wireless resources so that the transmission interval of the audio data is the same in each of the respective NDP sessions, based on at least one of the number of the NDP sessions, the size of the audio data, and the type of the audio data.

[0050] In one embodiment, the operation of scheduling the wireless resources may include an operation of scheduling the wireless resources such that sections for transmitting the audio data overlap for at least some of the respective NDP sessions.

[0051] In one embodiment, the operation of scheduling the wireless resources may include an operation of scheduling the wireless resources to communicate with an external electronic device not included in the NAN cluster, or to provide a service unrelated to a NAN service, using at least one of the first frequency band and the second frequency band in a section other than the DW and in which the audio data is not transmitted.

[0052] In one embodiment, the overlapping section may further include an operation of changing a priority based on an access category for at least some of the NDP sessions among the respective NDP sessions.

[0053] In one 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.

[0054] In one embodiment, the operation of scheduling the wireless resources includes an operation of scheduling the wireless resources to allocate an additional DW in a third frequency band, and the method may further include an operation of switching a communication circuit from the first frequency band to the third frequency band in a section in which the additional DW is allocated to perform the NAN synchronization and the NAN service discovery in the additional DW, and an operation of switching the communication circuit from the third frequency band to the first frequency band in a section after the additional DW to transmit the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission section.

[0055] In one embodiment, the operation of forming the NDP session may include an operation of forming each NDP session with the plurality of external electronic devices in the first frequency band and the second frequency band, the operation of scheduling the radio resources may include an operation of scheduling the radio resources to periodically allocate DWs in the second frequency band and the third frequency band, and to allocate audio data transmission sections for transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band and the second frequency band, the operation of performing the NAN synchronization and the NAN service discovery may include an operation of switching a communication circuit from the first frequency band to the third frequency band in the section to which the DW is allocated to perform the NAN synchronization and the NAN service discovery in the DW, and the operation of transmitting the audio data may include an operation of switching the communication circuit from the third frequency band to the first frequency band in the section after the DW to transmit the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission sections.

[0056] In one embodiment, the scheduling is performed in slot units, the slots include a plurality of sub-slots, and when a period in which transmission of the audio data is not scheduled occurs within a slot allocated to the first external electronic device, the scheduling may further include an operation of allocating an idle sub-slot in which audio data for the first external electronic device is not transmitted to the second external electronic device by performing scheduling in sub-slot units.

[0057] In one embodiment, if transmission of the audio data in a slot allocated to the first external electronic device fails, the method may further include performing scheduling in units of the sub-slots to perform retransmission in the idle sub-slots.

[0058] An external electronic device according to one embodiment of the present disclosure includes 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: an operation of performing neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover an electronic device included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with the electronic device, an operation of receiving a synchronization signal from the electronic device in the DW to obtain a timing synchronization function (TSF) value, an operation of performing a fine time measurement (FTM) procedure with the electronic device to obtain an FTM value, and an operation of performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0059] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the external electronic device to perform the following operations: obtaining a local time by a framework of the external electronic device; directly receiving the TSF value and the FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface; obtaining a new ESCR value based on the local time and the TSF value; obtaining an average latency based on the FTM value; obtaining a PTS (present time stamp) value based on the new ESCR value and the average latency; and determining a playback time of the audio signal based on the PTS.

[0060] In one embodiment, the instructions stored in the memory, when executed by the processor, may cause the external electronic device to perform the following operations: obtaining a local time by a framework of the external electronic device; directly receiving the TSF value and the FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface; calibrating a current clock reference; and transmitting the TSF value, the FTM value, and the updated current time to a player; and receiving, by the player of the external electronic device, the TSF value, the FTM value, and the updated current time from the framework; obtaining a new ESCR value based on the updated current time and the TSF value; obtaining an average latency based on the FTM value; obtaining a PTS (present time stamp) value based on the new ESCR value and the average latency; and determining a playback time of the audio signal based on the PTS.

[0061] A method of an external electronic device according to one embodiment of the present disclosure may include an operation of performing neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover an electronic device included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with the electronic device, an operation of receiving a synchronization signal from the electronic device in the DW to obtain a timing synchronization function (TSF) value, an operation of performing a fine time measurement (FTM) procedure with the electronic device to obtain an FTM value, and an operation of performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0062] In one embodiment, the operation of performing the playback time alignment of the audio signal may include: obtaining a local time by a framework of the external electronic device; directly receiving the TSF value and the FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface; obtaining a new ESCR value based on the local time and the TSF value; obtaining an average latency based on the FTM value; obtaining a PTS (present time stamp) value based on the new ESCR value and the average latency; and determining a playback time of the audio signal based on the PTS.

[0063] In one embodiment, the operation of performing the playback time alignment of the audio signal may include: obtaining a local time by the framework of the external electronic device; directly receiving the TSF value and the FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface; calibrating a current clock reference; and transmitting the TSF value, the FTM value, and the updated current time to a player; and receiving, by the player of the external electronic device, the TSF value, the FTM value, and the updated current time from the framework; obtaining a new ESCR value based on the updated current time and the TSF value; obtaining an average latency based on the FTM value; obtaining a present time stamp (PTS) value based on the new ESCR value and the average latency; and determining a playback time of the audio signal based on the PTS.

[0064] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings.

[0065] In describing the embodiments, descriptions of technical details that are well known in the technical field to which the present disclosure pertains and are not directly related to the present disclosure will be omitted. This is to more clearly convey the gist of the present disclosure without obscuring it by omitting unnecessary explanations.

[0066] For the same reason, some components in the attached drawings are exaggerated, omitted, or schematically depicted. Furthermore, the dimensions of each component do not entirely reflect its actual size. Identical or corresponding components in each drawing are assigned the same reference numbers.

[0067] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment.

[0068] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100), according to one embodiment.

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

[0070] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor)) that may operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.

[0071] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.

[0072] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).

[0073] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).

[0074] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

[0075] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.

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

[0077] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).

[0078] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

[0079] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

[0080] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

[0081] The haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

[0082] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.

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

[0084] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0085] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Any of these communication modules may communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, Wi-Fi (wireless fidelity) direct, or IrDA (infrared data association)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules may be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) may use subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196) to verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199).

[0086] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.

[0087] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas, for example, by the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the at least one selected antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197). In one embodiment, the antenna module (197) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.

[0088] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).

[0089] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

[0090] Electronic devices according to various embodiments disclosed in the present disclosure may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to embodiments of the present disclosure are not limited to the aforementioned devices.

[0091] The various embodiments of the present disclosure and the terminology used therein are not intended to limit the technical features described in the present disclosure to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In the present disclosure, each of the phrases "A or B," "at least one of A and B," "at least one of A or B," "A, B, or C," "at least one of A, B, and C," and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among the phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0092] The term "module" used in various embodiments of the present disclosure may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0093]

[0094] Various embodiments of the present disclosure may be implemented as software (e.g., a program (#40)) including one or more commands stored in a storage medium (e.g., an internal memory (#36) or an external memory (#38)) readable by a machine (e.g., an electronic device (#01)). For example, a processor (e.g., a processor (#20)) of the machine (e.g., an electronic device (#01)) may call at least one command among the one or more commands stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one command called. The one or more commands may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0095] According to one embodiment, the method according to various embodiments disclosed in the present disclosure may be provided as included in a computer program product. The computer program product may be traded as a commodity between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an account server.

[0096] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and placed in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.

[0097] FIG. 2 is a diagram illustrating a neighbor awareness network (NAN) cluster according to one embodiment.

[0098] Neighbor awareness networking (NAN) based on Wi-Fi technology can support communication between electronic devices that share common NAN parameters, such as a time period between consecutive discovery windows (DWs), a beacon interval, and NAN discovery channel(s). Here, electronic devices that share common NAN parameters may be referred to as NAN devices. A NAN device may be a device that implements a NAN protocol. A NAN cluster may refer to a collection of NAN devices that share a set of NAN parameters and are synchronized to the same DW schedule. A NAN cluster may be referred to as a NAN cluster according to a NAN specification (or standard) or a Wi-Fi Aware specification (or standard).

[0099] Referring to FIG. 2, a NAN cluster (200) according to one embodiment is illustrated. The NAN cluster (200) may include a plurality of electronic devices (e.g., the electronic devices (101) (210, 220, 230, 240) of FIG. 1). Here, each of the electronic devices (210, 220, 230, 240) of the NAN cluster (200) may be a NAN device.

[0100] In one embodiment, the electronic devices (210, 220, 230, 240) can form a NAN cluster (200) that operates according to a synchronized time clock by each transmitting a beacon (or a discovery beacon, or a beacon frame) and receiving a beacon (or a discovery beacon, or a beacon frame) from other electronic devices (210, 220, 230, 240), and the electronic devices (210, 220, 230, 240) within the NAN cluster (200) can perform NAN cluster synchronization. That is, the time clocks of the respective electronic devices (210, 220, 230, 240) of the NAN cluster (200) can be synchronized.

[0101] A discovery beacon may represent a signal transmitted so that other electronic devices that are not participating in the NPN cluster (200) can discover the NPN cluster (200). For example, the discovery beacon is a signal for notifying the existence of the NPN cluster (200), and external electronic devices that are not participating in the NPN cluster (200) can perform a passive scan to receive the discovery beacon. The discovery beacon may include information necessary for synchronization with the NPN cluster (200). That is, the discovery beacon may include an information element related to the NPN cluster (200). For example, a discovery beacon may include at least one of a frame control (FC) field indicating a function of the signal (e.g., a beacon), a broadcast address, a media access control (MAC) address of a transmitting electronic device, a cluster identifier (ID), a sequence control field, a time stamp for a beacon frame, a beacon interval indicating a transmission interval of the discovery beacon, or capability information about an electronic device transmitting the discovery beacon. An external electronic device may discover an NPN cluster (200) based on this information and participate in the NPN cluster (200).

[0102] In one embodiment, an electronic device (210) (e.g., electronic device (101)) within a NAN cluster (200) can activate a DW at a time promised by a synchronized time clock time clock within the NAN cluster (200) and transmit a synchronization beacon (or beacon frame) and a service discovery frame (SDF) within the DW. The DW can be divided into time units (TUs, time units) in millisecond units. A DW for transmitting and receiving a synchronization beacon and SDF can occupy 16 time units (TUs) (16 TUs) and have a cycle (or interval) that repeats with 512 time units (512 TUs). Other electronic devices (220, 230, 240) located around the electronic device (210) can receive the synchronous beacon and / or SDF transmitted by the electronic device (210) and be synchronized to the time clock of the electronic device (210) and obtain NAN parameters of the NAN cluster (200).

[0103] A synchronization beacon may be periodically transmitted and received per DW to continuously maintain time and channel synchronization of electronic devices (210, 220, 230, 240) within a cluster (200). The synchronization beacon may be transmitted by a synchronization device among electronic devices within the cluster. For example, the synchronization device may include an anchor master electronic device, a master electronic device, or a non-master sync device defined in the NAN standard. In addition, the synchronization beacon may include information necessary for electronic devices to synchronize within the cluster. For example, the synchronization beacon may include at least one of an FC field indicating the function of the signal (e.g., a beacon), a broadcast address, a MAC address of the transmitting electronic device, a cluster identifier, a sequence control field, a timestamp for a beacon frame, a beacon interval indicating an interval between starting points of DW, or capability information for the transmitting electronic device. Furthermore, the synchronization beacon may include at least one NPN cluster (200) related information element. For example, information related to an NPN cluster (200) may include contents for services provided through the NPN cluster (200).

[0104] The SDF can be transmitted and received from the DW as needed to provide services to the discovered electronic devices (210, 220, 230, 240). The SDF can represent a signal for exchanging data via the NPN cluster (200). According to one embodiment, the SDF can include various fields. For example, the SDF can include a category or action field or frame, and can include information related to at least one NPN cluster (200).

[0105] In one embodiment, in a NAN cluster (200), various types of NAFs may exist, and the various types of NAFs may include messages for NDP (NAN data path) setup to perform data communication in a duration between DWs or messages for performing NAN ranging in a FTM (fine time measurement) duration. In one embodiment, NAN ranging may be a function capable of measuring a distance between two NAN devices included in the NAN cluster (200).

[0106] Each of the electronic devices (210, 220, 230, 240) within the cluster (200) operates in an active state only during the discovery window, and operates in a low-power state (e.g., sleep state) during the remaining period other than the discovery window, thereby reducing power consumption. For example, the DW is a period in which the electronic device is active (or wakes up) and is a period in which a lot of power is consumed, and the electronic device maintains a sleep state during periods other than the DW, thereby reducing power consumption. The electronic devices (210, 220, 230, 240) within the cluster (200) can be simultaneously activated at the start time of a synchronized discovery window (e.g., DW start), and simultaneously transition to a sleep state at the end time of the discovery window (e.g., DW end).

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

[0108] Referring to FIG. 3, an electronic device (300) (e.g., the electronic device (101) of FIG. 1, the electronic devices (210, 220, 230, 240) of FIG. 2) may include a communication circuit (310) (e.g., the wireless communication module (192) of FIG. 1) for transmitting and receiving signals using an external electronic device and one or more antennas, a memory (320) (e.g., the memory (130) of FIG. 1) for storing instructions for the operation of the electronic device (300), and a processor (330) (e.g., the processor (120) of FIG. 1) that may be implemented as one or more single-core processors or one or more multi-core processors.

[0109] The communication circuit (310) may include various circuit structures used for modulating and / or demodulating signals within the electronic device (300). For example, the communication circuit (310) may modulate a baseband signal into a radio frequency (RF) band signal to be output through an antenna (not shown), or may demodulate an RF band signal received through an antenna into a baseband signal and transmit the baseband signal to the processor (330).

[0110] The communication circuit (310) can support at least one of various wired and wireless communication methods. For example, the communication circuit (310) may be in the form of a chipset, or may be a sticker / barcode (e.g., a sticker including an NFC tag) containing information necessary for communication. The communication circuit (310) may support, for example, cellular communication, Wi-Fi (Wireless Fidelity), Wi-Fi Direct, Bluetooth, UWB (Ultra Wide Band), or NFC (Near Field Communication) communication.

[0111] In one embodiment, the communication circuit (310) may transmit or receive audio data to or from other electronic devices in the NAN cluster (e.g., the NAN cluster (200) of FIG. 2) over a frequency band (e.g., 2.4 GHz, 5 GHz, and / or 6 GHz) used by the electronic devices in the NAN cluster.

[0112] In one embodiment, the communication circuit (310) can support two frequency bands simultaneously, i.e., dual bands. That is, the communication circuit (310) can support real simultaneous dual band (RSDB) and / or dual band dual concurrent (DBDC) functions. Accordingly, the electronic device (300) can be connected to two frequency bands simultaneously. For example, the electronic device (300) can be connected to the 2.4 GHz band and the 5 GHz or 6 GHz band simultaneously.

[0113] Various types of data, such as programs and files, such as applications and commands, can be installed and stored in the memory (320). The processor (330) can access and use data stored in the memory (320), or store new data in the memory (320). In one embodiment, programs and data for transmitting and receiving audio data can be installed and stored in the memory (320).

[0114] The processor (330) can control the overall operation of the electronic device (300). In one embodiment, the processor (330) can control other components included in the electronic device (300) so that the electronic device (300) can transmit and receive audio data. For example, the processor (330) can execute programs, commands, etc. stored in the memory (320), read files stored in the memory (320), or store new files in the memory (320).

[0115] In one embodiment, the processor (330) performing an operation may mean that the processor (330) directly performs the operation, or may also mean that the processor (330) controls another component, for example, a communication circuit (310), to perform the operation.

[0116] In one embodiment, the processor (330) can transmit and receive audio data by executing a program stored in the memory (320). The instructions stored in the memory (200), when executed by the processor (330), can cause the electronic device (300) to perform an operation of performing neighbor awareness networking (NAN) service discovery in at least a discovery window (DW) to discover a plurality of external electronic devices included in a NAN cluster, an operation of establishing NDP (NAN data path) sessions with the plurality of external electronic devices in a first frequency band, an operation of scheduling radio resources to periodically allocate a DW in a second frequency band and allocate audio data transmission sections for transmitting audio data to the plurality of external electronic devices through their respective NDP sessions in the first frequency band, an operation of performing NAN synchronization and NAN service discovery in the DW, and an operation of transmitting audio data to the plurality of external electronic devices through their respective NDP sessions in the audio data transmission sections. At this time, 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.

[0117] In one embodiment, the instructions stored in the memory (200), when executed by the processor (330), may cause the electronic device (300) to perform an operation of scheduling wireless resources so that the transmission interval of audio data in each NDP session is the same, based on at least one of the number of NDP sessions, the size of audio data, and the type of audio data.

[0118] In one embodiment, the instructions stored in the memory (200), when executed by the processor (330), may cause the electronic device (300) to perform an operation of scheduling wireless resources so that the intervals for transmitting audio data for at least some NDP sessions among each NDP session overlap. In addition, in an interval in which audio data is not transmitted and is not a DW, the electronic device (300) may perform an operation of scheduling wireless resources so as to communicate with an external electronic device not included in the NAN cluster or provide a service unrelated to a NAN service by using at least one or more of the first frequency band and the second frequency band. In addition, in the overlapping interval, the electronic device may perform an operation of changing the priority based on an access category for at least some NDP sessions among each NDP session.

[0119] In one embodiment, the instructions stored in the memory (200) may, when executed by the processor (330), cause the electronic device (300) to perform operations such as scheduling radio resources to allocate an additional DW in a third frequency band, switching a communication circuit from a first frequency band to a third frequency band in a section where the additional DW is allocated to perform NAN synchronization and NAN service discovery in the additional DW, and switching the communication circuit from the third frequency band to the first frequency band in a section after the additional DW to transmit audio data to a plurality of external electronic devices through respective NDP sessions in an audio data transmission section.

[0120] In one embodiment, scheduling is performed in slot units, a slot includes a plurality of sub-slots, and when instructions stored in the memory (200) are executed by the processor (330), if an interval occurs in which transmission of audio data is not scheduled within a slot allocated to the first external electronic device, scheduling can be performed in sub-slot units to allocate an idle sub-slot in which audio data for the first external electronic device is not transmitted to the second external electronic device.

[0121] In one embodiment, the instructions stored in the memory (200), when executed by the processor (330), may cause the electronic device (300) to perform scheduling on a sub-slot basis to perform retransmission in an idle sub-slot when transmission of audio data in a slot allocated to the first external electronic device fails.

[0122] FIG. 4 is a diagram illustrating a network topology of a NAN cluster according to one embodiment.

[0123] Referring to FIG. 4, a TV (400), a sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440) form a NAN cluster. At this time, each device can form a NAN cluster according to the Wi-Fi Aware specification (or standard). The TV (400) and the smartphone (450) perform direct communication between devices. At this time, the TV (400) and the smartphone (450) can perform direct communication between devices according to the Wi-Fi Direct specification (or standard). In addition, the TV (400) and the smartphone (450) are each connected to an AP (access point) (460). At this time, the TV (400) and the smartphone (450) can communicate with the AP (460) according to the Wi-Fi specification (or standard).

[0124] In FIG. 4, a portable speaker (420) and a smartphone (450) with mobility can join or leave a NAN cluster at any time. Accordingly, the network topology can change rapidly, and synchronization between devices can occur frequently.

[0125] In addition, the TV (400), sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440) form a NAN cluster, thereby supporting group play for audio data. At this time, as the number of devices connected to the TV (400), which is an electronic device having a sound source, increases, cases of synchronization mismatch or synchronization breakdown occur more frequently. For example, as the number of devices connected to the TV (400) increases, the congestion of the wireless channel increases, which increases the possibility of latency and jitter occurring. In addition, as the number of audio data to be transmitted from the TV (400), which is an electronic device having a sound source, increases, the possibility of delay occurring increases.

[0126] An audio data transmission method and device according to one embodiment can transmit audio data that is robust to changes in network topology while performing rapid synchronization. Furthermore, it can provide adaptive synchronization that reflects the user's location and spatial characteristics, as well as high-quality sound sources.

[0127] Fig. 5 is a flowchart illustrating an audio data transmission method according to one embodiment.

[0128] Referring to FIG. 5, a method is illustrated in which an electronic device (300 of FIG. 3 or 400 of FIG. 4) included in a NAN cluster (200) transmits audio data to an external electronic device (410, 420, 430, 440 of FIG. 4) included in the NAN cluster (200).

[0129] The electronic device (300) is a NAN device that has already participated in the NAN cluster (200). More specifically, the electronic device (300) can perform a passive scan to receive a discovery beacon broadcasted through the DW. The discovery beacon can include information necessary for synchronization with the NPN cluster (200). The 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 join the NPN cluster (200).

[0130] In operation 510, the electronic device (300) can perform neighbor awareness networking (NAN) service discovery in a discovery window (DW) to discover multiple external electronic devices included in a NAN cluster.

[0131] In one embodiment, the electronic device (300) can activate the DW at a time promised by a synchronized time clock time clock within the NAN cluster (200) and transmit a synchronous beacon (or beacon frame) and a service discovery frame (SDF) within the DW.

[0132] In one embodiment, a synchronization beacon may be periodically transmitted and received per DW to continuously maintain time and channel synchronization of electronic devices (210, 220, 230, 240) within a cluster (200). The synchronization beacon may include information necessary for electronic devices to synchronize within the cluster. For example, the synchronization beacon may include at least one of an FC field indicating the function of the signal (e.g., a beacon), a broadcast address, a MAC address of the transmitting electronic device, a cluster identifier, a sequence control field, a timestamp for the beacon frame, a beacon interval indicating the interval between starting points of the DW, or capability information for the transmitting electronic device. Furthermore, the synchronization beacon may include at least one NPN cluster (200) related information element. For example, the NPN cluster (200) related information may include contents for a service provided through the NPN cluster (200).

[0133] In one embodiment, the SDF may be transmitted and received from the DW as needed to provide services to the discovered electronic devices (210, 220, 230, 240). The SDF may represent a signal for exchanging data via the NPN cluster (200). According to one embodiment, the SDF may include various fields. For example, the SDF may include a category or action field or frame, and may include information related to at least one NPN cluster (200).

[0134] In one embodiment, the electronic device (300) may perform asynchronous service discovery (USD). At this time, the electronic device (300) may act as a publisher, transmit at least one unsolicited NAN SDF publish message, and receive a NAN SDF subscribe message from an external electronic device acting as a subscriber. Thereafter, the electronic device (300) may discover the external electronic device by receiving a follow-up message from the external electronic device. In one embodiment, the electronic device (300) may transmit a solicited NAN SDF publish message to the external electronic device before receiving the follow-up message.

[0135] In one embodiment, the electronic device (300) may perform discovery via NAN instant communication. The electronic device (300) may enter an instant communication mode, for example, via NFC, BLE, and / or an out-of-band (OOB) method triggered by a user action, to quickly perform service discovery.

[0136] In operation 520, the electronic device (300) may establish NDP (NAN data path) sessions with a plurality of external electronic devices in a first frequency band, respectively. In one embodiment, the electronic device (300) may establish an NDP session between the electronic device (300) and the external electronic device by transmitting a data path request message to the external electronic device discovered in operation 510 and receiving a data path response message from the external electronic device that received the data path request message. By performing this process for each of the plurality of external electronic devices, the electronic device (300) may establish an NDP session with each of the plurality of external electronic devices.

[0137] In one embodiment, the electronic device (300) may form an NDP session in a first frequency band. In this case, the first frequency band may include the 2.4 GHz band. In addition, the electronic device (300) may transmit and receive a data path request message and a data path response message through the first frequency band to form an NDP session in the first frequency band.

[0138] In operation 530, the electronic device (300) may schedule radio resources to allocate DW in the second frequency band and allocate audio data transmission sections for transmitting audio data to multiple external electronic devices through their respective NDP sessions in the first frequency band. In one embodiment, 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.

[0139] In one embodiment, the electronic device (300) can perform scheduling in units of one slot, which is composed of 16 time units (TUs). Here, the slot may include a NAN slot. At this time, the electronic device (300) can perform scheduling in a cycle that repeats with 512 TUs, i.e., 32 slots. Here, one time unit may be 1.024 ms. In addition, the electronic device (300) can allocate wireless resources to multiple external electronic devices in a round robin manner. At this time, the electronic device (300) can allocate wireless resources of a preset length to each NDP session in order to support group play of multiple external electronic devices. For example, the electronic device (300) can perform scheduling at intervals of 128 TUs for each NDP session.

[0140] In one embodiment, the electronic device (300) may schedule wireless resources so that the transmission interval of audio data in each NDP session is the same based on at least one of the number of NDP sessions, the size of audio data, and the type of audio data. In addition, the electronic device (300) may schedule wireless resources so that the sections for transmitting audio data for at least some NDP sessions among each NDP session overlap. Furthermore, the electronic device (300) may change the priority based on the access category for at least some NDP sessions among each NDP session in the overlapping sections. In one embodiment, the electronic device (300) may schedule wireless resources so as to communicate with an external electronic device that is not included in the NAN cluster or to provide a service that is not related to the NAN service by using at least one of the first frequency band and the second frequency band in a section in which audio data is not transmitted and is not a DW.

[0141] In one embodiment, the electronic device (300) schedules radio resources to allocate an additional DW in a third frequency band, switches a communication circuit from a first frequency band to a third frequency band in a section where the additional DW is allocated to perform NAN synchronization and NAN service discovery in the additional DW, and switches the communication circuit from the third frequency band to the first frequency band in a section after the additional DW to transmit audio data to a plurality of external electronic devices through each NDP session in an audio data transmission section. Here, the third frequency band may include a 5 GHz band.

[0142] In one embodiment, the electronic device (300) may measure the wireless channel quality and / or distance with an external electronic device and perform scheduling based on the measurement results. In one embodiment, the electronic device (300) may measure the wireless channel quality with the external electronic device by transmitting and receiving synchronization beacons with the external electronic device in the DW. The wireless channel quality may be used to determine transmission intervals and priorities when performing scheduling for multiple NDP sessions. In addition, the electronic device (300) may perform FTM ranging to measure the distance with the external electronic device by performing a fine time measurement (FTM) procedure. The distance measurement results may be used for audio synchronization between the multiple external electronic devices. For example, the distance measurement results may be used for playback timing synchronization according to the position of an external electronic device, such as a speaker, or for audience listening synchronization considering the relative position between the user and the external electronic device.

[0143] This will be described in more detail with reference to FIGS. 6 to 11.

[0144] FIG. 6 is a diagram for explaining a scheduling method according to one embodiment.

[0145] Referring to FIG. 6, a TV (400), which is an electronic device having a sound source, has NDP sessions (NDP #1, NDP #2, NDP #3, NDP #4) formed with a sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440), respectively. The TV (400), which is an electronic device having a sound source, performs scheduling using a round robin method in a repeating cycle for 512 TUs, and can sequentially allocate wireless resources for 128 TUs to NDP #2, NDP #3, and NDP #4 starting from NDP #1.

[0146] In one embodiment, each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) may be formed in one frequency band, for example, the 2.4 GHz band, the 5 GHz band, or the 6 GHz band.

[0147] In FIGS. 7 to 11 , the TV (400), an electronic device having a sound source, can support two frequency bands simultaneously, i.e., dual bands. That is, the TV (400) can support RSDB (real simultaneous dual band) and / or DBDC (dual band dual concurrent) functions. Accordingly, the TV (400) can be connected to two frequency bands simultaneously. For example, the TV (400) can be connected to a 2.4 GHz band and a 5 GHz or 6 GHz band simultaneously. In addition, the TV (400) can perform scheduling in a cycle that repeats with 512 TUss, i.e., 32 slots.

[0148] FIG. 7 is a diagram for explaining a scheduling method according to one embodiment.

[0149] Referring to FIG. 7, a TV (400), which is an electronic device having a sound source, forms an NDP session (NDP #1, NDP #2, NDP #3, NDP #4) with a sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440) in the 5 GHz band, respectively.

[0150] The TV (400) may schedule radio resources to allocate DW0 in the first slot among 32 slots in the 2.4 GHz band and to allocate audio data transmission sections for transmitting audio data through each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) in the 5 GHz band. At this time, the TV (400) may evenly allocate 32 TUs, i.e., 2 slots, within 128 TUs, i.e., 8 slots, to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4). According to one embodiment, by scheduling radio resources multiple times for a short period of time (32 TUs) to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4), low delay and low jitter may be implemented when transmitting audio data.

[0151] In one embodiment, the TV (400) may perform an operation of scheduling wireless resources so that the transmission interval of audio data in each NDP session is the same, based on at least one of the number of NDP sessions, the size of audio data, and the type of audio data.

[0152] FIG. 8 is a diagram for explaining a scheduling method according to one embodiment.

[0153] Referring to FIG. 8, a TV (400), which is an electronic device having a sound source, forms an NDP session (NDP #1, NDP #2, NDP #3, NDP #4) with a sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440) in the 5 GHz band, respectively.

[0154] TV (400) can schedule radio resources to allocate DW0 in the first slot among 32 slots in the 2.4 GHz band and to allocate audio data transmission sections for transmitting audio data through each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) in the 5 GHz band. At this time, TV (400) can evenly allocate 32 TUs, i.e., 2 slots, within 128 TUs, i.e., 8 slots, to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4).

[0155] In one embodiment, the TV (400) may schedule wireless resources so that the TUs allocated to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) overlap. In this case, non-DW intervals (810, 820, 830, 840) in which audio data is not transmitted may occur. The TV (400) may schedule wireless resources in the non-DW intervals in which audio data is not transmitted, using at least one of the 2.4 GHz band and the 5 GHz band, to communicate with external electronic devices not included in the NAN cluster or to provide services unrelated to NAN services. In this case, if a frequency band other than the 5 GHz band in which the NDP sessions (NDP #1, NDP #2, NDP #3, NDP #4) are formed, for example, the 6 GHz band, is used to communicate with external electronic devices or to provide services unrelated to NAN services, overhead due to channel switching may occur. However, according to one embodiment of the present disclosure, there is an advantage in that limited wireless resources can be used efficiently even when considering overhead due to channel switching.

[0156] Additionally, in one embodiment, the TV (400) may perform an operation of changing the priority based on the access category for at least some NDP sessions among the overlapping sections. That is, by changing the access category for some NDP sessions, audio data may be scheduled to be transmitted preferentially in an NDP session with a higher priority among the overlapping NDP sessions. The operation of changing the access category will be described in more detail below.

[0157] FIG. 9 is a diagram for explaining a scheduling method according to one embodiment.

[0158] Referring to FIG. 9, a TV (400), which is an electronic device having a sound source, forms an NDP session (NDP #1, NDP #2, NDP #3, NDP #4) with a sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440) in the 5 GHz band, respectively.

[0159] TV (400) can schedule radio resources to allocate DW0 in the first slot among 32 slots in the 2.4 GHz band and to allocate audio data transmission sections for transmitting audio data through each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) in the 6 GHz band. At this time, TV (400) can evenly allocate 32 TUs, i.e., 2 slots, within 128 TUs, i.e., 8 slots, to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4).

[0160] In one embodiment, the TV (400) may schedule wireless resources so that the TUs allocated to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) overlap. In this case, non-DW intervals (810, 820, 830, 840) in which audio data is not transmitted may occur. The TV (400) may schedule wireless resources in the non-DW intervals in which audio data is not transmitted, using at least one of the 2.4 GHz band and the 5 GHz band, to communicate with external electronic devices not included in the NAN cluster or to provide services unrelated to NAN services. In this case, if a frequency band other than the 6 GHz band in which the NDP sessions (NDP #1, NDP #2, NDP #3, NDP #4) are formed, for example, the 5 GHz band, is used to communicate with external electronic devices or to provide services unrelated to NAN services, overhead due to channel switching may occur. However, according to one embodiment of the present disclosure, there is an advantage in that limited wireless resources can be used efficiently even when considering overhead due to channel switching.

[0161] Additionally, in one embodiment, the TV (400) may perform an operation of changing the priority based on the access category for at least some NDP sessions among the overlapping sections. That is, by changing the access category for some NDP sessions, audio data may be scheduled to be transmitted preferentially in an NDP session with a higher priority among the overlapping NDP sessions. The operation of changing the access category will be described in more detail below.

[0162] FIG. 10 is a diagram for explaining a scheduling method according to one embodiment.

[0163] Referring to FIG. 10, a TV (400), which is an electronic device having a sound source, forms an NDP session (NDP #1, NDP #2, NDP #3, NDP #4) with a sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440) in the 5 GHz band, respectively.

[0164] TV (400) can schedule radio resources to allocate DW0 in the first slot among 32 slots in the 2.4 GHz band and to allocate audio data transmission sections for transmitting audio data through each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) in the 6 GHz band. At this time, TV (400) can evenly allocate 32 TUs, i.e., 2 slots, within 128 TUs, i.e., 8 slots, to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4).

[0165] In one embodiment, the TV (400) may schedule radio resources so that the TUs allocated to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) overlap. In addition, the TV (400) may additionally allocate DW16 in the seventeenth slot among 32 slots in the 5 GHz band. The audio data transmission section for each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) may be allocated so as not to overlap with DW0 and DW16. The TV (400) may perform NAN synchronization and NAN service discovery by switching the communication circuit from the 6 GHz band to the 5 GHz band in the section to which DW16 is allocated, and may transmit audio data by switching the communication circuit from the 5 GHz band to the 6 GHz band again after DW16.

[0166] In one embodiment, more accurate time synchronization can be provided by allocating DWs capable of performing NAN synchronization to two slots.

[0167] Additionally, in one embodiment, the TV (400) may perform an operation of changing the priority based on the access category for at least some NDP sessions among the overlapping sections. That is, by changing the access category for some NDP sessions, audio data may be scheduled to be transmitted preferentially in an NDP session with a higher priority among the overlapping NDP sessions. The operation of changing the access category will be described in more detail below.

[0168] Fig. 11 is a drawing for explaining a scheduling method according to one embodiment.

[0169] Referring to FIG. 11, a TV (400), which is an electronic device having a sound source, forms NDP sessions (NDP #1-1, NDP #2-1, NDP #3-1, NDP #4-1) with a sound bar (410), a portable speaker #1 (420), a speaker #2 (430), and a speaker #3 (440) in a 6 GHz band, respectively. Furthermore, the TV (400) can further form NDP sessions (NDP #1-2, NDP #2-2, NDP #3-2, NDP #4-2) with a sound bar (410), a portable speaker #1 (420), a speaker #2 (430), and a speaker #3 (440) in a 2.4 GHz band, respectively.

[0170] The TV (400) may schedule radio resources to allocate audio data transmission sections for transmitting audio data through each NDP session (NDP #1-2, NDP #2-2, NDP #3-2, NDP #4-2) in the 2.4 GHz band, to allocate DW16 in the seventeenth slot among 32 slots in the 5 GHz band, and to allocate audio data transmission sections for transmitting audio data through each NDP session (NDP #1-1, NDP #2-1, NDP #3-1, NDP #4-1) in the 6 GHz band. At this time, the TV (400) may evenly allocate 32 TUs, i.e., 2 slots, within 128 TUs, i.e., 8 slots, to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4).

[0171] In one embodiment, TV (400) may schedule radio resources so that TUs allocated to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) overlap. In addition, TV (400) may additionally allocate DW0 in the first slot among 32 slots in the 2.4 GHz band. TV (400) may perform NAN synchronization and NAN service discovery by switching the communication circuit from the 6 GHz band to the 5 GHz band in the section to which DW16 is allocated, and may transmit audio data by switching the communication circuit from the 5 GHz band to the 6 GHz band again after DW16.

[0172] In one embodiment, a high data rate can be provided by forming an NDP session in two bands, and scheduling flexibility can be increased and more accurate time synchronization can be provided by selectively allocating a DW capable of performing NAN synchronization to two slots.

[0173] Returning to the description of Figure 5,

[0174] In operation 540, the electronic device (300) can perform NAN synchronization and NAN service discovery in the DW, and transmit audio data to multiple external electronic devices through each NDP session in the audio data transmission section.

[0175] FIGS. 12 to 14 are diagrams for explaining sub-slot scheduling according to one embodiment.

[0176] The electronic device (300) can perform scheduling in units of 1 slot, which is composed of 16 time units (TUs). However, when scheduling in units of 1 slot, i.e., 16 TUs, an external electronic device may be allocated more time than necessary. In one embodiment, the electronic device (300) can perform efficient scheduling by performing scheduling in units of sub-slots rather than scheduling in units of slots. A sub-slot may be composed of 1 TU, 2 TUs, 4 TUs, or 8 TUs.

[0177] In one embodiment, the electronic device (300) can obtain information related to a data rate required by a codec (e.g., pulse code modulation (PCM), Dolby Digital, Dolby Digital Plus) used for audio signal processing in an upper layer. In addition, the electronic device (300) can measure the quality of a wireless channel with an external electronic device. More specifically, the electronic device (300) can measure the quality of a wireless channel with an external electronic device by transmitting and receiving a synchronization beacon with the external electronic device in a DW. Based on the information about the wireless channel quality, the electronic device can determine a modulation and coding scheme (MCS) level to be used for audio data transmission, and can estimate the throughput of a physical channel based on the MCS level. The electronic device (300) can allocate a slot or sub-slot to the external electronic device based on the estimated throughput and the data rate required by the codec. According to one embodiment, efficient scheduling can be performed.

[0178] Referring to FIG. 12, the electronic device (300) can perform scheduling in a cycle that repeats with 512 TUs (1210, 1220), i.e., 32 slots. The electronic device having a sound source, a TV (400), forms NDP sessions (1231, 1232, 1233, 1234) with the sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440), respectively. Each NDP session (1231, 1232, 1233, 1234) can equally allocate 32 TUs, i.e., 2 slots.

[0179] At this time, the 512 TUs may include a DW (1230) (1210), or as illustrated in FIG. 7, the DW may be allocated to a different band and all 512 TUs may be allocated to each NDP session (1231, 1232, 1233, 1234) (1220).

[0180] Referring to FIG. 13, two slots allocated to each NDP session may have idle periods (1311, 1312, 1313, 1314) that are not used for audio data transmission. According to one embodiment, scheduling may be performed on a sub-slot basis for these idle periods that are not used for audio data transmission, thereby efficiently utilizing radio resources.

[0181] In one embodiment, the electronic device (300) can predict the occurrence of an idle period based on the estimated throughput and the data rate required by the codec. At this time, the electronic device (300) can perform scheduling in sub-slot units so that an idle period does not occur in the middle of 512 TUs. More specifically, the electronic device (300) can sequentially configure the wireless resources allocated to each NDP session (1231, 1232, 1233, 1234). In this case, an idle period (1320) may occur in the last section of the 512 TUs. The electronic device (300) can utilize this idle period (1320) for additional data transmission.

[0182] Referring to FIG. 14, the electronic device (300) may perform scheduling in units of sub-slots so that an idle interval (1410) is located in the last interval of 512 TUs. In one embodiment, this idle interval (1410) may also be referred to as an idle sub-slot. When transmitting audio data, the electronic device (300) may fail to transmit audio data through an NDP session with speaker #2 (430) in interval 1421 due to a predetermined reason, for example, failure of contention with another WLAN. In one embodiment, the electronic device (300) may schedule to retransmit the audio data using the idle interval (1421).

[0183] FIG. 15 is a diagram illustrating an operation for changing priorities when wireless resources allocated to different NDP sessions overlap according to one embodiment.

[0184] The electronic device (300) may perform an operation of scheduling wireless resources so that the sections for transmitting audio data for at least some of the NDP sessions among each NDP session overlap (1510, 1520, 1530, 1540). In the overlapping sections (1510, 1520, 1530, 1540), audio data may be transmitted for only one NDP session. In one embodiment, the electronic device (300) may perform an operation of changing the priority based on an access category for at least some of the NDP sessions among each NDP session in the overlapping sections (1510, 1520, 1530, 1540).

[0185] Referring to FIG. 15, a TV (400), which is an electronic device having a sound source, forms an NDP session (NDP #1, NDP #2) with a sound bar (410) and a portable speaker #1 (420), respectively. The TV (400) can schedule wireless resources to allocate DW0 in the first slot among 32 slots in the 2.4 GHz band and to allocate an audio data transmission section for transmitting audio data through each NDP session (NDP #1, NDP #2) in the 5 GHz band. At this time, the TV (400) can evenly allocate 32 TUs, i.e., 2 slots, within 128 TUs, i.e., 8 slots, to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4). In one embodiment, TV (400) can schedule wireless resources such that TUs assigned to each NDP session (NDP #1, NDP #2, NDP #3, NDP #4) overlap.

[0186] TV (400) can perform an operation of changing the priority based on the access category for at least some NDP sessions among each NDP session (NDP #1, NDP #2) in the overlap section (1510, 1520, 1530, 1540). This is described with reference to FIG. 16.

[0187] FIG. 16 is a diagram for explaining an access category according to one embodiment.

[0188] Referring to FIG. 16, access categories can be classified into AC_BK (Background), AC_BE (Best Effort), AC_VI (Video), and AC_VO (Voice), and parameter values ​​of CWmin, CWmax, AIFSN, and TXOP Limit are set for each access category. The access category classification and parameter values ​​are only examples and are not limited thereto and can be set in various ways. AC_VO (Voice) has the highest priority, and the priority decreases as it goes to AC_BK (Background). An access category with a relatively high priority can be processed before an access category with a relatively low priority. The electronic device (300) can determine the transmission priority in the overlap section (1510, 1520, 1530, 1540) by assigning an access category to each NDP session. In one embodiment, assignment of access categories may be performed arbitrarily to determine priorities between NDP sessions, regardless of the services actually provided by the NDP sessions.

[0189] In FIG. 15, when the sound bar (410) is used as the main audio output device, the TV (400) can assign the access category of the NDP session (NDP #1) with the sound bar (410) as AC_VO with high priority, and assign the access category of the NDP session (NDP #2) with the portable speaker #1 (420) as AC_BE. In this case, wireless resources can be scheduled to the NDP session (NDP #1) with high priority in the overlapping sections (1510, 1520, 1530, 1540).

[0190] In one embodiment, the electronic device is described as a TV, and the external electronic devices are described as sound bar (410), portable speaker #1 (420), speaker #2 (430), and speaker #3 (440), but the present invention is not limited thereto, and the electronic device and the external electronic device may include various types of electronic devices. In one embodiment, the electronic device may include various electronic devices having a sound source (e.g., a smartphone, an MP3 player, an audio player), and the external electronic device may include various electronic devices that receive and play a sound source from the electronic device (e.g., a speaker, a Bluetooth speaker, an earphone, an earbud, a headphone). Furthermore, the external electronic device is referred to as an external electronic device to distinguish it from the electronic device, but may be referred to as an electronic device. In addition, the electronic device may operate as an external electronic device.

[0191] FIG. 17 is a drawing for explaining an interface of an electronic device according to one embodiment.

[0192] Referring to FIG. 17, interface #1 and interface #2 may be defined to reduce delay in processing audio data within the electronic device (300). In one embodiment, interface #1 may be defined between the firmware (e.g., Chipset Vendor Implementation based Firmware) (or driver) of the electronic device (300) and the application layer. In addition, in one embodiment, interface #2 may be defined between the firmware (e.g., Chipset Vendor Implementation based Firmware) (or driver) of the electronic device (300) and the Wi-Fi service (e.g., Wi-Fi Services supported by Operating System) layer and between the Wi-Fi service layer and the application layer. According to one embodiment, TSF (timing synchronization function) information, e.g., a TSF value, may be quickly transmitted to a higher layer, i.e., an application layer, thereby reducing delay time.

[0193] FIG. 18 and FIG. 19 are drawings for explaining commands according to one embodiment.

[0194] The commands defined in FIG. 18 and FIG. 19 can be used in interface #1 and interface #2 defined in FIG. 17.

[0195] FIG. 20 is a diagram for explaining audio alignment in a framework according to one embodiment.

[0196] Referring to FIG. 20, an audio DSP (digital signal processor) in an electronic device, i.e., a TV, can encode an audio signal and transmit the encoded audio stream to an audio player. At this time, if the audio signal processed by the DSP is directly replayed in the TV, the audio synchronization may be out of sync or may be broken due to reasons such as the processing time of the audio signal in the electronic device, the transmission time of the audio data packet, and the processing time of the audio signal in an external electronic device, i.e., a sound bar (S-bar), a speaker (speaker #1). Therefore, in order to delay the output of the audio signal in the electronic device, the electronic device may include an audio delay buffer.

[0197] The TV's transmission (Tx) player can convert the encoded audio stream into a packet element stream (PES) format that includes PTS (present time stamp) information and ESCR (elementary stream clock reference) information. Here, the PTS information is information related to the time at which the player should output audio, and the ESCR information is information related to the reference time referenced by the player. Therefore, the PES information can be understood as including reference time information and information regarding when the audio should be output based on the reference time information. Afterwards, the TV's transmission (Tx) player can generate an audio packet including the PES format and transmit it to the Wi-Fi driver / firmware.

[0198] The TV's transmit (Tx) Wi-Fi driver / firmware converts audio packets into 802.11 MAC Frame format. At this time, the access category for the audio packets can be set. The TV's transmit (Tx) Wi-Fi driver / firmware can then forward the 802.11 MAC Frame to the Wi-Fi module.

[0199] The TV's transmit (Tx) Wi-Fi module can perform synchronization by periodically transmitting and receiving a synchronization beacon and SDF from external electronic devices, i.e., a sound bar (S-bar), a speaker (speaker #1), and a DW. In one embodiment, the synchronization beacon can include TSF (timing synchronization function) information, for example, a TSF value. The TV's transmit (Tx) Wi-Fi module and the sound bar's receive (Rx) Wi-Fi module can obtain TSF information by transmitting and receiving synchronization beacons.

[0200] The transmit (Tx) Wi-Fi module of the TV and the receive (Rx) Wi-Fi module of the sound bar (S-bar) may perform a fine time measurement (FTM) procedure for ranging. More specifically, the transmit (Tx) Wi-Fi module of the TV and the receive (Rx) Wi-Fi module of the sound bar (S-bar) may transmit and receive multiple FTM frames (e.g., action frames for FTM) in a time window referred to as a burst instance. Within a burst instance, the transmit (Tx) Wi-Fi module of the TV and / or the receive (Rx) Wi-Fi module of the sound bar (S-bar) may perform fine timing measurement based on each FTM frame and its ACK. More specifically, the transmit (Tx) Wi-Fi module of the TV and the receive (Rx) Wi-Fi module of the sound bar (S-bar) exchange FTM frames and ACK frames to measure the time of flight or round trip time (RTT). At this time, the distance between the TV and the sound bar can be calculated by checking the departure time information of the FTM frame and the arrival time information of the corresponding ACK frame. In one embodiment, the receiving (Rx) Wi-Fi module of the sound bar (S-bar) can obtain FTM information, for example, an FTM value, as a result of the FTM procedure.

[0201] The TV's transmit (Tx) Wi-Fi module transmits audio data packets containing 802.11 MAC Frames to the time-synchronized sound bar (S-bar).

[0202] The Rx Wi-Fi module of the sound bar (S-bar) can receive audio data packets from the TV and transmit 802.11 MAC Frames to the Rx Wi-Fi driver / firmware of the sound bar (S-bar).

[0203] The sound bar (S-bar)'s receiving (Rx) Wi-Fi driver / firmware can convert 802.11 MAC Frames into audio packets.

[0204] According to the prior art, the receiving (Rx) Wi-Fi driver / firmware of the sound bar (S-bar) transmits the PES DATA included in the audio packet and the encoded audio stream to the framework of the sound bar (S-bar). The framework of the sound bar (S-bar) checks the MCU (micro control unit) local time and the PES data, and transmits the encoded audio stream to the audio DSP. The audio DSP decodes the encoded audio stream and outputs an audio signal based on the PES data.

[0205] In comparison, in one embodiment, the receiving (Rx) Wi-Fi driver / firmware of the sound bar (S-bar) can check the TSF value and FTM value in the 802.11 MAC Frame and pass the TSF value and FTM value directly to the framework.

[0206] The framework can check the MCU local time and modify the PES data based on the MCU local time and the TSF and FTM values ​​received from the receiving (Rx) Wi-Fi driver / firmware. More specifically, the framework can calculate a new ESCR (NEW ESCR) and an average latency. In one embodiment, the new ESCR can be calculated using the following mathematical expression 1.

[0207] New ESCR = T(RX_TSF_value, MCU_Local_Time) (Equation 1)

[0208] That is, the new ESCR can be calculated based on the received TSF value and the MCU local time.

[0209] Additionally, the framework can calculate an average latency based on the TSF and FTM values. This average latency can be used to calculate the PTS. In one embodiment, the PTS can be calculated in the framework using the following mathematical formula:

[0210] PTS = P(New ESCR, Δ) (Equation 2)

[0211] That is, the PTS can be calculated based on the new ESCR and Δ, where Δ can include at least one of a maximum value among preset delay requirements or an average delay time calculated based on the TSF value and the FTM value.

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

[0213] After that, the sound bar (S-bar) decodes the encoded audio stream in the DSP (digital signal processor) and outputs an audio signal based on the modified PES data.

[0214] In one embodiment, audio playback time alignment can be performed at a higher layer, i.e., a framework.

[0215] FIG. 21 is a drawing for explaining audio alignment in an audio player according to one embodiment.

[0216] Referring to Fig. 21, the operation of the transmitting side, i.e., the TV, is the same as the operation of the TV in Fig. 20, so it is omitted.

[0217] In FIG. 21, the Rx Wi-Fi module of the sound bar (S-bar) can receive audio data packets from the TV and transmit the 802.11 MAC Frame to the Rx Wi-Fi driver / firmware of the sound bar (S-bar).

[0218] In one embodiment, the receiving (Rx) Wi-Fi driver / firmware of the sound bar (S-bar) can check the TSF value and FTM value in the 802.11 MAC Frame and directly pass the TSF value and FTM value to the framework. At this time, the receiving (Rx) Wi-Fi driver / firmware can also pass the TSF value and FTM value to the receiving (Rx) player.

[0219] Fig. 21 describes how audio playback time alignment is performed in the receiving (Rx) player, rather than in the framework, unlike Fig. 20.

[0220] The framework checks the MCU local time and obtains the TSF and FTM values ​​from the MCU local time and the receiving (Rx) Wi-Fi driver / firmware. Then, the framework calibrates the current clock reference and / or the MCU local time based on the TSF and / or FTM values. Then, it transmits the updated current clock to the receiving (Rx) player. At this time, the framework may also transmit the TSF and FTM values ​​to the receiving (Rx) player.

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

[0222] In one embodiment, the new ESCR can be calculated by the following mathematical formula:

[0223] New ESCR = T(RX_TSF_value, Updated_Current_Time) (Equation 3)

[0224] Here, Updated_Current_Time may include an updated current time received from the framework. The updated current time may include a time at which the framework calibrates the current reference time (current clock reference) and / or the MCU local time based on the TSF value and / or the FTM value.

[0225] That is, the new ESCR can be calculated as the sum of the MCU local time and the received TSF value.

[0226] Additionally, the receiving (Rx) player can calculate an average latency based on the TSF and FTM values. This average latency can be used to calculate the PTS. In one embodiment, the PTS in the receiving (Rx) player can be calculated using the following mathematical formula.

[0227] PTS = P(New ESCR, Δ) (Equation 2)

[0228] That is, the PTS can be calculated based on the new ESCR and Δ, where Δ can include at least one of a maximum value among preset delay requirements or an average delay time calculated based on the TSF value and the FTM value.

[0229] In one embodiment, the receiving (Rx) player may modify the PES header to include modified PTS information and a new ESCR.

[0230] After that, the sound bar (S-bar) decodes the encoded audio stream in the DSP (digital signal processor) and outputs an audio signal based on the modified PES data.

[0231] In one embodiment, audio playback time alignment can be performed at a higher layer, i.e., a framework.

[0232] In one embodiment, audio playback time alignment can be performed at a higher layer, i.e., at the player.

[0233] In one embodiment, the receiving device can avoid delays within the device and play audio signals at precise times by passing the TSF value directly from the Wi-Fi driver / firmware to the framework via a newly defined interface.

[0234] In one embodiment, the electronic device is described as a TV, and the external electronic device is described as a sound bar (S-bar) and a speaker (speaker #1), but the present invention is not limited thereto, and the electronic device and the external electronic device may include various types of electronic devices. In one embodiment, the electronic device may include various electronic devices having a sound source (e.g., a smartphone, an MP3 player, an audio player), and the external electronic device may include various electronic devices that receive and play a sound source from the electronic device (e.g., a speaker, a Bluetooth speaker, an earphone, an earbud, a headphone).

[0235] A method for aligning audio of an external electronic device according to one embodiment is as follows.

[0236] An external electronic device can perform an operation of discovering an electronic device included in a NAN cluster by performing NAN (neighbor awareness networking) service discovery in a discovery window (DW), and perform an operation of establishing an NDP (NAN data path) session with the electronic device.

[0237] Additionally, the external electronic device can perform an operation of receiving a synchronization signal from the DW from the electronic device to obtain a TSF (timing synchronization function) value, and an operation of performing an FTM (fine time measurement) procedure with the electronic device to obtain an FTM value.

[0238] An external electronic device can perform an operation to perform playback time alignment of an audio signal based on the TSF value and the FTM value.

[0239] In one embodiment, the act of performing playback time alignment of an audio signal may include, by a framework of an external electronic device, obtaining a local time, directly receiving a TSF value and an FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface, obtaining a new ESCR value based on the local time and the TSF value, obtaining an average latency based on the FTM value, obtaining a present time stamp (PTS) value based on the new ESCR value and the average latency, and determining a playback time of the audio signal based on the PTS.

[0240] In one embodiment, the operation of performing playback time alignment of an audio signal may include: obtaining, by the framework of the external electronic device, a local time; directly receiving a TSF value and an FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface; calibrating a current clock reference; and transmitting the TSF value, the FTM value, and the updated current time to the player. In this case, the operation may include: receiving, by the player of the external electronic device, the TSF value, the FTM value, and the updated current time from the framework; obtaining a new ESCR value based on the updated current time and the TSF value; obtaining an average latency based on the FTM value; obtaining a present time stamp (PTS) value based on the new ESCR value and the average latency; and determining a playback time of the audio signal based on the PTS.

[0241] External electronic devices are referred to as "external electronic devices" to distinguish them from electronic devices, but they may also be referred to as "electronic devices." Furthermore, electronic devices may operate as external electronic devices. In this case, the external electronic device may include the same configuration as the electronic device (300) illustrated in FIG. 3. This will be described with reference to FIG. 22.

[0242] Fig. 22 is a block diagram of an external electronic device according to one embodiment.

[0243] Referring to FIG. 22, an external electronic device (2200) (e.g., the electronic device (101) of FIG. 1) may include a communication circuit (2210) (e.g., the wireless communication module (192) of FIG. 1) for transmitting and receiving signals using one or more antennas with the external electronic device, a memory (2220) (e.g., the memory (130) of FIG. 1) for storing instructions for the operation of the external electronic device (2200), and a processor (2230) (e.g., the processor (120) of FIG. 1) that may be implemented as one or more single-core processors or one or more multi-core processors.

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

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

[0246] Various types of data, such as programs and files, such as applications and commands, can be installed and stored in the memory (2220). The processor (2230) can access and use data stored in the memory (2220), or store new data in the memory (2220). In one embodiment, programs and data for transmitting and receiving audio data can be installed and stored in the memory (2220).

[0247] The processor (2230) can control the overall operation of the external electronic device (2200). In one embodiment, the processor (2230) can control other components included in the external electronic device (2200) so that the external electronic device (2200) can perform audio alignment. For example, the processor (2230) can execute programs, commands, etc. stored in the memory (2220), read files stored in the memory (2220), or store new files in the memory (2220).

[0248] In one embodiment, the processor (2230) performing an operation may mean that the processor (2230) directly performs the operation, or may also mean that the processor (2230) controls another component, for example, a communication circuit (2210), to perform the operation.

[0249] In one embodiment, the processor (2230) may perform audio alignment by executing a program stored in the memory (2220). The instructions stored in the memory (2200), when executed by the processor (2230), may cause the external electronic device (2200) to perform an operation of performing neighbor awareness networking (NAN) service discovery at least in a discovery window (DW) to discover an electronic device included in a NAN cluster, an operation of establishing a NAN data path (NDP) session with the electronic device, an operation of receiving a synchronization signal from the DW to obtain a timing synchronization function (TSF) value, an operation of performing a fine time measurement (FTM) procedure with the electronic device to obtain an FTM value, and an operation of performing playback time alignment of an audio signal based on the TSF value and the FTM value.

[0250] In one embodiment, the instructions stored in the memory (2220), when executed by the processor (2230), may cause the external electronic device (2200) to perform the following operations: obtaining a local time, directly receiving a TSF value and an FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface, obtaining a new ESCR value based on the local time and the TSF value, obtaining an average latency based on the FTM value, obtaining a PTS (present time stamp) value based on the new ESCR value and the average latency, and determining a playback time of an audio signal based on the PTS.

[0251] In one embodiment, the instructions stored in the memory (2220), when executed by the processor (2230), may cause the external electronic device (2200) to perform the following operations: obtaining a local time by the framework of the external electronic device; directly receiving a TSF value and an FTM value from a Wi-Fi driver or Wi-Fi firmware through a first interface; calibrating a current clock reference; and transmitting the TSF value, the FTM value, and the updated current time to the player. In addition, the instructions may cause the player of the external electronic device (2200) to perform the following operations: receiving a TSF value, an FTM value, and an updated current time from the framework; obtaining a new ESCR value based on the updated current time and the TSF value; obtaining an average latency based on the FTM value; obtaining a present time stamp (PTS) value based on the new ESCR value and the average latency; and determining a playback time of an audio signal based on the PTS.

[0252] Meanwhile, the embodiments of the present disclosure disclosed in this specification and drawings are merely specific examples presented to easily explain the technical content of the present disclosure and aid in understanding of the present disclosure, and are not intended to limit the scope of the present disclosure. In other words, it will be apparent to those skilled in the art to which the present disclosure pertains that other modified examples based on the technical concept of the present disclosure are possible. Furthermore, the above-described embodiments may be combined and operated as needed.

Claims

1. In electronic devices, communication circuit; processor; and Contains memory for storing commands, The instructions stored in the memory, when executed by the processor, cause the electronic device to: An operation of discovering multiple external electronic devices included in a NAN cluster by performing NAN (neighbor awareness networking) service discovery in a discovery window (DW). An operation of establishing an NDP (NAN data path) session with each of the plurality of external electronic devices in the first frequency band; An operation of scheduling radio resources to periodically allocate the DW in the second frequency band and to allocate audio data transmission sections for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band. An operation of performing NAN synchronization and NAN service discovery in the above DW, and An electronic device that performs an operation of transmitting the audio data to the plurality of external electronic devices through each of the NDP sessions in the above audio data transmission section.

2. In paragraph 1, The instructions stored in the memory, when executed by the processor, cause the electronic device to: An electronic device, which performs an operation of scheduling the wireless resources so that the transmission interval of the audio data in each NDP session is the same, based on at least one of the number of the NDP sessions, the size of the audio data, and the type of the audio data.

3. In paragraph 2, The instructions stored in the memory, when executed by the processor, cause the electronic device to: An electronic device that performs an operation of scheduling the wireless resources so that sections for transmitting the audio data overlap for at least some NDP sessions among the respective NDP sessions.

4. In paragraph 3, The instructions stored in the memory, when executed by the processor, cause the electronic device to: An electronic device that performs an operation of scheduling the wireless resources to communicate with an external electronic device not included in the NAN cluster, or to provide a service not related to a NAN service, by using at least one of the first frequency band and the second frequency band in a section other than the DW and in which the audio data is not transmitted.

5. In paragraph 3, The instructions stored in the memory, when executed by the processor, cause the electronic device to: An electronic device, which performs an operation of changing a priority based on an access category for at least some NDP sessions among the above-mentioned overlapping sections.

6. In paragraph 1, The above first frequency band is a 5 GHz band or a 6 GHz band, An electronic device wherein the second frequency band is a 2.4 GHz band.

7. In paragraph 1, The instructions stored in the memory, when executed by the processor, cause the electronic device to: An operation of scheduling the radio resources to allocate additional DW in the third frequency band; An operation of switching the communication circuit from the first frequency band to the third frequency band in the section to which the additional DW is allocated to perform the NAN synchronization and the NAN service discovery in the additional DW, and An electronic device, wherein the communication circuit is switched from the third frequency band to the first frequency band in the section after the additional DW, so as to transmit the audio data to the plurality of external electronic devices through each of the NDP sessions in the audio data transmission section.

8. In paragraph 1, The instructions stored in the memory, when executed by the processor, cause the electronic device to: The operation of forming each NDP session in the first frequency band and the second frequency band with the plurality of external electronic devices; An operation of scheduling radio resources to periodically allocate DWs in the second frequency band and the third frequency band, and to allocate audio data transmission sections for transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band and the second frequency band. An operation of 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 in the section to which the DW is allocated, and An electronic device, which performs an operation of transmitting the audio data to the plurality of external electronic devices through each of the NDP sessions in the audio data transmission section by switching the communication circuit from the third frequency band to the first frequency band in the section after the DW.

9. In paragraph 1, The above scheduling is performed on a slot-by-slot basis, and the slot includes a plurality of sub-slots. The instructions stored in the memory, when executed by the processor, cause the electronic device to: A device that performs scheduling in units of sub-slots when a period in which transmission of the audio data is not scheduled occurs within a slot allocated to a first external electronic device, and performs an operation of allocating an idle sub-slot in which audio data for the first external electronic device is not transmitted to a second external electronic device.

10. In paragraph 9, The instructions stored in the memory, when executed by the processor, cause the electronic device to: A device that, when transmission of the audio data fails in a slot allocated to the first external electronic device, performs scheduling in units of the sub-slots to perform retransmission in the idle sub-slot.

11. In the method of an electronic device, An operation of discovering multiple external electronic devices included in a NAN cluster by performing NAN (neighbor awareness networking) service discovery in a discovery window (DW). An operation of establishing an NDP (NAN data path) session with each of the plurality of external electronic devices in the first frequency band; A method comprising: an operation of scheduling radio resources to periodically allocate the DW in a second frequency band and allocate an audio data transmission section for transmitting audio data to the plurality of external electronic devices through the respective NDP sessions in the first frequency band; an operation of performing NAN synchronization and the NAN service discovery in the DW; and an operation of transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission section.

12. In paragraph 11, The operation of scheduling the above wireless resources is: A method comprising: scheduling the wireless resources so that the transmission interval of the audio data in each of the NDP sessions is the same, based on at least one of the number of the NDP sessions, the size of the audio data, and the type of the audio data.

13. In paragraph 12, The operation of scheduling the above wireless resources is: An operation of scheduling the wireless resources so that the sections for transmitting the audio data overlap for at least some of the NDP sessions among the respective NDP sessions; and A method comprising: scheduling the wireless resources to communicate with an external electronic device not included in the NAN cluster, or to provide a service not related to a NAN service, by using at least one of the first frequency band and the second frequency band in a section other than the DW and in which the audio data is not transmitted.

14. In paragraph 13, A method further comprising an operation of changing a priority based on an access category for at least some NDP sessions among the respective NDP sessions in the overlapping section.

15. In paragraph 11, The operation of scheduling the above wireless resources is: Including an operation of scheduling the radio resources to allocate additional DW in the third frequency band, The above method, An operation of switching a communication circuit from the first frequency band to the third frequency band in a section to which the additional DW is allocated to perform NAN synchronization and NAN service discovery in the additional DW, and A method further comprising the action of transmitting the audio data to the plurality of external electronic devices through the respective NDP sessions in the audio data transmission section by switching the communication circuit from the third frequency band to the first frequency band after the additional DW section.

Citation Information

Patent Citations

  • Semiconductor package and method for manufacturing the same

    KR1020220144107A

  • A vehicle headlight non-operating warning sound generator

    KR1020230126603A

  • Method and apparatus for transmitting data using multi-channels in wireless communication system

    US20180041941A1

  • Apparatus, system and method of communicating in an awareness cluster

    US20180176857A1

  • Simultaneous transmission over neighbor awareness networking data link

    WO2018156194A1