A system and a method for switching between a plurality of auracast sources
Patent Information
- Application Number
- PCT/KR2025/003020
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-07
- Filing Date
- 2025-03-07
- Publication Date
- 2025-10-02
AI Technical Summary
Existing Auracast systems require manual switching between sources, leading to missed notifications and distractions, especially in environments with multiple sources, impacting user experience.
A method and system for automatically switching between Auracast sources based on priority detection, using a user device to receive data packets, determine source priority, and switch when a higher priority source is detected, enabling seamless transitions and simultaneous handling of multiple sources.
Ensures users receive important notifications and alerts without missing critical information by automatically switching to higher priority sources, enhancing user experience and accessibility in environments with multiple Auracast sources.
Smart Images

Figure KR2025003020_02102025_PF_FP_ABST
Abstract
Description
A SYSTEM AND A METHOD FOR SWITCHING BETWEEN A PLURALITY OF AURACAST SOURCES
[0001] The disclosure generally relates to the audio broadcast systems, and in particular, to a method and a system for switching between a plurality of AuracastTMsources by a user device.
[0002] The information disclosed in this background section is for the enhancement of understanding of the general background of the disclosure. It should not be taken as an acknowledgement or any suggestion that this information forms the prior art already known to a person skilled in the art.
[0003] AuracastTM, a technology enabled by bluetooth low energy (BLE) audio, enables broadcasting of audio content to multiple user devices. Auracast allows sharing audio content with multiple users present in the broadcast region of an Auracast source.
[0004] Related arts associated with streaming media from an Auracast source suffer from a significant challenge. Specifically, as per existing techniques, a user streaming media from an Auracast source is required to manually switch to another Auracast source to receive and listen to corresponding audio content.
[0005] For instance, a user may rely on Auracast broadcasts for critical information such as emergency alerts, public address systems, and event notifications. In such scenarios, manual switching may lead to missed messages or notifications. Further, the user may be required to continuously monitor user devices for updates, thereby causing distraction and adversely impacting the user experience.
[0006] Furthermore, the likelihood of missing important information increases considerably in situations where multiple Auracast sources are present.
[0007] Thus, there is a need to provide a methodology to overcome the above-mentioned issues in the related arts.
[0008] Additional aspects will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the presented embodiments.
[0009] According to an example embodiment of the disclosure, a method for switching between a plurality of Auracast sources by a user device is disclosed. The method includes receiving, by the user device, a plurality of data packets from a second source among a plurality of Auracast sources while the user device is streaming media from a first source among the plurality of Auracast sources. The plurality of data packets includes a first indication indicating transmission of media from the second source. Further, the method includes determining, by the user device, a priority of the second source. Further, the method includes comparing the determined priority of the second source with a priority of the first source. Furthermore, the method includes switching, by the user device, media streaming from the first source to the second source. The switching is performed upon determining that the second source has a higher priority than the first source based on the comparison.
[0010] According to an example embodiment, a system for switching between a plurality of Auracast sources by a user device is disclosed. The system includes a memory and at least one processor in communication with the memory. The at least one processor is configured to receive a plurality of data packets from a second source among a plurality of Auracast sources while the user device is streaming media from a first source among the plurality of Auracast sources. The plurality of data packets includes a first indication indicating transmission of media from the second source. Further, the at least one processor is configured to determine a priority of the second source. Further, the at least one processor is configured to compare the determined priority of the second source with a priority of the first source. Furthermore, the at least one processor is configured to switch media streaming from the first source to the second source. The switching is performed upon determining that the second source has a higher priority than the first source based on the comparison.In an example embodiment, a non-transitory computer-readable storage medium storing one or more programs comprising instructions. The instructions, when executed by at least one processor of a user device individually or collectively, cause the user device to: receive a plurality of data packets from a second source among a plurality of Auracast sources while the user device is streaming media from a first source among the plurality of Auracast sources, wherein the plurality of data packets includes a first indication indicating transmission of media from the second source; determine a priority of the second source; compare the determined priority of the second source with a priority of the first source; and upon determining that the priority of the second source is higher than the priority of the first source based on the comparison, switch media streaming from the first source to the second source.
[0011] To further clarify the advantages and features of the disclosure, a more particular description of various example embodiments illustrated in the appended drawings is provided. It is appreciated that these drawings depict example embodiments and are therefore not to be considered limiting its scope. The disclosure will be described and explained with additional specificity and detail with reference to the accompanying drawings.
[0012] The above and other features, aspects, and advantages of certain embodiments of the disclosure will be more apparent from the following detailed description, taken in conjunction with the accompanying drawings in which like characters represent like parts throughout the drawings, an in which:
[0013] Figure 1a illustrates a schematic diagram associated with an Auracast environment, in accordance with an existing technique;
[0014] Figure 1b illustrates a sequence of operations performed within the Auracast environment, in accordance with an existing technique;
[0015] Figure 2a illustrates an environment with a plurality of Auracast sources, in accordance with a related art;
[0016] Figure 2b illustrates an environment with the plurality of Auracast sources, in accordance with an embodiment of the disclosure;
[0017] Figure 3 illustrates a system architecture for performing switching between the plurality of Auracast sources, in accordance with an embodiment of the disclosure;
[0018] Figure 4 illustrates a schematic block diagram illustrating element components of an Auracast assistant device and an Auracast receiver device, in accordance with an embodiment of the disclosure;
[0019] Figure 5 illustrates a scenario for implementing the method for switching Auracast sources by Auracast assistant device as the user device, in accordance with an embodiment of the disclosure;
[0020] Figure 6a illustrates a broadcast isochronous stream (BIS) format for the Auracast source, in accordance with an embodiment of the disclosure;
[0021] Figure 6b illustrates a BIS protocol data unit (PDU) header for the Auracast source, in accordance with an embodiment of the disclosure;
[0022] Figure 7 illustrates a block diagram associated with a broadcast source switch module of the Auracast assistant device, in accordance with an embodiment of the disclosure;
[0023] Figure 8 illustrates a block diagram associated with a priority determination module of the Auracast assistant device, in accordance with an embodiment of the disclosure;
[0024] Figure 9 illustrates a block diagram associated with a broadcast source scan module of the Auracast assistant device, in accordance with an embodiment of the disclosure;
[0025] Figure 10a illustrates a schematic diagram associated with implementing switching between a plurality of Auracast sources by the Auracast assistant device, in accordance with an embodiment of the disclosure;
[0026] Figure 10b illustrates a sequence flow diagram to implement switching the plurality of Auracast sources by the Auracast assistant device, in accordance with an embodiment of the disclosure;
[0027] Figure 11a illustrates a schematic diagram associated with implementing switching between the plurality of Auracast sources by the Auracast receiver device, in accordance with an embodiment of the disclosure;
[0028] Figure 11b and Figure 11c illustrate a sequence flow diagram to implement switching between the plurality of Auracast sources by the Auracast receiver device, in accordance with an embodiment of the disclosure;
[0029] Figure 12a illustrates a schematic diagram associated with implementing simultaneously streaming from the plurality of Auracast sources by the Auracast receiver device, in accordance with an embodiment of the disclosure;
[0030] Figure 12b and Figure 12c illustrate a sequence flow diagram to implement simultaneously streaming from the plurality of Auracast sources by the Auracast receiver device, in accordance with an embodiment of the disclosure;
[0031] Figure 13 illustrates a use case scenario associated with switching from an audio source to an Auracast announcement source, in accordance with an embodiment of the disclosure;
[0032] Figure 14 illustrates another use case scenario associated with switching from an audio source to an Auracast emergency alarm source, in accordance with an embodiment of the disclosure;
[0033] Figure 15 illustrates a process flow comprising a method for switching between a plurality of Auracast sources by the user device, in accordance with an embodiment of the disclosure;
[0034] Figure 16 illustrates a sequence flow diagram to implement dynamic switching of local media and an Auracast broadcast source by the Auracast assistant, in accordance with an embodiment of the disclosure;
[0035] Figure 17 illustrates a sequence flow diagram to implement simultaneously streaming of the CIS stream and the BIS stream by the Auracast assistant, in accordance with an embodiment of the disclosure;
[0036] Figure 18 illustrates a schematic block diagram of an architectural modification at the Auracast source device, in accordance with an embodiment of the disclosure;
[0037] Figure 19 illustrates a schematic block diagram of an architectural modification at the Auracast assistant device, in accordance with an embodiment of the disclosure; and
[0038] Figure 20 illustrates a schematic block diagram of an architectural modification at the Auracast sink device, in accordance with an embodiment of the disclosure.
[0039] 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 flowcharts illustrate the method in terms of the steps / operations involved to help to improve understanding of aspects of the 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 those specific details that are pertinent to understanding the various embodiments of the 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.
[0040] It should be understood at the outset that although illustrative implementations of the embodiments of the disclosure are illustrated below, the disclosure may be implemented using any number of techniques, whether currently known or in existence. The disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, including the design and implementation illustrated and described herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
[0041] The term "some" as used herein is defined as "none, or one, or more than one, or all." Accordingly, the terms "none," "one," "more than one," "more than one, but not all" or "all" would all fall under the definition of "some." The term "some embodiments" may refer to no embodiments, to one embodiment or to several embodiments or to all embodiments. Accordingly, the term "some embodiments" is defined as meaning "no embodiment, or one embodiment, or more than one embodiment, or all embodiments."
[0042] The terminology and structure employed herein is for describing, teaching, and illuminating some embodiments and their specific features and elements and does not limit, restrict, or reduce the spirit and scope of the claims or their equivalents.
[0043] More specifically, any terms used herein such as but not limited to "includes," "comprises," "has," "consists," 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 furthermore 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 "MUST comprise" or "NEEDS TO include."
[0044] 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" or "one or more elements" or "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."
[0045] 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.
[0046] It is to be understood that a singular form of a noun corresponding to an item may include one or more of the things, unless the relevant context clearly indicates otherwise. As used herein, each of such phrases as "A or B," "at least one of A and B," "at least one of A or B," "A, B, or C," "at least one of A, B, and C," and "at least one of A, B, or C," may include any one of, or all possible combinations of the items enumerated together in a corresponding one of the phrases. It is to be understood that if an element (e.g., a first element) is referred to, with or without the term "operatively" or "communicatively", as "coupled with," "coupled to," "connected with," or "connected to" another element (e.g., a second element), it means that the element may be coupled with the other element directly (e.g., wired), wirelessly, or via a third element.
[0047] Embodiments of the disclosure will be described below in detail with reference to the accompanying drawings.
[0048] According to an embodiment, the disclosure discloses a method and a system for switching between a plurality of Auracast sources by the user device.
[0049] As used in the disclosure, the term "plurality of data packets" corresponds to the data packets transmitted by an Auracast transmitter (or Auracast source). In the disclosure, the plurality of data packets may include a start packet (corresponding to the first indication), BIS data packets associated with broadcast data, and the end packet (corresponding to the second indication). Further, an offset is introduced between the start packet and the BIS data packets.
[0050] As used in the disclosure, the term "low energy audio streaming" is associated with bluetooth low energy (BLE) audio streaming by an Auracast transmitter.
[0051] As used in the disclosure, the term "plurality of Auracast sources" corresponds to multiple Auracast transmitters (or Auracast sources, audio source, etc.). Further, the broadcast from the multiple Auracast sources is available for streaming by a user device. In an example, the plurality of Auracast sources may include a silent TV, an airport gate announcement source, an emergency alert, and the like.
[0052] As used in the disclosure, the terms "Auracast sink", "Auracast sink devices", "Auracast receiver", "Auracast receiver device", and the "earbuds" may be used interchangeably throughout the description.
[0053] As used in the disclosure, the term "specified offset" corresponds to a time gap between the start packet and the BIS data packets in a broadcast from an Auracast source. The offset is determined based on the time required by the Auracast assistant to switch from a first Auracast source to a second Auracast source.
[0054] As used in the disclosure, the term "one or more audio characteristics" is associated with the volume level associated with audio streamed simultaneously in the Auracast receiver. The audio streamed simultaneously may be associated with the first Auracast source and the second Auracast source.
[0055] The terms "earbuds" or "buds" may be used interchangeably throughout the description.
[0056] The disclosure provides a solution that enables automatic switching between Auracast sources. The implementation of the disclosure ensures that a user receives notifications, alerts, alarms, and the like from a plurality of Auracast sources based on a priority of the corresponding Auracast source. A user device acting as an Auracast Assistant may scan for the plurality of Auracast sources available to the user. The user device may further be required to determine a priority corresponding to each of the plurality of Auracast sources. Furthermore, the user device is configured to switch to an Auracast source with a higher priority on detecting a data packet indicating a start of transmission from the Auracast source. The disclosure therefore ensures that the user does not miss important updates, notifications, or alarms from the Auracast source with the higher priority as compared to a currently associated Auracast source.
[0057] The disclosure implements various approaches based on implementation to solve the one or more above-mentioned issues with the conventional Auracast broadcast solutions. As a first approach, the disclosure enables the Auracast assistant to save Periodic Advertisement (PA) synchronization information of all nearby Auracast sources and scan for Broadcast Isochronous Group (BIG) information (BIG-INFO) data as broadcast by the Auracast sources. This enables the user to switch to a high priority Auracast source once corresponding BI Stream (BIS) data is available and once BIS data is over, switch back to an initial Auracast source (for example, a general music broadcast). As a second and a third approach, the disclosure enables an Auracast sink (for example, a left or a right ear bud) to save PA information of more than one Auracast source and scan for BIG-INFO data. Specifically, as the second approach, the disclosure enables the Auracast sink to perform handover between a current Auracast source and a high priority Auracast source. Whereas as the third approach, the disclosure enables the Auracast sink to simultaneously handle multiple Auracast sources. For example, once BIS data is available, the disclosure enables the Auracast sink to lower a volume of a current broadcast / media and play the broadcast from a high priority Auracast source in a normal or a relative high volume, and once BIS data is over, switch back to the initial Auracast source and / or volume for the initial broadcast / media. As a fourth approach, the disclosure enables the Auracast assistant to perform a handover between a local media and an Auracast broadcast source with high priority. Specifically, the disclosure enables the Auracast assistant to save PA information of more than one Auracast source and scan for BIG-INFO data. Once BIS data is available, the disclosure enables the Auracast assistant to switch to the high priority Auracast source and once BIS data is over, resume local music. In this way, the disclosure enables the user to enjoy local music and priority Auracast data is played when it is available. This will enhance the user experience. As a fifth approach, the disclosure enables the Auracast assistant to dynamically handle two media sources (for example, a local media source and an Auracast broadcast source) simultaneously, similar to the third approach explained for the Auracast sink.
[0058] The disclosure enables the Auracast assistant to provide a User Interface (UI) to enable a user to differentiate between the priority Auracast sources and normal media / Auracast sources. The Auracast assistant may also provide a suggestion / hint to the user to select a high priority Auracast source (for example, an airport gate announcement Auracast source).
[0059] Furthermore, in accordance with embodiments of the disclosure, the Auracast assistant may not merely provide the UE to select the Auracast source, but may also store information corresponding to the multiple Auracast sources for effective handover and / or simultaneous broadcasting.
[0060] The detailed methodology of the disclosure is explained in the following paragraphs.
[0061] Figure 1a illustrates a schematic diagram associated with an AuracastTMenvironment 100 (hereinafter referred to as the environment 100), in accordance with an existing technique. The environment 100 illustrates an Auracast transmitter 102, an Auracast assistant 104, and an Auracast receiver 106.
[0062] The low energy (LE) audio has introduced broadcast audio (Auracast) to the bluetooth technology. The Auracast as a feature enables an audio transmitter (for example, the Auracast transmitter 102) to broadcast to several nearby Bluetooth audio receivers (for example, the Auracast receiver 106). The Auracast receiver 106 in a range of the Auracast transmitter 102 may join an Auracast broadcast broadcasted by the Auracast transmitter 102. In an example, the Auracast transmitter 102 may correspond to a television, a smartphone, a tablet, a laptop, a public announcement system, and the like. The terms "Auracast source" and "Auracast transmitter" may be used interchangeably in the disclosure.
[0063] As depicted in Figure 1a, the Auracast transmitter 102 begins the Auracast broadcast that may include advertisements, which provide the Auracast assistant 104 with information about the Auracast broadcast. Such information may include, but is not limited to, a broadcast name, a content, a coder-decode (codec) configuration, and one or more audio streams (for example, left and right stereo audio streams).
[0064] The Auracast assistant 104 may scan for the advertisements and provide a user interface (UI) to enable users to select and join the Auracast broadcast. In an example, the UI may be similar to the UI commonly used to connect to Wireless Fidelity (Wi-Fi) networks in public spaces. Further, the Auracast assistant (or an Auracast assistant device) 104 may correspond to a smartphone, a smartwatch, a hearing aid remote, and the like.
[0065] Once the Auracast broadcast is selected, the Auracast assistant 104 provides the Auracast receiver 106 (e.g. headphone, earbud, hearing aid, etc.) the information required to join the Auracast broadcast. On joining the Auracast broadcast the user may be able to listen to the audio from the Auracast broadcast via the Auracast receiver (or an Auracast receiver device) 106. Further, the Auracast receiver device 106 may also be referred to as an "Auracast sink device".
[0066] Further, in the Auracast broadcast when advertisements are required to be sent regularly after every fixed interval, a periodic advertisement (PA) may be used.
[0067] Furthermore, the Auracast transmitter 102 may utilize a broadcast isochronous stream-protocol data unit (BIS PDU) or a broadcast isochronous group (BIG) control PDU to transmit audio streams. The BIS PDU is used to carry isochronous data corresponding to the audio data packets broadcasted by the Auracast transmitter 102.
[0068] Further, a BIS logical transport is used to transport the isochronous data streams to all devices for a BIS within range. Each BIS is part of a BIG. The BIG may have multiple BIS. The multiple BISs in the BIG may have a common timing reference based on the Auracast transmitter 102 and are synchronized in time.
[0069] Figure 1b illustrates a sequence of operations performed within the Auracast environment 100, in accordance with an existing technique.
[0070] At operation 101, the Auracast transmitter 102 may initiate an extended advertisement (EA). The EA may have a larger payload, a multiple set of advertisements, and other related information corresponding to the PA. The EA may include information such as, but not limited to, universally unique identifiers (UUIDs), and pointers to PA. The UUIDs may be transmitted to provide service and characteristics identifications of the Auracast transmitter 102 to other devices (for example, the Auracast assistant 104). The pointer acts as a reference to the periodic advertising configuration or set.
[0071] At operation 103, the Auracast transmitter 102 may initiate the PA. The PA may include information such as, but not limited to, a Auracast name, codec information, and BIG information. The BIG information may include timing and QoS setting and / or configurations.
[0072] At operation 105, the Auracast transmitter 102 may start media play and / or transmission of BIS data packets. The Auracast transmitter 102 may transmit the broadcast isochronous streams.
[0073] At operation 107, the Auracast assistant 104 may connect with the Auracast sink 106. The Auracast assistant 104 may connect to the Auracast sink 106 via bluetooth communication using various profiles. Examples of such profiles may include, an Advanced audio distribution profile (A2DP) profile, a hands-free profile (HFP) and a bluetooth low energy audio (BLE) profile. In the illustrated example, the Auracast sink 106 may include a left earbud and a right earbud.
[0074] At operation 109, the Auracast assistant 104 may scan nearby Auracast source channels. For example, the Auracast assistant 104 may scan a channel associated with the Auracast transmitter 102.
[0075] At operation 111, the Auracast assistant 104 may add the Auracast sink devices (e.g., the left ear bud and the right ear bud).
[0076] At operation 113, the Auracast sink 106 may request for the codec information and the BIG information.
[0077] At operation 115, the Auracast assistant 104 may transmit the requested codec and BIG information to the Auracast sink 106.
[0078] At operation 117, the Auracast sink 106 may create synchronization with the source (e.g., the Auracast transmitter 102) using the received information. Specifically, at operation 117, the left and the right ear buds are synchronized with the PA associated with the Auracast transmitter 102.
[0079] At operation 119, the Auracast sink 106 may request broadcast code from the Auracast assistant 104. The broadcast code may refer to a unique identifier that is used to facilitate the broadcast of audio streams to multiple listening devices.
[0080] At operation 121, the Auracast assistant 104 may transmit the broadcast code as provided by the user, to the Auracast sink 106.
[0081] At operation 123, the Auracast sink 106 may directly receive the broadcast audio packets from the source and play the Auracast media for the user.
[0082] However, in conventional solutions, the Auracast sink 106 and / or the Auracast assistant cannot handle and / or save multiple PA information, while listening to an ongoing broadcast. Due to this, one source may be heard by the user and the ear buds cannot switch to any other Auracast source. This may lead to the user missing important content such as, but not limited to, alarms and announcements.
[0083] Further, the conventional solutions fail to provide priority-based switching of Auracast sources as one PA may be added at one time. Specifically, the convention solutions fail to provide a technique to add multiple Auracast sources and listen to Auracast sources based on user setting context priority, without missing the important announcement / alerts data.
[0084] Figure 2a illustrates an environment 200 with a plurality of Auracast sources (102, 204), in accordance with a related art. Figure 2a illustrates an environment 200A with automatic switching between Auracast sources (102, 204) not implemented. The environment 200A may correspond to various types of public locations such as, but not limited to, airports, railways, and bus stations to deliver audio experiences that will enhance visitor satisfaction and increase accessibility. Figure 2a illustrates an airport scenario, where a user 202 is streaming audio from a first Auracast source 102 depicted as a silent television (TV). The first Auracast source 102 (or first source) at the airport is broadcasting audio for a sports event. Further, the user 202 joins the Auracast source 1 through Auracast assistant device 104 (depicted as a smartphone). The user 202 is able to listen to the broadcast for the sports event via the earbuds acting as the Auracast receiver device 106 (or the Auracast sink 106). In another scenario, the user 202 may be streaming local media from a smartphone 104 and listening to the local media via earbuds 106. The local media in the example may be termed as the first audio source 102. In the scenario, the user 202 may use a profile such as, but not limited to, advanced audio distribution profile (A2DP) or LE audio connected isochronous stream (CIS) media context.
[0085] Additionally, an airport gate announcement may be performed by a second Auracast source (or second source) depicted as 204. The user 202 listening to the first source 102 may additionally want to receive notifications and updates from the second source 204. In a scenario where the solution of the disclosure is not implemented for switching between Auracast sources, the user has to manually add and join the second source 204 and listen to the airport gate announcements. The first source and the second source are examples of Auracast transmitter 102. The separate reference numerals are assigned to different Auracast sources in the description of the disclosure for the sake of clarity.
[0086] Figure 2a further depicts the status of announcements from the second Auracast source 204 over a period of time. For instance, there is an announcement from a time duration between t1and t2. The user is required to continuously anticipate a broadcast from the second Auracast source. The mentioned issue negatively impacts the user experience, and the user may not be able to view the sports event without periodically checking for updates from the second source 204.
[0087] Consider a scenario where the user 202 joins the second source 204 by manually switching from the first source 102. As depicted in Figure 2a, there is no announcement at time t0from the second source 204. The user 202 may wait until the announcement starts from the second source 204 (at time t1). Further, at time t2the announcement from the second source 204 ends. Therefore, the user 202 may want to switch back to the first source 102.
[0088] In an alternate scenario, the user 202 may join the second source 204 manually at time t12. The time t12is ahead of time t1, where the broadcast from the second source 204 initiates at time t1. In the scenario, the user 202 misses the initial part of the announcement audio from the second source 204 between time t1to time t12.
[0089] Thereafter, the user 202 may manually switch to the first source 102. As depicted, at time t3Announcement will start and a similar procedure of manual switching may be required. The scenarios as illustrated with Figure 2a may result in the user 202 missing important notifications. The user 202 will also suffer difficulties in streaming media from the first source. The reason for the difficulties may be further associated with the inability of the Auracast assistant 104 or the Auracast receiver 106 to retain information associated with multiple Auracast sources. The information may correspond to the PA (periodic advertisements) from multiple Auracast sources around the user 202.
[0090] In another embodiment, the second Auracast source 204 corresponds to an alarm device that may transmit broadcast related to fire and / or smoke alarm. The environment 200A may further include a third Auracast source that may broadcast discounts related to food items served by a restaurant. Therefore, while listening to the first Auracast source 102, the user would like to listen to the second Auracast source 204 and / or the third Auracast source. However, the conventional solution fails to enable the user to perform such dynamic switching. Specifically, the user cannot sync to all Auracast sources at a time and the user has to manually remove source 1 and add source 2 to listen to fire / smoke alarm broadcast data or add source 3 restaurant discount announcements. Once emergency alerts broadcast or restaurant discount announcement content listening is done, the user has to manually again remove the source 2 (emergency alert broadcast) and add source 1 (silent TV - playing sports channel) manually back again to listen to general music broadcast. This will affect the user experience.
[0091] Moreover, the user may not know, when the data will be available in the source 2 or the source 3 as it is fire / smoke alarm broadcast or discount announcements. Due to this loss of important emergency alert data from the Auracast source 2 or the discount announcements on the Auracast source 3 may be missed by the user, which might be undesirable by the user.
[0092] Similarly, in another scenario, when the user is listening to local media and the airport gate announcement source as act a first Auracast source, the user may have to manually add the airport gate announcement source and stop the local media to listen to the announcement from said Auracast source. However, the user may not know, when the data will be available in the first Auracast source as it is Airport Announcement broadcast, which has high priority information. Due to this, announcement data from the first Auracast source will be missed by the user.
[0093] Figure 2b illustrates an environment 200B with the plurality of Auracast sources (102, 204), in accordance with an embodiment of the disclosure. Figure 2b illustrates an environment with automatic switching between Auracast sources implemented in accordance with the disclosure. The description in Figure 2b introduces the method for implementing the disclosure. The description provided in Figure 2b is to be read in conjunction with the description for the forthcoming figures of the disclosure.
[0094] The initial scenario is the same as explained in the description for Figure 2a. The user 202 is initially connected to a first source (e.g., silent TV as Auracast source 102). The airport gate announcement may be performed by a second Auracast source (or second source) depicted as 204. The user 202 may be streaming audio from the first source 102.
[0095] In an embodiment of the disclosure, the user 202 may store the information associated with the multiple Auracast sources 102, 204 available to the user 202. The user may store the information in the Auracast assistant device 104. Further, the user 202 may store the information while streaming audio from the Auracast source 102 from among the multiple Auracast sources 102, 204. The Auracast assistant device 104 may be further configured to scan for a broadcast from multiple Auracast sources 102, 204. The Auracast assistant device 104 switches to the Auracast source 204 with the highest priority in case the broadcast is being done by multiple Auracast sources 102, 204 simultaneously.
[0096] As illustrated in Figure 2b, at time t0, there is no announcement from the second source 204. While streaming from the first source 102, the Auracast assistant device 104 may perform continuous scanning in the background for PA (periodic advertisement) from the second source 204. At time t1, an announcement is initiated by the second source 204, wherein the announcement corresponds to the plurality of data packets from the second source 204. The plurality of data packets may further include a start packet followed by BIS data and an end packet, as illustrated in Figure 2b. Further, the BIS format for the Auracast source (e.g., the second source 204) is explained in detail with the description for Figure 6a and Figure 6b of the disclosure. In an example, the start packet may be required by the Auracast assistant to initiate a dynamic switch (e.g., remove ongoing TV source information from buds, which may un-sync to ongoing Broadcast and add announcement source information to buds, so that buds may sync to Announcement and listen to announcement audio). The offset may be introduced between the start packet and the actual announcement audio. The offset may be of 1 or 2 secs. This will help the user to not miss the initial announcement audio, while the Auracast assistant is performing dynamic switch as mentioned above. The end and / or empty packet may be introduced after the end of the announcement data (BIS data), so that the Auracast assistant 104 may be able to perform the dynamic switching from one Auracast source to another Auracast source.
[0097] The Auracast assistant device 104 may detect a start packet based on the scan for broadcast or announcement from the second source 204. The start packet indicates the initiation of the announcement from the second source 204 and the Auracast assistant device 104 may trigger a dynamic switch from the first source 102 to the second source 204. The user 202 is able to receive the announcement from the second source 204. The implementation of the disclosure ensures that the user 202 is able to receive broadcast information from a higher priority (e.g. the second source 204) Auracast source. The user is not required to periodically monitor broadcast from the second source 204 and may further stream media from the first source 102.
[0098] Thus, the user no need to perform remove / add sources manually on Assistant phone, whenever handover is required between Auracast sources 102 and 204.
[0099] Figure 3 illustrates a system architecture for performing switching between a plurality of Auracast sources, in accordance with an embodiment of the disclosure. The system architecture may correspond to a system 300. In one or more embodiments, the system 300 may correspond to the Auracast transmitter 102, the Auracast assistant 104, and / or the Auracast sink 106.
[0100] The system 300 may include memory 302 and one or more processors 304 (e.g., including processing circuitry) (hereinafter referred to as the processor 304) communicatively coupled to the memory 302. The processor 304 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and / or any devices that manipulate signals based on operational instructions. Among other capabilities, the processor 304 may be configured to fetch and execute computer-readable instructions and data stored in the memory 302. At this time, the processor 304 may be a general-purpose processor, such as a central processing unit (CPU), an application processor (AP), or the like, and an AI-dedicated processor such as a neural processing unit (NPU). The processor 304 may control the processing of input data in accordance with a specified operating rule or artificial intelligence (AI) model stored in the non-volatile memory and the volatile memory, i.e., the memory 302. The specified operating rule or artificial intelligence model is provided through training or learning. Further, the processor 304 may be operatively coupled to each of the memory, the I / O Interface. The processor 304 may be configured to process, execute, or perform a plurality of operations described herein. Furthermore, the processor(s) 225 may include various processing circuitry and / or multiple processors. For example, as used herein, including the claims, the term "processor" may include various processing circuitry, including at least one processor, wherein one or more of at least one processor, individually and / or collectively in a distributed manner, may be configured to perform various functions described herein. As used herein, when "a processor", "at least one processor", and "one or more processors" are described as being configured to perform numerous functions, these terms cover situations, for example and without limitation, in which one processor performs some of recited functions and another processor(s) performs other of recited functions, and also situations in which a single processor may perform all recited functions. Additionally, the at least one processor may include a combination of processors performing various of the recited / disclosed functions, e.g., in a distributed manner. At least one processor may execute program instructions to achieve or perform various functions.
[0101] The memory 302 may include any non-transitory computer-readable medium known in the art including, for example, volatile memory, such as static random-access memory (SRAM) and dynamic random-access memory (DRAM), and / or non-volatile memory, such as read-only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. The memory 302 is communicatively coupled with the processor 304 to store processing instructions 306 for completing the process. Further, the memory 302 may include an operating system for performing one or more tasks of the system, as performed by a generic operating system in a computing domain. The memory 302 is operable to store instructions executable by the processor 304.
[0102] In some embodiments, the system 300 may include a set of instructions 306 that may be executed to cause the system 300 to perform any one or more of the methods disclosed. The system 300 may operate as a standalone device or may be connected, e.g., using a network, to other computer systems or peripheral devices. The set of instructions 306 may be associated with the processor 304, the memory 302, and the a drive unit 308.
[0103] In a networked deployment, the system 300 may operate in the capacity of a server or as a client-user computer in a server-client-user network environment, or as a peer system in a peer-to-peer (or distributed) network environment. The system 300 may also be implemented as or incorporated across various devices, such as a personal computer (PC), a tablet PC, a personal digital assistant (PDA), a mobile device, a palmtop computer, a laptop computer, a desktop computer, a communications device, a wireless telephone, a land-line telephone, a web appliance, a network router, switch or bridge, or any other machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while a single system 300 is illustrated, the term "system" shall also be taken to include any collection of systems or sub-systems that individually or jointly execute a set, or multiple sets, of instructions to perform one or more computer functions.
[0104] As discussed, the system 300 may include the processor 304 e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both. The processor 304 may be a component in a variety of systems. For example, the processor 304 may be part of a standard personal computer or a workstation. The processor 304 may be one or more general processors, digital signal processors, application-specific integrated circuits, field-programmable gate arrays, servers, networks, digital circuits, analog circuits, combinations thereof, or other now-known or developed devices for analyzing and processing data. The processor 304 may implement a software program, such as code generated manually (e.g., programmed).
[0105] As mentioned above, the system 300 may include the memory 302, such as a memory 302 that may communicate via a bus 322. The memory 302 may include, but is not limited to, 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. In one example, memory 302 may include a cache or random-access memory for the processor 304. In alternative examples, the memory 302 is separate from the processor 304, such as a cache memory of a processor, the system memory, or other memory. The memory 302 may be an external storage device or database for storing data. The memory 302 is operable to store instructions 306 executable by the processor 304. The functions, acts or tasks illustrated in the figures or described may be performed by the programmed processor 304 for executing the instructions 306 stored in the memory 302. 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, micro-code and the like, operating alone or in combination. Likewise, processing strategies may include multiprocessing, multitasking, parallel processing and the like.
[0106] As shown, the system 300 may or may not further include a display unit 314 (or a display 314), such as a liquid crystal display (LCD), an organic light-emitting diode (OLED), a flat panel display, a solid-state display, a cathode ray tube (CRT), a projector, a printer or other now known or developed display device for outputting determined information. The display 314 may act as an interface for the user to see the functioning of the processor 304, or specifically as an interface with the software stored in the memory 302 or a drive unit 308.
[0107] Additionally, the system 300 may include a user input device 316 (also referred to as the input device 316) configured to allow the user to interact with any of the components of the system 300. The system 300 may also include the drive unit 308. The drive unit 308 may include a computer-readable medium 310 in which one or more sets of instructions 312, e.g., software, may be embedded. Further, the instructions 312 may embody one or more of the methods or logic as described. In a particular example, the instructions 312 may reside completely, or at least partially, within the memory 302 or within the processor 304 during execution by the system 300.
[0108] The disclosure contemplates a computer-readable medium that includes instructions 312 or receives and executes instructions 312 responsive to a propagated signal so that a device connected to a network 320 may communicate voice, video, audio, images, or any other data over the network 320. Further, the instructions 312 may be transmitted or received over network 320 via a communication port or interface 318 or using bus 322. The communication port or interface 318 may be a part of the processor 304 or maybe a separate component. The communication interface 318 may be created in software or maybe a physical connection in hardware. The communication interface 318 may be configured to connect with a network 320, external media, the display 314, or any other components in system 300, or combinations thereof. The connection with the network 320 may be a physical connection, such as a wired Ethernet connection or may be established wirelessly as discussed later. Likewise, the additional connections with other components of the system 300 may be physical or may be established wirelessly. The network 320 may alternatively be directly connected to the bus 322.
[0109] The network 320 may include wired networks, wireless networks, Ethernet AVB networks, or combinations thereof. The wireless network may be a cellular telephone network, an 802.11, 802.16, 802.20, 802.1Q or WiMAX network. Further, the network 320 may be a public network, such as the Internet, a private network, such as an intranet, or combinations thereof, and may utilize a variety of networking protocols now available or developed including, but not limited to TCP / IP based networking protocols. The system 300 may not be limited to operation with any particular standards and protocols. For example, standards for Internet and other packet-switched network transmissions (e.g., TCP / IP, UDP / IP, HTML, and HTTP) may be used.
[0110] Figure 4 illustrates a schematic block diagram illustrating element components of the Auracast assistant device 104 and the Auracast receiver device 106, in accordance with an embodiment of the disclosure.
[0111] In some embodiments of the disclosure, the Auracast assistant 104 may act as the user device and may perform the functions associated with the user device for performing a dynamic switch between a plurality of Auracast sources 102. In an example, the Auracast assistant 104 may correspond to a laptop computer, a desktop computer, a PC, a notebook, a smartphone, a tablet, a smartwatch, a smart television, and the like.
[0112] As illustrated in Figure 4, the Auracast assistant 104 may include a processor 404, a communicator 402, and a memory 406. The processor 404 is analogous to the processor 304, the communicator 402 is analogous to the communication interface 318, and the memory 406 is analogous to the memory 302. Therefore, the description corresponding to the structure of the processor 404, the memory 406, and the communication 402 is not repeated and omitted for the sake of brevity. The communicator 402, the processor 404, and the memory 406 may be coupled to each other and with one or more modules 408 to perform one or more instructions or operations to implement the disclosure. Further, the one or more modules 408 may include a broadcast source switch module 410, a priority determination module 412, and a broadcast source scan module 414. The module(s) 408 when executed by the processor(s) 404 may be configured to perform any of the described functionalities provided for respective modules in the forthcoming paragraphs.
[0113] The broadcast source switch module 410 may be configured to switch between a plurality of Auracast sources 102 on reception of a start packet (first indication) or end packet (second indication). In one or more embodiments, the start packet may correspond to a dummy BIS data (start packet) with an offset before an actual announcement data to be broadcasted. The switching is further based on the priority of the Auracast source 102 initiating the broadcast. The priority of each of the Auracast sources in the plurality of Auracast sources 102 is determined by the priority determination module 412. Further, the broadcast source scan module 414 may be configured to receive the information associated with the plurality of Auracast sources 102. The broadcast source scan module 414 may be further configured to continuously scan for broadcast from an Auracast source 102.
[0114] Furthermore, as illustrated in Figure 4, the Auracast receiver 106 may include a processor 420, a communicator 418, and a memory 422. The processor 420 is analogous to the processor 304, the communicator 418 is analogous to the communication interface 318, and the memory 422 is analogous to the memory 302. The description of the structure of the processor 420, the communicator 418, and the memory 422 is not repeated and omitted for the sake of brevity. In some embodiments, the Auracast receiver 106 may integrate the components and functionality of the Auracast assistant 104. The Auracast receiver 106 may be configured to scan for available Auracast sources 102 and perform the switch between the plurality of Auracast sources. The disclosure describes the embodiments in Figure 11 and Figure 12 where the Auracast receiver 106 may perform some of the operations of the disclosure.
[0115] As an example, the module(s) 408 may include a program, a subroutine, a portion of a program, a software component, or a hardware component capable of performing a stated task or function. As used herein, the module(s) 408 may be implemented on a hardware component such as a server independently of other modules, or a module may exist with other modules on the same server, or within the same program. The module(s) 408 may be implemented on a hardware component such as a processor, one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and / or any devices that manipulate signals based on operational instructions. The module(s) 408 when executed by the processor(s) 404 may be configured to perform any of the described functionalities.
[0116] As a further example, the database 416 may be implemented with integrated hardware and software. The hardware may include a hardware disk controller with programmable search capabilities or a software system running on general-purpose hardware. The examples of the database 416 are, but are not limited to, in-memory databases, cloud databases, distributed databases, embedded databases, and the like. The database 416, amongst other things, serves as a repository for storing data processed, received, and generated by one or more of the processors, and the modules / engines / units. In an example, the database 416 may be configured to store information associated with the plurality of Auracast sources 102. The information associated with the plurality of Auracast sources 102 may include broadcast name, configuration, priority related information, and the like.
[0117] Figure 5 illustrates a scenario for implementing the method for switching Auracast sources 102, 204 by Auracast assistant device 104 as the user device, in accordance with an embodiment of the disclosure.
[0118] In the scenario as illustrated in Figure 5, the user 202 is present in an airport. The user is streaming audio from a first Auracast source (or first source) 102 (e.g. silent TV streaming a sports event). The user 202 streams the audio from the first source 102 by using the Auracast assistant device (e.g. smartphone) 104. Further, the user 202 listens to the audio using the Auracast sink (e.g. earbuds) 106.
[0119] The user 202 may obtain the boarding gate information by scanning boarding pass 502 containing a QR code. The user 202 may perform the scan using the Auracast assistant 104 to obtain the gate number (say N). The Auracast assistant 104 may add an Auracast source (or second source) 204 associated with boarding gate number N. The Auracast assistant 104 may be further configured to add the second source 204 as a priority source automatically. The Auracast assistant 104 may further obtain and store the information associated with the second source 204 and perform a background scan. The background scan is performed to detect the first indication (or start BIS packet) to identify the initiation of broadcast or announcement from the second source 204. As the second source 204 has a higher priority than the first source 102, Auracast assistant 104 switches to the higher priority second source 204. The process of switching may include the removal of the first source 102 from the Auracast receiver (e.g. earbuds) 106. Further, the Auracast assistant 104 adds the second source information to the Auracast receiver (e.g. earbuds) 106 without intervention from the user 202.
[0120] The Auracast receiver 106 gets synced to the second source 204 and the user 202 may receive the announcement seamlessly. The Auracast assistant 104 may detect the second indication (or end packet in the plurality of data packets from the second source 204) and identify the end of the announcement for the second source 204. On detection of the second indication the Auracast assistant 104 switches from the second source 204 to the first source 102. The process of switching may include the removal of the second source 204 from the Auracast receiver (e.g. earbuds) 106. The Auracast assistant 104 adds the first source information to the Auracast receiver (e.g. earbuds) 106 without intervention from the user 202. Therefore, the user 202 receives an announcement from the second source 204 and switches back to the first source 102.
[0121] In another scenario, the user 202 may subscribe to airport announcement Auracast source (or second source) 102 for a flight via an online ticket. The online ticket may be obtained via an email by the user 202. The user 202 has the information for the second source 204 for airport gate N stored on the Auracast assistant device 104. The remaining operations and method for switching between a plurality of Auracast sources are identical to the operations already explained in the description for Figure 5.
[0122] In the various embodiments of the disclosure, the functionality and role of the Auracast assistant device (e.g. smartphone) 104 is enhanced by configuring the Auracast assistant device 104 to save the information of multiple Auracast sources 102, 204 locally at the Auracast assistant device 104. Further, the Auracast assistant device 104 may be configured to save the priority information of the multiple Auracast sources 102. The saved priority helps the Auracast assistant device 104 to determine the Auracast source 102 with higher priority.
[0123] The disclosure further configures the plurality of Auracast sources 102, 204 to implement the method as disclosed. The Auracast source side modifications are performed in the plurality of BIS data packets transmitted by an Auracast source 102. The disclosure introduces a start packet before the BIS data packets associated with the broadcast data. Further, an end packet is introduced after the BIS data packets associated with broadcast data (here the broadcast may be associated with an announcement as explained in some embodiments of the disclosure).
[0124] The Auracast assistant device 104 may detect the start packet corresponding to the first indication and automatically switch to the announcement source (e.g. the second source 204). Further, the Auracast assistant device 104 on receiving the end packet (corresponding to the second indication) switches back to the media source (e.g. the first source 102) initially synced with the Auracast receiver device 106. As illustrated in Figure 5, at time t2the announcement from the second source 204 ends and the Auracast assistant device 104 detects the same based on receiving the end packet. Therefore, the end packet is introduced to ensure that the Auracast assistant device 104 performs switching from the second source 204 to the first source 102, without the requirement of manual switching by the user 202.
[0125] Furthermore, an offset is introduced between the start packet and the BIS data packets associated with the broadcast data. The introduced offset helps user 202 to avoid missing the initial announcement audio. The offset allows the Auracast assistant device 104 to perform a dynamic switch and the user 202 does not miss the initial part of the announcement by the Auracast source 102.
[0126] The format of the plurality of data packets is illustrated as BIS format for the Auracast source 102 and explained with the description of Figure 6a and Figure 6b.
[0127] Figure 6a illustrates a broadcast isochronous stream (BIS) format 600A for the Auracast source 102, in accordance with an embodiment of the disclosure. Figure 6b illustrates a BIS protocol data unit (PDU) header 600B for the Auracast source 102, in accordance with an embodiment of the disclosure.
[0128] Figure 6a and Figure 6b are associated with the modifications required at the Auracast source 102 for the implementation of the disclosure. The figures are explained together for the sake of better understanding and clarity.
[0129] As illustrated in Figure 6a, the BIS format corresponds to the plurality of data packets from the Auracast source 102. In an embodiment of the disclosure, the plurality of data packets comprises a first indication, a specified offset between the first indication and the start of the broadcast data (or media), and a second indication at the end of the broadcast data (or media).
[0130] The plurality of data packets may include a start packet (corresponding to the first indication), BIS data packets associated with broadcast data (or media), and the end packet (corresponding to the second indication). Further, the BIS data packets may include data packets associated with BIS 1, BIS 2, and BIS 3 as depicted in Figure 6a. The size of a BIS data packet may be (253+4) bytes.
[0131] The size of the start packet is 2 bytes and is transmitted as a BIS PDU header without a corresponding payload. The BIS PDU header may be illustrated as depicted in Figure 6b. The BIS PDU header format is similar in each of the plurality of data packets in the broadcast stream.
[0132] As illustrated in Figure 6b, the BIS PDU header may include elements such as link layer identifier (LLID), control subevent sequence number (CSSN), control subevent transmission flag (CSTF), reserved for future use (RFU), and length. The size of each element in the BIS PDU header is mentioned in Figure 6b.
[0133] The disclosure configures the RFU for the start packet, the BIS data packets, and the end packet to ensure correct identification of each packet at the Auracast assistant device 104. In the start packet, the RFU may be configured as "01". Further, the size of the payload associated with the start packet is zero (0) bytes. Therefore, the resources required for the transmission of the start packet are negligible.
[0134] Further, the size of the end packet is 2 bytes and is transmitted as a BIS PDU header without a corresponding payload. In the end packet, the RFU may be configured as "00". Further, the size of the payload associated with the end packet is Zero (0) bytes. Therefore, the resources required for the transmission of the end packet are negligible.
[0135] The size of the BIS PDU header for the BIS data packets is 2 bytes. In each of the BIS data packets (e.g., BIS 1, BIS 2, and BIS 3) the RFU may be configured as "10". Each BIS data packet may include a BIS PDU header, a corresponding payload, and an optional message integrity check (MIC).
[0136] Furthermore, an offset as illustrated in Figure 6a is also introduced. The purpose of the offset is to allow the Auracast assistant device 104 to perform a dynamic switch while the user 202 does not miss the initial part of the announcement by the Auracast source 102.
[0137] The modifications suggested for the Auracast source 102 broadcast data packets are compatible with the existing standard. The modification is limited to BIS PDU header modification. The modifications are further limited to the RFU bits to represent start packet (01), stop packet (00), and data packet (10).
[0138] Figure 7 illustrates a block diagram associated with a broadcast source switch module 410 of the Auracast assistant device 104, in accordance with an embodiment of the disclosure.
[0139] At operation 700-1, the broadcast source switch module 410 may be configured to switch to the higher priority second source on receiving the first indication in the plurality of data packets from the second source.
[0140] In an embodiment of the disclosure, the broadcast source switch module 410 of the Auracast assistant device 104 may be configured to switch to a higher priority second source such as an announcement or emergency alert source. In an example, the user 202 may be streaming audio from a first source 102 (e.g. silent TV) and a first indication (e.g. a start packet) is received from a second source 204 (e.g. airport gate announcement source). The broadcast source switch module 410 is configured to switch to the higher priority (announcement source). The user 202 may listen to the announcement using the Auracast receiver device 106 synced to the second source 204 after the performed switch to second source 204.
[0141] At operation 700-2, the broadcast source switch module 410 may be configured to switch from the second source to the first source on receiving the second indication in the plurality of data packets from the second source.
[0142] In the embodiment of the disclosure, the broadcast source switch module 410 of the Auracast assistant device 104 may be further configured to switch from the second source 204 to the first source 102 on receiving the second indication (e.g. an end packet from the second source). In the example, the broadcast source switch module 410 is configured to switch from the higher priority second source 204 at the end of the broadcast from the second source 204. The broadcast source switch module 410 is configured to sync the Auracast receiver device 106 to the first source 102 again. The switch is performed without the requirement of manual switching between the Auracast sources by the user 202.
[0143] Figure 8 illustrates a block diagram associated with a priority determination module 412 of the Auracast assistant device 104, in accordance with an embodiment of the disclosure.
[0144] At operation 800-1, the priority determination module 412 may be configured to identify a priority corresponding to each of the plurality of Auracast sources based at least on a context of media.
[0145] In an embodiment of the disclosure, the priority determination module 412 identifies the priority of the plurality of Auracast sources. The plurality of Auracast sources may correspond to Auracast sources available to the user 202 for syncing and streaming. In an example, the plurality of Auracast sources may include a silent TV, an airport gate announcement source, and an emergency alarm. The disclosure enables the Auracast assistant device 104 to store the information associated with the plurality of Auracast sources. Further, the disclosure allows the user 202 to store information associated with an Auracast source while the Auracast receiver device 106 is synced to another Auracast source.
[0146] The priority of each of the Auracast sources may be determined based on the context of the content broadcasted by an Auracast source. In the embodiment, identifying a priority corresponding to each of the plurality of Auracast sources is based at least on a context type of media. To make decisions about which audio streams they want to connect to, the user devices need to know about what the audio streams contain or what the audio streams are for. The context types are used to describe use cases associated with the audio streams. The context types can be used by both initiators and acceptors of the audio stream to indicate what type of activity or connection they want to participate in, and the context types are applicable to both unicast and broadcast.The context type comprises one or more of announcements, notifications, emergency alarms, alerts, instructions, live videos and audios, voice assistants, media context, and user-provided feedback. The priority may be based on the context type as described in the Table 1.
[0147] [Table 1]
[0148]
[0149] At operation 800-2, the priority determination module 412 may be configured to identify a priority corresponding to each of the plurality of Auracast sources based on one or more user inputs.
[0150] Further, in an embodiment, the priority may be based on inputs from the user 202. The embodiment may include identifying a priority corresponding to each of the plurality of Auracast sources based on one or more user inputs. The user may assign priority to each of the plurality of Auracast sources using the Auracast assistant device 104. The assigned priority may be stored in the Auracast assistant device 104 and the Auracast assistant device 104 may perform switching based on the stored priority.
[0151] Figure 9 illustrates a block diagram associated with a broadcast source scan module 414 of the Auracast assistant device 104, in accordance with an embodiment of the disclosure.
[0152] At operation 900-1, the broadcast source scan module 414 may be configured to perform a scan for one or more Auracast sources configured to perform low energy audio streaming.
[0153] In an embodiment of the disclosure, the broadcast source scan module 414 may be configured to scan for one or more Auracast sources. The scan may be performed continuously or intermittently at regular intervals. The broadcast source scan module 414 may detect a plurality of Auracast sources from among the one or more Auracast sources. The scan may further be associated with the plurality of Auracast sources, where the information associated with the plurality of Auracast sources is already stored in the Auracast assistant device 104. In an example, the Auracast assistant device 104 may detect the start packet while performing a scan for the one or more Auracast sources. Low energy audio streaming may be associated with BLE streaming.
[0154] At operation 900-2, the broadcast source scan module 414 may be configured to stream the media from the plurality of Auracast sources based on the performed scan.
[0155] In an embodiment of the disclosure, the broadcast source scan module 414 may be configured to stream media from the plurality of Auracast sources. In an example, the information associated with the plurality of Auracast sources is stored in the Auracast assistant device 104. The user is able to stream media based on the priority corresponding to each of the plurality of Auracast sources. The audio is streamed to the user 202 by syncing to the Auracast source with the highest priority currently performing a low energy audio streaming (or BLE broadcast). The Auracast receiver device 106 may be synced to the highest priority Auracast source (e.g., an emergency alarm) among the plurality of Auracast sources.
[0156] Figure 10A illustrates a schematic diagram associated with implementing switching between the plurality of Auracast sources by the Auracast assistant device 104, in accordance with an embodiment of the disclosure.
[0157] Figure 10A illustrates a scenario 1000A where the user 202 performs a scan to identify nearby Auracast sources or the plurality of Auracast sources. The scan is performed using a smartphone acting as the Auracast assistant 104. The Auracast assistant 104 is further connected to earbuds acting as the Auracast sink 106. The user 202 may stream audio from a silent TV as first source 102, where information associated with the first source 102 is stored on the smartphone. The earbuds are synced to the first source but are not directly connected to the first source 102. The earbuds stream the audio broadcasted by the first source 102.
[0158] Further, the user 202 may add an airport gate announcement Auracast source (or second source) 204. The priority of the second source 204 is higher compared to the first source 102 based on the context associated with the two sources. The information associated with the second source 204 is stored in the smartphone. The second source 204 therefore behaves like a local source on the smartphone, along with the already added first source 102. The smartphone acting as the Auracast assistant 104 performs a scan for broadcast in the background and detects the start packet associated with an announcement from the second source 204. The smartphone switches to the second source 204 from the first source 102 and the earbuds acting as the Auracast sink 106 are synced to the second source 204. The user 202 listens to the announcement and on completion of the announcement the end packet is detected by the smartphone. The Auracast source is again switched back to the first source 102 without the requirement of switching by the user 202.
[0159] Figure 10b illustrates a sequence flow diagram 1000B to implement switching the plurality of Auracast sources 102, 204 by the Auracast assistant device 104, in accordance with an embodiment of the disclosure.
[0160] The operations 1001a, 1003a, and 1005a corresponding to the first Auracast source 102 are similar to the operations 101, 103, and 105, as explained in FIG. 1b. Specifically, the operations 1001a, 1003a, and 1005a indicates that the first Auracast source 102 is broadcasting EA1, PA1 and BIS1 data packets. For example, the first Auracast source 102 is playing TV media content continuously. Similarly, the operations 1001b, 1003b, and 1005b corresponds to an EA2, a PA2, and BIS2 data packets associated with the second Auracast source 204. However, the second Auracast source 204 may be broadcasting the EA2, the PA2 without the BIS2 data packets initially. For example, the second Auracast source 204 may not be transmitting any audio data.
[0161] At operation 1007, the user connects the Auracast sink 106 (e.g., the earbuds) to the Auracast assistant 104 (e.g., the smartphone). At operation 1009, the user start searching for the Auracast sources 102, 204 using the Auracast Assistant 104. The Auracast assistant 104 may obtain a list of all the Auracast sources 102, 204 in operation (for example, the silent TV and / or the gate announcement Auracast).
[0162] At operation 1012a, the user may add the first Auracast source 102 and save the corresponding PA1 to the Auracast Assistant 104. Therefore, the first Auracast source 102 may start streaming in the Auracast sink 106 (e.g., the earbuds).
[0163] At operation 1012b, the user may add the second Auracast source locally at the Auracast Assistant 104. This enables the Auracast assistant 104 to scan for BIS data of priority source. For example, synchronizing to the BIS will enable the Auracast assistant 104 to identify the start packet to perform the automatic switch between Auracast sources 102, 204.
[0164] Therefore, when the second Auracast source 204 triggers announcement and starts sending audio data with a start BIS2 packet in the start of announcement, operation 1013 is performed.
[0165] Specifically, at operation 1013, the Auracast Assistant 104 identifies the start of the BIS2 data packets and performs the Auracast source handover e.g. switching from the first Auracast source 102 to the second Auracast source 204.
[0166] At operation 1014a, the Auracast Assistant 104 may remove the current first Auracast source 102 from the Auracast sink 106 (e.g., the earbuds).
[0167] At operation 1014b, the Auracast assistant 104 may add the second Auracast source 204 to the Auracast sink 106 (e.g., the earbuds). At operation 1015, the Auracast sink 106 synchronizes to the BIS2 data. Further, after synchronization, the Auracast sink 106 may play the audio from the second Auracast source 204. For example, the priority announcements are played in the earbuds.
[0168] Furthermore, when the announcement from the second Auracast source 204 ends, e.g., when the BIS2 end packets is sent from the second Auracast source 204, the Auracast assistant 104 may interpret the BIS2 end packets as announcement stopped. Therefore, at operation 1016, the Auracast assistant 104 may perform automatic switch and remove the second Auracast source 204.
[0169] At operation 1017, the Auracast assistant 104 may perform the Auracast source handover back to the previous source e.g., the first Auracast source 102. For example, the Auracast assistant 104 may switch first Auracast source 102 back to the Auracast sink 106 (e.g., the earbuds). At operation 1018, the Auracast sink 106 synchronizes to the BIS1 data and start steaming broadcast from the first Auracast source 102.
[0170] Thus, the Auracast assistant 104 may perform the dynamic switching of the Auracast sources based on the BIS data.
[0171] Figure 11A illustrates a schematic diagram 1100A associated with implementing switching between a plurality of Auracast sources 102 by the Auracast receiver device 106, in accordance with an embodiment of the disclosure.
[0172] Figure 11A illustrates a scenario similar to that in Figure 10, where the user 202 performs a scan to identify nearby Auracast sources or the plurality of Auracast sources. The scan is performed using a smartphone acting as the Auracast assistant 104. The Auracast assistant 104 is further connected to earbuds acting as the Auracast sink 106.
[0173] Further, the user 202 may stream audio from a silent TV as first source 102, where information associated with the first source 102 is stored on the earbuds. The earbuds are synced to the first source but are not directly connected to the first source 102. The earbuds stream the audio broadcasted by the first source 102. The user 202 may enter an airport and add an airport gate announcement Auracast source (or second source) 102. The priority of the second source 204 is higher compared to the first source 102 based on the context associated with the two sources. The information associated with the second source 204 is also stored in the earbuds.
[0174] The earbuds may be further configured to scan for broadcast from a second source in the background while playing audio associated with the first source 102. The disclosure may configure one of the earbuds (e.g. the left earbud) to perform the scan in the background as depicted in Figure 11. On detection of the start packet by the left earbud, the announcement from the second source 204 initiates. The information associated with the sources is stored in both earbuds. The left earbud informs the right earbuds about the initiation of the broadcast from the second source 204. The earbuds simultaneously perform a switch to the second source 204 based on the stored information about the Auracast sources.
[0175] Further, once the announcement from the second source 204 ends, the end packet is detected by the left earbud. The left earbud informs the right earbud that the announcement is completed, and the earbuds switch to the first source 102.
[0176] Figures 11b-11c illustrate a sequence flow diagram 1100B to implement switching between a plurality of Auracast sources 102, 204 by the Auracast receiver device 106, in accordance with an embodiment of the disclosure. The Auracast receiver device 106 may include a left earbud and a right earbud.
[0177] The operations 1101a, 1103a, and 1105a may correspond to transmission of the EA1, PA1, and BIS1 from the first Auracast source 102. The operations 1101b, 1103b, and 1105b may correspond to the transmission of the EA2, PA2, and the BIS2 from the second Auracast source 204.
[0178] At operation 1107, the user connects the Auracast sink 106 (e.g., the Auracast receiver device 106) to the Auracast assistant 104 (e.g., the smartphone). At operation 1109, the user start searching for the Auracast sources 102, 204 using the Auracast Assistant 104. The Auracast assistant 104 may obtain a list of all the Auracast sources 102, 204 in operation (for example, the silent TV and / or the gate announcement Auracast).
[0179] At operation 1111, the user may add the first Auracast source 102. At operation 1112, the left and right earbuds acting as the Auracast receiver device 106 may request PA1 and BIS 1 from the Auracast assistant 104. Thereafter, the first Auracast source 102 may start streaming at the Auracast receiver device 106.
[0180] At operation 1113, the Auracast assistant 104 may add the second Auracast source 204to any one ear bud (for example, left (L) bud in the illustrated embodiment case) keeping PA2 in L bud checks for start of BIG info / BIS2 data packets while maintaining BIS1 in both buds.
[0181] Specifically, at operation 1114, the left bud requests PA1, PA2, and BIS1 and the right bud requests PA1, and BIS1.
[0182] At operation 1115, the second Auracast source 204 triggers announcement and Starts sending BIGinfo / BIS2 data packets. The left bud identifies the start of BIS2 data packets and performs the Auracast source handover e.g., switching from the first Auracast source 102 to the second Auracast source 204.
[0183] At operation 1116, the left bud pause the first Auracast source 102 and clears BIS1 sync, e.g., unsync with the BIS1. The left bud may also inform the right bud to clear the BIS and stop streaming the first Auracast source 102.
[0184] At operation 1117, the left bud sync to the PA2 and PAST / share the second Auracast source 204 information to the right bud while maintaining PA1. At this operation, the left and right buds start streaming the second Auracast source 204, e.g., BIS2 is start streaming in both the buds.
[0185] At operation 1118, the announcement from the second Auracast source 204 ends, hence BIGinfo / BIS2 data packets are terminated. The left bud interprets the stop of BIS2 data packets as announcement end.
[0186] At operation 1119, the left bud perform the Auracast source handover back to previous source e.g., perform the switching from the second Auracast source 204 to the first Auracast Source 102. The left bud clear the BIS sync and inform the right bud.
[0187] At operation 1120, the left bud sync to the PA1 and PAST / share the first Auracast source information to the right bud while maintaining the PA2. Thereafter, the BIS1 data is streamed in both the buds.
[0188] Therefore, the first Auracast source 102 may start streaming in the Auracast sink 106 (e.g., the earbuds).
[0189] Thus, the Auracast receiver device 106 may perform the dynamic switching of the Auracast sources based on the BIS data.
[0190] Figure 12a illustrates a schematic diagram 1200 associated with implementing simultaneously streaming from the plurality of Auracast sources 102, 204 by the Auracast receiver device 106, in accordance with an embodiment of the disclosure;
[0191] Figure 12a illustrates an initial scenario similar to that in Figure 11, where the user 202 performs a scan to identify nearby Auracast sources or the plurality of Auracast sources. The scan is performed using a smartphone acting as the Auracast assistant 104. The Auracast assistant 104 is further connected to earbuds acting as the Auracast sink 106.
[0192] Further, the user 202 may stream audio from a silent TV as first source 102, where information associated with the first source 102 is stored on the earbuds. The earbuds are synced to the first source but are not directly connected to the first source 102. The earbuds stream the audio broadcasted by the first source 102. The user 202 may enter an airport and add an airport gate announcement Auracast source (or second source) 102. The priority of the second source 204 is higher compared to the first source 102 based on the context associated with the two sources. The information associated with the second source 204 is also stored in the earbuds.
[0193] The earbuds may be further configured to scan for broadcast from a second source in the background while playing audio associated with the first source 102. The disclosure may configure both the earbuds (left and the right earbud) to perform the scan in the background as depicted in Figure 11. On detection of the start packet by the earbuds, the announcement from second source 204 initiates. The information associated with the sources is stored in both earbuds. In an embodiment, the disclosure may include simultaneously streaming media from each of the first source and the second source based on one or more audio characteristics associated with the first source and the second source.
[0194] In the embodiment of the disclosure, the earbuds acting as the user device are configured to simultaneously stream media from each of the first source and the second source based on one or more audio characteristics associated with the first source and the second source. The audio characteristics here correspond to the volume level associated with the first source and the second source. Instead of switching from the first source 102 to the second source 204, the embodiment configures the earbuds to lower the volume level associated with the first source 102 and stream the announcement from the second source at high or normal volume. Once the announcement ends (end packet is detected), the earbuds are configured to restore the volume of the first source 102 to the normal level.
[0195] Figures 12b-12c illustrate a sequence flow diagram 1200B to implement simultaneously streaming from the plurality of Auracast sources 102, 204 by the Auracast receiver device 106, in accordance with an embodiment of the disclosure.
[0196] The operations 1201a, 1203a, and 1205a may correspond to transmission of the EA1, PA1, and BIS1 from the first Auracast source 102. The operations 1201b, 1203b, and 1205b may correspond to the transmission of the EA2, PA2, and the BIS2 from the second Auracast source 204.
[0197] At operation 1207, the user connects the Auracast sink 106 (e.g., the Auracast receiver device 106) to the Auracast assistant 104 (e.g., the smartphone). At operation 1209, the user start searching for the Auracast sources 102, 204 using the Auracast Assistant 104. The Auracast assistant 104 may obtain a list of all the Auracast sources 102, 204 in operation (for example, the silent TV and / or the gate announcement Auracast).
[0198] At operation 1211, the user may add the first Auracast source 102. At operation 1112, the left and right earbuds acting as the Auracast receiver device 106 may request PA1 and BIS 1 from the Auracast assistant 104. Thereafter, the first Auracast source 102 may start streaming at the Auracast receiver device 106.
[0199] At operation 1213, the Auracast assistant 104 may add the second Auracast source 204to to both the buds and keeping the PA2 also in both the buds for start of BIG info / BIS2 data packets while maintaining BIS1 in both buds.
[0200] At operation 1214, the left and right buds request for the PA1, PA2, and the BIS 1.
[0201] At operation 1215, the second Auracast source 204 triggers announcement and starts sending BIGinfo / BIS2 data packets. The left and right buds identify the start of the BIS2 data packets and render both the streams simultaneously. Specifically, the left and right buds may lower the BIS1 stream volume, increase the BIS 2 stream volume, and render both the BIS1 and the BIS 2 streams simultaneously, as highlighted by operation 1216.
[0202] At operation 1217, the announcement from the second Auracast source 204 ends, hence BIGinfo / BIS2 data packets are terminated. The left and right bud interpret the stop of the BIS2 data packets as announcement end.
[0203] At operation 1218, the left and right buds perform the Auracast source handover back to previous source e.g., perform the switching from the second Auracast source 204 to the first Auracast Source 102. The left and right bud clear the BIS2 sync. Further, the left and right buds render the BIS1 stream in normal volume.
[0204] Therefore, the first Auracast source 102 may start streaming in the Auracast sink 106 (e.g., the earbuds / buds).
[0205] Figure 13 illustrates a use case scenario associated with switching from an audio source to an Auracast announcement source, in accordance with an embodiment of the disclosure.
[0206] Figure 13 illustrates a use case scenario, where the embodiment as described in Figure 10 is used to perform switching from an audio source (e.g. silent TV) to an Auracast announcement source (e.g. airport gate announcement source). In an example, the audio source may be a local media being played on a smartphone acting as an Auracast assistant device 104.
[0207] The audio source may be termed as the first source 102 and the Auracast announcement source may be termed as the second source 204. The user is streaming from the first source 102 via the Auracast receiver device (e.g. earbuds) 106.
[0208] The disclosure enables the Auracast assistant device 104 to save information associated with multiple Auracast sources (e.g. the first source and the second source). The disclosure further enables switching to a higher priority Auracast source (e.g. the second source) on detecting initiation of broadcast from the second source 204. Once the announcement from the second source is over, the disclosure ensures that the Auracast receiver device 106 switches back to the first source 102. In accordance with the approach of the disclosure, the user 202 is not required to manually remove the first source 102 and sync to the second source 204 to stream the announcement on earbuds.
[0209] Further, once the announcement from the second source is over, the user 202 is not required to manually remove second source 204 and sync to the first source 102 to stream from the first source 102. The implementation of the disclosure therefore enhances the user experience.
[0210] Figure 14 illustrates another use case scenario associated with switching from an audio source to an Auracast emergency alarm source, in accordance with an embodiment of the disclosure.
[0211] Figure 14 illustrates a use case scenario, where the embodiment as described in Figure 11 is used to perform switching between three Auracast sources. The first source 102 corresponds to a silent TV streaming a sports event, the second source 204 corresponds to an airport gate announcement source, and the third source 1402 corresponds to an emergency alarm. The emergency alarm is a high-priority alarm such as a smoke or fire alarm. The third source 1402 has the highest priority followed by the second source 204 based on the context.
[0212] Consider user 202 streaming audio from the first source 102, where the user 202 also wants to receive the announcement and the alerts from the second source 204 and the third source 1402 respectively. As explained with the description for Figure 11, the disclosure may configure one of the earbuds (e.g. left earbud) to scan for broadcast from the second source or the third source.
[0213] The disclosure enables switching to the higher priority source on detecting broadcast of announcements or alerts. Further, once the broadcast is over, the disclosure ensures switching to the first source 102. The user 202 is able to save information associated with multiple Auracast sources.
[0214] Further, the user 202 is not required to manually remove first source 102 and sync to the second source or the third source to receive an announcement or an alert.
[0215] The implementation of the disclosure therefore enhances the user experience. In the use case illustrated in Figure 12, the user will not miss important announcements from the second source or alerts from the third source. Further, the user may continue to enjoy the media from the first source.
[0216] Figure 15 illustrates a process flow comprising a method 1500 for switching between a plurality of Auracast sources by the user device, according to an embodiment of the disclosure. The method 1500 may be a computer-implemented method executed, for example, by the system 300, Auracast assistant device (user device) 104, and the modules 408. For the sake of brevity, the constructional and operational features of the system 300 are already explained in the description of Figures 1 to 15 and are not explained in detail in the description of Figure 15.
[0217] At operation 1502, the method 1500 may include receiving, by the user device, plurality of data packets from a second source among a plurality of Auracast sources while the user device is streaming media from a first source among the plurality of Auracast sources, wherein the plurality of data packets may include a first indication indicating transmission of media from the second source.
[0218] At operation 1504, the method 1500 may include determining, by the user device, a priority of the second source.
[0219] At operation 1506, the method 1500 may include comparing the determined priority of the second source with a priority of the first source.
[0220] At operation 1508, the method 1500 may include switching, by the user device, media streaming from the first source to the second source. The switching is performed upon determining that the second source has a higher priority than the first source based on the comparison.
[0221] While the above-discussed operations in Figure 15 are shown and described in a particular sequence, the operations may occur in variations to the sequence in accordance with various embodiments. Further, a detailed description related to the various operations of Figure 15 is already covered in the description related to Figures 1 to 14 and is omitted herein for the sake of brevity.
[0222] Figures 16 illustrate a sequence flow diagram 1600 to implement dynamic switching of local media and an Auracast broadcast source 102 by the Auracast assistant 104, in accordance with an embodiment of the disclosure.
[0223] The operations 1601, 1603, and 1605a and 1605b may correspond to transmission of the EA1, PA1, and BIS1 from the first Auracast source 102. The operation 1605a may correspond to transmission for a dummy BIS data packet indicating a start of the BIS data stream from the Auracast source 102. The operation 1605b may correspond to the transmission of the end packet indicating an end of the BIS data stream from the Auracast source 102.
[0224] At operation 1607, the user connects the Auracast sink 106 (e.g., the Auracast receiver device 106) to the Auracast assistant 104 (e.g., the smartphone). At operation 1609, the user start searching for the Auracast sources 102, 204 using the Auracast Assistant 104. The Auracast assistant 104 may obtain a list of all the Auracast sources 102 in operation (for example, the silent TV and / or the gate announcement Auracast).
[0225] At operation 1613, the Auracast assistant 104 add the Auracast broadcast source 102 locally and continuously check for the PA and checks for start of BIGinfo / BIS data packets.
[0226] At operation 1615, the user plays media (CIS / A2DP) locally at the Auracast assistant 104.
[0227] At operation 1617, the Auracast assistant 104 may transmit a CIS establishment request to establish CIS with the Auracast sink 106. At operation 1619, the Auracast assistant 104 may receive the CIS establishment confirmation indicating that the Auracast sink 106 is sync to the PA and streaming the BIS 0 and play local media.
[0228] At operation 1621, the Auracast source 102 triggers announcement and starts sending BIGinfo / BIS2 data packets (for example, the dummy BIS packet). The Auracast assistant 104 identifies the start of the BIS data packets and add the Auracast source 102 to the Auracast sink 106.
[0229] At operation 1623, the Auracast assistant 104 pauses the local media (Terminate CIS / A2DP). Specifically, the Auracast assistant 104 remove the CIS and resumes the BIS at the Auracast sink 106.
[0230] At operation 1625, the Auracast assistant 104 may receive a notification indicating that the Auracast sink 106 has removed the CIS and synched to PA and BIS1 is streaming at the Auracast sink 106. Specifically, the source announcement from the Auracast broadcast source 102 is start streaming in buds.
[0231] At operation 1627, the announcement from the Auracast source 102 ends, hence BIGinfo / BIS1 data packets are terminated. The Auracast assistant 104 may interpret the stop of the BIS1 data packets as announcement end.
[0232] At operation 1629, the Auracast assistant pause the BIS and establish the CIS again to play the local media. At operation 1631, the CIS is established at the Auracast sink 106 and local media is start streaming in the earbuds.
[0233] Figures 17 illustrate a sequence flow diagram 1700 to implement simultaneously streaming of the CIS stream and the BIS stream by the Auracast assistant, in accordance with an embodiment of the disclosure;
[0234] The operations 1701 to 1721 are similar to the steps 1601 to 1621, as explained in reference to Fig. 16, therefore a description of the operations 1701 to 1721 is omitted for the sake of brevity.
[0235] At operation 1723, the Auracast assistant 104 resumes the BIS along the CIS / A2DP. At operation 1725, the Auracast sink 106 renders both the CIS / A2DP and BIS streams. The BIS stream may be played in a high volume and CIS / A2DP stream may be played in a relatively low volume. Thus, the user may be able to clearly listen to the announcement on the BIS stream without any interruption to the CIS / A2DP stream.
[0236] At operation 1727, the announcement from the Auracast source 102 ends, hence BIGinfo / BIS1 data packets are terminated. The Auracast assistant 104 may interpret the stop of the BIS1 data packets as announcement end.
[0237] Therefore, at operation 1729, the Auracast assistant may pause the BIS and play the CIS / A2DP media in normal volume.
[0238] At operation 1731, the Auracast sink 106 may play the local media from the Auracast assistant 104.
[0239] Figure 18 illustrates a schematic block diagram of an architectural modification at the Auracast source device 102, in accordance with an embodiment of the disclosure.
[0240] Various components of the Auracast source device 102 have a standard structure and accordingly a description such components has been omitted for the sake of brevity. The components highlighted and explained in reference to Fig. 18 correspond to the components that require modification(s) to support the one or more functionalities and / or operations of the disclosure. In the illustrated Fig. 18, an interface 1 may represent the interface between a bluetooth (BT) host 1808 (e.g., the BT host stack) in an application processor (AP) 1801 and a BT controller 1803. Moreover, the low energy (LE) audio codec may resides with the BT host. Further, an Interface 2 may the interface between a digital signal processor (DSP) 1805 and the BT controller 1803. The LE audio codec resides in the DSP 1805. Also, a VSC may stands for a vendor specific command and a VSE may stand for a vendor specific event.
[0241] The change in configuration in the highlighted components may be defined in the following Table 2:
[0242] [Table 2]
[0243]
[0244] Further, BT LE audio codec 1804 may be added to the AP 1801.
[0245] Figure 19 illustrates a schematic block diagram of an architectural modification at the Auracast assistant device 104, in accordance with an embodiment of the disclosure. The structural configuration of the Auracast Assistant device 104 may be similar to the Auracast source device 102. Therefore, the configuration-based changes has highlighted via the following Table 3:
[0246] [Table 3]
[0247]
[0248] Figure 20 illustrates a schematic block diagram of an architectural modification at the Auracast sink device 106, in accordance with an embodiment of the disclosure. Various components of the Auracast sink device 106 have a standard structure and accordingly a description such components has been omitted for the sake of brevity. The components highlighted and explained in reference to Fig. 20 correspond to the components that require modification(s) to support the one or more functionalities and / or operations of the disclosure. In the illustrated Fig. 18, an interface 1 may represent the interface between a DSP 2001 and a BT Controller 2004. Moreover, the LE audio codec may reside with the BT host. Further, an Interface 2 may represent a data path interface between the DSP 2001 and an audio flinger 2003 to receive the decoded audio packets.
[0249] The configuration-based changes in the Auracast sink device 106 has highlighted via the following Table 4:
[0250] [Table 4]
[0251]
[0252] The disclosure provides the following advantages:
[0253] The disclosure enables seamless switching between Auracast sources. The disclosure further ensures that the user receives critical information without interruption.
[0254] The disclosure may help in critical scenarios and ensure that users receive emergency alerts in a timely manner.
[0255] The disclosure eliminates the need for manual switching between Auracast sources. The implementation of the disclosure reduces the likelihood of missed notifications and announcements.
[0256] The disclosure may be implemented for multiple Auracast sources. The implementation may therefore be extended to scenarios with multiple sources such as in a public address system and an emergency broadcast system.
[0257] The disclosure may further ensure continuous reception of broadcast information in scenarios where the user is moving between different Auracast sources.
[0258] 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.
[0259] 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 into multiple 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.
[0260] 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 disclosure 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.
[0261] While the disclosure has been illustrated and described with reference to various example embodiments, it will be understood that the various example embodiments are intended to be illustrative, not limiting. It will be further understood by those skilled in the art that various changes in form and detail may be made without departing from the true spirit and full scope of the disclosure, including the appended claims and their equivalents. It will also be understood that any of the embodiment(s) described herein may be used in conjunction with any other embodiment(s) described herein.
Claims
1.A method (1500) for switching between a plurality of Auracast sources by a user device (104), the method (1500) comprises:receiving (1502), by the user device (104), a plurality of data packets from a second source among a plurality of Auracast sources while the user device (104) is streaming media from a first source among the plurality of Auracast sources, wherein the plurality of data packets includes a first indication indicating transmission of media from the second source;determining (1504), by the user device (104), a priority of the second source;comparing (1506) the determined priority of the second source with a priority of the first source; andupon determining that the priority of the second source is higher than the priority of the first source based on the comparison, switching (1508), by the user device (104), media streaming from the first source to the second source.2.The method (1500) of claim 1, wherein the plurality of data packets includes a second indication indicating end of the transmission of media from the second source, andwherein the method (1500) further comprises:switching, by the user device (104), media streaming from the second source to the first source, based on the second indication.3.The method (1500) of claim 1, wherein for determining the priority of the second source, the method (1500) further comprises:identifying a priority corresponding to each of the plurality of Auracast sources based on a context of media, wherein the context comprises at least one of announcements, notifications, emergency alarms, alerts, instructions, live videos and audios, voice assistants, media context, or user-provided feedback.4.The method (1500) of claim 1, further comprising:identifying a priority corresponding to each of the plurality of Auracast sources based on one or more user inputs.5.The method (1500) of claim 1, wherein the plurality of data packets comprises a specified offset between a start of the media, and the end of the media.6.The method (1500) of claim 1, wherein prior to receiving the plurality of data packets from the second source, the method (1500) comprises:performing, by the user device (104), a scan for one or more Auracast sources configured to perform low energy audio streaming;streaming, the media from the plurality of Auracast sources based on the performed scan.7.The method (1500) of claim 1, comprises:simultaneously streaming media from each of the first source and the second source based on one or more audio characteristics associated with the first source and the second source.8.A user device (104) to switch between a plurality of Auracast sources, the user device (104) comprising:memory (406) storing instructions; andat least one processor (404),wherein the instructions, when executed by the processor (404) individually or collectively, cause the user device to:receive a plurality of data packets from a second source among a plurality of Auracast sources while the user device (104) is streaming media from a first source among the plurality of Auracast sources, wherein the plurality of data packets includes a first indication indicating transmission of media from the second source;determine a priority of the second source;compare the determined priority of the second source with a priority of the first source; andupon determining that the priority of the second source is higher than the priority of the first source based on the comparison, switch media streaming from the first source to the second source.9.The user device (104) of claim 8, wherein the plurality of data packets includes a second indication indicating end of the transmission of media from the second source, andwherein the instructions, when executed by the processor (404) individually or collectively, cause the user device to:switch media streaming from the second source to the first source, based on the second indication.10.The user device (104) of claim 8, wherein to determine the priority of the second source, the instructions, when executed by the processor (404) individually or collectively, cause the user device to:identify a priority corresponding to each of the plurality of Auracast sources based on a context of media, wherein the context comprises at least one of announcements, notifications, emergency alarms, alerts, instructions, live videos and audios, voice assistant, media context, or user-provided feedback.11.The user device (104) of claim 8, wherein the instructions, when executed by the processor (404) individually or collectively, cause the user device to:identify a priority corresponding to each of the plurality of Auracast sources based on one or more user inputs.12.The user device (104) of claim 8, wherein the plurality of data packets comprises a specified offset between a start of the media, and the end of the media.13.The user device (104) of claim 8, wherein prior to receiving the plurality of data packets from the second source, the instructions, when executed by the processor (404) individually or collectively, cause the user device to:perform a scan for one or more Auracast sources configured to perform low energy audio streaming;stream, the media from the plurality of Auracast sources based on the performed scan.14.The user device (104) of claim 8, wherein the instructions, when executed by the processor (404) individually or collectively, cause the user device to:simultaneously stream media from each of the first source and the second source based on one or more audio characteristics associated with the first source and the second source.15.One or more non-transitory computer-readable storage media storing one or more computer programs including computer-executable instructions that, when executed by at least one processor, cause a user device to perform operations, the operations comprising:receive a plurality of data packets from a second source among a plurality of Auracast sources while the user device is streaming media from a first source among the plurality of Auracast sources, wherein the plurality of data packets includes a first indication indicating transmission of media from the second source;determine a priority of the second source;compare the determined priority of the second source with a priority of the first source; andupon determining that the priority of the second source is higher than the priority of the first source based on the comparison, switch media streaming from the first source to the second source.