METHOD AND SYSTEM FOR AUDIO SHARING
1. A first headphone system for sharing audio, the first headphone system comprising:
- a first module configured to communicate with a first audio device, the first module further configured to receive first audio data from the first audio device;
a set of one or more first speakers configured to output second audio based on second audio data;
at least one microphone configured to receive first voice data from a user while the set of one or more first speakers is outputting the second audio;
a second module configured to establish a wireless network to communicate with one or more second headphone systems over one or more unicast communication channels; and
a first processor configured to receive the second audio data from a particular second headphone system of the one or more second headphone systems, the particular second headphone system receiving the second audio data from a second audio device, to stream the second audio data over a respective unicast communication channel of the one or more unicast communication channels to each other second headphone system of the one or more second headphone systems other than the particular second headphone system for each other second headphone system to output the second audio based on the second audio data, to communicate the first voice data over the wireless network to each second headphone system of the one or more second headphone systems, and to receive second voice data over the wireless network from at least one second headphone system of the one or more second headphone systems.
The present invention provide a method and system of audio sharing aimed to revolutionize the way people listen and share music and to give multiple uses to a wireless headphone referred to as HEDphone. A communication protocol referred to as HEDtech protocol is used in a HED system to allow users to share music amongst a plurality of HEDphones while using a single audio source. A wireless connection is established between the HEDphone and a mobile device including an audio source while simultaneously having the capability of allowing other HEDphone users to join wirelessly and listen to the same audio source. A feature of Super Human Hearing (SHH) goes beyond conventional ANR (ambient noise reduction) with additional features that allow the user to control their aural environment by being able to directionally increase or decrease selective frequencies.
- 1. A first headphone system for sharing audio, the first headphone system comprising:
a first module configured to communicate with a first audio device, the first module further configured to receive first audio data from the first audio device; a set of one or more first speakers configured to output second audio based on second audio data; at least one microphone configured to receive first voice data from a user while the set of one or more first speakers is outputting the second audio; a second module configured to establish a wireless network to communicate with one or more second headphone systems over one or more unicast communication channels; and a first processor configured to receive the second audio data from a particular second headphone system of the one or more second headphone systems, the particular second headphone system receiving the second audio data from a second audio device, to stream the second audio data over a respective unicast communication channel of the one or more unicast communication channels to each other second headphone system of the one or more second headphone systems other than the particular second headphone system for each other second headphone system to output the second audio based on the second audio data, to communicate the first voice data over the wireless network to each second headphone system of the one or more second headphone systems, and to receive second voice data over the wireless network from at least one second headphone system of the one or more second headphone systems.
- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
- 18. A method performed by a host headphone system, the method comprising:
establishing one or more unicast communication channels on a wireless network with one or more guest headphone systems; receiving gust audio data from a particular guest headphone system of the one or more guest headphone systems over the wireless network, the particular guest headphone system receiving the guest audio data from a guest audio device; outputting guest audio by a set of one or more speakers, the guest audio being based on the guest audio data; streaming the guest audio data over a respective unicast communication channel of the one or more unicast communication channels on the wireless network to each other guest headphone system of the one or more guest headphone systems other than the particular guest headphone system for each other guest headphone system to output the guest audio based on the guest audio data; receiving by at least one first microphone first voice data from a user while the set of one or more speakers is outputting the guest audio; communicating the first voice data over the wireless network to each guest headphone system of the one or more guest headphone systems; and receiving over the wireless network second voice data from at least one guest headphone system of the one or more guest headphone systems.
- View Dependent Claims (19, 20, 21, 22, 23)
The present application is a continuation of U.S. Patent Application Ser. No. 16/719,719 filed Dec. 18, 2019 and entitled “Method and System for Audio Sharing,” which is a continuation of U.S. patent application Ser. No. 16/413,384 filed May 15, 2019 and entitled “Method and System for Audio Sharing,” which is a continuation of U.S. patent application Ser. No. 14/757,655 filed Dec. 23, 2015 and entitled “Method and System for Audio Sharing,” now U.S. Pat. No. 10,390,122, which claims priority to U.S. Provisional Patent Application Ser. No. 62/096,209 filed Dec. 23, 2014 and entitled “Method and System for Audio Sharing,” which are hereby incorporated by reference herein.
The present invention relates to a system including a headset which is used in connection with a multimedia device and in particular to a system and method for music sharing and communication amongst wireless headphones and an improved wireless headphone providing control of the aural environment to provide super human hearing.
Bluetooth enabled headphones are known for wireless communication to an audio source. U.S. Pat. No. RE43,872 describes that headsets or headphones are commonly used in connection with communication and/or multimedia devices in order to listen to audio signals produced by or transferred from these devices. Examples of such communication and/or multimedia devices are radio receivers, portable music players like CD players and MP3 players as well as mobile phones. The most recent generation of these headsets is represented by so-called on-ear Bluetooth voice headsets which have become more and more popular in the past. The reason is that these on-ear headsets provide a very convenient way in order to wear the headset for a hands-free communication. The head set can be used in connection with a communication and/or multimedia device and which allows to listen to audio signals either in a mono mode, which is sufficient for telephone communication, or in a stereo mode, which is desired for listening to music.
U.S. Pat. No. 8,340,058 describes a headphone having ability to communicate using Internet Protocol (IP) standard. In an embodiment, the headphone is provided a wireless LAN (WLAN) network interface such that VOIP calls are conducted using a wireless medium. Similarly, a Bluetooth protocol type interface is also provided to communicate with a cellular phone and the communication forms the basis for the voice calls between the headphone and other cellular phones connected via the cellular network.
It is desirable to provide a method and system to use wireless headphones for audio sharing between headphones.
The present invention provide a method and system of audio sharing aimed to revolutionize the way people listen and share music and to give multiple uses to a wireless headphone referred to as HEDphone. A communication protocol referred to as HEDtech protocol is used in a HED system to allow users to share music amongst a plurality of HEDphones while using a single audio source. A wireless connection is established between the HEDphone and a mobile device including an audio source while simultaneously having the capability of allowing other HEDphone users to join wirelessly and listen to the same audio source. The HED system creates what is referred to as HEDmesh using the HEDtech protocol.
In one embodiment, the HEDphone is a Hi-Fi stereo wireless headphone with the added capability of creating a wireless mesh (HEDmesh) in order to share audio with other HEDphone users within range. The HEDphone is wirelessly connected to a mobile device, such as a mobile phone or tablet via Bluetooth or cable, and is then able to broadcast the audio via the HEDtech protocol to others users within range.
In one embodiment, the HEDphone provides a feature referred to as Super Human Hearing (SHH). Super Human Hearing (SHH) goes beyond conventional ANR (ambient noise reduction) with additional features that allow the user to control their aural environment by being able to directionally increase or decrease selective frequencies.
In one embodiment, a detection device is used in combination with the HEDphone to detect whether the HEDphone is positioned on the head. The audio source to the HEDphone can be stopped when the HEDphone is detected as having been removed from the head.
The invention will be more fully described by reference to the following drawings.
Reference will now be made in greater detail to a preferred embodiment of the invention, an example of which is illustrated in the accompanying drawings. Wherever possible, the same reference numerals will be used throughout the drawings and the description to refer to the same or like parts.
An example HEDphone 12 is shown in
- Turn Bluetooth to the ON position on mobile device 18:
- 1. Search for Bluetooth devices.
- 2. Select HEDphone 12 from the result list.
- 3. optionally Enter pin code 0000.
Bluetooth pairing and HEDphone 12 functionality must be possible even if the user has not downloaded the HEDapp mobile application. If the application is not downloaded the HEDphone 12 will default to the factory settings. These settings can only be changed by downloading the HEDapp.
Once the HEDapp is downloaded, the user will enter his/her HEDphone'"'"'s name which will then be displayed on the app and on HEDmesh 14 when in use.
HEDmesh 14 can be created to stream music, to talk to other HEDmesh members or for both. When HEDmesh 14 is created or a new HEDphone 12a-12n joins the group, an audible tone can be played on HEDphones 12a-12n and the HEDapp user'"'"'s list will be updated with the new user/player'"'"'s name.
HEDmesh 14 can be created by any HEDphone 12a-12n user who will become the administrator or master and will control the audio played to HEDmesh 14. Other HEDphone 12a-12n users can join the group via NFC with any HEDphone 12a-12n already in HEDmesh 14 and not have to find who the master is. Every time a new player joins the group, the master and all other users/players will receive an audio tone and everyone on HEDmesh 14 can see an updated list.
HEDphone 12a-12n users can create a private HEDmesh 14 where only “approved” members may join. Private HEDmesh 14 groups can be saved for later use and all subscribed members can connect automatically when they are next in proximity. At the same time the administrator of the private Group can block and expulse a HEDphone user at any time, whether in range or not (from the HEDapp group). It should also be possible for a user to join a HEDmesh but to listen to its own music and only use the HEDmesh to communicate to others. This can only be achieved using the HEDapp, but it can be set to “talk lock” in the HEDapp. If talk lock is ON on the HEDapp the user can simply tap the HEDtak button to lock the channels. Rules may be then introduced to limit the number of simultaneous conversations.
Several HEDmesh 14 groups may coexist in the same area.
While users are on a HEDmesh 14, they can talk to each other by pressing the HED capacitance pad 32 on the HEDphone touch pad shown in
Any user on HEDmesh 14 should be able to take the call, text and carry out other function on portable device 18 without affecting the HEDmesh communication.
If a user receives a phone call while on HEDmesh 18, the user can take the call without affecting the rest of the users in the group. As soon as a phone call is finished and the user hangs up it should be able to hear the audio streaming from HEDmesh 18. HED capacitance pad 33 positioned above speaker 34 can be used for controlling the audio source and the phone functions of HEDphone 12. For example, HED capacitance pad 33 can control volume up, volume down, next song, previous song, pause music, play again, take calls and hang up calls.
HEDphone 12 can include a battery. The battery preferably provides 15 hours of Bluetooth use for music and at least 10 hours for HEDmesh operation. The battery may be charged while in HEDphones 12 by using the micro USB cable or by using an external cradle. Alternatively, the battery may be charged by induction with a special cradle or hanger. A larger battery can also be fitted in a cavity of HEDphone 12.
HEDphone 12 can be fitted with a mini jack socket to allow the user to bypass the Bluetooth link. This will allow the user to save battery, obtain better audio and avoid latency. On the HEDapp the user will be able to select if the Bluetooth link is to stay live while using the cable but the system will default it to Off. HEDphone 12 can provide a HIFI quality audio when operating with cable even when the battery is flat. In this mode, (with cable) HEDphone 12 can turn off the Bluetooth link automatically in order to save battery. This function may be overwritten via the HEDapp. This will allow the connection of the HEDphone to a laptop using the audio cable while still being connected to a mobile phone via Bluetooth. This socket can support an aux microphone input in case an extra microphone boom is sold as an accessory for the HEDmesh 18. All other settings and functions for the HEDphone will be adjusted and controlled via the HEDapp.
In one embodiment HEDphone 12 provides a feature referred to as Super Human Hearing (SHH). SHH goes beyond conventional ANR (ambient noise reduction) with additional features that allow the user to control their aural environment by being able to directionally increase or decrease selective frequencies. This will allow the user to attenuate specific sounds around them. Conversely, the user will also be able to single out and amplify other sounds around them. For example, while exercising (running, skiing, cycling, etc.), users may be able to emphasize the sound levels behind them to help them hear if someone or something is approaching too close behind them; all of this while still enjoying their music.
In this embodiment, HEDphone 12 can be fitted with a plurality of unidirectional microphones 40a-40f or an array of omni directional microphones in addition to the ones used for ANR as shown in
- 1. The ANR function will work as they exist on standard headphones. The user can either activate or deactivate ANR independently of SHH.
- 2. The additional microphones dedicated for the SHH function will pick up directional ambient sounds separately from the ANR microphones.
- 3. The user will be able to control the SHH function with the aid of a 3D visual app for their mobile telephone or device.
- 4. Reinserted into the signal path of the user'"'"'s audio stream.
- 5. SHH function will allow the user to allow ambient noise at user-defined frequencies to filter into the HEDphone via the fitted microphones. For example, this new feature could allow the user to hear other people talking to them without having to remove the HEDphones or having to pause or mute the music. Users that wear headphones while walking, cycling or doing any other type of activity that requires some level of awareness of their immediate surrounding will greatly benefit from this new feature as well as increasing safety. The user will then be less likely to remove their headphones.
- 6. The user will be able to control the direction and frequency of the sounds they want to enhance.
- 7. A combination of both SHH and conventional noise reduction will allow the user to pass through the ambient noise but to also cancel out any noise from the “wanted” audio signal such as human voice. The idea is that if someone is talking to the headphone user in a noisy environment, the background noise can be cancelled out from the human voice, making the headphone a tool to communicate in noisy environments, where it would be clearer to communicate with the headphones than without them.
- 8. Amplification of the “good” inbound audio (human voice) to aid human hearing for people with difficulties, to be able to communicate in noisy environments or simply, to allow you to communicate without removing the headphones and hear better than without them. This may have a different level adjustment to the music level and it may require a separate mode activated in the HEDapp which we will also give control between the rear and forward mic in the headband. The HEDapp will provide a visual representation of the audio world around them.
The SHH functionality can be based on four adjustments.
- a. Noise reduction level (gradual adjustment of the noise reduction level). This adjustment will be independent of the inbound audio level.
- b. Forward mic and rear mic levels (for good audio)
- c. Music volume. Adjusts the music level.
- d. Inbound audio level for the talk mic (the one used to talk to the HEDmesh and telephone) must be muted.
The SHH must be achieved by dynamically adjusting the levels above. These adjustments maybe carried out by sliding the finger over the HEDpad up and down for volume and right and left for rear mic and front mic gain. To make it easier to the user there should be some pre-determined modes to be set via the HEDapp.
Some of the modes could be:
- SHH On/Off
- City walk
- HEDphone 12 can support the following functionalities without HEDapp.
Pairing to a portable device, play music and music controls, support phone functionality, create a HEDmesh network, stream audio to the HEDmesh network, able to talk to HEDmesh participants within the network and activate and control the Super Human Hearing function.
To connect HEDphones 12, a NFC device can be activated in one HEDphones 12. This can be achieved by shaking one HEDphones 12 and getting them together facing the NFC side (HEDshake). Alternatively, a HEDmesh button can be activated with a HED button. This will create a sharing network between 2 or more HEDphones 12. This network will be created automatically by randomly allocating one of HEDphones 12 as a hotspot. The NFC time required is about 2 seconds. The new network is referred to as HEDmesh 50, as shown in
Basic HEDmesh Network.
At this stage, both HEDphones 12 can talk to each other by pressing HED button 52 “” or by activating the required action on capacitance pad.
In a first scenario shown in
HEDphone 12a (connected to a mobile device) can play music, share music and talk to other HEDphone 12b in the network (HEDmesh).
HEDphone 12b can only talk. As soon as user A starts playing music, it is automatically sent to HEDphone 12b.
Music and voice can play simultaneously. When there is voice present on the HEDmesh network, volume of the music can be lowered.
In a second scenario shown in
In this case, all HEDphones 12a and 12b can play music, share music and talk to other HEDphones 12 in the network (HEDmesh).
The HEDmesh network can have a predetermined number of players, for example a maximum of 15, and a maximum number of simultaneous voice calls, for example a maximum of 6. Every user will be able to play music to the HEDmesh network. Pressing play in their mobile devices, will override the current music player (Host) becoming the new HEDmeshHost.
A headphone user can leave the HEDmesh network when:
- 1. He/she goes out of range
- 2. Turn the HEDphone OFF
- 3. Battery goes flat
- 4. Pressing HED button
LEDs will indicate the users when he is on a HEDmesh or not there should also be an audible tone for entering and exiting a HEDmesh session.
When HEDphone 12 leaves the HEDmesh session, all data will be erased from all users in the HEDmesh.
To re-join the HEDmesh, it will have to go to one of HEDphones 12 already in the HEDplay session and use the NFC logging method.
When leaving the HEDmesh network there could be two scenarios:
- 1. The user leaving is the network Host:
In this case, the entire HEDmesh will stop hearing the music until another remaining user presses play in one of their mobile devices. The network is not dissolved, so another user within the HEDmesh network becomes the hotspot. If the hotspot left and there was already someone playing music, this user will become the hotspot automatically so the music is only interrupted momentary.
- 2. The user leaving is not the network Hotspot:
In this case, the rest of the HEDmesh network carry on operating normally, unless the user leaving was the one playing music which will obviously stop the music on the HEDmesh until another player presses play.
If a HEDplayer (HEDphone 12 user within a HEDmesh network) receives a call, there are two possible scenarios:
- 1. The HEDplayer is playing music:
In this case, the music stops on the HEDmesh and any other user, already in the same network, can take over by pressing play in their mobile device. Music is then sent to all players except the one on the phone call. As soon as the phone call finishes, the player will automatically hear the music being played again.
- 2. The HEDplayer is not playing music:
In this case, it will simply take the call and stop hearing the music being played in the HEDmesh network. Again, as the call finishes, it will automatically go back to listen what is being played on the HEDmesh network.
In one embodiment, HEDtech protocol 15 is based on a multicast/unicast datagram data transfer. HEDmesh 14 is created by HEDphone 12a with one or more HEDphones 12b-12n connect to HEDmesh 14, such as by means of a Service Set Identifier (SSID) and Wi-Fi Protected Access II (WPA2) password provided over Near Field communications (NFC) on a pairing event.
In an embodiment of HDtech protocol 15, time division can be used in which time is divided in default periods of 42.666 ms. On each time period, HEDphone 12a as the Host will send up to 8 packets 100 to the HEDphones 12a-12n as Guests. Each packet 100 takes about 2 ms to be transmitted. Accordingly, in this embodiment a total of about 16 ms are used to send packets 100 between HEDphone 12a as the Host and HEDphones 12b-12n as Guests. The remaining time of the 42.666 ms period is used by each of HEDphones 12b-12n, in turn, to send acknowledgment and new data, if any, to HEDphone 12a as the Host. There is always a minimum of 1 packet 100 sent by HEDphone 12a as the Host every period. If there is no data to send, a special beacon packet is sent. HEDphones 12b-12n can send packets to HEDphone 12a as packets 102. Packet 100 can be a datagram multicast packets and packet 102 can be a datagram unicast packet as shown in
On each packet 100 sent by HEDphone 12a as Host there is a list of time instants 112 allocated to each Guests for their reply. This minimizes packet collision over the air and allows dynamic management of the time allocated for the reply of each Guest on each transmission period. Each Guest may reply with none or up to 4 packets 102 on each period.
The duration of the time period is defined by the time between packets with burst index 0 sent by the Host. This means that the default 42.666 ms time period can be changed by the Host, if needed.
In order for the time division to be accurate, synchronisation between the Host and all Guests is required. Wi-Fi network 16 provides synchronisation between the members of a network using an internal timer identical on all members referred to as Time Synchronisation Function (TSF) timer. This timer is incremented every microsecond and the maximum deviation between members of the network is 25 μs. HEDtech protocol 15 determines a time difference between the Time Synchronisation Function (TSF) and the local time which is broadcasted by the HEDphone 12a as Host to all HED phones 12b-12n as Guests, which also get their own difference between Time Synchronisation Function (TSF) timer and a local timer. Based on these two differences, each Guest can then calculate, at any time, what is the corresponding local time in the Host. Audio is synchronized by means of a 32-bit time stamp. At HEDphone 12a as the Host, this time stamp corresponds to the 32 least significant bits of the local time in units of 0.1 ms. At the Guest, the calculation is made on the adjusted local time, so that the generated time stamp matches the Host'"'"'s time stamp.
Tables 1A-1B define the contents of packets 100 exchanged between Host and Guest. All multi-byte values are represented in little-endian format with a Less Significant Byte first.
Each byte is divided in 8 bits numbered from 0 to 7, with 0 being the Less Significant Byte (LSB) bit.
The contents of packet 100 from Host to Guest are shown in Table 1A as the following:
The size of each transmitted packet is fixed, independent of its contents. The only exception is the beacon packet that does not include the “stream”, “data” and “voice” fields.
The contents of each packet 102 from Guest to Host are shown in Table 1B as the following:
The size of each transmitted packet is variable, depending on the data being transmitted as defined by the “buf_ctrl” field.
The HEDtech protocol 15 provides a reliable transport layer for streaming audio and user data using an acknowledgement protocol. All packets sent in one direction must be acknowledged in the reverse direction. Considering the different nature of multicast and unicast, a different acknowledge protocol is used, depending on the direction of the transfer.
On each time period, up to 8 packets 100 can be sent from the Host to the Guest. Of these, only 2 of packets 100 can be new packets as never sent on previous time periods. The remaining packets 100 are retransmissions of unacknowledged packets. The Host must maintain, for each transmitted packet 100, a list of successful acknowledgements received from each active Guest. Each packet 100 is transmitted continuously on consecutive time periods until all active Guests acknowledge the packet.
A Guest is considered active whenever the Host receives data from it. When no data is received from a Guest for a defined amount of consecutive time periods, the Guest is then considered inactive.
Each packet 100 sent includes a packet number ranging from 0 to 255. Each new packet is assigned a consecutive number, wrapping to 0 after reaching 255. Each Guest must maintain a list of received packets 100, to be sent to the Host as an acknowledgement, on each time period. The list is composed of a packet number (“ack_base”) and a 32-bit mask (“ack_mask”). The “ack_base” packet number corresponds to bit 0 of the mask, while the following bits 1 to N are related to “ack_base” +N packet numbers. This means that, as an example, if “ack_base”=253 (decimal) and “ack_mask”=77 (decimal, corresponding to a binary representation with 24 bits at 0 followed by 1001101), then the following data packets 100 are acknowledged, reading bits from right to left: 253, 255, 0 and 3. The packet number following 255 is 0. Packets with numbers below “ack_base” are implicitly acknowledged too.
Based in the acknowledge information sent by the Guests, the Host determines which of packets 100 transmitted on the last time period were correctly received by all active Guests. Packets 100 that were not received correctly by all active Guests are re-transmitted.
On each time period, up to 4 packets 102 can be sent from the Guest to the Host. Of these, only 2 packets 102 can be new packets as never sent on previous time periods. The remaining packets 102 are retransmissions of unacknowledged packets.
The Host must send acknowledge information to each Guest, on each time period, considering the correctly received packets 102 in the previous time period. The acknowledge information is sent on all packets 100 transmitted by the Host and comprises 1 byte for each Guest sent in “ack_mask” array. Each bit corresponds to the “burst_idx” of a successfully received data packet 102 in the previous time period.
As an example, a particular Guest sends 3 packets 102 to the Host. Each packet 102 is numbered with a consecutive “burst_idx” number from 0 to 2. If the Host only receives the last two packets 102, it will send value 6 (binary 110) in the “ack_mask” entry corresponding to that particular Guest. This will indicate to the Guest that it must retransmit the last two packets 102.
HEDtech protocol 15 allows for simultaneous transfer of streaming audio and user/control data. Packet numbers are used to guarantee that the correct order of packets is preserved. Depending on errors and re-transmissions, successful reception of packets may occur in a different order than the initial transmission. Both Host and Guest must include mechanisms to re-order the received packets, if necessary, before delivering them to the corresponding recipients.
When sending streaming audio, some additional data is included on each packet 100 to allow the Guest to decode and play the audio stream at any point in time. The audio streaming related data can comprise the following components: 32-bit time stamp “audio_ts” to allow the Guest to start playing audio synchronously with all other devices in HDMesh 14; Codec type “codec_type” indicates the codec required to decode the streaming data, example supported codec are SBC and AAC; Frame size “frame_size” indicates the size in bytes of each audio block to decode; and sample rate “sample_rate” indicates the sample rate to play the decoded audio. If the frame size is bigger than the maximum space available for the stream buffer, then the “BUF_STREAM_FRAG” bit of “buf_ctrl” is set in data packets 100 that hold the first fragment of a frame.
User data can be sent from each device to another or to all devices. The Host is responsible for routing user data blocks 105 to their destination. All data is divided in data blocks 105 of 32 bytes. The Host can send a maximum of one data block 105 on each packet 100, while the Guests can send up to two data blocks 105 on each packet 102 when not sending audio streaming simultaneously. Alternatively, audio streaming is sent simultaneously one data block 105 can be sent per data packet 102. The packet numbers are used to keep the correct order of data blocks 105, allowing for a correct re-assembly at the destination device.
HEDmesh 14 requires some occasional information to be exchanged between the Host and the Guests. A mechanism is provided to re-use data blocks 105 on the transmitted packets for this purpose. This is achieved by having a separate identification of control data block in the “buf_ctrl” field of each packet. Control data always has higher priority than user data. This means that if a user data transfer is in progress, it will be interrupted to send control data.
The following control message primitives can be used which are sent as a first byte of the control message:
- CTRL_DEV_NR_REQ (0): Request a new device number. Sent by Guests when registering to the Mesh. Includes the MAC address of the new Guest as a parameter in bytes 1 to 6 of the control message.
- CTRL_DEV_NR_CFM (1): Confirm the new device number request is accepted. The new assigned device number is sent on byte 1 of the control message.
- CTRL_DEV_NR_REJ (2): Reject a new device number request.
- CTRL_SWITCH_REQ (3): Request a switch between Host and Guest. Sent by the Host with the target Guest device number as a parameter in byte 1 of the control message. The current list of Guests is sent in the beginning of the stream buffer. This message can only be sent after audio streaming is stopped.
- CTRL_SWITCH_CFM (4): Confirm request to switch between Host and Guest. Sent by Guest when it is ready to switch to Host. When the current Host receives this message, stops transmissions and switches to Guest with the same device number as the Guest with which it switched.
Voice data can be sent from each HEDphones 12a-12n to all other HEDphones 12a-12n. Voice data is sent as voice data block 107. The Host is responsible for broadcasting all received voice data blocks 107 to all Guests. Voice streaming data is divided in blocks of 172 bytes. The Host can send a maximum of one voice data block 107 on each packet 100, while the Guests can send up to two voice data blocks 107 on each packet 102. Alternatively, audio streaming is sent simultaneously one voice data block 107 can be sent per data packet 102. The packet numbers are used to keep the correct order of data blocks 107, allowing for a correct re-assembly at the destination device. Sending up to two 172 bytes blocks, on each default time period of 42.666 ms, allows for a bit rate of around 64 kbit/s. Any codec supporting that bit rate can be used to encode/decode the voice stream data. Suitable codecs are G.722 and AAC.
HEDphone 402 can include the functionality shown and the hardware requirements as shown in Table 2.
An example implementation of system 10 in operation of LED 328 is shown in Table 3.
HEDphone 402 can be connected to any Bluetooth device using the standard pairing method. HEDphone 402 is turned on and off by pressing the power switch for more than a second. When the HEDphone 402 is turned on it will be in pairing mode, unless the HEDphone 402 has already been paired. While in pairing mode the LED 328 is blinking blue as described above. It will be appreciated that alternative color schemes for LED 328 can be used in accordance with the teachings of the present invention.
Turn ON Bluetooth on the mobile device:
- 1. Search for Bluetooth devices.
- 2. Select the HEDphone from the result list.
- 3. Enter pin code 0000. Depending on the Bluetooth version this step may not be required.
In one embodiment, super human hearing (SHH) can be implemented with HEDphone 402 as shown in
The HEDphone 402 is fitted with mini jack plug 460 to allow the user to bypass the Bluetooth link and listen to an analogue audio source, such as a music server or service. This allows the user to use sources that don'"'"'t have Bluetooth. It also saves battery life.
HEDphone 402 still provides a Hi-Fi quality audio when operating with cable even when the battery is flat. While operating with a cable, HEDphone 402 turns off the Bluetooth link automatically in order to save battery. This function may be overwritten in the HEDapp 19. HEDphone 402 can connect to a laptop using the audio cable while still being connected to a mobile phone via Bluetooth.
Activation graphic provides access to for super human hearing (SHH) functions in the HEDapp 19 using an intuitive 3d graphical interface that represents the soundscape around them. The user will be able to control the direction of the incoming sound that they want to amplify or to attenuate using control graphic 504. HEDapp 19 provides a visual symbolic representation of the soundscape around the user in activation graphic 502. In the absence of HEDapp 19, super human hearing (SHH) will function in a default mode having a front focus.
Super human hearing (SHH) module 501 of HEDapp 19 provides processed output to be reinserted into the user'"'"'s audio stream as shown in
- a. Target sound direction, for enhancement or suppression. This will automatically trigger a configuration of microphone array 400 and processing to be used in in super human hearing (SHH) module 501.
- b. Music volume. Adjusts the music level independently of target sound direction and level the in super human hearing (SHH) module 501.
- c. Noise reduction level as an adjustment of the noise reduction level for affecting filter adaptation parameters. This adjustment is independent of the inbound audio level and dynamically adjusted automatically.
- d. Inbound audio level for the microphone 440 when the user wearing headphone 440 talks, the microphones 440 can be adjusted, through the presence of a near-field voice activity detector.
The adjustment of parameters can be made via HEDapp 19. For convenience, HEDapp 19 has some pre-sets and automatically adjusted settings.
Some examples of possible pre-sets are: Shh On/Off (speech enhancement), Bicycle, Factory, City walk, Windy, Party.
The super human hearing (SHH) function allows ambient sound from user-defined directions to filter into HEDphone 402 via the fitted microphones 440. For example, super human hearing (SHH) could allow the user to hear other people talking to them without having to remove the HEDphone 402 or having to pause or mute the music. Users that wear HEDphone 402 while walking, cycling or doing any other type of activity that requires some level of awareness of their immediate surroundings, will also greatly benefit from this new feature in terms of increased safety.
Perceptual filtering is implemented to increase intelligibility of the target direction by suppressing other directions when they would be more disturbing or distracting the perception of the target only, i.e. when masking of the target frequencies over the “noise” frequencies is not effective according to a psychoacoustic model. Noise estimators and thresholds are used to further separate the desired direction signal from disturbing signals.
A further combination of both super human hearing (SHH) and usual, time-domain noise reduction will allow the user to pass through the ambient sound but also to suppress any stationary noise from a target audio signal such as human voice. The purpose is that, if someone is talking to the person wearing HEDphone 402 in a noisy environment, the target direction be privileged (or the disturbing direction attenuated) and at the same time the background noise can be cancelled out from the target sound. This makes of the HEDphone 402 a tool to communicate in noisy environments, where it would be clearer to communicate with the headphones than without them.
Enhancement of the target audio source (human voice) is intended to aid people with hearing impairment, to improve communication in noisy environments beyond the limitations of human perceptions or, simply, to allow communication or raise awareness without removing the Headphones and hear even better than without them.
Input 600 from microphones 400, shown in
The implementation of super human hearing (SHH) with the combination of beamforming and correlation analysis in a non-linear microphone array improves effectiveness of adaptive noise filtering. The combination of directive adaptive filtering and correlation analysis with perceptually motivated processing to further reduce spatial and temporal noise signals due to the peculiarity of the masking effects of the human auditory perception. Speech and ambient sound enhancement is provided with control of the direction of the target sound or control of the direction of the attenuated sound. A controllable mixing level between the ambient spatial sound and music playback. The Automatic gain control provides balance of the user own voice level with ambient spatial sound.
HEDapp 19 is an iOS or Android compatible application that can be downloaded such as for free from either the App Store or Google Play. HEDapp 19 provides the user with additional features and access to settings on the HEDphone 12. HEDapp 19 is also a powerful communications and social networking platform, where users can go beyond just connecting their HEDphones 12 to others, they are able to share their music tastes and discoveries, message and communicate with each other.
HEDapp 19 can provide a representation of this HEDMesh 14 with all the user'"'"'s name and avatars already in HEDMesh 14, describing who is the host and who are the guests, the number of users in the current HEDMesh 14 and the name of this HEDMesh 14. When HEDMesh 14 is created or a new Headphone joins the group, the representation of the Mesh in HEDapp 19 will be updated with the new user/player'"'"'s name. If enabled, using location services on mobile device 18, users can also see other Headphones 12, 402 in the vicinity that are not already in HEDMesh 14 and create HEDMesh without the use of NFC.
In HEDapp 19, a HEDMesh 19 can also have Remote Guests. A Remote Guest connects to a HEDMesh 19 via Internet 800 from remote location 802 as shown in
Every HEDMesh 14 and Virtual HEDMesh 814 configuration can be saved by each user in the respective HEDMesh 14 and Virtual HEDMesh 814, and all its guests will be able to recreate this HEDMesh 14 or Virtual HEDMesh 814 with the same Guests and same Host when they are within WI-FI range without using the NFC protocol. The Host can block or expel a Guest from a HEDMesh 14 at any time.
Within the HEDapp 19, a user is able to create a Private HEDMesh 14 where pre-approved members may join. A Private HEDMesh 14 may be saved for later use and all subscribed members should be able to connect automatically when they are next in proximity. At the same time, the Host of the Private HEDMesh may block and expel a Headphone user at any time, whether in range or not.
More than one HEDMesh 14 may coexist in the same area.
HEDapp 19 will allow the user to change, store and recall parameters of the supper human hearing SHH feature described above. Using a 3D graphical interface, the user will be able to adjust the volume and direction of incoming sound. The user will also be able to change the level of the incoming sound respective to the audio already playing in the HEDphone 12 or 402.
Example screen shots of 3D graphical interface are shown in
A user can login to different streaming music services to import their libraries.
From the main menu the user can select function or page.
User can enable/disable HEDMesh 14, see who is in HEDMesh 14 and who the master is.
Users can control their music with the integrated player without having to come out of the app.
User can import their music libraries and playlists from other services within the app.
Users can chat to other members on the Mesh, rate songs, etc.
User can change frequency and adjust the level for each frequency. Custom presets and be created and stored. There are also standard presets included.
A number of audio effects are available in the App.
The Headphone detects when there is complete silence and the user can select the time after which, the Headphone will go to sleep mode.
HEDphone 12 can be formed of foam on the inner part that extends across the entire length of the from ear to ear, that gives the Headphone a comfortable snug fit.
Ear cup 704 is elongated, shaped like the human ear rather than the standard round shape. The shape, together with the more solid chassis, creates a closer fit to the head. For extra comfort, injection moulded memory foam is used for the full length inner cushion providing a good fit, making this design more comfortable than current headphones.
Foam piece 710 can be formed as a single continuous piece and is also customizable and can be replaced giving the user a wide choice of fabrics, colors and foam densities.
In one embodiment shown in
Foam carrier 725 snaps onto chassis 715 as shown in
HEDphone 402 can be formed by 3 completely detachable parts. The battery side, the electronics'"'"' side and the headband. The headband can be bought separately to the correct size. S, M, L, XL as shown in
In an embodiment of the present invention, outer casing 716 is formed of a single piece of injection-molded foam upholstered with fabric 760 as shown in
In one embodiment, functions of HEDphone 402 can be reversed by software and using HEDapp 19 for left handed users that prefer the most commonly used functions on the left side as shown in
The HEDapp is a user interface application downloadable to any mobile device which will allow the HEDphone 12a-12n user to control and monitor all its HEDphone'"'"'s features. The HEDapp can be compatible with mobile operating systems such as for example IOS and Android. The HEDapp can have the functionality shown in Table 2.
Embodiments of the present invention may be implemented in connection with a special purpose or general purpose processor device that include both hardware and/or software components, or special purpose or general purpose computers that are adapted to have processing capabilities.
Embodiments may also include physical computer-readable media and/or intangible computer-readable media for carrying or having computer-executable instructions, data structures, and/or data signals stored thereon. Such physical computer-readable media and/or intangible computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such physical computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, other semiconductor storage media, or any other physical medium which can be used to store desired data in the form of computer-executable instructions, data structures and/or data signals, and which can be accessed by a general purpose or special purpose computer. Within a general purpose or special purpose computer, intangible computer-readable media can include electromagnetic means for conveying a data signal from one part of the computer to another, such as through circuitry residing in the computer.
When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or a combination of hardwired or wireless) to a computer, hardwired devices for sending and receiving computer-executable instructions, data structures, and/or data signals (e.g., wires, cables, optical fibers, electronic circuitry, chemical, and the like) should properly be viewed as physical computer-readable mediums while wireless carriers or wireless mediums for sending and/or receiving computer-executable instructions, data structures, and/or data signals (e.g., radio communications, satellite communications, infrared communications, and the like) should properly be viewed as intangible computer-readable mediums. Combinations of the above should also be included within the scope of computer-readable media.
Computer-executable instructions include, for example, instructions, data, and/or data signals which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Although not required, aspects of the invention have been described herein in the general context of computer-executable instructions, such as program modules, being executed by computers, in network environments and/or non-network environments. Generally, program modules include routines, programs, objects, components, and content structures that perform particular tasks or implement particular abstract content types. Computer-executable instructions, associated content structures, and program modules represent examples of program code for executing aspects of the methods disclosed herein.
Embodiments may also include computer program products for use in the systems of the present invention, the computer program product having a physical computer-readable medium having computer readable program code stored thereon, the computer readable program code comprising computer executable instructions that, when executed by a processor, cause the system to perform the methods of the present invention.
It is to be understood that the above-described embodiments are illustrative of only a few of the many possible specific embodiments, which can represent applications of the principles of the invention. Numerous and varied other arrangements can be readily devised in accordance with these principles by those skilled in the art without departing from the spirit and scope of the invention.