Method and system for auracast reconnection optimization
The auracast assistant optimizes reconnection by saving authentication and context information, allowing automatic reconnection to previously connected sources, addressing the inefficiencies of manual reauthentication and scanning in auracast systems.
Patent Information
- Application Number
- PCT/IB2025/052922
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-21
- Filing Date
- 2025-03-20
- Publication Date
- 2025-09-25
AI Technical Summary
Auracast reconnection processes in public audio sharing systems are tedious and time-consuming due to the need for repeated manual authentication and scanning of QR codes or NFC taps when reconnecting to the same auracast source, leading to unnecessary power consumption and delays.
A method and system that utilizes an auracast assistant to save authentication and context information, enabling automatic reconnection by detecting the presence of a previously connected auracast source within range and using stored information to establish seamless reconnection without user intervention.
Facilitates quick and efficient reconnection to previously connected auracast sources, reducing user interaction and power consumption by leveraging stored authentication and context data.
Smart Images

Figure IB2025052922_25092025_PF_FP_ABST
Abstract
Description
DescriptionTitle of Invention :METHOD AND SYSTEM FOR AURACAST RECONNECTION OPTIMIZATIONTechnical Field
[0001] The present disclosure generally relates to public audio sharing, and more particularly, relates to a method and a system for auracast reconnection optimization.Background Art
[0002] Auracast is a technology that enables audio transmitters to broadcast audio to an unlimited number of nearby receivers 1. Auracast enables audio in public places and on personal devices, like smartphones, much more accessible.
[0003] Conventionally, auracast broadcasting involves an auracast source, an auracast assistant, and an auracast sink. The auracast sink requests for authentication of the auracast source using the auracast assistant, which may be an authentication parameter, such as a broadcast code. Once the authentication is completed, the auracast sink starts receiving the audio data packets from the auracast source and begins streaming the audio in a receiver device.
[0004] In a scenario where a user streams music from a smartphone device (serving as the auracast assistant) to a receiver device such as wireless earbuds. The user manually authenticates the auracast source, using the smartphone to begin streaming of the music. If the user gets disconnected and then reconnects to the same auracast source, the user is required to repeat the manual authentication process, which can be tedious and time-consuming.
[0005] Typically, there are various ways to join the broadcast of the auracast source such as manual entry of a broadcast code, scanning of a Quick Response (QR) code, a Near Field Communication (NFC) tap, and the like. In order to join an encrypted auracast source, the user has to follow some specific steps:1. Finding available broadcast sources.2. Clicking on one source of choice from the available sources.3. Prompting for authentication parameter via a password-popup for authentication.4. Entering the authentication parameter (i.e., broadcast code).5. Verifying the entered authentication parameter (i.e., broadcast code).6. Adding the source to the sink and streaming in the sink.
[0006] Upon connecting to the auracast source after following the above steps, the user may wish to switch to another auracast source available in the same region or may move momentarily out of the range of the auracast source. In any case, the user may get disconnected from the auracast source.
[0007] In conventional scenarios in the prior art, upon disconnection, when the same user wishes to re-join the same auracast source (to which the user was previously connected), all the above-mentioned steps need to be performed and repeated by the user. This leads to unnecessary power consumption in the user device and time-delay.
[0008] Further, in a scenario where joining the encrypted auracast source requires scanning of a QR code for re-connecting to the same auracast source, the user will have to rescan the QR code. In case the QR code is at a fixed location, the user will have to again reach for the QR code for reconnecting to the same auracast source. Similarly, the user will face the same inconvenience in case the connection requires use of a fixed NFC tap pod.
[0009] Therefore, in view of the above-mentioned problems, it is advantageous to provide an improved system and method that can overcome the above-mentioned problems and limitations associated with the auracast connection management.Solution to Problem
[0010] This summary is provided to introduce a selection of concepts, in a simplified format, that are further described in the detailed description of the disclosure. This summary is neither intended to identify key or essential inventive concepts of the invention nor is it intended for determining the scope of the disclosure.
[0011] According to an embodiment, the present disclosure relates to a method for optimizing a reconnection between an auracast source and an auracast sink. The method includes establishing a connection between the auracast source and the auracast sink by an auracast assistant. Further, the method includes saving authentication information and context information related to the auracast source by the auracast assistant. Furthermore, the method includes detecting a presence of the saved auracast source within a connection range by the auracast assistant. Subsequently, the method includes establishing reconnection to the saved auracast source using the saved authentication information and the saved context information by the auracast assistant.
[0012] According to another embodiment, the present disclosure relates to a system for optimizing a reconnection between an auracast source and an auracast sink. The system includes a connecting module, a storing module, a detecting module, and a re-connectingmodule. The connecting module is configured for establishing a connection between the auracast source and the auracast sink by an auracast assistant. The storing module is configured for saving authentication information and context information related to the auracast source by the auracast assistant. The detecting module is configured for detecting a presence of the saved auracast source within a connection range by the auracast assistant. Subsequently, the reconnecting module is configured for establishing reconnection with the saved auracast source using the saved authentication information and the saved context information by the auracast assistant.
[0013] To further clarify the advantages and features of the present disclosure, a more particular description of the disclosure will be rendered by reference to specific embodiments thereof, which are illustrated in the appended drawing. It is appreciated that these drawings depict only typical embodiments of the disclosure and are therefore not to be considered limiting its scope. The disclosure will be described and explained with additional specificity and detail with the accompanying drawings.Brief Description of Drawings
[0014] These and other features, aspects, and advantages of the present disclosure will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
[0015] Figure 1 a illustrates an environment comprising a system for optimizing a reconnection between an auracast source and an auracast sink, in accordance with an embodiment of the present disclosure;
[0016] Figure lb illustrates an example of Periodic Advertising (PA), in accordance with an embodiment of the present disclosure;
[0017] Figure 1c illustrates the working of the auracast assistant via exemplary user interfaces, in accordance with an embodiment of the present disclosure;
[0018] Figure 2 illustrates a schematic block diagram of the system for optimizing the reconnection between the auracast source and the auracast sink, in accordance with an embodiment of the present disclosure;
[0019] Figure 3 illustrates one or more operations of a connecting module of the system , in accordance with an embodiment of the present disclosure;
[0020] Figure 4a is a process flow illustrating the working of the system when a user reconnects to the auracast source after momentarily connecting to a different auracast source available in the same region, in accordance with an embodiment of the present disclosure;
[0021] Figure 4b is a process flow illustrating the working of the system when a user moves back into a connection range of a previously connected auracast source, in accordance with an embodiment of the present disclosure;
[0022] Figure 4c illustrates the working of the auracast assistant via exemplary user interfaces, in accordance with an embodiment of the present disclosure;
[0023] Figures 5a-5b are process flows illustrating the working of the favoriting module of the system 110, in accordance with an embodiment of the present disclosure;
[0024] Figure 5a is an exemplary process flow of the user interface of the auracast assistant, in accordance with an embodiment of the present disclosure;
[0025] Figure 5b is an exemplary process flow of the user interface of the auracast assistant when the user connects to the auracast source using a Quick Response Code, in accordance with an embodiment of the present disclosure; and
[0026] Figure 6 is a flowchart illustrating a method for optimizing a reconnection between the auracast source and the auracast sink, in accordance with an embodiment of the present disclosure.
[0027] Further, skilled artisans will appreciate that elements in the drawings are illustrated for simplicity and may not have necessarily been drawn to scale. For example, the flow charts illustrate the method in terms of the most prominent steps involved to help to improve understanding of aspects of the present disclosure. Furthermore, in terms of the construction of the device, one or more components of the device may have been represented in the drawings by conventional symbols, and the drawings may show only those specific details that are pertinent to understanding the embodiments of the present disclosure so as not to obscure the drawings with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.Description of Embodiments
[0028] For the purpose of promoting an understanding of the principles of the disclosure, reference will now be made to the various embodiments, and specific language will be used to describe the same. It will nevertheless be understood that no limitation of the scope of the disclosure is thereby intended, such alterations and further modifications in the illustrated system, and such further applications of the principles of the disclosure as illustrated thereinbeing contemplated as would normally occur to one skilled in the art to which the disclosure relates.
[0029] The term “some” or “one or more” as used herein is defined as “one”, “more than one”, or “all.” Accordingly, the terms “more than one,” “one or more” or “all” would all fall under the definition of “some” or “one or more”. The terms “an embodiment”, “another embodiment”, “some embodiments”, or “in one or more embodiments” may refer to one embodiment or several embodiments, or all embodiments. Accordingly, the term “some embodiments” is defined as meaning “one embodiment, or more than one embodiment, or all embodiments.”
[0030] The terminology and structure employed herein are for describing, teaching, and illuminating some embodiments and their specific features and elements and do not limit, restrict, or reduce the spirit and scope of the claims or their equivalents. The phrase “exemplary” may refer to an example.
[0031] More specifically, any terms used herein such as but not limited to “includes,” “comprises,” “has,” “consists,” “have” and grammatical variants thereof do not specify an exact limitation or restriction and certainly do not exclude the possible addition of one or more features or elements, unless otherwise stated, and must not be taken to exclude the possible removal of one or more of the listed features and elements, unless otherwise stated with the limiting language “mush comprise” or “needs to include”.
[0032] Whether or not a certain feature or element was limited to being used only once, either way, it may still be referred to as “one or more features”, “one or more elements”, “at least one feature”, or “at least one element.” Furthermore, the use of the terms “one or more” or “at least one” feature or element does not preclude there being none of that feature or element unless otherwise specified by limiting language such as “there needs to be one or more” or “one or more element is required.”
[0033] Unless otherwise defined, all terms, and especially any technical and / or scientific terms, used herein may be taken to have the same meaning as commonly understood by one having ordinary skill in the art.
[0034] Figure la illustrates an environment 100 comprising an auracast source 100T (or an auracast transmitter 100T) and an auracast sink 100S including one or more auracast receivers 100R1, 100R2, and 100R3 (collectively and interchangeably referred to as 100R hereinafter), in accordance with an embodiment of the present disclosure. Examples of the environment 100 may include an office-space, a commercial set-up such as a cinema hall, cafe, a pub, a sports bar and the like. While only three auracast receivers 100R are depicted in Fig. la, it may be apparent that the number of auracast receivers may vary and any number of the auracastreceivers 100R may be present and supported for connection by the auracast transmitter 100T. Examples of the one or more auracast receivers 100R may include a headphone device, an earbud device, a hearing aid device, and the like. The auracast source 100T may be a mobile phone device.
[0035] An auracast assistant 100 A is associated with the auracast sink 100S. There may be more than one auracast assistant associated with the sink 100S. It is apparent that the number of assistants 100A is not limited and any number of the assistants 100A may be present and supported for connection by the auracast transmitter 100T. In an embodiment, there may be one auracast assistant 100A associated with each receiver 100R.
[0036] The auracast assistant 100A may be an electronic device such as a phone, a personal computer, a personal digital assistant device, and the like, capable of supporting audio services such as Bluetooth Low Energy (BLE) audio services and capable of scanning for periodic advertisements from the auracast source 100T. The auracast assistant 100A may join the auracast source 100T using known methods of scanning and entering the broadcast code manually, using a QR code, an NFC tap, and the like.
[0037] The auracast source 100S begins an auracast broadcast via advertisements, which provide the auracast assistant 100 A with the information about one or more broadcasts (identifiable by specific parameters, e.g. name, content, codec configuration, etc.), one or more audio streams (e.g. left and right stereo audio streams), and the like.
[0038] The auracast broadcast may be encrypted to ensure privacy and security. This is critical in certain public scenarios when the access needs to be restricted to a certain set of people in the vicinity. For example, a cafe may enable Bluetooth LE Audio for live audio sharing and may offer customers the ability to listen to the live audio directly through user devices such as Bluetooth headphones, earbuds, and the like. However, the cafe may want to keep such broadcasts exclusive to paying customers and prevent others outside the cafe from accessing the broadcast. The cafe may encrypt the auracast audio streams to ensure privacy and restricted access. Subsequently, the cafe may provide the encrypted broadcast code through in-person distribution, secure messaging system, a portal, automated kiosks, and the like.
[0039] The auracast source 100T may advertise data either by Extended Advertisements (EA) or Periodic Advertisements (PA). Extended Advertisements (EA) are a way to advertise more (offloaded) data as compared what is allowed with Legacy Advertisements. Offloading is accomplished by first advertising on a primary channel that points to an auxiliary packet on the secondary channel.
[0040] Following is a list of the extended advertisement Protocol Data Units (PDUs):
[0041] ADV EXT IND — Supports unconnectable (broadcast only) and scannable directed events
[0042] AUX ADV IND — Used for first fragment of advertising data sent on the secondary advertising channel
[0043] AUX SYNC IND — Used for Periodic Advertising where unidirectional data is sent at fixed intervals
[0044] AUX CHAIN IND — Sends remaining data from incomplete auxiliary PDU advertising events
[0045] On the other hand, when advertising data is required to be sent regularly at fixed intervals, Periodic Advertising (PA) is used.
[0046] Figure lb illustrates an example of PA, in accordance with an embodiment of the present disclosure. PA consists of advertisements sent at a fixed interval with the advertisement data changing from time to time. Offloading is accomplished by first advertising on the primary channel that points to an auxiliary packet on a secondary channel. Based on instructions, a scanner of the auracast assistant 100A may look for PA synchronization information located in the a field such as a Syncinfo field of AUX ADV IND PDUs.
[0047] The auracast assistant 100A may scan for the broadcasted auracast advertisements and may provide a User Interface (UI) to enable users of the receivers 100R to select an auracast broadcast to join. Once one of the one or more auracast broadcasts is selected by the user, the auracast assistant 100A provides the auracast receiver 100R (e.g. headphone, earbud, hearing aid, etc.) the information required to join the selected auracast broadcast. The auracast receivers 100R may also be referred to as the auracast audio sink devices or scan delegators. Typically, auracast sink devices such as ear buds (due to non-availability of a dedicated / inbuilt UI) offload the scan functionality to the auracast assistant 100A using a role called auracast scan delegator. In such cases, the auracast sink devices take the collocated role of auracast scan delegator and auracast sink.
[0048] For example, one Assistant (e.g., mobile device ) may have two or more ear phones (receivers) connected to the assistant.
[0049] Figure 1c illustrates the working of the auracast assistant 100 A via exemplary user interfaces 190-1, 190-2 and 190-3, in accordance with an embodiment of the present disclosure. The user may connect to the receiver 100R1 such as an LE audio ear-buds and scan a list of available auracast sources using the interface 190-1 of the auracast assistant 100A. The user may choose one of the sources from the list and click on the chosen source. The user is prompted to enter a broadcast code associated with the chosen source as shown in the interface190-2. The user may enter the broadcast code and click on “Connect.” Upon authentication, the user is connected to the chosen source as shown in the interface 190-3.
[0050] The auracast assistant 100A scans for advertisements which indicate the presence of Extended Advertisements. Once the advertisements are discovered, the auracast assistant 100A may synchronize to an associated PA train, which contains a broadcast audio announcement service Universally Unique Identifier (UUID) and subsequently, discover the accompanying BIGInfo (Broadcast Isochronous Group (BIG) Information) and BASE (Broadcast Audio Source Endpoint) structure. The BIGInfo structure includes information pertaining to the Broadcast Isochronous (BIS) Group such as fundamental spacing, the packet information and the like. The BASE structure include information pertaining to audio information contained in each of the BlSes, associated configuration. In an embodiment, the Broadcast Source configures and establishes one or more BIGs, each containing one or more BlSes that are used to transport broadcast Audio Streams. The Broadcast Source transmits the data associated with the broadcast Audio Stream configurations description. The Broadcast Source transmits the data associated with the broadcast Audio Stream for enabling the devices (receiver) to discover and receive broadcast Audio Streams.
[0051] The auracast assistant 100A may apply filters before reading and parsing the BASE metadata. Subsequently, the auracast assistant 100A provides the list of available broadcast streams to the user, generally by displaying a human readable Programinfo.
[0052] Once the user makes a selection, the auracast assistant 100A will use Periodic Advertising Synchronization Transfer (or PAST) procedure to provide the auracast receiver 100R with the required information for finding the relevant Periodic Advertising train. This enables the auracast receiver 100R to jump straight to those advertising packets, acquire the BIGInfo and BASE and synchronize to the appropriate BlSes without having to expend energy in scanning.
[0053] Figure 2 illustrates a schematic block diagram of the system 110 for optimizing the reconnection between the auracast source 100T and the auracast sink 100S, in accordance with an embodiment of the present disclosure. The system 110 includes a plurality of modules 200 including a connecting module 112, a storing module 114, a detecting module 116, and a reconnecting module 118. The system 110 may reside on one of the receivers 100R in the sink 100S or on the assistant 100A. In an embodiment, the system 110 may be communicably coupled with the auracast assistant 100A through a network. In another embodiment, the system 110 may be implemented in a form of programmed instructions and may be located at distributed locations such as an external server connected over the network. In anotherembodiment, the system 110 may be located on a server in communication with the receivers 100R in the auracast sink 100S or on the assistant 100A.
[0054] The connecting module 112 is configured for establishing an initial connection between the auracast source 100T and the auracast sink 100S. The initial connection is established by the auracast assistant 100 A based on a broadcast-code associated with the auracast source 100T. The auracast source 100T (e.g. a broadcast transmitter BT1) continuously transmits data such as the EA, PA, BIG (Broadcast Isochronous Group) info / Broadcast Isochronous Stream (BIS) data packets. The auracast assistant 100A (e.g. a Broadcast Assistant BAI such as a mobile device of a user) is connected to the auracast sink 100S (e.g. a Broadcast Sink Device BS 1 such as an LE Audio headset). BAI assists BS1 to sync to the auracast source 100T such as the nearby broadcast transmitter BT1 selected by the user of BAI .
[0055] Examples of methods to connect with the auracast source 100T may include search and select, scanning an associated QR code, tapping on an associated NFC pod, and the like. A user may be able to search and select the auracast source 100T from a UI of the auracast assistant 100A. Alternatively, a user may be able to scan the associated QR code using the auracast assistant 100 A.
[0056] The storing module 114 is configured for saving authentication information and context information related to the auracast source 100T by the auracast assistant 100A. Continuing with the example as above, BAI gathers the authentication information and the context information including broadcast source information and metadata of BT1 via a broadcast information object. The broadcast source information refers to data associated with a broadcast source. The broadcast information object comprises information associated with BT1 such as broadcast ID, name, broadcast code, address, program information, and the like. In an embodiment, the broadcast name is set by the user when the auracast transmitter is installed to describe and identify the auracast transmitter being installed. For example, “Lou’s Cafe,” “Conference”, etc. For each BIG, the broadcast source generates a broadcast ID, Broadcast ID, according to the requirements for random number generation. The Broadcast ID may not change for the lifetime of the BIG. The Broadcast Code parameter is used to support an encrypted BIS and is used in the process of encrypting the data in the transmission of an encrypted BIS and in the process of decrypting the data in the reception of the BIS. The Adress refers to Advertiser Address parameters which specify the Bluetooth address of the periodic advertiser. Program info is used to define the type of content being transmitted from broadcast source. For example, music, announcement, etc. An exemplary broadcast information may be represented in a table as follows:
[0057]
[0058] BAI gathers the broadcast source information, and the metadata associated with BT1 in the broadcast information object. The broadcast code is used for decrypting an encrypted BIS. A “ Set Broadcast Code ” operation may be used by a client to provide a Broadcast Code to a server to enable the server to decrypt the encrypted BIS. The auracast assistant 100A may obtain the broadcast code by using an out of band method such as over a Bluetooth link, via an NFC, via a QR code and the like.
[0059] The storing module 114 is configured for storing the metadata information related to the Broadcast ID of the auracast source 100T, the Broadcast Name of the auracast source 100T and the Broadcast Code of the auracast source 100T. The storing module 114 is configured for saving the gathered authentication information and the context information in BAI.
[0060] The authentication information may be used to decrypt the encrypted audio streams which are transmitted from auracast source. For example: Broadcast code etc. The context information may refer to the type of audio content being transmitted from auracast source. For example: Music, Announcement, specific language songs, etc.
[0061] In an exemplary embodiment, where the connection is performed by scanning a QR code, the auracast assistant 100A may obtain a set of parameters including a SourceAddressType defining an address, a SourceDevice defining a name, a SourceAdvertisingSid, a Broadcastld, and a BroadcastCode associated with the auracast source 100T.
[0062] The set of parameters of the broadcast source 100T may be stored by the storing module 114 as a key-value pair including the encrypted broadcast name and the broadcast ID with the broadcast code (encrypted) as one of the stored values. Following table illustrates an exemplary key-value pair:
[0063]
[0064] Using the set of parameters obtained through the QR code, the broadcast source 100T may be found by scanning using the connecting module 112. The detecting module 116 is configured for detecting a presence of the saved auracast source 100T within a connection range associated with the one or more auracast receivers 100R. The detecting module 116 is configured for scanning for advertising information of the auracast source 100T using the auracast assistant 100A. The auracast assistant 100A may be used for detecting the saved auracast source 100T. The broadcast name can be fetched by syncing to the PA of the saved auracast source 100T.
[0065] Continuing with the example above, the user may get disconnected from BT1 because of moving out of a connection range associated with BT1, switching to another auracast source, or because of other like reasons. Subsequently, the user may wish to reconnect to BT1 after moving back in the connection range. Alternatively, the user may wish to switch back to BT1 after having connected to another auracast source momentarily. The detecting module 116 is configured for detecting the presence of the saved auracast source BT1 by scanning the advertising information of the auracast source BT1 using the auracast assistant 100A. When the user moves back within the connection range of the saved auracast source 100T such as BT1, the information required for joining is retrieved from the cache of BAI and used for reconnecting. The re-connecting module 118 is configured for establishing reconnection with the saved auracast source 100T (BT1) using the saved authentication information and the saved context information using the auracast assistant 100A (BAI). The re-connecting module 118 may use the stored key-value pair associated with BAI and BT1. The saved auracast source 100T (BT1) may be detected using background scanning done at periodic intervals. The key value pair may consist of saved parameters like source name, broadcast code etc. which are used to detect and send add source automatically hence not requiring user intervention for the auto reconnection of a saved auracast source. Auracast assistant 100 A provides the necessary parameters for the auracast sink 100S to sync with the audio which is transmitted by auracast source 100T.
[0066] After the auracast sink is synced to audio from auracast transmitter, the audio signal flow is from Auracast transmitter 100T to Auracast sink 100S.
[0067] In an embodiment, the system 110 further includes a favoriting module 120. The favoriting module 120 is configured for receiving a user input comprising information related to identification of a favorite auracast source corresponding to the user. The user input may be received via the auracast assistant 100A. The favoriting module 120 is further configured to generate a key-value pair associated with the favorite auracast source. Subsequently, the favoriting module uses the storing module 114 to store the generated key-value pair. The generated key-pair value may be stored at the auracast assistant 100 A.
[0068] The key-value pair may consist of information stored from the saved auracast source. The key in key-value pair can be but not limited Broadcast name or Broadcast ID or a combination of both. The value in key-value pair may not be limited to Broadcast code.
[0069] In an embodiment, the system 110 includes a processor 204, a memory 208, a transceiver 226, and an I / O interface 228. The processor 204 may be disposed in communication with a communication network (for example, the network 290) via a network interface. In an embodiment, the network interface may be the I / O interface 228. In an embodiment, the network interface may connect to the network to enable the connection of the system 110 with the one of the receivers 100R in the sink 100S or on the assistant 100A. The network interface may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10 / 100 / 1000 Base T), transmission control protocol / internet protocol (TCP / IP), token ring, IEEE 702.1 la / b / g / n / x, etc. The communication network may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, etc. Using the network interface and the communication network, the system 110 may communicate with other devices. The network interface may employ connection protocols including, but not limited to, direct connect, Ethernet (e.g., twisted pair 10 / 100 / 1000 Base T), transmission control protocol / internet protocol (TCP / IP), token ring, IEEE 702.1 la / b / g / n / x, etc.
[0070] In some embodiments, the memory 208 may be communicatively coupled to the processor 204. The memory 208 may be configured to store data, and instructions executable by the processor 204. In another embodiment, the memory 208 may be provided within the system 110. In yet another embodiment, the memory 208 may communicate with the processor 204 via a bus within the system 110. In yet another embodiment, the memory 208 may be located remotely from the processor 204 and may be in communication with the processor 204 via a network. The memory 208 may include, but is not limited to, a non-transitory computer- readable storage media, such as various types of volatile and non-volatile storage media including, but not limited to, random access memory, read-only memory, programmable read-only memory, electrically programmable read-only memory, electrically erasable read-only memory, flash memory, magnetic tape or disk, optical media and the like.
[0071] In one example, the memory 208 may include a cache or random-access memory for the processor 204. In alternative examples, the memory 208 is separate from the processor 204, such as a cache memory of a processor, the system memory, or other memory. The memory 208 may be an external storage device or database for storing data. The memory 208 may be operable to store instructions executable by the processor 204. The functions, acts, or tasks illustrated in the figures or described may be performed by the programmed processor 204 for executing the instructions stored in the memory 208. The functions, acts, or tasks are independent of the particular type of instruction set, storage media, processor, or processing strategy and may be performed by software, hardware, integrated circuits, firmware, microcode, and the like, operating alone or in combination. Likewise, processing strategies may include multiprocessing, multitasking, parallel processing, and the like.
[0072] In some embodiments, the plurality of modules 200 may be included within the memory 208. The plurality of modules 200 may include a set of instructions that may be executed by the processor 204 to cause the system 110 to perform any one or more of the methods / processes disclosed herein. The plurality of modules 200 may be configured to perform the steps of the present disclosure using the data stored in the database within the memory 208. For instance, the plurality of modules 200 may be configured to perform the steps disclosed with reference to Figure 11.
[0073] In an embodiment, each of the plurality of modules 200 may be a hardware unit that may be outside the memory 208. Further, the memory 208 may include an operating system for performing one or more tasks of the system 110, as performed by a generic operating system. Each of the modules 200 may be in communication with one another and the processor 204.
[0074] Further details about the working and functioning of the plurality of modules 200 of the system 110 have been provided with reference to the following Figures.
[0075] Figure 3 illustrates one or more operations of the connecting module 112 of the system 110, in accordance with an embodiment of the present disclosure. The connecting module 112 is configured for transmitting an add-source command related to the auracast source 100T to the auracast sink 100S using the auracast assistant 100A. Further, the connecting module 112 is configured for receiving a request for the broadcast-code associated with the auracast source 100T by the auracast assistant 100A. Subsequently, the connecting module 112 is configured for transmitting the broadcast-code to the auracast sink 100S using the auracast assistant 100A. The add-source command / operation is used to provide the sink with information regarding aBroadcast Source. The sink uses the information to sync to the audio signal being transmitted from auracast source. In this scenario, the auracast assistant sends add-source command with the saved info and hence the auracast sink gets synced to the audio stream.
[0076] With reference to exemplary embodiment as shown in Figure 3, the auracast assistant 100A may be a mobile device 310A and the receiver 100R may be a pair of ear buds 320A and 320B. At step 301, a connection such as an LE connection may be established between the mobile device 310A and the pair of ear buds 320A and 320B. At step 302, a user may press a “Find Broadcast” button on an interface of the mobile device 310A to find nearby auracast sources such as an auracast source 310T. At step 303, the mobile device 310A locates the auracast source 310T and the user clicks on a broadcast source icon in the User Interface of the mobile device 310A. At step 304 and 305, the mobile device 310A sends an “add source” command to each of the pair of ear buds 320 A and 320B. At step 306, the pair of ear buds 320A and 320B make a request for PAST information.
[0077] At step 307, the mobile device 310A sends the PAST information to each of the pair of ear buds 320A and 320B. At step 308, the pair of ear buds 320A and 320B are synced with the PA associated with the auracast source 310T and, subsequently, the BIS. At step 309, the pair of ear buds 320A and 320B are ready to start rendering the BIS packets.
[0078] In an embodiment, the connecting module 112 is configured for connecting, by the auracast assistant 100A, a plurality of second auracast receivers of the auracast sink 100S to the auracast source 100T using the saved authentication information and the saved context information. For example, a user may be using more than one pair of earbuds connected to the same auracast assistant (100A) and the connecting module 112 may be configured for connecting one of the pairs or both the pairs together or separately.
[0079] Figure 4a is a process flow illustrating the working of the system 110 when a user reconnects to the auracast source 100T after momentarily connecting to a different auracast source available in the same region, in accordance with an embodiment of the present disclosure. As an example, a user (John) may join a first auracast source such as Source 1 using the connecting module 112. The user uses the auracast assistant 100A for scanning and selecting Source 1 and enters an associated first broadcast code. Streaming starts in the auracast receiver 100R such as a pair of ear buds 100R1 of the user. The storing module 114 stores the first broadcast code in the auracast assistant 100A.
[0080] For switching to another available auracast source such as Source 2, the user uses the auracast assistant 100A to click on Source 2. Using the connecting module 112, the user enters a corresponding second broadcast code to connect to Source 2. Streaming starts for Source 2.Now, the user may want to switch back to Source 1 and may click on Source 1 from a list on the auracast assistant 100A to connect using the system 110 without having to re-enter the first broadcast code again.
[0081] In an exemplary embodiment, the user John may be listening to songs in a cafe where the two sources Source 1 and Source 2 are available, wherein Source 1 has Hindi Songs and Source 2 has English songs. Initially, John may connect to Source 1 using the connecting module 112. John may go to an ear-buds connection page on the auracast assistant 100A, click on find broadcast, scan for the broadcasts, choose the broadcast, enter the first broadcast code and finally join the broadcast. The information pertaining to the broadcast for Source 1 is cached / stored in the auracast assistant 100A using the storing module 114.
[0082] John is now listening to Hindi songs via Source 1. John may want to switch to English songs available on Source 2. He wishes to switch from Source 1 to Source 2. He may choose Source 2 from the available broadcasts list, enter a broadcast code and finally join the broadcast. The storing module is configured to store / cache the information related to the broadcast for Source 2 in the auracast assistant 100A. Again, John may wish to switch back to Source 1. Using the reconnecting module 118, John may simply click on Source 1 from the available broadcasts list, and he will be connected to Source 1 using the saved information which includes the first broad cast code. John need not to re-enter the first broadcast code.
[0083] Figure 4b is a process flow illustrating the working of the system 110 when a user moves back into a connection range of a previously connected auracast source 100T, in accordance with an embodiment of the present disclosure. As an example, the user (John) may join an auracast source such as Source 1 using the connecting module 112. The user uses the auracast assistant 100A for scanning and selecting Source 1 and enters an associated first broadcast code. Streaming starts in the auracast receiver 100R such as a pair of ear buds 100R1 of the user. The storing module 114 stores the first broadcast code in the auracast assistant 100 A.
[0084] Now the user may momentarily move out of a connection range of Source 1. This may lead to automatic disconnection from the Source 1 and the streaming on the ear buds 100R1 may stop. When the user moves back in the connection range of Source 1, the user may click on Source 1 from a list on the auracast assistant 100A to connect using the system 110 without having to re-enter the first broadcast code again.
[0085] Figure 4c illustrates the working of the auracast assistant 100 A via exemplary user interfaces 490-1, 490-2 and 490-3, in accordance with an embodiment of the present disclosure. After the user moves back into the connection range of the auracast source 100T, the list of theavailable auracast sources includes the previously connected auracast source 100T as shown in the user interface 490-1. For reconnecting to the same source 100T, the user may click on the auracast source 100T from the list. The cached information required for reconnecting including the broad cast code is retrieved from the auracast assistant 100A as shown in the user interface 490-2. The user need not re-enter the broadcast code and may reconnect using the reconnecting module 118 using a single touch as shown in the user interface 490-3.
[0086] Figures 5a-5b are process flows illustrating the working of the favoriting module 120 of the system 110 when a user moves back into a connection range of a previously connected favorite auracast source 100T, in accordance with an embodiment of the present disclosure. Specifically, Figure 5a is an exemplary process flow of the user interface of the auracast assistant 100 A when the user connects to the auracast source 100T using a fixed NFC pod, in accordance with an embodiment of the present disclosure. Similarly, Figure 5b is an exemplary process flow of the user interface of the auracast assistant 100A when the user connects to the auracast source 100T using a QR Code, in accordance with an embodiment of the present disclosure.
[0087] Continuing with the example above, the auracast source 100T broadcasts the EA, PA, BIG info / BIS data packets and the like. Broadcast Assistant 1 (BAI) may be connected to the LE Audio headset (Broadcast Sink 1 or BS1). BAI assists BS1 to sync to the broadcast transmitter BT1 which may be selected by the user. As explained above, BAI gathers the broadcast source information and the metadata of BT1 in a broadcast information object including information such as broadcast ID, name, broadcast code, address, program information and the like. When BAI gathers the broadcast source information and metadata of BT1 in the broadcast information object, the broadcast source information and metadata of BT1 is saved / cached in BAI.
[0088] The favoriting module 120 is configured for receiving a user input comprising information related to identification of a favorite auracast source corresponding to the user. The user input may be received via the auracast assistant 100A. The user may bookmark the auracast source 100T as favorite in the broadcast assistant (BAI).
[0089] The favoriting module 120 is further configured to generate a key-value pair associated with the favorite auracast source 100T. Subsequently, the favoriting module 120 uses the storing module 114 to store the generated key-value pair. The generated key-pair value may be stored at the auracast assistant 100 A.
[0090] When the user moves out of the connection range of BT1, the broadcast may get disconnected and streaming stops in BS1. When the user moves back in the range of BT1,background scanning is turned on by BAI and the saved information in BAI is used to match the PA metadata. Subsequently, based on the matching, an “add source” command is transmitted by BAI along with the saved authentication information. Herein, since the user marked BT1 as the favorite auracast source using the favoriting module 120, the connection to the auracast source 100T is established automatically by the reconnecting module 118 and streaming starts in BS1. The user need not use the methods explained with respect to the connecting module 112 as the information required for connecting to the favorite auracast source BT1 is already saved in BAI.
[0091] In another exemplary embodiment, a user may visit a cinema hall which is auracast enabled. A fixed NFC Pod may be provided at the cinema hall to join an auracast source. The user may go to the NFC Pod and join the auracast source using an assistant device by tapping the NFC Pod. Using the storing module 114, the broadcast metadata of the auracast source is cached in the assistant device of the user. The user may mark the auracast source at the cinema hall as his favorite using the favoriting module 120. Now, during movie interval or otherwise, the user may momentarily move out of the connection range of the auracast source at the cinema hall. When the user comes back to his seat, the streaming may have stopped as he may no longer be connected to the auracast source. However, as soon as the user comes back to his seat, he is within the connection range of the favorite auracast source. When the user comes back to his seat, background scanning starts for the favorite auracast source. An ADD SOURCE command is sent for the favorite marked source along with the saved authentication information. The broadcast gets connected and streaming starts in the ear buds of the user automatically without any user intervention.
[0092] Figure 6 is a flowchart illustrating a method 600 for optimizing a reconnection between the auracast source 100T and the auracast sink 100S, in accordance with an embodiment of the present disclosure. Referring to Figures 1-5 together, the method 600 may be performed by the system 110 based on instructions retrieved from non-transitory computer-readable media. A computer-readable media may include machine-executable or computer-executable instructions to perform all or portions of the described method. The computer-readable media may be, for example, digital memories, magnetic storage media, such as magnetic disks and magnetic tapes, hard drives, or optically readable data storage media.
[0093] The method 600 includes a series of operations shown at step 602 through step 610 of Figure 6. The method 600 may be performed by the system 110 in conjunction with one or more modules 200, the details of which are explained in conjunction with Figures 1-5, and the same are not repeated here for the sake of brevity. The method 600 begins at step 602.
[0094] At step 602, the method 600 includes establishing an initial connection between the auracast source 100T and the auracast sink 100S. The initial connection is established by the auracast assistant 100A based on a broadcast-code associated with the auracast source 100T. In an embodiment, the method 600 at step 602 further includes transmitting, by the auracast assistant 100A, an “add-source” command related to the auracast source 100T to the auracast sink 100S. Further, the method 600 includes receiving, by the auracast assistant 100A, a request for a broadcast-code associated with the auracast source 100T. Furthermore, the method 600 includes transmitting, by the auracast assistant 100A, the broadcast-code to the auracast sink 100S.
[0095] In an embodiment, the method 600 further includes receiving a user input comprising information related to identification of a favorite auracast source corresponding to the user. The user input may be received via the auracast assistant 100A. The method 600 further includes generating a key-value pair associated with the favorite auracast source. Subsequently, the method 600 further includes storing the generated key-value pair. The generated key-pair value may be stored at the auracast assistant 100A.
[0096] Further, at step 604, the method 600 includes saving authentication information and context information related to the auracast source 100T by the auracast assistant 100A. The auracast assistant 100A gathers the authentication information and the context information including broadcast source information and metadata of BT1 via a broadcast information object. In an embodiment, the method 600 at step 604 further includes storing, by the auracast assistant 100 A, the authentication information and the context information including source metadata information related to a Broadcast ID, a Broadcast Name and a Broadcast Code of the auracast source 100T. The broadcast information object comprises information associated with the auracast source 100T such as broadcast ID, name, broadcast code, address, program information, and the like.
[0097] At step 606, the method 600 includes detecting a presence of the saved auracast source 100T within a connection range associated with the one or more auracast receivers 100R in the auracast sink 100S by the auracast assistant 100A. In an embodiment, the method 600 at step 606 further includes scanning for advertising information of the auracast source 100T using the auracast assistant 100A. Furthermore, the method 600 includes detecting, by the auracast assistant 100A, a presence of the favorite auracast source 100T based on the key-value pair.
[0098] At step 608, the method 600 includes establishing reconnection with the saved auracast source 100T using the saved authentication information and the saved context information using the auracast assistant 100A. In an embodiment, the method 600 at step 608 furtherincludes reconnecting, by the auracast assistant 100A, to the detected favorite auracast source based on the saved authentication information and the saved context information. Furthermore, the method 600 includes establishing the reconnection upon detection of the presence of the favorite auracast source within the connection range.
[0099] In an embodiment, the method 600 includes connecting, by the auracast assistant 100A, a plurality of second auracast receivers of the auracast sink 100S to the auracast source 100T using the saved authentication information and the saved context information. For example, a user may be using more than one pair of earbuds connected to the same auracast assistant (100A) and the connecting module 112 may be configured for connecting one of the pairs or both the pairs together or separately.
[0100] Hence, the system 110 and the method 600 is directed at achieving optimizing a reconnection between an auracast source 100T and an auracast sink 100S. Since the information required for re connecting is stored in the auracast assistant 100A, the user is not required to re-enter the same and thus the method 6oo and the system 110 saves power and time.
[0101] The invention provides ease of re-joining an auracast broadcast by saving auracast source information in the auracast assistant device thereby eliminates repetition of the steps that the user needs to perform to re-join the same auracast source in the future. Further, where user is required to join an auracast source through a fixed QR code or an NFC Pod, the user will not be required to reach for the QR code or NFC Pod again for re-connecting to a previously connected auracast source. This will save the user a lot of time and effort. This will also save power of the receiver and assistant device as the invention obviates the need for performing some of the steps required for the initial connection. The invention takes advantage of saving the auracast source information required for reconnecting and saves time and power.
[0102] Further, the invention does not require the installation of any additional application on the assistant device. The rejoining and favorite marking of the auracast sources may be integrated in the Bluetooth settings page of the assistant device.
[0103] While specific language has been used to describe the disclosure, any limitations arising on account of the same are not intended. As would be apparent to a person in the art, various working modifications may be made to the method in order to implement the inventive concept as taught herein.
[0104] The drawings and the forgoing description give examples of embodiments. Those skilled in the art will appreciate that one or more of the described elements may well be combined into a single functional element. Alternatively, certain elements may be split intomultiple functional elements. Elements from one embodiment may be added to another embodiment. For example, orders of processes described herein may be changed and are not limited to the manner described herein.
[0105] Moreover, the actions of any flow diagram need not be implemented in the order shown; nor do all of the acts necessarily need to be performed. Also, those acts that are not dependent on other acts may be performed in parallel with the other acts. The scope of embodiments is by no means limited by these specific examples. Numerous variations, whether explicitly given in the specification or not, such as differences in structure, dimension, and use of material, are possible. The scope of embodiments is at least as broad as given by the following claims.
[0106] Benefits, other advantages, and solutions to problems have been described above with regard to specific embodiments. However, the benefits, advantages, solutions to problems, and any component(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature or component of any or all the claims.
Claims
Claims
1. A method (600) for optimizing a reconnection between an auracast source (100T) and an auracast sink (100S), the method (600) comprising: establishing (602), by an auracast assistant (100A), a connection between the auracast source (100T) and the auracast sink (100S); saving (604), by the auracast assistant (100A), authentication information and context information related to the auracast source (100T); detecting (606), by the auracast assistant (100 A), a presence of the saved auracast source (100T) within a connection range; and establishing (608) reconnection, by the auracast assistant (100A), to the saved auracast source (100T) using the saved authentication information and the saved context information.
2. The method (600) as claimed in claim 1, wherein establishing the connection comprises: transmitting, by the auracast assistant (100A), an add-source command related to the auracast source (100T) to the auracast sink (100S); receiving, by the auracast assistant (100A), a request for a broadcast-code associated with the auracast source (100T); and transmitting, by the auracast assistant (100A), the broadcast-code to the auracast sink (100S).
3. The method (600) as claimed in claim 1 further comprising: receiving, by the auracast assistant (100A), a user input comprising information related to identification of a favorite auracast source (100T) corresponding to the user, generating, by the auracast assistant (100A), a key-value pair associated with the favorite auracast source (100T); storing, by the auracast assistant (100A), the generated key-value pair.
4. The method (600) as claimed in claim 3, wherein detecting the presence of the saved auracast source (100T) comprises detecting, by the auracast assistant (100A), a presence of the favorite auracast source (100T) based on the key-value pair.
5. The method (600) as claimed in claim 4, wherein establishing the reconnection to the saved auracast source (100T) comprises reconnecting, by the auracast assistant (100 A), to the detected favorite auracast source (100T) based on the saved authentication information and the saved context information, the reconnection being established upon detection of the presence of the favorite auracast source (100T) within the connection range.
6. The method (600) as claimed in claim 1 comprises connecting, by the auracast assistant (100 A), a plurality of auracast receivers of the auracast sink (100S) to the auracast source (100T) using the saved authentication information and the saved context information.
7. The method (600) as claimed in claim 1, wherein detecting for the presence of the saved auracast source (100T) comprises scanning, by the auracast assistant (100A), for advertising information of the auracast source (100T).
8. The method (600) as claimed in claim 1, wherein saving the authentication information and the context information comprises storing, by the auracast assistant (100A), at least one of source metadata information related to a Broadcast ID of the auracast source (100T), a Broadcast Name of the auracast source (100T) and a Broadcast Code of the auracast source (100T).
9. A system (110) for optimizing a reconnection between an auracast source (100T) and an auracast sink (100S), the system (110) comprising: a connecting module (112) configured for establishing, by an auracast assistant (100A), a connection between the auracast source (100T) and the auracast sink (100S); a storing module (114) configured for saving, by the auracast assistant (100A), authentication information and context information related to the auracast source (100T); a detecting module (116) configured for detecting, by the auracast assistant (100A), a presence of the saved auracast source (100T) within a connection range; and a re-connecting module (118) configured for establishing reconnection, by the auracast assistant (100A), with the saved auracast source (100T) using the saved authentication information and the saved context information.
10. The system (110) as claimed in claim 9, wherein the connecting module (112) is configured for: transmitting, by the auracast assistant (100A), an add-source command related to the auracast source (100T) to the auracast sink (100S); receiving, by the auracast assistant (100A), a request for a broadcast-code associated with the auracast source (100T); and transmitting, by the auracast assistant (100A), the broadcast-code to the auracast sink (100S).
11. The system (110) as claimed in claim 9 further comprising a favoriting module configured for: receiving, by the auracast assistant (100A), a user input comprising information related to identification of a favorite auracast source (100T) corresponding to the user, generating, by the auracast assistant (100A), a key-value pair associated with the favorite auracast source (100T); storing, by the auracast assistant (100A), the generated key-value pair.
12. The system (110) as claimed in claim 11, wherein the detecting module (116) is configured for detecting, by the auracast assistant (100A), a presence of the favorite auracast source (100T) based on the key-value pair.
13. The system (110) as claimed in claim 12, wherein the re-connecting module (118) is configured for reconnecting, by the auracast assistant (100 A), to the detected favorite auracast source (100T) based on the saved authentication information and the saved context information, the reconnection being established upon detection of the presence of the favorite auracast source (100T) within the connection range.
14. The system (110) as claimed in claim 9 wherein the connecting module (112) is configured for connecting, by the auracast assistant (100A), a plurality of second auracast receivers of the auracast sink (100S) to the auracast source (100T) using the saved authentication information and the saved context information.
15. The system (110) as claimed in claim 9, wherein the detecting module (116) is configured for scanning, by the auracast assistant (100A), for advertising information of the auracast source (100T).
Citation Information
Patent Citations
Steroid derivatives compound and antiviral agent containing the same as an active ingredient
KR1020240133583A
Rib seasoning sauce composition and manufacturing method thereof
KR102484124B1
Method and device for controlling device using bluetooth low-power energy technology
US20180091932A1
Method and device for reconnecting bluetooth communication
WO2019112268A1
KR20250001381A