EP2704340B1 - Time-shifting distribution of high definition audio data - Google Patents
Time-shifting distribution of high definition audio data Download PDFInfo
- Publication number
- EP2704340B1 EP2704340B1 EP13004057.9A EP13004057A EP2704340B1 EP 2704340 B1 EP2704340 B1 EP 2704340B1 EP 13004057 A EP13004057 A EP 13004057A EP 2704340 B1 EP2704340 B1 EP 2704340B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- logic
- audio
- distribution
- audio data
- telephony
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 claims description 297
- 230000015654 memory Effects 0.000 claims description 42
- 230000004044 response Effects 0.000 claims description 19
- 238000000034 method Methods 0.000 description 39
- 230000008569 process Effects 0.000 description 32
- 238000012790 confirmation Methods 0.000 description 21
- 230000000977 initiatory effect Effects 0.000 description 16
- 230000008859 change Effects 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 12
- 230000005236 sound signal Effects 0.000 description 9
- 230000000153 supplemental effect Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 230000011664 signaling Effects 0.000 description 7
- 230000001413 cellular effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000012508 change request Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000013442 quality metrics Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/27—Arrangements for recording or accumulating broadcast information or broadcast-related information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
- H04N21/4398—Processing of audio elementary streams involving reformatting operations of audio signals
Definitions
- This disclosure relates an audio distribution system. This disclosure also relates to a high definition (HD) audio distribution system.
- HD high definition
- WO-A-0228063 discloses a system comprising servers that store received broadcast signals, the stored signals can be reproduced by mobile terminals through transmission via the telephone network.
- a device comprises:
- the destination device comprises the communication device.
- the destination device comprises a remote communication device.
- the time-shift logic is configured to transmit the HD Voice data to the remote communication device by establishing a call connection with the remote communication device.
- time-shift logic is further configured to:
- the time-shift logic is configured to determine the destination device by obtaining identifying information associated with the destination device.
- the identifying information associated with the destination device comprises a phone number.
- HD audio which may include wideband audio or HD Voice data, signals, and/or technology.
- HD audio, wideband audio, or HD Voice may refer to an audio signal having a frequency range greater than a traditional telephonic voiceband or narrowband signal, e.g., a telephonic narrowband signal between 300 Hz to 3.4 kHz.
- HD audio, wideband audio, or HD voice may also refer to a telephony audio signal that has a greater frequency range than a traditional narrowband telephony signal.
- HD audio may include an audio signal ranging between any portion of the human voice frequency range.
- HD audio, wideband audio, or HD Voice may include audio frequencies ranging between 50 Hz to 7 kHz or higher, providing greater audio clarity and transmission fidelity than a traditional narrowband telephony signal.
- HD audio may also include audio signals encoded according any number of codecs, such as wideband or HD Voice audio codecs including G.722, Silk, Siren, internet Speech Audio Codec (iSAC), or other codecs.
- codecs such as wideband or HD Voice audio codecs including G.722, Silk, Siren, internet Speech Audio Codec (iSAC), or other codecs.
- HD audio may be supported by any number of electronic or telephonic devices, including as examples analog telephones, Internet Protocol (IP) telephones, cordless systems (e.g., a base station and a handset), cellular phones, laptops, televisions, stereos, video conferencing devices, portable music players, and other devices.
- IP Internet Protocol
- cordless systems e.g., a base station and a handset
- cellular phones laptop
- FIG. 1 shows an example of a system 100 for distributing HD audio.
- the exemplary system 100 includes a distribution device 110.
- the distribution device 110 may be any electronic device that receives audio data in any form.
- the distribution device 110 may be a set-top box, a gateway device, a cable modem, a desktop computer, a laptop computer, and other electronic devices.
- the distribution device 110 may communicate across a communication network 115 and receive audio or audio/visual (A/V) data from any number of audio sources.
- the distribution device 110 may communicate across the communication network 115 to receive audio data from any of the audio sources labeled as audio sources 121-128.
- An audio source may include any source that provides audio data.
- audio sources may include real-time (e.g., live) A/V broadcast sources, video-on national or local television broadcast networks, Internet-based A/V providers (e.g., audio streaming websites over an IP network), on-demand sources (e.g., a video on-demand service), Satellite audio providers, Broadcast radio sources, audio servers storing and/or providing A/V data files, and more.
- the communication network 115 may include any number of networks that communicate audio data according to any number of communication standards or protocols.
- the communication network 115 may include a cable network that transports audio data according to a cable standard (e.g., OpenCable and PacketCable) or any number of Internet Protocol (IP) networks that transport audio data as IP data, e.g., packets.
- a cable standard e.g., OpenCable and PacketCable
- IP Internet Protocol
- the communication network 115 may communicate across any of the following network technologies, topologies, mediums, or standards: Ethernet, cable (e.g. DOCSIS), OpenCable, PacketCable, DSL, Multimedia over Coax Alliance (MoCA), power line (e.g.
- the communication network 115 may include multiple networks through which the distribution device 110 receives audio data.
- the distribution device may receive an A/V broadcast from a first audio source across a cable network in the communication network 115 as well as an Internet streamed audio signal from a second audio source across an Ethernet network in the communication network 115.
- the distribution device 110 may also distribute audio data across any number of networks to any number of destinations.
- the distribution device 110 may communicate across a network 135, such as a local network or local area network (LAN), to distribute HD audio data.
- the network 135 may be implemented according to any of the network technologies, topologies, mediums, or standards enumerated above.
- the network 135 may is implemented as an analog network, such as an analog telephone network.
- the network 135 may be implemented as an analog telephone network according to a Registered Jack (RJ) interface standard, such as RJ11, RJ14, RJ21, RJ45, RJ48, or others.
- RJ Registered Jack
- the network 135 may be implemented within a particular location, such as a residential home, a business office, a conferencing center, or other locations. Or, the network 135 may be implemented across any number of locations as well.
- the distribution device 110 may communicate with any number of electronic devices across the network 135, such as the telephone 141, cellular phone 142, and personal data assistant (PDA) 143. Particularly, the distribution device 110 may distribute audio data obtained from an audio source to any number of electronic devices, e.g., by sending HD audio data across the network 135 to any of the electronic devices supporting HD audio data. To that end, the distribution device 110 may include a communication interface 150 and distribution logic 160.
- the communication interface 150 may be configured to communicate across multiple communication networks, including any networks comprising the communication network 115 and the network 135.
- the distribution logic 160 may distribute audio data to any number of electronic devices communicatively linked to the distribution logic 160, including the phone 141, cellular phone 142, and personal data assistant (PDA) 143.
- Additional examples of electronic devices may include a VoIP phone, speaker phone, cordless handset, earphone, audio player, laptop, television, stereo, video conferencing device, portable music player, and others.
- the device may include any electronic device that can perform similar functions, such as any of the mentioned electronic devices.
- the distribution logic 160 may include any amount of logic to obtain and distribute audio data.
- the distribution logic 160 may include logic to obtain audio data from various audio sources.
- the distribution logic 160 includes the A/V logic 161 and broadband logic 162 that may be configured to obtain audio data from various audio sources.
- the distribution logic 160 may also include transcoder logic 163, telephony logic 164, and control logic 165, which are described in greater detail below.
- each portion of the distribution logic 160 is implemented by the distribution device 110.
- the distribution logic 160 including any combination of the A/V logic 161, communication logic 162, transcoder logic 163, telephony logic 164, and control logic 165, may be implemented across multiple devices as well.
- the A/V logic 161 may be configured to receive A/V data from any number of audio sources. Received A/V data may include audio data, video data, or both. Examples of A/V data include video programs or audio programs broadcasted across any number of broadcast channels, e.g., by a local or national broadcast network. The A/V logic 161 may receive A/V data broadcasted across any number of communication mediums, such as through a cable network, through satellite, or others. In one implementation, A/V logic 161 may decode A/V data for display by a television. The A/V logic 161 may also extract data with respect to an audio portion of A/V data. For example, the A/V logic 161 may determine an audio codec used to encode an audio portion of received A/V data.
- the broadband logic 162 may be configured to support communications across a broadband network, e.g., communications to receive or send audio data.
- the broadband logic 162 implements a communication modem, such as a cable modem.
- the broadband logic 162 may act, for example, as an IP front end for a Voice over IP (VoIP) client, such as the telephony logic 164.
- VoIP Voice over IP
- the broadband logic 162 may receive or distribute audio data across an IP network as VoIP data packets.
- the broadband logic 162 may also receive A/V data as packet data and forward the received IP AN data to the A/V logic 161 for decoding.
- the transcoder logic 163 may transcode audio data from an initial audio codec to a different audio codec. For example, the transcoder logic 163 may transcode received A/V data from an initial audio codec into an HD audio codec, such as G.722, to obtain HD audio data. The transcoder logic 163 may receive audio data for transcoding from multiple sources, such as communication logic including the A/V logic 161 or the broadband logic 162. Also, the transcoder logic 163 may send transcoded audio data, e.g., HD audio data, for distribution across a communication network, e.g., a local network, through other logic implemented by the distribution logic 160, e.g., the telephony logic 164.
- a communication network e.g., a local network
- the telephony logic 164 may implement logic to perform or support performing a phone call via any number of interfaces, including initiating a call connection, establishing a call connection, identifying incoming call requests, and other call functionality.
- the telephony logic 164 may implement VoIP functionality to support performing a VoIP call, e.g., by implementing a VoIP client.
- the telephony logic 164 may also receive transcoded audio data, e.g., HD audio data to decode or encode into any number of communication formats, including communication formats supported by the communication network 115, network 135, or both.
- the telephony logic 164 may decode a stream of HD audio data to communicate across an analog telephony interface.
- the telephony logic 164 may also identify control signals sent from a communication device linked to the telephony logic 164, e.g., the telephone 141. In one example, the telephony logic 164 may identify Dual-Tone Multi-Frequency (DMTF) tones sent from a communication device. The telephony logic 164 may determine whether the control signals sent from the communication device specify an outgoing phone call or other control signaling relating the distribution of an HD audio data stream.
- DMTF Dual-Tone Multi-Frequency
- the control logic 165 may control the distribution of an audio stream across the network 135 or communication network 115. As discussed above and in greater detail below, the control logic 165 may communicate with other portions of the distribution logic 160 to coordinate distribution of an HD audio signal among the A/V logic 161, the broadband logic 162, the transcoder logic 164 and the telephony logic 165. While the example in Figure 1 depicts one example of the distribution logic 160, the system 100 may be implemented across any number of logic or devices as well.
- FIG 2 shows an example of a system 200 that includes four exemplary distribution configurations for distributing HD audio.
- Each of the distribution configurations may communicate across a communication network 115 to obtain audio data from any number audio sources, such as the audio sources labeled as audio sources 202 and 204 in Figure 2 .
- Figure 2 depicts a first exemplary distribution configuration that includes a distribution device 210, a network 211, such as a local analog network, and a phone 212.
- the distribution device 210 may be similar to the distribution device 110 described in Figure 1 above.
- the distribution device 210 implements multiple portions of the distribution logic 160, including the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, and control logic 165.
- the network 211 may be implemented through standard telephone wiring, e.g., via RJ-11 telephone jacks.
- the distribution device 210 may obtain audio data from an audio source, e.g., among the audio sources 202 or 204, transcode the obtained audio data into HD audio data, decode the HD audio data into a decoded HD audio stream supported by analog interfaces to the network 211, and send the decoded HD audio stream across the network 211 to the phone 212 for playback.
- an audio source e.g., among the audio sources 202 or 204
- transcode the obtained audio data into HD audio data decode the HD audio data into a decoded HD audio stream supported by analog interfaces to the network 211
- decode the HD audio data into a decoded HD audio stream supported by analog interfaces to the network 211
- send the decoded HD audio stream across the network 211 to the phone 212 for playback e.g., across the audio sources 202 or 204.
- a second exemplary distribution configuration is depicted in Figure 2 that includes a distribution device 220, a network 221, such as an Internet Protocol (IP) network, and a phone 222.
- the distribution device 220 may implement a first portion of the distribution logic 160, including the A/V logic 161, broadband logic 162, transcoder logic 163, and control logic 165.
- the phone 222 may implement the telephony logic 164.
- the distribution device 220 may transcode received audio or A/V data into HD audio data and transmit the HD audio data across the network 221 as VoIP packets, e.g., via the broadband logic 162.
- the telephony logic 164 of the phone 222 may receive the VoIP packets and playback the HD audio data via the phone 222.
- Figure 2 depicts a third exemplary distribution configuration that includes a distribution device 230, an external modem 231, a network 232, such as a local analog network, and a phone 233.
- the distribution device 230 implements the A/V logic 161, transcoder logic 163, telephony logic 164, and control logic 165.
- the external modem 231 may be any communication device implementing the broadband logic 162, e.g., an external cable modem.
- the fourth exemplary distribution configuration in Figure 2 includes a first distribution device 240, a second distribution device 241, a network 242, such as a local analog network, and a phone 243.
- the distribution logic 160 may be implemented across any number of distribution devices.
- the first distribution device 240 implements the A/V logic 161, broadband logic 162, and control logic 165.
- the second distribution device 241 implements the transcoder logic 163 and the telephony logic 164.
- the first distribution device 240 and the second distribution device 241 may be communicatively linked, for example, via any of the communication protocols or methods enumerated above.
- the first distribution device 240 and the second distribution device 241 may communicate across an internal cable network via the MoCA standard.
- the first distribution device 240 may communicate across the communication network 115 via the A/V logic 161 or broadband logic 162 to obtain audio data from an audio source.
- the first distribution device 240 may send the obtained audio data, as natively coded, to the second distribution device 241.
- the second distribution device 241 may then transcode, decode, and distribute the HD audio data across the network 242, e.g., via an analog interface, for playback by the phone 243.
- the first distribution device 241 may be a primary set-top box or gateway device located within a residential home and the second distribution device 242 may be an auxiliary set-top box also located within the residential home.
- the examples and figures below are discussed with respect to the first distribution configuration that may include a distribution device 110 or 210 implementing the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, and control logic 165. However, each of the examples and figures discussed below may also apply to any other distribution configuration, including any of the exemplary distribution configurations in Figure 2 .
- FIG 3 shows a timing example 300 for initiating distribution of HD audio.
- the timing example 300 may illustrate how a local user initiates distribution of HD voice to a telephony device operated by the local user, e.g., the phone 141 seen in Figure 3 .
- the local user may initiate distribution of HD audio from a phone in a home telephone network.
- the timing example 300 in Figure 3 depicts the interaction, e.g., signal exchange, between a phone 141 and distribution logic 160 implemented in an exemplary HD distribution device or system that includes the telephony logic 164, control logic 165, A/V logic 161, and transcoder logic 163.
- the phone 141 and distribution logic elements may interact via internal or external signal exchanges depending whether the elements are implemented within the same device or separate devices.
- the local user may start an HD audio distribution process by sending an HD audio service request to the HD audio distribution system.
- the local user may send an audio service request through the phone 141 by taking the phone 141 off-hook and entering key presses. In doing so, the local user may send a control signal or service request to control the distribution of HD audio to a local communication device.
- the phone 141 may identify the key presses of the local user and send corresponding DMTF tones 310 to the telephony logic 164.
- the telephony logic 164 may determine whether the received DMTF tones 310 correspond to a telephone call initiation, e.g., an outgoing phone call, or to an HD audio service request, e.g., an HD audio distribution request or signal.
- the telephony logic 164 may identify a HD audio service request from the DMTF tones 310 by identifying a predetermined ordering of the DMTF tones 310. In one example, the telephony logic 164 may identify a HD audio service request or signal when the first DMTF tone corresponds to a particular key, e.g., the pound ("#") key or the star ("*") key.
- the telephony logic 164 may respond to the DMTF tones 310 depending on whether the DMTF tones 310 indicate a call initiation or an HD audio service request.
- the telephony logic 164 may initiate the telephone call, e.g., by initiating a call procedure through a VoIP client implemented by the telephony logic 164.
- the telephony logic 164 may identify a particular HD audio service specified by the service request, e.g., through the DMTF tones 310.
- the distribution logic 160 may identify a specified service by reading a predetermined portion of the service request string corresponding to the DMTF tones 310.
- the distribution logic 160 may access a database or memory storing entries associating predetermined DTMF tone strings with HD audio services.
- the telephony logic 164 may access the database to identify a particular HD audio service associated with the DMTF tones 310 (or a selected portion of the DMTF tones 310).
- the telephony logic 164 may transmit an error indication to the phone 141.
- the error indication may take any form, such as a pre-recorded error message or sound.
- the telephony logic 164 may also extract audio source information from the DMTF tones 310.
- a portion of the DMTF tones 310 may include an audio selection identifying an audio source to obtain audio data from.
- an audio selection portion of the DMTF tones 310 may specify a table or database key that the telephony logic 164 may use to perform a lookup operation in a database mapping audio sources.
- a portion of the DMTF tones 310 may specify a channel number to obtain audio data from, e.g., a broadcast A/V channel received by a distribution device 110, such as a gateway device, set-top box, or other electronic device.
- the telephony logic 164 may generate a service indication message 312 according to the received DMTF tones 310.
- the service indication message 312 may identify a service selected by the local user and may further include any additional information associated with a selected service, e.g., an audio source associated with the selected service.
- the telephony logic 164 may then send the service indication message 312 to the control logic 165.
- the control logic 165 may configure any number of elements of the distribution logic 160 to perform the HD audio service specified by the service indication message 312.
- the service indication message 312 specifies an HD audio distribution request and includes a broadcast channel as the audio source associated with the distribution request.
- the control logic 165 may send a tuning request 314 to the A/V Logic 161, which may include the channel number specified by the local user's HD audio service request.
- the A/V logic 161 may configure one or communication resources, e.g., the communication interface 150, in order to receive audio data from the specified broadcast channel.
- the AN logic 161 may receive a tuning request 314 specifying an IP based audio source, e.g., an audio streaming website accessible via the Internet.
- the A/V logic 161 may then instruct additional communication logic, e.g., the broadband logic 162, to obtain audio data from the specified IP based audio source.
- the A/V logic 161 may include a streaming client configured to obtain audio data from various audio sources, e.g., a streaming application designed to execute on a set-top box or gateway device.
- the A/V logic 161 may invoke the streaming client to obtain the specified audio data.
- the streaming client may interact with the communication interface 150 or other communication logic (e.g., the broadband logic 162) to obtain audio data from the specified audio source, e.g., by invoking a streaming protocol through the broadband logic 162.
- the AN logic 161 may also identify additional information associated with a specified audio source or the received audio data, such as an associated audio codec. To identify an audio codec, the A/V logic 161 may, or example, inspect received audio data to determine an audio codec. Or, the AN logic 161 may receive a signal, message, or indication from the audio source identifying the associated audio codec. The A/V logic 161 may also send a tuning confirmation 316 to the control logic 165, which may specify the identified audio codec.
- the control logic 160 may configure the transcoder logic 163 according to an identified audio codec. As seen in Figure 3 , the control logic 165 sends a configuration request 318 to the transcoder logic 163, which may include an initial audio code, a final audio codec, or both.
- the initial audio codec may specify the audio codec associated with received A/V or audio data.
- the final audio code may specify the audio codec the transcoder logic 163 will transcode the received A/V or audio data into, e.g., an HD audio codec.
- the transcoder logic 163 may then configure any transcoding logic, circuitry, or device in order to transcode received audio data from the initial audio codec to the final audio codec.
- the transcoder logic 163 may then send a configuration confirmation 320 to the AN logic 161.
- the transcoder logic 163 may send the configuration confirmation 320 to the control logic 165 as well.
- the A/V logic 161 may begin sending received audio data to the transcoder logic 163.
- the A/V logic 161 sends the received audio data as the initial audio data 322, whereupon the transcoder logic 163 may transcode the initial audio data 322 into transcoded audio data.
- the A/V logic 161 may receive audio data encoded according to a super wideband audio codec, such as AAC or AC-3.
- the transcoder logic 163 may transcode the received AAC or AC-3 audio data into a HD audio code, such as G.722.
- the transcoder logic 163 may send the transcoded audio data to the telephony logic 164, seen in Figure 3 as the HD audio data 324.
- the telephony logic 164 may decode or encode audio data into a communication format supported by a network, such as analog telephony network or IP network.
- a distribution device 110 implementing the telephony logic 164 interfaces with an analog telephone network and the telephony logic 164 may decode the received HD audio data 324 to support communication over the analog telephone network.
- the telephony logic 164 may decode the HD audio data 324 for communication across an RJ-11 analog telephone network.
- the telephony logic 164 may then transmit the decoded HD audio data 326 to the phone 141 for playback.
- the telephony logic 164 may encode the HD audio data 324 for communication across the IP network as well.
- the telephony logic 164 may transmit the encoded or decoded HD audio data to any number of devices communicatively linked to a distribution device via a local telephone network.
- a distribution device 110 or the telephony logic 164 may send HD audio data to any electronic device connected to a local network such as a home telephone network (e.g. to a speaker phone, a cordless handset, earphone, or audio player connected through the home telephone network).
- a local network such as a home telephone network (e.g. to a speaker phone, a cordless handset, earphone, or audio player connected through the home telephone network).
- the telephony logic 164 may send encoded or decoded HD audio data to any phone device that is active or off-hook.
- the distribution logic 160 may also support additional HD distribution service requests as well.
- the local user may send an HD distribution service request while the phone 141 plays back an HD audio stream.
- the telephone logic 164 may identify a service code from DMTF tones 310 sent from the phone 141 corresponding to an audio source change request (e.g., a channel change) or a scan audio source service (e.g., a scan channel request).
- the control logic 165 may send a tuning request 314 to the A/V logic 161 indicative of the requested channel change or audio source change.
- the A/V logic 161, transcoder logic 163, and telephony logic 164 may process audio data received from the new audio source in a similar manner as discussed above.
- the control logic 165 may coordinate with the A/V logic 161 to obtain audio data from an audio source for a predetermined scan time and then obtaining audio data from a next audio source.
- the control logic 165 may send a tuning request 314 after the predetermined scan time has elapsed instructing the A/V logic 161 to proceed to obtain audio data from a next audio source.
- the distribution logic 160 may continue to obtain, process, and distribute audio data from various audio sources until a stop indication is received from the local user, e.g., via a service code entered by the local user and sent as DMTF tones 310. Then, the control logic 165 may forego sending a tuning request 314 upon expiration of the predetermined scan time.
- FIG. 4 shows a timing example 400 for terminating distribution of HD audio.
- the timing example 400 in Figure 4 includes a phone 141 and distribution logic 160 that includes telephony logic 164, control logic 165, A/V logic 161, and transcoder logic 163.
- the distribution logic 160 such as the telephony logic 164, control logic 165, A/V logic 161, and transcoder logic 163, may obtain, process, and distribute audio data as an HD audio data stream as discussed above in Figure 3 .
- the telephony logic 164 may send decoded HD audio data 326 to the phone 141 for playback.
- a distribution device 110 or distribution logic 160 may terminate distribution of HD audio upon receiving a termination indication.
- the local user may send a termination indication to a distribution device 110 through the phone 141.
- the local user may generate or send a termination indication by hanging up the phone 141, placing a receiver of the phone 141 in an on-hook position, which may send a termination signal to the telephony logic 164.
- the distribution device 110 may identify a termination indication as a predetermined string of key presses and corresponding DMTF tones sent from the phone 141.
- the telephony logic 164 may identify when the phone 141 enters an on-hook state, e.g., when the local user hangs up the phone 141.
- the phone 141 sends an on hook signal 410 to the telephony logic 164 when the phone 141 identifies an on-hook state.
- the telephony logic 164 may identify a termination indication.
- the telephony logic 164 may send a service termination message 412 to the control logic 165, which may indicate that the telephony logic 164 has identified or received a service termination indication.
- the control logic 165 may stop particular portions of the distribution logic 160 from obtaining, transcoding, processing, or transmitting audio data. For example, the control logic 165 may instruct any combination of the AN logic 161, transcoder logic 163, or telephony logic 164 to cease distribution of an HD audio stream. With respect to the AN logic 161, the control logic 165 may send a receive termination message 141 to the A/V logic 161 instructing the A/V logic 161 to stop obtaining audio data. In response, the A/V logic 161 may configure one or more communication resource to cease receiving audio data, e.g., from a specified audio source or other audio source.
- the AN logic 161 may instruct the streaming client to cease receiving data, for example, by stopping execution of the streaming client or application.
- the A/V logic 161 may instruct the additional communication logic to cease receiving audio data.
- control logic 165 may send a transcoding termination message 416 to the transcoder logic 163, which may instruct the transcoder logic 163 to stop transcoding audio data to an HD audio codec for playback by the phone 141.
- control logic 165 may also send a distribution termination instruction to the telephony logic 164 to cease sending decoded HD audio data 326 across a local network, e.g., to the phone 141.
- a distribution device 110 may distribute an HD audio stream to any number of electronic devices, e.g., phones, connected via one or more networks such as a local telephony network.
- the telephony logic 164 may not identify a termination indication when an on-hook signal 410 is received from a first electronic device when other electronic devices are in an off-hook state.
- the telephony logic 164 may identify a termination indication when an on-hook signal 410 is received from a last electronic device previously in an off-hook state (e.g., the only off-hook electronic device sends an on-hook signal 410).
- the telephony logic 164 may not identify a termination indication when the telephony logic 164 receives an on hook signal 410 while at least one other electronic device is in an off-hook state or playing back HD audio.
- Figure 5 shows an example of logic 500 that may be implemented as hardware, software, or both.
- distribution logic 160 may implement the logic 500, e.g., through any combination of the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, or control logic 165 and across any number of devices.
- the distribution logic 160 may obtain an HD audio service request (502) from a communication device, e.g., the phone 141.
- the communication device may be configured to playback HD audio data.
- the communication device may send the service request in any number of ways.
- the distribution logic 160 may receive a service request in the form of DMTF tones sent by a communication device communicatively linked to the distribution logic 160.
- the distribution logic 160 may then identify when the service request corresponds to an HD audio distribution service (504), such as by identifying that a portion of the service request corresponds to a particular string of DMTF tones or particular signal.
- the distribution logic 160 may access a database or table to correlate the service request, e.g., DMTF tone string, with a distribution service.
- the distribution logic 160 may obtain additional service information related to the HD audio service request (506), such as by extracting a portion of the service request.
- the distribution logic 160 may obtain an audio selection from the service request, through which the distribution logic 160 may identify a specified audio source (508).
- the distribution logic 160 may determine that a string of DMTF tones specify a broadcast audio or A/V channel as a specified audio source.
- the distribution logic 160 may extract a portion of the service request as a table key to lookup an associated audio source, e.g., an IP-based audio source such as an audio streaming website or service.
- the distribution logic 160 may tune a communication resource according to the specified audio source (510).
- the distribution logic 160 may tune a communication interface or AN receiver to receive data from a particular channel, e.g., a broadcast channel.
- the distribution logic 160 may invoke a streaming client or application to obtain audio information from a specified audio source.
- the distribution logic 160 may also determine an initial audio codec associated with audio data received (or to be received) from the specified audio source (512). Then, the distribution logic 160 may obtain initial audio data from the specified audio source (514), e.g., via the tuned communication resource.
- the distribution logic 160 may obtain initial audio data that is of a higher quality level than HD audio data, HD Voice data, or wideband audio data.
- the initial audio data may be higher in quality level according to any number of quality metrics, including frequency range, encoding format, compression format or rate, sampling rate, quantization error, data bit depth, or others.
- the distribution logic 160 may obtain initial audio data broadcasted from an A/V source and encoded according to a super wideband audio codec, such as AAC or AC-3.
- the distribution logic 160 may transcode the initial audio data (516) to an audio format supported by the communication device, such as to an HD audio codec supported by the communication device (e.g., an HD Voice codec such as G.722).
- the distribution logic 160 may transcode the initial audio data into a lower quality level, such as when the initial audio data is of a higher quality level (e.g., super wideband codec) than an HD audio quality level (e.g., HD Voice).
- the distribution logic 160 may distribute the transcoded audio data, e.g., HD audio data, across a communication network to the communication device for playback.
- the distribution logic 160 may decode the transcoded HD audio data for communication across the communication network (518), such as a local analog telephony network.
- the distribution logic 160 may decode the HD audio data for communication across an analog communication interface to the analog telephony network (e.g., for communication across an RJ jack).
- the distribution logic 160 may encode the HD audio data into packet format for transmission via the IP network. After decoding or encoding, the distribution logic 160 may transmit the HD audio data across the communication network to the communication device (520).
- the distribution logic 160 may continue to obtain, process, and distribute audio data from the specified audio source to the communication device (514-520) until receiving an additional service request (524).
- the distribution logic 160 may receive a service request specifying an audio selection change, e.g., an audio source change.
- the audio selection change may specify a new audio source to replace the specified audio source previously received by the distribution logic 160.
- the distribution logic 160 may identify the new audio source (526), tune a communication resource to receive audio data from the new audio source, determine an initial codec associated with audio data from the new audio source, and obtain, process, and distribute audio data from the new audio source (508-520) instead of the previously specified audio source.
- the distribution logic 160 may identify a termination indication as the additional service request, including any of the termination indications or identification methods discussed above in Figure 4 .
- the distribution logic may stop receiving audio data from an audio source (528), stop transcoding obtained audio data (530), stop distributing transcoded audio data (532), or any combination thereof.
- Figure 6 shows an example of a system 600 for forwarding HD audio to a remote communication device 610.
- the exemplary system 600 or any portion thereof may share any number of common characteristics with respect to Figure 1 above, including with respect to the distribution device 110, communication network 115, audio sources 121-128, network 135, and the phone 141.
- the distribution device 110 may include a communication interface 150 and distribution logic 160.
- the distribution logic 160 may include A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, and control logic 165.
- the telephony logic 164 also includes mixing logic 620.
- the mixing logic 620 may combine multiple audio streams into a mixed audio stream.
- the system 600 also includes a remote communication device 610.
- the remote communication device 610 may be any electronic or communication device communicatively linked to the distribution device 110, e.g., via the communication network 115.
- the remote communication device may be a cellular telephone, portable music player, VoIP phone, stereo, remote telephone, or other device.
- the remote communication device 610 may also support playback of HD audio data.
- the distribution logic 160 may obtain audio data from a specified audio source and distribute audio data to the remote communication device 610 as HD audio data.
- FIG. 7 shows a timing example 700 of forwarding HD audio to a remote communication device 610.
- the timing example 700 includes a phone 141 communicatively coupled to distribution logic 160, such as through a local network.
- the distribution logic 160 in the timing example 700 includes telephony logic 164, control logic 165, A/V logic 161, and transcoder logic 163.
- the distribution logic 160 may initiate an HD audio forwarding process to the remote communication device 610 upon receiving an initiation indication, e.g., through an HD audio service request.
- the local user may press a predetermined combination of keys on the phone 141 specifying an audio forwarding service to the remote communication device 610 (e.g., the "#" key followed by a particular service code).
- the phone 141 may then send DMTF tones 710 corresponding with the key presses to the telephony logic 164, whereupon the telephony logic 164 may determine a service code associated with the DMTF tones 710.
- the telephony logic 164 may also identify a specified audio source from a selected portion of the DTMF tones 710, e.g., as an audio selection from a predetermined portion of the DMTF tones 710.
- the telephony logic 164 may determine that the HD audio service indicated in a service request, e.g., DMTF tones 710, corresponds to a forwarding service to a remote communication device. In response, the telephony logic 164 may identify the remote destination device. The telephony logic 164 may send a destination device identification request to the local user. In one example seen in Figure 7 , the telephony logic 164 sends a dial tone signal 712 to the phone 141, which may prompt the local user to input identifying information associated with the remote communication device 610, such as the phone number of the remote communication device 610. The local user may enter key presses to the phone 141 which may be sent to the telephony logic 164 as DMTF tones 714.
- a service request e.g., DMTF tones 710
- the telephony logic 164 may then identify the remote communication device 610 through the DMTF tones 714, e.g., by identifying the phone number of the remote communication device 610. In other examples, the telephony logic 164 may identify a remote communication device in other ways, such as sending a prerecorded prompt to the phone 141 requesting the destination phone number or identifying information from the local user.
- the telephony logic 164 may generate and send a service indication message 716 to the control logic 165, which may specify an audio distribution request to the remote communication device 610, a specified audio source, and identification information of the remote communication device 610.
- the control logic 165 may send an initiate call instruction 718 to the telephony logic 164.
- the telephony logic 164 may then attempt to establish a call connection with the remote communication device 610.
- the telephony logic 164 may attempt to establish the call connection through a communication format or protocol supported by the telephony logic 164.
- the telephony logic 164 may also utilize any supported communication network to establish the call connection with the remote communication device 610.
- the telephony logic 164 may utilize other communication logic, e.g., the broadband logic 162, to establish the call connection as well.
- the telephony logic 164 may utilize a VoIP protocol to establish a connection with the remote communication device 610 using any network supporting VoIP communication, including as examples, a wireless IP network, cable network, PSTN network, or others.
- the telephony logic 164 may send a call confirmation indication 620 to the control logic 165.
- the control logic 165, A/V logic 161, and transcoder logic 163 may then obtain initial audio data 322 from the specified audio source and transcode the initial audio data 322 into HD audio data 324, as described above.
- the control logic 165, A/V logic 161, and transcoder logic 163 may exchange messaging such as a tuning request 314, tuning confirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above.
- the transcoder logic 163 may send a transcoded audio data, e.g., the HD audio data 324, to the telephony logic 164.
- the telephony logic 164 may encode or decode the transcoded audio data for transmission to the remote communication device 610, the phone 141, or both.
- the telephony logic 164 may transmit the HD audio data 732 to the remote communication device 610 according to any communication protocol or format supported by the telephony logic 164, the remote communication device 610, or both.
- the telephony logic 164 may encode and transmit the HD audio data 732 to the remote communication device 610 as VoIP HD audio data packets 734 across a communication network supporting VoIP communications.
- the telephony logic 164 may use communication resources, such as a communication interface 150 or broadband logic 162, to interface with the IP network.
- the telephony logic 164 may also decode and transmit the decoded HD audio data 736 across a local network, e.g., an analog telephony network, communicatively linking the phone 141.
- Figure 8 shows an example of logic that may be implemented as hardware, software, or both.
- distribution logic 160 may implement the logic 800, e.g., through any combination of the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, or control logic 165 and across any number of devices.
- the distribution logic 160 may obtain a service request (802) from a communication device, e.g., the phone 141.
- the distribution logic 160 may obtain an HD audio service request in any of the ways described above.
- the distribution logic 160 may then examine the service request and determine a service associated with the service request.
- the distribution logic 160 may identify that a received audio service request specifies an HD audio forwarding service (804), for example by identifying a predetermined string of DMTF tones received from the phone 141.
- the distribution logic 160 may also identify an audio source specified in the HD audio forwarding request (806).
- the distribution logic 160 may identify a destination communication device (808) associated with HD audio forwarding service request.
- the distribution logic 160 may identify the destination communication device in any number of ways.
- the distribution logic 160 may identify the destination communication device by obtaining a phone number associated with the destination device.
- the distribution logic 160 may transmit a dial-tone signal to the phone 141 to receive a phone number of the destination device from the local user.
- the service request may include identifying information of the destination communication device (e.g., the phone number of the destination device or other identifying information).
- the distribution logic 160 may identify the destination communication device by extracting identifying information from a portion of the service request, e.g., a selected portion of a DMTF tone string sent from the phone 141.
- the distribution logic 160 may attempt to establish a connection with the destination communication device (810).
- the distribution logic 160 may initiate a call with the remote device using the obtained phone number.
- the distribution logic 160 may include telephony logic 164 that may provide telephony functionality, including performing telephone calls via supported communication protocols and interfaces.
- the distribution logic 160 may forego performing any additional actions to handle the HD audio forwarding service.
- the distribution logic 160 may also send a failed connection indication to the phone 141.
- the distribution logic 160 may tune a communication resource according to the specified audio source (814), determine an initial codec (814), obtain initial audio data from the specified audio source (816), and transcode the initial audio data to HD audio data (820) in any of the ways described above. Then, the distribution logic 160 may distribute the HD audio data to the communication device originating the service request, forward the HD audio data to the destination communication device, or both. To do so, the distribution logic 160 may encode or decode the HD audio data for transmission across a communication interface or protocol supported by the destination communication device (822), e.g., the protocol used to establish the call connection with the remote communication device.
- the distribution logic 160 may transmit the encoded or decoded HD audio data to the remote communication device (824).
- the distribution logic 160 may transmit an HD audio data stream to the destination communication device using the call connection.
- the distribution logic 160 may also decode the HD audio data and send the decoded HD audio data to the communication device as well.
- the distribution logic 160 may continue to forward the HD audio data to the remote communication device and/or distribute the HD audio data to the communication until receiving further control signaling (826). For example, the distribution logic 160 may receive an audio selection change, which may specify a new audio source. The distribution logic 160 may identify the new audio source (828), tune one or more communication resources to receive audio data from the new audio source, determine an initial code associated with audio data from the new audio source, and obtain, process, and forward audio data from the new audio source (814-824) to the destination device, originating device, or more.
- the distribution logic 160 may also identify a service termination indication from additional signaling (826).
- the distribution logic 160 may identify a termination indication as an explicit signal (e.g., a predetermined DMTF tone string) sent from a communication device communicatively linked to the distribution logic 160.
- the distribution logic 160 may identify additional signaling from the originating communication device or destination communication device in the form of receiving an on-hook signal.
- the distribution logic 160 may identify a termination indication when receiving an on-hook signal from the destination communication device, e.g., a remote communication device 610.
- the distribution logic 160 may continue to obtain, process, and forward audio data to the destination communication device when the communication device sends an on-hook signal, e.g., hangs up.
- the distribution logic 160 may identify a termination indication when both the originating communication device and destination communication device send an on-hook signal. Upon obtaining a termination indication, the distribution logic 160 may cease audio data receiving activity (828), cease audio data transcoding activity (830), cease audio distribution and/or forwarding activity (832), or any combination thereof. As part of ceasing audio distribution and/or forwarding activity, the telephony logic 164 may also terminate the call connection with the destination communication device, e.g., the remote communication device 610.
- FIG. 9 shows a timing example 900 of sharing HD audio during an active call connection.
- the timing example 900 includes a remote communication device 610, a phone 141, and distribution logic 160 that includes the telephony logic 164, control logic 165, A/V logic 161, and transcoder logic 163.
- the remote communication device 610, phone 141, and distribution logic 160 may communicate across any number of communication networks of any type, format, topology, or format.
- the phone 141 communicates with the distribution logic 160 across an analog local telephone network, such as an RJ-11 analog telephone network.
- the remote communication device 610 communicates with the distribution logic 160 across any number of IP networks interconnecting a distribution device 110 implementing the distribution logic 160 with the remote communication device 610.
- the timing example 900 may depict initiation of a real-time HD audio sharing service during an active call connection between the phone 141 and the remote communication device 610.
- the phone 141 may send and receive a voice signal from the telephony logic 164 as an analog voice signal 902.
- the remote communication device 610 may send and receive a voice signal from the telephony logic 164 as VoIP packets 906.
- a local user may initiate a real-time HD audio sharing service by sending a service request to the distribution logic 160. For example, a local user may enter key presses on the phone 141, which the phone 141 may send to the telephony logic 164 as DMTF tones 910.
- a remote user may send a HD audio service request to the distribution logic 160 as well, including by entering key presses through the remote communication device 610 for transmission to the telephony logic 164 as DMTF tones.
- the HD audio service request may specify a real-time HD audio sharing service and may include an audio selection specifying an audio source to obtain audio data from.
- the telephony logic 164 may receive the DMTF tones 910 and determine a service code corresponding to the service request. The telephony logic 164 may also determine a specified audio source from the service request, e.g., specified by a particular portion of the DMTF tones 910. Then, the telephony logic 164 may generate and send a service indication message 912 to the control logic 615, which may specify real-time audio sharing request and include a specified audio source.
- the control logic 165, A/V logic 161, and transcoder logic 163 may then obtain initial audio data 730 from the specified audio source and transcode the initial audio data 322 into HD audio data 324 similarly as described in Figure 3 above.
- the control logic 165, A/V logic 161, and transcoder logic 163 may exchange messaging such as a tuning request 314, tuning confirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above.
- the transcoder logic 163 may send a transcoded audio data, e.g., the HD audio data 324, to the telephony logic 164.
- the telephony logic 164 may include mixing logic 620 that may mix the HD audio data 324 with a voice signal.
- the telephony logic 164 may transmit a mixed signal to the phone 141, to the remote communication device 610, or to both.
- the telephony logic 164 may receive an analog voice signal 920 from the phone 141 for transmission to the remote communication device 610.
- the telephony logic 164 may mix the analog voice signal 920 with decoded HD audio data and re-encode the mixed signal for transmission to the remote communication device 610 as mixed VoIP packets 922.
- the telephony logic 164 may also receive a voice signal from the remote communication device 610 as VoIP packets 924 for transmission to the phone 141.
- the telephony logic 164 may decode the HD audio data 324 and VoIP packets 924 for transmission across an analog telephony network.
- the telephony logic 164 may also mix the decoded HD audio data with the decoded VoIP packets into a mixed analog signal 926 for transmission to the phone 141.
- the distribution logic 160 may share, e.g., inject, the audio content of a specified audio source into an active call between the phone 141 and the remote communication device 610.
- the distribution logic 160 may continue to perform the real-time audio sharing service until the distribution logic 160 identifies a termination indication.
- the distribution logic 160 may identify a termination indication when the telephony logic 164 receives an on-hook signal from the remote communication device 610, the phone 141, or both.
- the distribution logic 160 may identify a termination indication upon receiving a predetermined termination signal, e.g., via DMTF tones, the remote communication device 610, the phone 141, or both.
- the distribution. logic 160 may also receive and handle an audio source change request while performing the HD audio sharing service, e.g., via a DMTF tone signal sent by the remote communication device 610 or the phone 141. In response, the distribution logic 160 may obtain, process, and distribute audio data from a new audio source as specified by the audio change request.
- Figure 10 shows an example of logic 1000 that may be implemented as hardware, software, or both.
- distribution logic 160 may implement the logic 1000, e.g., through any combination of the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, or control logic 165 and across any number of devices.
- the distribution logic 160 may obtain a service request (1002) during an active call connection.
- the distribution logic 160 may obtain the service request from any communication device participating in the active call connection, such as the phone 141 or the remote communication device 610.
- the service request may be obtained in any of the ways discussed above, e.g., as DMTF tones.
- the distribution logic 160 may examine the service request and determine a service associated with the service request.
- the distribution logic 160 may identify that the received audio service request specifies a HD audio sharing service during an active call connection (1004).
- the distribution logic 160 may identify that a selected portion of the DMTF tones includes a predetermined string of DMTF tone values corresponding to the HD audio sharing service.
- the service request may also include an audio selection, which distribution logic 160 may identify as a predetermined portion of the service request.
- the distribution logic 160 may identify an audio source specified in the service request (1006) according to the audio selection.
- the distribution logic 160 may tune a communication resource according to the specified audio source (1008), determine an initial codec (1010), obtain initial audio data from the specified audio source (1012), and transcode the initial audio data to HD audio data (1014) in any of the ways described above. Then, the distribution logic 160 may share the HD audio content by mixing (e.g., injecting) the HD audio data into one or more voice signals transmitted as part of the active call connection. The distribution logic 160 may obtain an incoming voice signal from a first communication device in the active call connection (1016) and mix the HD audio data and the received incoming voice signal into an outgoing voice signal directed to second a communication device participating in the active call connection (1018).
- the distribution logic 160 may encode and/or decode the mixed outgoing voice signal (1020) according to a communication network, type, protocol, medium, or other communication characteristic for communicating with the second communication device. Then, the distribution logic 160 may transmit the mixed outgoing voice signal to the second communication device (1022). The distribution logic 160 may also perform a similar HD audio sharing process for an incoming voice signal received from the second communication device to transmit a mixed outgoing voice signal to the first communication device as well(1016-1022). In this way, the distribution logic 160 may share an HD audio data stream from a specified audio source to any number of communication devices participating in the active call connection.
- the distribution logic 160 may continue to mix the HD audio data into the active call connection until receiving further control signaling (1024).
- the distribution logic 160 may receive a service request specifying an audio selection change, e.g., an audio source change.
- the audio selection change may specify a new audio source to replace the specified audio source previously received by the distribution logic 160.
- the distribution logic 160 may identify the new audio source (1026), tune a communication resource to receive audio data from the new audio source, determine an initial code associated with audio data from the new audio source, and obtain, process, and share the audio data from the new audio source in the active call connection (1008-1022) instead of the previously specified audio source.
- the distribution logic 160 may also identify a service termination indication from additional signaling received from a communication device (1024).
- the distribution logic 160 may identify a termination indication as an explicit signal (e.g., a predetermined DMTF tone string) received from any communication device participating in the active call connection.
- the distribution logic 160 may identify additional signaling a participating communication device in the form of receiving an on-hook signal.
- the distribution logic 160 may identify a termination indication when receiving an on-hook signal any number of devices participating in the active call connection.
- the distribution logic 160 may identify a termination indication when a predetermined number of communication devices participating in the active call connection send an on-hook signal or when the call connection ends.
- the distribution logic 160 may cease audio data receiving activity (1028), cease audio data transcoding activity (1030), cease audio mixing and sharing activity (1032), or any combination thereof.
- Figure 11 shows an example of a system 1100 for time-shifting the distribution of HD audio.
- Time-shifting the distribution of HD audio may refer to delaying the distribution of obtained HD audio data for any number of reasons and in any number of circumstances.
- the exemplary system 1100 or any portion thereof may share any number of common characteristics or elements with respect to Figures 1 and 6 above, including with respect to the distribution device 110, communication network 115, audio sources 121-128, network 135, phone 141, and remote communication device 610.
- the distribution device 110 includes a communication interface 150 and the time-shift logic 1120.
- the time-shift logic 1120 may include the A/V logic 161, broadband logic 162, transcoder logic 163, and telephony logic 164, as described above.
- the time-shift logic 1120 may also include the control logic 1130 and recorder logic 1140 for time-shifting the distribution of HD audio.
- the distribution device 110 may also include a memory 1150, which may be used to store data, such as HD audio data.
- the recorder logic 1140 may interface with the memory 1150 to control recording and forwarding of audio data in the memory 1150.
- the time-shift logic 1120 may time-shift the distribution of HD audio in multiple ways. As discussed below, the time-shift logic 1120 may initiate storage of HD audio into the memory 1150 in response to receiving a record indication and subsequently or concurrently forward stored HD audio data to any number of destination devices, such as the remote communication device 610 or the phone 141.
- FIG. 12 shows a timing example 1200 of storing HD audio data.
- the timing example 1200 includes a phone 141 communicatively linked to time-shift logic 1120, e.g., through a local network.
- the time-shift logic 1120 may include telephony logic 164, control logic 1130, A/V logic 161, transcoder logic 163, and recorder logic 1140, as seen in the timing example 1200.
- the time-shift logic 1120 may initiate an HD audio storing process upon receiving a record indication, such as receiving an HD audio service request specifying an audio data storing service.
- the local user may press a predetermined combination of keys on the phone 141 specifying an audio record service.
- the phone 141 may then send DMTF tones 1210 corresponding to the key presses to the telephony logic 164.
- the telephony logic 164 may determine a service code associated with the DMTF tones 710, which may specify an HD audio recording service.
- the telephony logic 164 may also identify a specified audio source from a selected portion of the DTMF tones 1210, e.g., an audio selection string.
- a portion of the service request may also indicate a record duration that may specify an audio recording duration.
- the audio recording duration may include or represent a time length for recording audio data (e.g., hours, minutes, seconds, etc.).
- the telephony logic 164 may identify the record duration from the service request by extracting a predetermined portion of the DMTF tones 1210.
- the telephony logic 164 may generate and send a service indication message 1212 to the control logic 1130, which may specify any combination of an audio recording request, a specified audio source, and a record duration.
- the control logic 1130, A/V logic 161, and transcoder logic 163 may then obtain initial audio data 322 from the specified audio source and transcode the initial audio data 322 into HD audio data 324 as similarly described in Figure 3 above.
- the control logic 1130, AN logic 161, and transcoder logic 163 may exchange messaging such as a tuning request 314, tuning confirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above.
- the configuration request 318 may specify a destination indication to send transcoded audio data.
- the control logic 1130 may generate a configuration request 318 that specifies the recording logic 1140 as a destination for sending transcoded audio data.
- the transcoding logic 163 may send a configuration confirmation 1214 to the control logic 1130, which may indicate the transcoder logic 163 has completed a specified configuration, including a configuration to send transcoded audio data to the destination indication specified in the configuration request 318.
- the control logic 1130 may send a record start message 1220 to the recorder logic 1140, which may provide a record instruction to the recorder logic 1140.
- the recorder logic 1140 may receive the HD audio data 1222 for recording, e.g., into the memory 1150.
- the control logic 1130 may send a recording initiation indication1224 to the telephony logic 164, whereupon the telephony logic 164 may provide a recording initiation confirmation to the phone 141.
- the telephony logic 164 may send the recording initiation confirmation in any number ways, such as via a pre-recorded audio message, a predetermined sound or audio signal, or others.
- the telephony logic 164 may send a dial-tone signal 1226 as the recording initiation confirmation.
- a local user may recognize that the time-shift logic 1120 has initiated the requested audio recording process and subsequently hang up the phone 141.
- the recorder logic 1140 may continue to record HD audio data 1222 received from the transcoder logic 163 until obtaining a stop indication, such as receiving a recording stop message 1228 sent from the control logic 1130.
- the control logic 1130 may send the recording stop message 1228 to the recorder logic 1140 after a predetermined amount of time has elapsed, e.g., as specified by a record duration extracted from the service request.
- the record duration length1230 between when the recorder logic 1140 starts and stops recording HD audio data may correspond to a record duration value specified the HD audio recording service request.
- the recorder logic 1140 may receive the record duration value through the record start message 1220. Then, the recorder logic 1140 may stop recording HD audio data 1222 after the amount of time specified by the record duration elapses.
- the time-shift logic 1120 may obtain and record HD audio data for a specified record duration and from a specified audio source.
- FIG. 13 shows a timing example 1300 of forwarding stored HD audio data.
- the timing example 1300 includes the phone 141, which may be communicatively linked to the time-shift logic 1120.
- the time-shift logic 1120 may include telephony logic 164, control logic 1130, A/V logic 161, transcoder logic 163, and recorder logic 1140, as seen in the timing example 1300.
- the time-shift logic 1120 may forward (e.g., send) stored HD audio data to any number of destination devices.
- the timing example 1300 depicts an exemplary process through which the time-shift logic 1120 may send stored HD audio to the remote communication device 610.
- the time-shift logic 1120 may also send stored HD audio data to multiple remote communication devices in a similar manner.
- the time-shift logic 1120 may send the stored HD audio to any number of electronic devices connected via a local network as well, such as the phone 141.
- the time-shift logic 1120 may initiate a stored HD audio forwarding process upon receiving a forwarding indication, e.g., upon receiving an HD audio service request that specifies a stored HD audio forwarding service.
- a forwarding indication e.g., upon receiving an HD audio service request that specifies a stored HD audio forwarding service.
- the local user may press a predetermined combination of keys on the phone 141 that may specify the stored audio forwarding service.
- the phone 141 may then send DMTF tones 1210 corresponding to the key presses to the telephony logic 164.
- the telephony logic 164 may determine a service code associated with the DMTF tones 710, and may thus identify the HD audio recording service.
- the telephony logic 164 may identify additional service information with respect to the stored HD audio forwarding service, such as a destination device.
- the destination device may refer to an electronic device the time-shift logic 1120 is to send the stored HD audio to.
- the destination device may be characterized by any number of identifying information, such as a phone number, speed dial number, IP address, any form of device code or categorization, or others.
- the telephony logic 164 may obtain identifying information associated with the destination device in various ways. In one example, the telephony logic 164 may send a dial-tone signal 1312 to the phone 141, for play back to the local user.
- the local user may enter key presses, and the phone 141 may subsequently send DMTF tones 1314, that may identify the destination device.
- the service request initially sent by the local user may include identifying information associated with the destination device.
- the telephony logic 164 receives an identifying phone number specifying the remote communication device 610 as the destination device.
- the time-shift logic 1120 may also obtain a stored audio selection, which may specify a particular stored HD audio stream or data.
- the time-shift logic 1120 may obtain a stored audio selection through a user query.
- the telephony logic 164 and/or control logic 1130 may request identification, e.g., a listing, of available stored HD audio streams or data from the record logic 1140.
- the telephony logic 164 may provide a stored HD audio options indication to the phone 212 for playback to the local user.
- the stored HD audio options indication may identify stored HD audio available for forwarding.
- the stored HD audio options may list one or more HD audio streams or recordings stored in the memory 1150, allowing the local user to select one of the audio options as the stored audio selection.
- the stored HD audio options indication may also include audio identifying information for each stored HD audio stream or data, including as examples, an audio source the stored HD audio data was obtained from, a recording duration, a recording date, a recording description, or other information.
- the telephony logic 164 may obtain the stored audio selection from the local user, e.g., via a DMTF tone signal from the phone 141 corresponding to a key press of the local user.
- the telephony logic 164 may generate and send a service indication message 1316 to the control logic 1130.
- the service indication 1316 may specify the requested stored HD audio forwarding service and additional service information.
- the service indication 1316 may include the destination device or identifying information associated with the destination device. In Figure 13 , the service indication 1316 may include a phone number value identifying the remote communication device 610. The service indication 1316 may also include the stored audio selection.
- the time-shift logic 1130 may also obtain supplemental audio data to send with stored HD audio data.
- the time shift logic 1130 may obtain supplemental audio data describing the stored HD audio data, e.g., by generating a supplemental audio stream including any of the audio identifying information described above.
- the time-shift logic 1130 (e.g., any combination of the telephony logic 164, control logic 1130, transcoder logic 163, and recorder logic 1140) may also obtain supplemental audio data from a local user requesting the stored HD audio forwarding service.
- the time-shift logic 1120 may obtain and/or record an audio message from the local user (e.g., a user greeting) that the time-shift logic 1120 may forward as a preamble prior to sending the stored HD audio data to the destination device.
- the control logic 1130 may establish a call connection with the destination device, e.g., the remote communication device 610. To do so, the control logic 1130 may send an initiate call message 1318 to the telephony logic 164, whereupon the telephony logic 164 may attempt to establish a call connection with the remote communication device 610. In Figure 13 , the telephony logic 164 attempts to establish a call connection by initiating a phone call using the phone number of the remote communication device 610.
- the time-shift logic 1120 may abort the stored HD audio forwarding service, e.g., by foregoing further action and/or alerting the local user of the unsuccessful call connection attempt with the remote communication device 610.
- the telephony logic 164 may send a call confirmation 1320 to the control logic 1130 indicating the successful call connection.
- the control logic 1130 may forward stored HD audio data to the remote communication device 610, for example through the established call connection.
- the time-shift logic 1130 may send obtained supplemental audio data, such as a recorded preamble or greeting message from the local user, prior to sending the stored HD audio data.
- the control logic 1130 may also instruct the recorder logic 1140 to begin sending stored HD audio data through a forwarding start message 1322.
- the forwarding start message 1322 may include a stored audio selection indication, which may specify a particular HD audio stream or data for the recorder logic 1140 to retrieve from a memory to forward. Then, the recorder logic 1140 may retrieve the specified stored HD audio data and send the HD audio data 1324 to the telephony logic 164.
- the telephony logic 164 may encode or decode the HD audio data 1324 into a communication format supported by the call connection. The telephony logic 164 may then send the HD audio data 1326 to the remote communication device 610 via the call connection. The telephony logic 164 may also send the stored HD audio selection to the local user device that initiated the audio forwarding service, such as the phone 141. To do so, the telephony logic 164 may decode the HD audio data 1324 into a communication format supported by the phone 141 and send the decoded HD audio data 1328 to the phone 141.
- the time-shift logic 1120 may continue to send the stored HD audio data to the remote communication device 610, phone 141, or both, until identifying a termination indication.
- the time-shift logic 1120 may identify a termination indication in any number of ways, including through any of the termination indications discussed above.
- the time-shift logic 1120 may identify a termination indication when the remote communication device 610 terminates the call connection, such as by sending a termination signal (e.g., on-hook signal) to the telephony logic 164.
- the time-shift logic 1120 may identify a termination indication when the sending of the specified stored audio selection has completed.
- the control logic 1130 may identify when forwarding of the stored HD audio selection has completed, e.g., when a recording duration has elapsed or when receiving a forwarding complete indication from the recorder 1140 that the end of a specified stored HD audio stream or data has been reached.
- control logic 1130 may send a forwarding completed message 1330 to the recorder logic 1140, which may instruct the recorder logic 1140 to cease sending stored HD audio data 1324. Then, the control logic 1130 may send a terminate call message 1332 to the telephony logic 164, whereupon the telephony logic 164 may terminate the call connection with the remote communication device 610. Then, the telephony logic 164 may send a termination confirmation 1334 to the control logic 1130, which may conclude the stored HD audio forwarding service.
- Figure 14 shows an example of logic 1400 that may be implemented as hardware, software, or both.
- the time-shift logic 1120 may implement the logic 1400, e.g., through any combination of the AN logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, control logic 1130, or recorder logic 1140, and across any number of devices.
- the time-shift logic 1120 may obtain a service request (1402) in any of the ways discussed above, e.g., as DMTF tones sent from the phone 141 operated by a local user.
- the time-shift logic 1120 may examine the service request and determine a service associated with the service request (1404). As examples, the time shift logic 1120 may determine that the obtained (e.g., received) service request specifies an HD audio storing service or a stored HD audio forwarding service.
- the time-shift logic 1120 may identify an audio source from which to obtain and store audio data (1406).
- the time-shift logic 1120 may identify the audio source from a portion of service request, which may specify an audio source (e.g., a broadcast channel number, streaming source identification code, etc.) to record.
- the time-shift logic 1120 may also identify a record duration (1406) by examining a predetermined portion of the service request specifying a recording duration value.
- the time-shift logic 1120 may send a query to the local user, e.g., via the phone 141, prompting the local user to provide a specified audio source, record duration, or both.
- the time-shift logic 1120 may obtain audio data from the specified audio source by, for example, tuning a communication resource to receive audio data from the specified audio source (1408), determining an initial codec associated with the audio data (1410), and obtaining the audio data from the specified audio source (1412), e.g., through the tuned communication resource.
- the time-shift logic 1120 may transcode the received audio data into HD audio data (1414) and store the HD audio data (1416) into a memory, e.g., an external memory or a memory embedded within a device implementing any portion of the time-shift logic 1120 or the memory 1150.
- the time-shift logic 1120 may continue to obtain and store HD audio data for a length of time equal to the record duration. Until the record duration time elapses (1418), the time-shift logic 1120 may continue to obtain audio data from the specified audio source, transcode the audio data into HD audio data, and stored the HD audio data in the memory. In one example, the time-shift logic 1120 may store the audio data obtained from the specified audio source without transcoding the audio data into HD audio data. In this example, the time-shift logic 1120 may associate a transcoding indication with the stored audio data, which may indicate the stored audio data was not transcoded into an HD audio format prior to storing in the memory. The transcoding indication may also include the initial audio codec associated with the stored audio data.
- time-shift logic 1120 may employ any number of compression techniques to the audio data or HD audio data when storing the data into the memory. After the time-shift logic 1120 has obtained audio data (HD or according to an initial audio codec) for the record duration, the time-shift logic 1120 may complete the HD audio recording process.
- the time-shift logic 1120 may also determined that an obtained service request specifies a stored HD audio forwarding service. In response, the time-shift logic 1120 may identify a stored audio selection (1420) and destination device (1422), such as through any of the ways discussed above. For example, the time-shift logic 1120 may obtain the stored audio selection as an explicit selection from the local user. The stored audio selection may include a time duration value associated with the stored audio selection. The time-shift logic 1120 may also obtain supplemental audio data (1424) to send with the stored audio selection. As discussed above, the supplemental audio data may include a pre-recorded or generated audio stream describing the stored audio selection, which may include any identifying information associated with the stored audio selection. Or the supplemental audio data may be a recorded audio greeting from the local user.
- the time-shift logic 1120 may attempt to establish a connection with the destination device (1426). When the connection attempt fails, the time-shift logic 1120 may stop the stored HD audio forwarding process and/or send a failed connection indication to the local user, e.g., via the phone 141. When the time-shift logic 1120 successfully establishes a connection with the destination device, the time-shift logic 1120 may forward HD audio data of the stored audio selection to the destination device (1428). In one example, the time-shift logic 1120 may transcode audio data retrieved from a memory when the audio data was not previously transcoded into HD audio data. Also, the time-shift logic 1120 may encode or decode an HD audio data stream retrieved from a memory into a communication format supported by the communication link to the destination device.
- the time-shift logic 1120 may also decode and forward HD audio data to a local device initiating the stored HD audio forwarding service as well.
- the time-shift logic 1120 may continue to forward the stored HD audio data to the destination device until identifying a termination indication (1430), which may take the form of any of the termination indications discussed above.
- FIG. 15 shows a timing example 1500 of time-shifting the distribution of HD audio.
- the timing example 1500 includes the phone 141, which may be communicatively linked to the time-shift logic 1120, e.g., via a local analog network.
- the time-shift logic 1120 may include the telephony logic 164, control logic 1130, A/V logic 161, transcoder logic 163, and recorder logic 1140, as seen in the timing example 1500.
- the time-shift logic 1120 may time-shift the distribution of HD audio data upon identifying a time-shift indication.
- the time-shift logic 1120 may identify a time-shift indication when the time-shift logic 1120 receives an incoming call request during an HD audio distribution process.
- the time-shift logic 1120 may alert a local user of an incoming call and record the HD audio stream currently being distributed.
- the time-shift logic 1120 may time-shift, e.g., delay, the distribution of the recorded HD audio until after a call between a remote communication device and a local phone device completes.
- an HD audio distribution process may occur prior to an incoming call request, e.g., via any of the HD distribution processes described above. While the distribution of HD audio distribution is in progress, the telephony logic 164 may identify an incoming call request to a communication device linked to the telephony logic 164, such as the incoming call request 1510 to the phone 141 from the remote communication device 610. In response to receiving the incoming call request 1510 during the HD audio distribution process, the telephony logic 164 may send an incoming call notification 1512 to the control logic 1130. Then, the control logic 1130 may initiate a recording of the HD audio data currently being distributed until the incoming call request 1510 and/or subsequent call connection is resolved.
- the A/V logic 161 may continue to obtain initial audio data from the specified audio source of the HD distribution process and the transcoder logic 163 may continue to transcode the initial audio data into HD audio data.
- the transcoder logic 163 may send the transcoded HD audio data to the recorder logic 1140 for recording instead of to the telephony logic 164 for play back to the local user.
- the control logic 1130 may send a destination transition indication 1514 to the transcoder logic 163, which may instruct the transcoder logic 163 to send transcoded HD audio data 1520 to the recorder logic 1140.
- the control logic 1130 may also send a record start message 1516 to the recorder logic 1140, which may initiate storing of HD audio data 1520 sent from the transcoder logic 163 to the recorder logic 1140.
- the control logic 1130 may send a recording start confirmation 1522 to the telephony logic 164, whereupon the telephony logic 164 may send an incoming call indication to the phone 141, such as through the call alert 1524.
- the telephony logic 164 may send a call alert 1524 as a local ring tone to the phone 141, which may interrupt the previous HD audio distribution and alert the local user of the incoming call request 1510.
- the time-shift logic 1120 may cease the HD audio distribution until completion of the call request or connection.
- the phone 141 may send a call acceptance indication, such as the accept message 1526 in Figure 15 .
- the telephony logic 164 may support the call connection 1534, by exchanging voice signals between the phone 141 and the remote communication device 610.
- the telephony logic 164 may send and receive an analog voice signal 1530 from the phone 141 and the VoIP packet voice signal 1532 from the remote communication device 610.
- the telephony logic 164 may identify a call termination indication, such as when the remote communication device 610 sends an on-hook signal or termination signal 1536 to the telephony logic 164.
- the telephony logic 164 may send a call termination notification 1538 to the control logic 1130.
- the control logic 1130 may send a playback start indication 1540 to the recorder logic 1140.
- the recorder logic 1140 may send recorded HD audio data 1542 starting from a point when the previous HD audio distribution ceased, e.g., upon receiving the incoming call request 1510 and sending the call alert 1524 to the phone 141.
- the recorder logic 1140 may send the recorded HD audio data 1542 to the telephony logic 164 for decoding and distribution to the phone 141 as decoded HD audio data 1544.
- the phone 141 may play back the decoded HD audio 1544, thus resuming distribution of HD audio from a point where the distribution was interrupted by the incoming call request 1510.
- the time-shift logic 1120 may continue to time-shift the HD audio distribution (e.g., record and subsequently distribute) until identifying a distribution termination indication, such as receiving an on-hook signal or predetermined termination signal from the phone 141.
- Figure 16 shows an example of logic 1600 that may be implemented as hardware, software, or both.
- the time-shift logic 1120 may implement the logic 1600, e.g., through any combination of the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, control logic 1130, or recorder logic 1140, and across any number of devices.
- the time-shift logic 1120 may identify an incoming call request (1602) from a remote communication device 610 directed to any communication device linked to the time-shift logic 1120, e.g., phone devices connected to the time-shift logic 1120 via a local analog phone network. In response, the time-shift logic 1120 may identify whether an audio distribution process is currently in progress, e.g., by identifying whether the time-shift logic 1120 or other interconnected logic (e.g., distribution logic 160) is currently distributing HD audio across. When an audio distribution process is not currently in progress, the time-shift logic 1120 may send a call alert signal (1604) to a communication device identified by the incoming call request and subsequently process a call connection (1606) between the remote communication device and the communication device.
- a call alert signal 1604
- the time-shift logic 1120 may delay the distribution of the currently distributed audio stream, for example, until the incoming call request or a subsequent call connection completes. To that end, the time-shift logic 1120 may cease the distribution of HD audio data (1608), send a call alert signal (1610) to one or more communication devices identified by the incoming call request, and record HD audio data (1612) from the audio source that was distributed prior to receiving the incoming call request.
- the time-shift logic 1120 may also process a call connection (1614) between the remote communication device and the communication device identified by the incoming call request, e.g., a local communication device such as the phone 141.
- the time-shift logic 1120 may continue to record HD audio data corresponding to the previously distributed audio source and process the call connection until identifying a call termination indication (1616), such as upon receiving an on-hook signal from remote communication device 610 or any other call termination indication. Then, the time-shift logic 1120 may distribute, e.g., playback, the recorded HD audio (1618) starting, for example, from the point the previous HD audio distribution process was interrupted by the incoming call request. In this way, the time-shift logic 1120 may resume distribution of HD audio data without skipping audio content as a result of the incoming call request during the previous HD audio distribution. The time-shift logic 1120 may also continue to record HD audio data from the specified audio source (1620) for subsequent distribution (1618), thereby time-shifting the distribution of the HD audio data.
- the time-shift logic 1120 may continue to time-shift the distribution of the interrupted HD audio data stream until identifying a distribution termination indication (1622), such as any of the distribution termination indications discussed above. For example, the time-shift logic 1120 may identify a termination indication upon receiving an on-hook signal from a communication device the HD audio data is distributed to. The time-shift logic 1120 may also end the HD audio time-shifting process under other time-shift termination circumstances as well, such as when the time-shift logic 1120 or other logic obtains an audio source change request, when the memory exceeds a memory capacity threshold, when the recorded audio duration exceeds a predetermined duration threshold, or under other termination circumstances. Thus, the time-shift logic 1120 may time-shift the distribution of HD audio data or an HD audio data stream to handle an incoming call request.
- a distribution termination indication such as any of the distribution termination indications discussed above.
- the time-shift logic 1120 may identify a termination indication upon receiving an on-hook signal from a communication device the HD audio data is distributed to.
- Figure 17 shows an example of a system for sending HD audio as a ringback tone.
- a ringback tone may refer to an audio signal sent to and played back by a communication device while the communication device directs a call to a target communication device.
- the exemplary system 1700 or any portion thereof may share any number of common characteristics or elements with respect to Figures 1 , 6 , and 11 above, including with respect to the distribution device 110, communication network 115, audio sources 121-128, network 135, phone 141, and remote communication device 610.
- the distribution device 110 includes a communication interface 150 and the ringback logic 1720.
- the ringback logic 1720 may include the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, and recorder logic 1140, as described above.
- the ringback logic 1720 may also include the control logic 1730 for sending HD audio as a ringback tone.
- the ringback logic 1720 may identify an incoming call from a remote communication device (e.g., the remote communication device 610), identify a ringback audio source, and send audio data from the ringback audio source to the remote communication device as a ringback tone.
- FIG 18 shows a timing example 1800 of sending live HD audio as a ringback tone.
- the timing example 1800 includes the phone 141, which may be communicatively linked to ringback logic 1720, e.g., via an analog telephony network.
- the ringback logic 1720 may include the telephony logic 164, control logic 1730, A/V logic 161, and transcoder logic 163, as seen in the timing example 1800.
- the ringback logic 1720 may send live HD audio as a ringback tone to a remote communication device sending an incoming call request.
- the remote communication device 610 may send an incoming call request 1810 to a requested communication device communicatively linked to the ringback logic 1720, such as the phone 141.
- the phone 141 connects to a distribution device 110 implementing the ringback logic 1720 through a local analog phone network.
- the telephony logic 164 may identify and receive the incoming call request 1810, and in response send an incoming call notification 1812 to the control logic 1730.
- the control logic 1730 may identify a ringback audio source to obtain a ringback tone for sending to the remote communication device 610.
- the control logic 1730 may identify the ringback audio source as any audio source, e.g., a broadcast A/V channel, streaming audio, or any of the audio sources discussed above.
- the ringback audio source may be specified or configured in any number of ways.
- the ringback logic 1720 may receive an audio service request that may specify a ringback audio source change service.
- the ringback logic 1720 may receive such a service request in any ways described above, e.g., via DMTF tones generated based on a local user's key presses.
- the ringback logic 1720 may interface with an operator-provided web interface to receive ringback audio source changes.
- a local user may specify, configure, or change a previously specified ringback audio source.
- the control logic 1730 may also identify a ringback audio source according to any number of ringback selection criteria.
- the ringback selection criteria may include time criteria which may specify a particular ringback audio source depending on the time-of-day, week, or month.
- the ringback selection criteria may include call identification criteria, which may specify a particular ringback audio source based on caller identification information of the remote communication device 610 sending the incoming call request.
- the ringback selection criteria may specify a particular ringback audio source according to a selected portion of the caller identification information associated with the remote communication device 610, e.g., with respect to the area code of the remote communication device 610.
- the ringback selection criteria may specify a particular ringback audio source for specific phone number, thus allowing customization of the ringback audio source based on the identity or identification information of the remote communication device 610.
- Similar ringback selection criteria may include location-based criteria (e.g., GSP location info of the remote communication device 610) or any other criteria.
- the ringback selection criteria may be configurable, e.g., by a local user or by a network operator.
- the control logic 1730 may identify a ringback audio source as live audio data from a selected audio source and subsequently tune a communication resource to obtain audio data from the ringback audio source.
- the control logic 165, A/V logic 161, and transcoder logic 163 may obtain initial audio data 322 from the specified audio source and transcode the initial audio data 322 into HD audio data 324, as described above.
- the control logic 165, A/V logic 161, and transcoder logic 163 may exchange messaging such as a tuning request 314, tuning confirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above.
- the ringback logic 1720 may also obtain HD audio data from a streamed audio data using a streaming client as similarly described above.
- the transcoder logic 163 may send a transcoded audio data, e.g., the HD audio data 324, to the telephony logic 164.
- the telephony logic 164 may encode or decode the HD audio data 324 into a communication format supported by a communication link with the remote communication device 610. For example, the telephony logic 164 may decode the HD audio data 324 into VoIP packets for transmission to the remote communication device 610. The telephony logic 164 may then send the HD audio data to the remote communication device 610 for play back as a ringback tone, e.g., the HD audio ringback signal 1820.
- a ringback tone e.g., the HD audio ringback signal 1820.
- the telephony logic 164 may continue to send the HD audio ringback signal 1820 until a requested communication device accepts the incoming call request or other ringback termination conditions occur, e.g., after a predetermined termination time elapses without receiving a call acceptance signal from the requested communication device.
- the ringback logic 164 may also alert the requested communication device of the incoming call request.
- the incoming call request 1810 may be directed to the phone 141.
- the telephony logic 164 may send a local ring tone signal 1822 to the phone 141 to indicate an incoming call request directed to the phone 141.
- the telephony logic 164 may send the HD audio ringback signal 1820 to the remote communication device 610 and delay alerting the requested communication device of the incoming call request, e.g., delay sending the local ring tone signal 1822.
- the telephony logic 164 may delay alerting the requested communication device of the incoming call request for a predetermined delay period, so that the remote communication device 610 receives the HD audio ringback signal 1820 for at least the predetermined delay period.
- the delay period may be a programmable or predefined time value stored by the telephony logic 164.
- FIG 19 shows timing example 1900 of sending recorded HD audio as a ringback tone.
- the timing example 1900 includes the phone 141, which may be communicatively linked to ringback logic 1720 through a local analog network.
- the ringback logic 1720 may include the telephony logic 164, control logic 1730, A/V logic 161, transcoder logic 163, and recorder logic 1140, as seen in the timing example 1900.
- the ringback logic 1720 may send recorded HD audio as a ringback tone to a remote communication device sending an incoming call request.
- the telephony logic 164 may identify the incoming call request 1910 from the remote communication device 610. In response, the telephony logic 164 may send an incoming call notification 1912 to the control logic 1730. Then, the control logic 1730 may identify a ringback audio source to obtain a ringback tone for sending to the remote communication device 610. For example, the ringback logic 1720 may identify the ringback audio source according to any number of ringback selection criteria, as discussed above. In the timing example 1900, the control logic 1730 may identify the ringback audio source as a recorded HD audio stream or data, which may be stored on a memory, such as the memory 1150.
- control logic 1730 may send a forwarding start indication 1914 to the recorder logic 1140, which may also specify a particular stored audio data stream or data for the recorder logic 1140 to retrieve from the memory.
- the recorder logic 1140 may obtain HD audio data specified by the ringback audio source and send the HD audio data 1926 to the telephony logic 164.
- the telephony logic 164 may encode or decode the HD audio data 1926 into a communication format supported by a communication link with the remote communication device 610 and send the HD audio data to the remote communication device 610 for play back as a ringback tone, e.g., send the HD audio ringback signal 1920.
- the telephony logic 164 may continue to send the HD audio ringback signal 1920 and wait for a delay period until alerting the phone 141 of the incoming call request (e.g., via sending a local ring tone signal 1922).
- the telephony logic 164 may cease sending the HD audio ringback signal 1920, local ring tone signal 1922, or both.
- Figure 20 shows an example of logic 2000 that may be implemented as hardware, software, or both.
- the ringback logic 1720 may implement the logic 2000, e.g., through any combination of the A/V logic 161, broadband logic 162, transcoder logic 163, telephony logic 164, control logic 1730, or recorder logic 1140, and across any number of devices.
- the ringback logic 1720 may identify an incoming call request from a communication device, such as the remote communication device 610 (2002). Then, the ringback logic 1720 may determine a ringback selection (2004), which may include determining a ringback audio source and/or particular audio data associated with the ringback audio source.
- the ringback logic 1720 may determine the ringback selection according to any number of ringback selection criteria, including any of the criteria discussed above.
- the ringback selection criteria may specify advertising content as the ringback audio source.
- the ringback logic 1720 may identify a ringback audio source containing advertising content stored on a memory, e.g., the memory 1150.
- the advertising content may have been previously selected by a local user or other entity, extracted from a broadcast channel, and recorded unto the memory 1150 by the ringback logic 1720.
- the recorded advertising content may have been provided by a local network operator or service-provider, e.g., pre-downloaded onto a memory provided by the network operator or service provider.
- the ringback selection criteria may specify one or more broadcast or streaming ringback audio sources specifically including advertising content.
- the ringback selection criteria may be configured to specifically identify the advertisement ringback audio sources, e.g., by a network operator or service provider.
- the ringback logic 1720 may obtain HD audio data from the ringback audio source, which may include an audio source providing a live audio stream or an audio source storing recorded audio data.
- the ringback logic 1720 may obtain audio data from the audio source in any of the ways described above. For example, the ringback logic 1720 may tune a communication resource (2006), determine an initial audio codec associated with audio data obtained from the audio source (2008), obtain initial audio data (2010), and transcode the initial audio data into HD audio data (2012) in any of the ways described above.
- the ringback logic 1720 may obtain recorded HD audio according to the ringback selection (2014), e.g., by retrieving a particular HD audio data stream or HD audio data from a memory based on the ringback selection.
- the ringback logic 1720 may send the obtained HD audio data as a ringback tone (2016) to the remote communication device 610 sending the incoming call request.
- the ringback logic 1720 may also alert the request communication device of an incoming request after a delay period, e.g., by sending a local ring tone signal to the requested communication device after the delay period elapses (2016).
- the ringback logic 1720 may identify ringback termination indication (2020) in various ways, including, for example, when the requested communication device sends a call accept indication or after a predetermined termination period elapses.
- the ringback logic 1720 may continue to obtain and send the HD audio data as a ringback tone to the remote communication device 610 until identifying a ringback termination (2022).
- the ringback logic 1720 may continue to send a local ring tone to the requested communication device until identifying a ringback termination indication as well.
- the ringback logic 1720 may cease sending the ringback tone and local ring tone to the remote communication device 610 and requested communication device respectively.
- the ringback logic 1720 may send HD audio data as a ringback tone to a remote communication device 610 sending an incoming call request.
- the distribution logic 160, time-shift logic 1120, and ringback logic 1720, or any portion thereof, may share any number of common characteristics, elements, functionality, or more. Also, the distribution logic 160, time-shift logic 1120, and ringback logic 1720 may be implemented together in any combination. For any of the audio distribution services described above, the distribution logic 160, time-shift logic 1120, ringback logic 1720, or any combination thereof may determine a distribution eligibility of a distribution service or user. The logic may determine whether a distribution threshold has been exceeded (e.g., amount of time, data, or other metric).
- a network provider or service provider may specify a predetermined distribution threshold to a local user, set of communication devices, service, telephone account, etc., with respect to one or more HD audio distribution services.
- the distribution logic 160, time-shift logic 1120, and ringback logic 1720 may forego providing a requested HD audio service when the predetermined distribution threshold is exceeded.
- the distribution threshold may be increased (e.g., by a local user or with respect to a particular account), e.g., by paying a monetary amount to the service or network provider.
- All or parts of a system may include circuitry in a controller, a microprocessor, or an application specific integrated circuit (ASIC), or may be implemented with discrete logic or components, or a combination of other types of analog or digital circuitry, combined on a single integrated circuit or distributed among multiple integrated circuits.
- ASIC application specific integrated circuit
- All or part of the logic described above may be implemented as instructions for execution by a processor, controller, or other processing device and may be stored in a tangible or non-transitory machine-readable or computer-readable medium such as flash memory, random access memory (RAM) or read only memory (ROM), erasable programmable read only memory (EPROM) or other machine-readable medium such as a compact disc read only memory (CDROM), or magnetic or optical disk.
- a product such as a computer program product, may include a storage medium and computer readable instructions stored on the medium, which when executed in an endpoint, computer system, or other device, cause the device to perform operations according to any of the description above.
- the processing capability of the system may be distributed among multiple system components, such as among multiple processors and memories, optionally including multiple distributed processing systems.
- Parameters, databases, and other data structures may be separately stored and managed, may be incorporated into a single memory or database, may be logically and physically organized in many different ways, and may implemented in many ways, including data structures such as linked lists, hash tables, or implicit storage mechanisms.
- Programs may be parts (e.g., subroutines) of a single program, separate programs, distributed across several memories and processors, or implemented in many different ways, such as in a library, such as a shared library (e.g., a dynamic link library (DLL)).
- the DLL for example, may store code that performs any of the system processing described above.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
- This disclosure relates an audio distribution system. This disclosure also relates to a high definition (HD) audio distribution system.
- Advances in electronics and communication technologies can result in communication networks capable of communicating data at ever-increasing speeds. Consumers may be able to send and receive data across multitudes of sources at higher reliability and communication rates. Technology can continue to advance and communication networks grow in size, frequency of use and capability. Data can be being communicated with greater efficiency, reliability and quality.
WO-A-0228063 - According to an aspect, a device comprises:
- a memory;
- a communication interface; and
- a processor connected with the memory and the communication interface, the processor comprising time-shift logic, the time-shift logic configured to:
- receive a record indication from a communication device, the record indication specifying an audio selection, and in response:
- tune the communication interface to obtain initial audio data according to the audio selection;
- transcode the initial audio data into High Definition (HD) Voice data; and initiate a storage of the HD Voice data in the memory; and
- receive a forward indication from the communication device, and in response:
- determine a destination device; and
- transmit the HD Voice data stored in the memory to the destination device through the communication interface.
- receive a record indication from a communication device, the record indication specifying an audio selection, and in response:
- Advantageously, the destination device comprises the communication device.
- Advantageously, the destination device comprises a remote communication device.
- Advantageously, the time-shift logic is configured to transmit the HD Voice data to the remote communication device by establishing a call connection with the remote communication device.
- Advantageously, the time-shift logic is further configured to:
- obtain a preamble message from the communication device; and
- transmit the preamble message to the destination device along with the HD Voice data.
- Advantageously, the time-shift logic is configured to determine the destination device by obtaining identifying information associated with the destination device.
- Advantageously, the identifying information associated with the destination device comprises a phone number.
- The systems and methods may be better understood with reference to the following drawings and description. In the figures, like reference numerals designate corresponding parts throughout the different views.
-
Figure 1 shows an example of a system for distributing High Definition (HD) audio. -
Figure 2 shows an example of a system that includes four exemplary configurations for distributing HD audio. -
Figure 3 shows a timing example for initiating distribution of HD audio. -
Figure 4 shows a timing example for terminating distribution of HD audio. -
Figure 5 shows an example of logic that may be implemented as hardware, software, or both. -
Figure 6 shows an example of a system for communicating HD audio to a remote communication device. -
Figure 7 shows a timing example of forwarding HD audio to a remote communication device. -
Figure 8 shows an example of logic that may be implemented as hardware, software, or both. -
Figure 9 shows a timing example of sharing HD audio during an active call connection. -
Figure 10 shows an example of logic that may be implemented as hardware, software, or both. -
Figure 11 shows an example of a system for time-shifting the distribution of HD audio. -
Figure 12 shows a timing example of storing HD audio data. -
Figure 13 shows a timing example of forwarding stored HD audio data. -
Figure 14 shows an example of logic that may be implemented as hardware, software, or both. -
Figure 15 shows a timing example of time-shifting the distribution of HD audio. -
Figure 16 shows an example of logic that may be implemented as hardware, software, or both. -
Figure 17 shows an example of a system for sending HD audio as a ringback tone. -
Figure 18 shows a timing example of sending live HD audio as a ringback tone. -
Figure 19 shows timing example of sending recorded HD audio as a ringback tone. -
Figure 20 shows an example of logic that may be implemented as hardware, software, or both. - The discussion below makes reference to High Definition (HD) audio, which may include wideband audio or HD Voice data, signals, and/or technology. HD audio, wideband audio, or HD Voice may refer to an audio signal having a frequency range greater than a traditional telephonic voiceband or narrowband signal, e.g., a telephonic narrowband signal between 300 Hz to 3.4 kHz. HD audio, wideband audio, or HD voice may also refer to a telephony audio signal that has a greater frequency range than a traditional narrowband telephony signal. For instance, HD audio may include an audio signal ranging between any portion of the human voice frequency range. As one example, HD audio, wideband audio, or HD Voice may include audio frequencies ranging between 50 Hz to 7 kHz or higher, providing greater audio clarity and transmission fidelity than a traditional narrowband telephony signal. HD audio may also include audio signals encoded according any number of codecs, such as wideband or HD Voice audio codecs including G.722, Silk, Siren, internet Speech Audio Codec (iSAC), or other codecs. HD audio may be supported by any number of electronic or telephonic devices, including as examples analog telephones, Internet Protocol (IP) telephones, cordless systems (e.g., a base station and a handset), cellular phones, laptops, televisions, stereos, video conferencing devices, portable music players, and other devices.
-
Figure 1 shows an example of asystem 100 for distributing HD audio. Theexemplary system 100 includes adistribution device 110. Thedistribution device 110 may be any electronic device that receives audio data in any form. For example, thedistribution device 110 may be a set-top box, a gateway device, a cable modem, a desktop computer, a laptop computer, and other electronic devices. Thedistribution device 110 may communicate across acommunication network 115 and receive audio or audio/visual (A/V) data from any number of audio sources. InFigure 1 , thedistribution device 110 may communicate across thecommunication network 115 to receive audio data from any of the audio sources labeled as audio sources 121-128. An audio source may include any source that provides audio data. As examples, audio sources may include real-time (e.g., live) A/V broadcast sources, video-on national or local television broadcast networks, Internet-based A/V providers (e.g., audio streaming websites over an IP network), on-demand sources (e.g., a video on-demand service), Satellite audio providers, Broadcast radio sources, audio servers storing and/or providing A/V data files, and more. - The
communication network 115 may include any number of networks that communicate audio data according to any number of communication standards or protocols. As examples, thecommunication network 115 may include a cable network that transports audio data according to a cable standard (e.g., OpenCable and PacketCable) or any number of Internet Protocol (IP) networks that transport audio data as IP data, e.g., packets. As additional examples, thecommunication network 115 may communicate across any of the following network technologies, topologies, mediums, or standards: Ethernet, cable (e.g. DOCSIS), OpenCable, PacketCable, DSL, Multimedia over Coax Alliance (MoCA), power line (e.g. HomePlug AV), Ethernet Passive Optical Network (EPON), Gigabit Passive Optical Network (GPON), Hybrid Fibre Coaxial (HFC) access network, Public Switched Telephone Network (PSTN), any number of cellular standards (e.g., 2G, 3G, Universal Mobile Telecommunications System (UMTS), GSM (R) Association, Long Term Evolution (LTE) (TM), or more), WiFi (including 802.11 a/b/g/n/ac), WiMAX, Bluetooth , WiGig, and others. In one example, thecommunication network 115 may include multiple networks through which thedistribution device 110 receives audio data. For example, the distribution device may receive an A/V broadcast from a first audio source across a cable network in thecommunication network 115 as well as an Internet streamed audio signal from a second audio source across an Ethernet network in thecommunication network 115. - The
distribution device 110 may also distribute audio data across any number of networks to any number of destinations. InFigure 1 , thedistribution device 110 may communicate across anetwork 135, such as a local network or local area network (LAN), to distribute HD audio data. Thenetwork 135 may be implemented according to any of the network technologies, topologies, mediums, or standards enumerated above. In one example, thenetwork 135 may is implemented as an analog network, such as an analog telephone network. For instance, thenetwork 135 may be implemented as an analog telephone network according to a Registered Jack (RJ) interface standard, such as RJ11, RJ14, RJ21, RJ45, RJ48, or others. Thenetwork 135 may be implemented within a particular location, such as a residential home, a business office, a conferencing center, or other locations. Or, thenetwork 135 may be implemented across any number of locations as well. - The
distribution device 110 may communicate with any number of electronic devices across thenetwork 135, such as thetelephone 141,cellular phone 142, and personal data assistant (PDA) 143. Particularly, thedistribution device 110 may distribute audio data obtained from an audio source to any number of electronic devices, e.g., by sending HD audio data across thenetwork 135 to any of the electronic devices supporting HD audio data. To that end, thedistribution device 110 may include acommunication interface 150 anddistribution logic 160. Thecommunication interface 150 may be configured to communicate across multiple communication networks, including any networks comprising thecommunication network 115 and thenetwork 135. Thedistribution logic 160 may distribute audio data to any number of electronic devices communicatively linked to thedistribution logic 160, including thephone 141,cellular phone 142, and personal data assistant (PDA) 143. Additional examples of electronic devices may include a VoIP phone, speaker phone, cordless handset, earphone, audio player, laptop, television, stereo, video conferencing device, portable music player, and others. When a particular electronic device, e.g., thetelephone 141, is referred to in the figures, the device may include any electronic device that can perform similar functions, such as any of the mentioned electronic devices. - The
distribution logic 160 may include any amount of logic to obtain and distribute audio data. For instance, thedistribution logic 160 may include logic to obtain audio data from various audio sources. In the example inFigure 1 , thedistribution logic 160 includes the A/V logic 161 andbroadband logic 162 that may be configured to obtain audio data from various audio sources. Thedistribution logic 160 may also includetranscoder logic 163,telephony logic 164, andcontrol logic 165, which are described in greater detail below. As seen inFigure 1 , each portion of thedistribution logic 160 is implemented by thedistribution device 110. However, thedistribution logic 160, including any combination of the A/V logic 161,communication logic 162,transcoder logic 163,telephony logic 164, andcontrol logic 165, may be implemented across multiple devices as well. - The A/
V logic 161 may be configured to receive A/V data from any number of audio sources. Received A/V data may include audio data, video data, or both. Examples of A/V data include video programs or audio programs broadcasted across any number of broadcast channels, e.g., by a local or national broadcast network. The A/V logic 161 may receive A/V data broadcasted across any number of communication mediums, such as through a cable network, through satellite, or others. In one implementation, A/V logic 161 may decode A/V data for display by a television. The A/V logic 161 may also extract data with respect to an audio portion of A/V data. For example, the A/V logic 161 may determine an audio codec used to encode an audio portion of received A/V data. - The
broadband logic 162 may be configured to support communications across a broadband network, e.g., communications to receive or send audio data. In one example, thebroadband logic 162 implements a communication modem, such as a cable modem. Thebroadband logic 162 may act, for example, as an IP front end for a Voice over IP (VoIP) client, such as thetelephony logic 164. In this example, thebroadband logic 162 may receive or distribute audio data across an IP network as VoIP data packets. Thebroadband logic 162 may also receive A/V data as packet data and forward the received IP AN data to the A/V logic 161 for decoding. - The
transcoder logic 163 may transcode audio data from an initial audio codec to a different audio codec. For example, thetranscoder logic 163 may transcode received A/V data from an initial audio codec into an HD audio codec, such as G.722, to obtain HD audio data. Thetranscoder logic 163 may receive audio data for transcoding from multiple sources, such as communication logic including the A/V logic 161 or thebroadband logic 162. Also, thetranscoder logic 163 may send transcoded audio data, e.g., HD audio data, for distribution across a communication network, e.g., a local network, through other logic implemented by thedistribution logic 160, e.g., thetelephony logic 164. - The
telephony logic 164 may implement logic to perform or support performing a phone call via any number of interfaces, including initiating a call connection, establishing a call connection, identifying incoming call requests, and other call functionality. For example, thetelephony logic 164 may implement VoIP functionality to support performing a VoIP call, e.g., by implementing a VoIP client. Thetelephony logic 164 may also receive transcoded audio data, e.g., HD audio data to decode or encode into any number of communication formats, including communication formats supported by thecommunication network 115,network 135, or both. For example, thetelephony logic 164 may decode a stream of HD audio data to communicate across an analog telephony interface. - In supporting telephony communications, the
telephony logic 164 may also identify control signals sent from a communication device linked to thetelephony logic 164, e.g., thetelephone 141. In one example, thetelephony logic 164 may identify Dual-Tone Multi-Frequency (DMTF) tones sent from a communication device. Thetelephony logic 164 may determine whether the control signals sent from the communication device specify an outgoing phone call or other control signaling relating the distribution of an HD audio data stream. - The
control logic 165 may control the distribution of an audio stream across thenetwork 135 orcommunication network 115. As discussed above and in greater detail below, thecontrol logic 165 may communicate with other portions of thedistribution logic 160 to coordinate distribution of an HD audio signal among the A/V logic 161, thebroadband logic 162, thetranscoder logic 164 and thetelephony logic 165. While the example inFigure 1 depicts one example of thedistribution logic 160, thesystem 100 may be implemented across any number of logic or devices as well. -
Figure 2 shows an example of asystem 200 that includes four exemplary distribution configurations for distributing HD audio. Each of the distribution configurations may communicate across acommunication network 115 to obtain audio data from any number audio sources, such as the audio sources labeled asaudio sources Figure 2 . -
Figure 2 depicts a first exemplary distribution configuration that includes adistribution device 210, anetwork 211, such as a local analog network, and aphone 212. Thedistribution device 210 may be similar to thedistribution device 110 described inFigure 1 above. In the first configuration, thedistribution device 210 implements multiple portions of thedistribution logic 160, including the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, andcontrol logic 165. Thenetwork 211 may be implemented through standard telephone wiring, e.g., via RJ-11 telephone jacks. In operation, thedistribution device 210 may obtain audio data from an audio source, e.g., among theaudio sources network 211, and send the decoded HD audio stream across thenetwork 211 to thephone 212 for playback. - A second exemplary distribution configuration is depicted in
Figure 2 that includes adistribution device 220, anetwork 221, such as an Internet Protocol (IP) network, and aphone 222. In the second distribution configuration, thedistribution device 220 may implement a first portion of thedistribution logic 160, including the A/V logic 161,broadband logic 162,transcoder logic 163, andcontrol logic 165. Thephone 222 may implement thetelephony logic 164. In operation, thedistribution device 220 may transcode received audio or A/V data into HD audio data and transmit the HD audio data across thenetwork 221 as VoIP packets, e.g., via thebroadband logic 162. Thetelephony logic 164 of thephone 222 may receive the VoIP packets and playback the HD audio data via thephone 222. -
Figure 2 depicts a third exemplary distribution configuration that includes adistribution device 230, anexternal modem 231, anetwork 232, such as a local analog network, and aphone 233. In this configuration, thedistribution device 230 implements the A/V logic 161,transcoder logic 163,telephony logic 164, andcontrol logic 165. Theexternal modem 231 may be any communication device implementing thebroadband logic 162, e.g., an external cable modem. - The fourth exemplary distribution configuration in
Figure 2 includes afirst distribution device 240, asecond distribution device 241, anetwork 242, such as a local analog network, and aphone 243. Thedistribution logic 160 may be implemented across any number of distribution devices. As seen in this fourth configuration, thefirst distribution device 240 implements the A/V logic 161,broadband logic 162, andcontrol logic 165. Thesecond distribution device 241 implements thetranscoder logic 163 and thetelephony logic 164. Thefirst distribution device 240 and thesecond distribution device 241 may be communicatively linked, for example, via any of the communication protocols or methods enumerated above. As one example, thefirst distribution device 240 and thesecond distribution device 241 may communicate across an internal cable network via the MoCA standard. - In operation, the
first distribution device 240 may communicate across thecommunication network 115 via the A/V logic 161 orbroadband logic 162 to obtain audio data from an audio source. Thefirst distribution device 240 may send the obtained audio data, as natively coded, to thesecond distribution device 241. Thesecond distribution device 241 may then transcode, decode, and distribute the HD audio data across thenetwork 242, e.g., via an analog interface, for playback by thephone 243. As one example, thefirst distribution device 241 may be a primary set-top box or gateway device located within a residential home and thesecond distribution device 242 may be an auxiliary set-top box also located within the residential home. - The examples and figures below are discussed with respect to the first distribution configuration that may include a
distribution device V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, andcontrol logic 165. However, each of the examples and figures discussed below may also apply to any other distribution configuration, including any of the exemplary distribution configurations inFigure 2 . -
Figure 3 shows a timing example 300 for initiating distribution of HD audio. The timing example 300 may illustrate how a local user initiates distribution of HD voice to a telephony device operated by the local user, e.g., thephone 141 seen inFigure 3 . As one example, the local user may initiate distribution of HD audio from a phone in a home telephone network. The timing example 300 inFigure 3 depicts the interaction, e.g., signal exchange, between aphone 141 anddistribution logic 160 implemented in an exemplary HD distribution device or system that includes thetelephony logic 164,control logic 165, A/V logic 161, andtranscoder logic 163. Thephone 141 and distribution logic elements may interact via internal or external signal exchanges depending whether the elements are implemented within the same device or separate devices. - The local user may start an HD audio distribution process by sending an HD audio service request to the HD audio distribution system. In one example, the local user may send an audio service request through the
phone 141 by taking thephone 141 off-hook and entering key presses. In doing so, the local user may send a control signal or service request to control the distribution of HD audio to a local communication device. Thephone 141 may identify the key presses of the local user and send corresponding DMTF tones 310 to thetelephony logic 164. Thetelephony logic 164 may determine whether the receivedDMTF tones 310 correspond to a telephone call initiation, e.g., an outgoing phone call, or to an HD audio service request, e.g., an HD audio distribution request or signal. Thetelephony logic 164 may identify a HD audio service request from the DMTF tones 310 by identifying a predetermined ordering of the DMTF tones 310. In one example, thetelephony logic 164 may identify a HD audio service request or signal when the first DMTF tone corresponds to a particular key, e.g., the pound ("#") key or the star ("*") key. - The
telephony logic 164 may respond to the DMTF tones 310 depending on whether the DMTF tones 310 indicate a call initiation or an HD audio service request. When the DMTF tones 310 correspond to an outgoing telephone call, thetelephony logic 164 may initiate the telephone call, e.g., by initiating a call procedure through a VoIP client implemented by thetelephony logic 164. When the DMTF tones 310 indicate an HD audio service request or signal, thetelephony logic 164 may identify a particular HD audio service specified by the service request, e.g., through the DMTF tones 310. For instance, thedistribution logic 160 may identify a specified service by reading a predetermined portion of the service request string corresponding to the DMTF tones 310. In one example, thedistribution logic 160 may access a database or memory storing entries associating predetermined DTMF tone strings with HD audio services. In this example, thetelephony logic 164 may access the database to identify a particular HD audio service associated with the DMTF tones 310 (or a selected portion of the DMTF tones 310). When the DMTF tones 310 fail to specify a particular service, e.g., when no entries in the database correspond to the DMTF tone string, thetelephony logic 164 may transmit an error indication to thephone 141. The error indication may take any form, such as a pre-recorded error message or sound. - In addition to identifying an HD service, the
telephony logic 164 may also extract audio source information from the DMTF tones 310. For example, a portion of the DMTF tones 310 may include an audio selection identifying an audio source to obtain audio data from. As one example, an audio selection portion of the DMTF tones 310 may specify a table or database key that thetelephony logic 164 may use to perform a lookup operation in a database mapping audio sources. As another example, a portion of the DMTF tones 310 may specify a channel number to obtain audio data from, e.g., a broadcast A/V channel received by adistribution device 110, such as a gateway device, set-top box, or other electronic device. - Upon analyzing the DMTF tones 310, the
telephony logic 164 may generate aservice indication message 312 according to the received DMTF tones 310. Theservice indication message 312 may identify a service selected by the local user and may further include any additional information associated with a selected service, e.g., an audio source associated with the selected service. Thetelephony logic 164 may then send theservice indication message 312 to thecontrol logic 165. In response to receiving theservice indication message 312, thecontrol logic 165 may configure any number of elements of thedistribution logic 160 to perform the HD audio service specified by theservice indication message 312. - In
Figure 3 , theservice indication message 312 specifies an HD audio distribution request and includes a broadcast channel as the audio source associated with the distribution request. As such, thecontrol logic 165 may send atuning request 314 to the A/V Logic 161, which may include the channel number specified by the local user's HD audio service request. In response to receiving thetuning request 314, the A/V logic 161 may configure one or communication resources, e.g., thecommunication interface 150, in order to receive audio data from the specified broadcast channel. - As another example, the
AN logic 161 may receive atuning request 314 specifying an IP based audio source, e.g., an audio streaming website accessible via the Internet. The A/V logic 161 may then instruct additional communication logic, e.g., thebroadband logic 162, to obtain audio data from the specified IP based audio source. In one example, the A/V logic 161 may include a streaming client configured to obtain audio data from various audio sources, e.g., a streaming application designed to execute on a set-top box or gateway device. The A/V logic 161 may invoke the streaming client to obtain the specified audio data. The streaming client may interact with thecommunication interface 150 or other communication logic (e.g., the broadband logic 162) to obtain audio data from the specified audio source, e.g., by invoking a streaming protocol through thebroadband logic 162. - Beyond obtaining audio data from a specified audio source, the
AN logic 161 may also identify additional information associated with a specified audio source or the received audio data, such as an associated audio codec. To identify an audio codec, the A/V logic 161 may, or example, inspect received audio data to determine an audio codec. Or, theAN logic 161 may receive a signal, message, or indication from the audio source identifying the associated audio codec. The A/V logic 161 may also send atuning confirmation 316 to thecontrol logic 165, which may specify the identified audio codec. - The
control logic 160 may configure thetranscoder logic 163 according to an identified audio codec. As seen inFigure 3 , thecontrol logic 165 sends a configuration request 318 to thetranscoder logic 163, which may include an initial audio code, a final audio codec, or both. The initial audio codec may specify the audio codec associated with received A/V or audio data. The final audio code may specify the audio codec thetranscoder logic 163 will transcode the received A/V or audio data into, e.g., an HD audio codec. Thetranscoder logic 163 may then configure any transcoding logic, circuitry, or device in order to transcode received audio data from the initial audio codec to the final audio codec. Thetranscoder logic 163 may then send a configuration confirmation 320 to theAN logic 161. Optionally, thetranscoder logic 163 may send the configuration confirmation 320 to thecontrol logic 165 as well. - Upon receiving a configuration confirmation 320 from the
transcoder logic 163, the A/V logic 161 may begin sending received audio data to thetranscoder logic 163. In the timing example 300 inFigure 3 , the A/V logic 161 sends the received audio data as theinitial audio data 322, whereupon thetranscoder logic 163 may transcode theinitial audio data 322 into transcoded audio data. In one example, the A/V logic 161 may receive audio data encoded according to a super wideband audio codec, such as AAC or AC-3. Thetranscoder logic 163 may transcode the received AAC or AC-3 audio data into a HD audio code, such as G.722. Thetranscoder logic 163 may send the transcoded audio data to thetelephony logic 164, seen inFigure 3 as theHD audio data 324. - As mentioned above, the
telephony logic 164 may decode or encode audio data into a communication format supported by a network, such as analog telephony network or IP network. InFigure 3 , adistribution device 110 implementing thetelephony logic 164 interfaces with an analog telephone network and thetelephony logic 164 may decode the receivedHD audio data 324 to support communication over the analog telephone network. For example, thetelephony logic 164 may decode theHD audio data 324 for communication across an RJ-11 analog telephone network. Thetelephony logic 164 may then transmit the decodedHD audio data 326 to thephone 141 for playback. When thetelephony logic 164 interfaces with an IP network, thetelephony logic 164 may encode theHD audio data 324 for communication across the IP network as well. - In one example, the
telephony logic 164 may transmit the encoded or decoded HD audio data to any number of devices communicatively linked to a distribution device via a local telephone network. Adistribution device 110 or thetelephony logic 164 may send HD audio data to any electronic device connected to a local network such as a home telephone network (e.g. to a speaker phone, a cordless handset, earphone, or audio player connected through the home telephone network). In a telephone network, thetelephony logic 164 may send encoded or decoded HD audio data to any phone device that is active or off-hook. - While the example in
Figure 3 depicts initiating distribution of an HD audio stream, thedistribution logic 160 may also support additional HD distribution service requests as well. The local user may send an HD distribution service request while thephone 141 plays back an HD audio stream. For example, thetelephone logic 164 may identify a service code fromDMTF tones 310 sent from thephone 141 corresponding to an audio source change request (e.g., a channel change) or a scan audio source service (e.g., a scan channel request). In response to receiving a change channel service request, thecontrol logic 165 may send atuning request 314 to the A/V logic 161 indicative of the requested channel change or audio source change. Then the A/V logic 161,transcoder logic 163, andtelephony logic 164 may process audio data received from the new audio source in a similar manner as discussed above. - With respect to an audio source scan request, the
control logic 165 may coordinate with the A/V logic 161 to obtain audio data from an audio source for a predetermined scan time and then obtaining audio data from a next audio source. Thecontrol logic 165 may send atuning request 314 after the predetermined scan time has elapsed instructing the A/V logic 161 to proceed to obtain audio data from a next audio source. In servicing the scan request, thedistribution logic 160 may continue to obtain, process, and distribute audio data from various audio sources until a stop indication is received from the local user, e.g., via a service code entered by the local user and sent as DMTF tones 310. Then, thecontrol logic 165 may forego sending atuning request 314 upon expiration of the predetermined scan time. -
Figure 4 shows a timing example 400 for terminating distribution of HD audio. The timing example 400 inFigure 4 includes aphone 141 anddistribution logic 160 that includestelephony logic 164,control logic 165, A/V logic 161, andtranscoder logic 163. Thedistribution logic 160, such as thetelephony logic 164,control logic 165, A/V logic 161, andtranscoder logic 163, may obtain, process, and distribute audio data as an HD audio data stream as discussed above inFigure 3 . And as seen inFigure 4 , thetelephony logic 164 may send decodedHD audio data 326 to thephone 141 for playback. Adistribution device 110 ordistribution logic 160 may terminate distribution of HD audio upon receiving a termination indication. For example, the local user may send a termination indication to adistribution device 110 through thephone 141. In one example, the local user may generate or send a termination indication by hanging up thephone 141, placing a receiver of thephone 141 in an on-hook position, which may send a termination signal to thetelephony logic 164. Alternatively, thedistribution device 110 may identify a termination indication as a predetermined string of key presses and corresponding DMTF tones sent from thephone 141. - The
telephony logic 164 may identify when thephone 141 enters an on-hook state, e.g., when the local user hangs up thephone 141. InFigure 4 , thephone 141 sends an onhook signal 410 to thetelephony logic 164 when thephone 141 identifies an on-hook state. By receiving the onhook signal 410, thetelephony logic 164 may identify a termination indication. Then, thetelephony logic 164 may send aservice termination message 412 to thecontrol logic 165, which may indicate that thetelephony logic 164 has identified or received a service termination indication. - Upon receiving a
service termination message 412, thecontrol logic 165 may stop particular portions of thedistribution logic 160 from obtaining, transcoding, processing, or transmitting audio data. For example, thecontrol logic 165 may instruct any combination of theAN logic 161,transcoder logic 163, ortelephony logic 164 to cease distribution of an HD audio stream. With respect to theAN logic 161, thecontrol logic 165 may send a receivetermination message 141 to the A/V logic 161 instructing the A/V logic 161 to stop obtaining audio data. In response, the A/V logic 161 may configure one or more communication resource to cease receiving audio data, e.g., from a specified audio source or other audio source. When the A/V logic 161 obtains audio data through a streaming client, theAN logic 161 may instruct the streaming client to cease receiving data, for example, by stopping execution of the streaming client or application. Similarly, when the A/V logic 161 obtains audio data through additional communication logic, e.g., thebroadband logic 162, the A/V logic 161 may instruct the additional communication logic to cease receiving audio data. - Additionally or alternatively, the
control logic 165 may send atranscoding termination message 416 to thetranscoder logic 163, which may instruct thetranscoder logic 163 to stop transcoding audio data to an HD audio codec for playback by thephone 141. In one example, thecontrol logic 165 may also send a distribution termination instruction to thetelephony logic 164 to cease sending decodedHD audio data 326 across a local network, e.g., to thephone 141. - As discussed above, a
distribution device 110 may distribute an HD audio stream to any number of electronic devices, e.g., phones, connected via one or more networks such as a local telephony network. When multiple phones in one or more networks are playing back an HD audio stream, e.g. in an off-hook state, thetelephony logic 164 may not identify a termination indication when an on-hook signal 410 is received from a first electronic device when other electronic devices are in an off-hook state. In one example, thetelephony logic 164 may identify a termination indication when an on-hook signal 410 is received from a last electronic device previously in an off-hook state (e.g., the only off-hook electronic device sends an on-hook signal 410). In other words, thetelephony logic 164 may not identify a termination indication when thetelephony logic 164 receives an onhook signal 410 while at least one other electronic device is in an off-hook state or playing back HD audio. -
Figure 5 shows an example oflogic 500 that may be implemented as hardware, software, or both. For example,distribution logic 160 may implement thelogic 500, e.g., through any combination of the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, orcontrol logic 165 and across any number of devices. - The
distribution logic 160 may obtain an HD audio service request (502) from a communication device, e.g., thephone 141. The communication device may be configured to playback HD audio data. The communication device may send the service request in any number of ways. For example, thedistribution logic 160 may receive a service request in the form of DMTF tones sent by a communication device communicatively linked to thedistribution logic 160. Thedistribution logic 160 may then identify when the service request corresponds to an HD audio distribution service (504), such as by identifying that a portion of the service request corresponds to a particular string of DMTF tones or particular signal. In one example, thedistribution logic 160 may access a database or table to correlate the service request, e.g., DMTF tone string, with a distribution service. - The
distribution logic 160 may obtain additional service information related to the HD audio service request (506), such as by extracting a portion of the service request. In particular, thedistribution logic 160 may obtain an audio selection from the service request, through which thedistribution logic 160 may identify a specified audio source (508). Thedistribution logic 160 may determine that a string of DMTF tones specify a broadcast audio or A/V channel as a specified audio source. Or, thedistribution logic 160 may extract a portion of the service request as a table key to lookup an associated audio source, e.g., an IP-based audio source such as an audio streaming website or service. - Upon identifying the specified audio source, the
distribution logic 160 may tune a communication resource according to the specified audio source (510). Thedistribution logic 160 may tune a communication interface or AN receiver to receive data from a particular channel, e.g., a broadcast channel. Or, thedistribution logic 160 may invoke a streaming client or application to obtain audio information from a specified audio source. Thedistribution logic 160 may also determine an initial audio codec associated with audio data received (or to be received) from the specified audio source (512). Then, thedistribution logic 160 may obtain initial audio data from the specified audio source (514), e.g., via the tuned communication resource. - The
distribution logic 160 may obtain initial audio data that is of a higher quality level than HD audio data, HD Voice data, or wideband audio data. The initial audio data may be higher in quality level according to any number of quality metrics, including frequency range, encoding format, compression format or rate, sampling rate, quantization error, data bit depth, or others. As one example, thedistribution logic 160 may obtain initial audio data broadcasted from an A/V source and encoded according to a super wideband audio codec, such as AAC or AC-3. - The
distribution logic 160 may transcode the initial audio data (516) to an audio format supported by the communication device, such as to an HD audio codec supported by the communication device (e.g., an HD Voice codec such as G.722). Thedistribution logic 160 may transcode the initial audio data into a lower quality level, such as when the initial audio data is of a higher quality level (e.g., super wideband codec) than an HD audio quality level (e.g., HD Voice). Then, thedistribution logic 160 may distribute the transcoded audio data, e.g., HD audio data, across a communication network to the communication device for playback. In one example, thedistribution logic 160 may decode the transcoded HD audio data for communication across the communication network (518), such as a local analog telephony network. When thedistribution logic 160 communicates with the communication device across an analog telephony network, thedistribution logic 160 may decode the HD audio data for communication across an analog communication interface to the analog telephony network (e.g., for communication across an RJ jack). As another example, when thedistribution logic 160 communications with the communication device across an IP network, thedistribution logic 160 may encode the HD audio data into packet format for transmission via the IP network. After decoding or encoding, thedistribution logic 160 may transmit the HD audio data across the communication network to the communication device (520). - The
distribution logic 160 may continue to obtain, process, and distribute audio data from the specified audio source to the communication device (514-520) until receiving an additional service request (524). In one example, thedistribution logic 160 may receive a service request specifying an audio selection change, e.g., an audio source change. The audio selection change may specify a new audio source to replace the specified audio source previously received by thedistribution logic 160. Thedistribution logic 160 may identify the new audio source (526), tune a communication resource to receive audio data from the new audio source, determine an initial codec associated with audio data from the new audio source, and obtain, process, and distribute audio data from the new audio source (508-520) instead of the previously specified audio source. - In another example, the
distribution logic 160 may identify a termination indication as the additional service request, including any of the termination indications or identification methods discussed above inFigure 4 . In response, the distribution logic may stop receiving audio data from an audio source (528), stop transcoding obtained audio data (530), stop distributing transcoded audio data (532), or any combination thereof. -
Figure 6 shows an example of asystem 600 for forwarding HD audio to aremote communication device 610. Theexemplary system 600 or any portion thereof may share any number of common characteristics with respect toFigure 1 above, including with respect to thedistribution device 110,communication network 115, audio sources 121-128,network 135, and thephone 141. Thedistribution device 110 may include acommunication interface 150 anddistribution logic 160. Thedistribution logic 160 may include A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, andcontrol logic 165. In the example inFigure 6 , thetelephony logic 164 also includes mixinglogic 620. The mixinglogic 620 may combine multiple audio streams into a mixed audio stream. - In
Figure 6 , thesystem 600 also includes aremote communication device 610. Theremote communication device 610 may be any electronic or communication device communicatively linked to thedistribution device 110, e.g., via thecommunication network 115. For example, the remote communication device may be a cellular telephone, portable music player, VoIP phone, stereo, remote telephone, or other device. Theremote communication device 610 may also support playback of HD audio data. As described in greater detail below, thedistribution logic 160 may obtain audio data from a specified audio source and distribute audio data to theremote communication device 610 as HD audio data. -
Figure 7 shows a timing example 700 of forwarding HD audio to aremote communication device 610. The timing example 700 includes aphone 141 communicatively coupled todistribution logic 160, such as through a local network. Thedistribution logic 160 in the timing example 700 includestelephony logic 164,control logic 165, A/V logic 161, andtranscoder logic 163. Thedistribution logic 160 may initiate an HD audio forwarding process to theremote communication device 610 upon receiving an initiation indication, e.g., through an HD audio service request. As one example, the local user may press a predetermined combination of keys on thephone 141 specifying an audio forwarding service to the remote communication device 610 (e.g., the "#" key followed by a particular service code). Thephone 141 may then sendDMTF tones 710 corresponding with the key presses to thetelephony logic 164, whereupon thetelephony logic 164 may determine a service code associated with the DMTF tones 710. Thetelephony logic 164 may also identify a specified audio source from a selected portion of the DTMF tones 710, e.g., as an audio selection from a predetermined portion of the DMTF tones 710. - The
telephony logic 164 may determine that the HD audio service indicated in a service request, e.g., DMTF tones 710, corresponds to a forwarding service to a remote communication device. In response, thetelephony logic 164 may identify the remote destination device. Thetelephony logic 164 may send a destination device identification request to the local user. In one example seen inFigure 7 , thetelephony logic 164 sends a dial tone signal 712 to thephone 141, which may prompt the local user to input identifying information associated with theremote communication device 610, such as the phone number of theremote communication device 610. The local user may enter key presses to thephone 141 which may be sent to thetelephony logic 164 as DMTF tones 714. Thetelephony logic 164 may then identify theremote communication device 610 through the DMTF tones 714, e.g., by identifying the phone number of theremote communication device 610. In other examples, thetelephony logic 164 may identify a remote communication device in other ways, such as sending a prerecorded prompt to thephone 141 requesting the destination phone number or identifying information from the local user. - The
telephony logic 164 may generate and send aservice indication message 716 to thecontrol logic 165, which may specify an audio distribution request to theremote communication device 610, a specified audio source, and identification information of theremote communication device 610. In response, thecontrol logic 165 may send an initiatecall instruction 718 to thetelephony logic 164. Thetelephony logic 164 may then attempt to establish a call connection with theremote communication device 610. Thetelephony logic 164 may attempt to establish the call connection through a communication format or protocol supported by thetelephony logic 164. Thetelephony logic 164 may also utilize any supported communication network to establish the call connection with theremote communication device 610. Additionally, thetelephony logic 164 may utilize other communication logic, e.g., thebroadband logic 162, to establish the call connection as well. For example, thetelephony logic 164 may utilize a VoIP protocol to establish a connection with theremote communication device 610 using any network supporting VoIP communication, including as examples, a wireless IP network, cable network, PSTN network, or others. Upon establishing a call connection with theremote communication device 610, thetelephony logic 164 may send acall confirmation indication 620 to thecontrol logic 165. - The
control logic 165, A/V logic 161, andtranscoder logic 163 may then obtaininitial audio data 322 from the specified audio source and transcode theinitial audio data 322 intoHD audio data 324, as described above. For example, thecontrol logic 165, A/V logic 161, andtranscoder logic 163 may exchange messaging such as atuning request 314, tuningconfirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above. Thetranscoder logic 163 may send a transcoded audio data, e.g., theHD audio data 324, to thetelephony logic 164. - The
telephony logic 164 may encode or decode the transcoded audio data for transmission to theremote communication device 610, thephone 141, or both. Thetelephony logic 164 may transmit the HD audio data 732 to theremote communication device 610 according to any communication protocol or format supported by thetelephony logic 164, theremote communication device 610, or both. For example, thetelephony logic 164 may encode and transmit the HD audio data 732 to theremote communication device 610 as VoIP HDaudio data packets 734 across a communication network supporting VoIP communications. In doing so, thetelephony logic 164 may use communication resources, such as acommunication interface 150 orbroadband logic 162, to interface with the IP network. In one example, thetelephony logic 164 may also decode and transmit the decoded HD audio data 736 across a local network, e.g., an analog telephony network, communicatively linking thephone 141. -
Figure 8 shows an example of logic that may be implemented as hardware, software, or both. For example,distribution logic 160 may implement thelogic 800, e.g., through any combination of the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, orcontrol logic 165 and across any number of devices. - The
distribution logic 160 may obtain a service request (802) from a communication device, e.g., thephone 141. Thedistribution logic 160 may obtain an HD audio service request in any of the ways described above. Thedistribution logic 160 may then examine the service request and determine a service associated with the service request. Thedistribution logic 160 may identify that a received audio service request specifies an HD audio forwarding service (804), for example by identifying a predetermined string of DMTF tones received from thephone 141. Thedistribution logic 160 may also identify an audio source specified in the HD audio forwarding request (806). - The
distribution logic 160 may identify a destination communication device (808) associated with HD audio forwarding service request. Thedistribution logic 160 may identify the destination communication device in any number of ways. In one example, thedistribution logic 160 may identify the destination communication device by obtaining a phone number associated with the destination device. For example, thedistribution logic 160 may transmit a dial-tone signal to thephone 141 to receive a phone number of the destination device from the local user. Alternatively, the service request may include identifying information of the destination communication device (e.g., the phone number of the destination device or other identifying information). In this example, thedistribution logic 160 may identify the destination communication device by extracting identifying information from a portion of the service request, e.g., a selected portion of a DMTF tone string sent from thephone 141. - The
distribution logic 160 may attempt to establish a connection with the destination communication device (810). When the destination communication device is a phone device, thedistribution logic 160 may initiate a call with the remote device using the obtained phone number. For example, thedistribution logic 160 may includetelephony logic 164 that may provide telephony functionality, including performing telephone calls via supported communication protocols and interfaces. When thedistribution logic 160 fails to establish a call connection with the destination communication device (812), thedistribution logic 160 may forego performing any additional actions to handle the HD audio forwarding service. Thedistribution logic 160 may also send a failed connection indication to thephone 141. - When the
distribution logic 160 successfully establishes a connection with the destination communication device (812), thedistribution logic 160 may tune a communication resource according to the specified audio source (814), determine an initial codec (814), obtain initial audio data from the specified audio source (816), and transcode the initial audio data to HD audio data (820) in any of the ways described above. Then, thedistribution logic 160 may distribute the HD audio data to the communication device originating the service request, forward the HD audio data to the destination communication device, or both. To do so, thedistribution logic 160 may encode or decode the HD audio data for transmission across a communication interface or protocol supported by the destination communication device (822), e.g., the protocol used to establish the call connection with the remote communication device. Then, thedistribution logic 160 may transmit the encoded or decoded HD audio data to the remote communication device (824). In one example, thedistribution logic 160 may transmit an HD audio data stream to the destination communication device using the call connection. Thedistribution logic 160 may also decode the HD audio data and send the decoded HD audio data to the communication device as well. - The
distribution logic 160 may continue to forward the HD audio data to the remote communication device and/or distribute the HD audio data to the communication until receiving further control signaling (826). For example, thedistribution logic 160 may receive an audio selection change, which may specify a new audio source. Thedistribution logic 160 may identify the new audio source (828), tune one or more communication resources to receive audio data from the new audio source, determine an initial code associated with audio data from the new audio source, and obtain, process, and forward audio data from the new audio source (814-824) to the destination device, originating device, or more. - The
distribution logic 160 may also identify a service termination indication from additional signaling (826). In one example, thedistribution logic 160 may identify a termination indication as an explicit signal (e.g., a predetermined DMTF tone string) sent from a communication device communicatively linked to thedistribution logic 160. As another example, thedistribution logic 160 may identify additional signaling from the originating communication device or destination communication device in the form of receiving an on-hook signal. In one example, thedistribution logic 160 may identify a termination indication when receiving an on-hook signal from the destination communication device, e.g., aremote communication device 610. In this example, thedistribution logic 160 may continue to obtain, process, and forward audio data to the destination communication device when the communication device sends an on-hook signal, e.g., hangs up. Alternatively, thedistribution logic 160 may identify a termination indication when both the originating communication device and destination communication device send an on-hook signal. Upon obtaining a termination indication, thedistribution logic 160 may cease audio data receiving activity (828), cease audio data transcoding activity (830), cease audio distribution and/or forwarding activity (832), or any combination thereof. As part of ceasing audio distribution and/or forwarding activity, thetelephony logic 164 may also terminate the call connection with the destination communication device, e.g., theremote communication device 610. -
Figure 9 shows a timing example 900 of sharing HD audio during an active call connection. The timing example 900 includes aremote communication device 610, aphone 141, anddistribution logic 160 that includes thetelephony logic 164,control logic 165, A/V logic 161, andtranscoder logic 163. Theremote communication device 610,phone 141, anddistribution logic 160 may communicate across any number of communication networks of any type, format, topology, or format. In the specific example inFigure 9 , thephone 141 communicates with thedistribution logic 160 across an analog local telephone network, such as an RJ-11 analog telephone network. InFigure 9 , theremote communication device 610 communicates with thedistribution logic 160 across any number of IP networks interconnecting adistribution device 110 implementing thedistribution logic 160 with theremote communication device 610. - The timing example 900 may depict initiation of a real-time HD audio sharing service during an active call connection between the
phone 141 and theremote communication device 610. As part of an active call connection, thephone 141 may send and receive a voice signal from thetelephony logic 164 as ananalog voice signal 902. Theremote communication device 610 may send and receive a voice signal from thetelephony logic 164 as VoIP packets 906. During the active call connection, a local user may initiate a real-time HD audio sharing service by sending a service request to thedistribution logic 160. For example, a local user may enter key presses on thephone 141, which thephone 141 may send to thetelephony logic 164 as DMTF tones 910. Alternatively, a remote user may send a HD audio service request to thedistribution logic 160 as well, including by entering key presses through theremote communication device 610 for transmission to thetelephony logic 164 as DMTF tones. The HD audio service request may specify a real-time HD audio sharing service and may include an audio selection specifying an audio source to obtain audio data from. - The
telephony logic 164 may receive the DMTF tones 910 and determine a service code corresponding to the service request. Thetelephony logic 164 may also determine a specified audio source from the service request, e.g., specified by a particular portion of the DMTF tones 910. Then, thetelephony logic 164 may generate and send aservice indication message 912 to the control logic 615, which may specify real-time audio sharing request and include a specified audio source. - The
control logic 165, A/V logic 161, andtranscoder logic 163 may then obtain initial audio data 730 from the specified audio source and transcode theinitial audio data 322 intoHD audio data 324 similarly as described inFigure 3 above. For example, thecontrol logic 165, A/V logic 161, andtranscoder logic 163 may exchange messaging such as atuning request 314, tuningconfirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above. Thetranscoder logic 163 may send a transcoded audio data, e.g., theHD audio data 324, to thetelephony logic 164. - In one example, the
telephony logic 164 may include mixinglogic 620 that may mix theHD audio data 324 with a voice signal. Thetelephony logic 164 may transmit a mixed signal to thephone 141, to theremote communication device 610, or to both. For example, during the active call connection, thetelephony logic 164 may receive an analog voice signal 920 from thephone 141 for transmission to theremote communication device 610. Thetelephony logic 164 may mix theanalog voice signal 920 with decoded HD audio data and re-encode the mixed signal for transmission to theremote communication device 610 asmixed VoIP packets 922. - During the active call connection, the
telephony logic 164 may also receive a voice signal from theremote communication device 610 asVoIP packets 924 for transmission to thephone 141. Thetelephony logic 164 may decode theHD audio data 324 andVoIP packets 924 for transmission across an analog telephony network. Thetelephony logic 164 may also mix the decoded HD audio data with the decoded VoIP packets into amixed analog signal 926 for transmission to thephone 141. - Thus, as described above, the
distribution logic 160 may share, e.g., inject, the audio content of a specified audio source into an active call between thephone 141 and theremote communication device 610. Thedistribution logic 160 may continue to perform the real-time audio sharing service until thedistribution logic 160 identifies a termination indication. For example, thedistribution logic 160 may identify a termination indication when thetelephony logic 164 receives an on-hook signal from theremote communication device 610, thephone 141, or both. Or thedistribution logic 160 may identify a termination indication upon receiving a predetermined termination signal, e.g., via DMTF tones, theremote communication device 610, thephone 141, or both. - The distribution.
logic 160 may also receive and handle an audio source change request while performing the HD audio sharing service, e.g., via a DMTF tone signal sent by theremote communication device 610 or thephone 141. In response, thedistribution logic 160 may obtain, process, and distribute audio data from a new audio source as specified by the audio change request. -
Figure 10 shows an example oflogic 1000 that may be implemented as hardware, software, or both. For example,distribution logic 160 may implement thelogic 1000, e.g., through any combination of the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, orcontrol logic 165 and across any number of devices. - The
distribution logic 160 may obtain a service request (1002) during an active call connection. Thedistribution logic 160 may obtain the service request from any communication device participating in the active call connection, such as thephone 141 or theremote communication device 610. The service request may be obtained in any of the ways discussed above, e.g., as DMTF tones. Thedistribution logic 160 may examine the service request and determine a service associated with the service request. Thedistribution logic 160 may identify that the received audio service request specifies a HD audio sharing service during an active call connection (1004). In one example, thedistribution logic 160 may identify that a selected portion of the DMTF tones includes a predetermined string of DMTF tone values corresponding to the HD audio sharing service. The service request may also include an audio selection, whichdistribution logic 160 may identify as a predetermined portion of the service request. Thedistribution logic 160 may identify an audio source specified in the service request (1006) according to the audio selection. - The
distribution logic 160 may tune a communication resource according to the specified audio source (1008), determine an initial codec (1010), obtain initial audio data from the specified audio source (1012), and transcode the initial audio data to HD audio data (1014) in any of the ways described above. Then, thedistribution logic 160 may share the HD audio content by mixing (e.g., injecting) the HD audio data into one or more voice signals transmitted as part of the active call connection. Thedistribution logic 160 may obtain an incoming voice signal from a first communication device in the active call connection (1016) and mix the HD audio data and the received incoming voice signal into an outgoing voice signal directed to second a communication device participating in the active call connection (1018). Then, thedistribution logic 160 may encode and/or decode the mixed outgoing voice signal (1020) according to a communication network, type, protocol, medium, or other communication characteristic for communicating with the second communication device. Then, thedistribution logic 160 may transmit the mixed outgoing voice signal to the second communication device (1022). Thedistribution logic 160 may also perform a similar HD audio sharing process for an incoming voice signal received from the second communication device to transmit a mixed outgoing voice signal to the first communication device as well(1016-1022). In this way, thedistribution logic 160 may share an HD audio data stream from a specified audio source to any number of communication devices participating in the active call connection. - The
distribution logic 160 may continue to mix the HD audio data into the active call connection until receiving further control signaling (1024). Thedistribution logic 160 may receive a service request specifying an audio selection change, e.g., an audio source change. The audio selection change may specify a new audio source to replace the specified audio source previously received by thedistribution logic 160. Thedistribution logic 160 may identify the new audio source (1026), tune a communication resource to receive audio data from the new audio source, determine an initial code associated with audio data from the new audio source, and obtain, process, and share the audio data from the new audio source in the active call connection (1008-1022) instead of the previously specified audio source. - The
distribution logic 160 may also identify a service termination indication from additional signaling received from a communication device (1024). In one example, thedistribution logic 160 may identify a termination indication as an explicit signal (e.g., a predetermined DMTF tone string) received from any communication device participating in the active call connection. As another example, thedistribution logic 160 may identify additional signaling a participating communication device in the form of receiving an on-hook signal. Thedistribution logic 160 may identify a termination indication when receiving an on-hook signal any number of devices participating in the active call connection. As examples, thedistribution logic 160 may identify a termination indication when a predetermined number of communication devices participating in the active call connection send an on-hook signal or when the call connection ends. Upon obtaining a termination indication, thedistribution logic 160 may cease audio data receiving activity (1028), cease audio data transcoding activity (1030), cease audio mixing and sharing activity (1032), or any combination thereof. -
Figure 11 shows an example of asystem 1100 for time-shifting the distribution of HD audio. Time-shifting the distribution of HD audio may refer to delaying the distribution of obtained HD audio data for any number of reasons and in any number of circumstances. Theexemplary system 1100 or any portion thereof may share any number of common characteristics or elements with respect toFigures 1 and6 above, including with respect to thedistribution device 110,communication network 115, audio sources 121-128,network 135,phone 141, andremote communication device 610. InFigure 11 , thedistribution device 110 includes acommunication interface 150 and the time-shift logic 1120. The time-shift logic 1120 may include the A/V logic 161,broadband logic 162,transcoder logic 163, andtelephony logic 164, as described above. The time-shift logic 1120 may also include thecontrol logic 1130 andrecorder logic 1140 for time-shifting the distribution of HD audio. As seen inFigure 11 , thedistribution device 110 may also include amemory 1150, which may be used to store data, such as HD audio data. Therecorder logic 1140 may interface with thememory 1150 to control recording and forwarding of audio data in thememory 1150. - In operation, the time-
shift logic 1120 may time-shift the distribution of HD audio in multiple ways. As discussed below, the time-shift logic 1120 may initiate storage of HD audio into thememory 1150 in response to receiving a record indication and subsequently or concurrently forward stored HD audio data to any number of destination devices, such as theremote communication device 610 or thephone 141. -
Figure 12 shows a timing example 1200 of storing HD audio data. The timing example 1200 includes aphone 141 communicatively linked to time-shift logic 1120, e.g., through a local network. The time-shift logic 1120 may includetelephony logic 164,control logic 1130, A/V logic 161,transcoder logic 163, andrecorder logic 1140, as seen in the timing example 1200. In operation, the time-shift logic 1120 may initiate an HD audio storing process upon receiving a record indication, such as receiving an HD audio service request specifying an audio data storing service. For example, the local user may press a predetermined combination of keys on thephone 141 specifying an audio record service. Thephone 141 may then sendDMTF tones 1210 corresponding to the key presses to thetelephony logic 164. Thetelephony logic 164 may determine a service code associated with the DMTF tones 710, which may specify an HD audio recording service. Thetelephony logic 164 may also identify a specified audio source from a selected portion of the DTMF tones 1210, e.g., an audio selection string. In one example, a portion of the service request may also indicate a record duration that may specify an audio recording duration. The audio recording duration may include or represent a time length for recording audio data (e.g., hours, minutes, seconds, etc.). Thetelephony logic 164 may identify the record duration from the service request by extracting a predetermined portion of the DMTF tones 1210. - The
telephony logic 164 may generate and send aservice indication message 1212 to thecontrol logic 1130, which may specify any combination of an audio recording request, a specified audio source, and a record duration. Thecontrol logic 1130, A/V logic 161, andtranscoder logic 163 may then obtaininitial audio data 322 from the specified audio source and transcode theinitial audio data 322 intoHD audio data 324 as similarly described inFigure 3 above. For example, thecontrol logic 1130, ANlogic 161, andtranscoder logic 163 may exchange messaging such as atuning request 314, tuningconfirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above. - The configuration request 318 may specify a destination indication to send transcoded audio data. For example, when the
control logic 1130 identifies an HD audio record service, thecontrol logic 1130 may generate a configuration request 318 that specifies therecording logic 1140 as a destination for sending transcoded audio data. Upon configuration, thetranscoding logic 163 may send a configuration confirmation 1214 to thecontrol logic 1130, which may indicate thetranscoder logic 163 has completed a specified configuration, including a configuration to send transcoded audio data to the destination indication specified in the configuration request 318. - The
control logic 1130 may send arecord start message 1220 to therecorder logic 1140, which may provide a record instruction to therecorder logic 1140. Therecorder logic 1140 may receive theHD audio data 1222 for recording, e.g., into thememory 1150. Upon initiating the audio recording, thecontrol logic 1130 may send a recording initiation indication1224 to thetelephony logic 164, whereupon thetelephony logic 164 may provide a recording initiation confirmation to thephone 141. Thetelephony logic 164 may send the recording initiation confirmation in any number ways, such as via a pre-recorded audio message, a predetermined sound or audio signal, or others. As seen inFigure 11 , thetelephony logic 164 may send a dial-tone signal 1226 as the recording initiation confirmation. At this point, a local user may recognize that the time-shift logic 1120 has initiated the requested audio recording process and subsequently hang up thephone 141. - The
recorder logic 1140 may continue to recordHD audio data 1222 received from thetranscoder logic 163 until obtaining a stop indication, such as receiving arecording stop message 1228 sent from thecontrol logic 1130. Thecontrol logic 1130 may send therecording stop message 1228 to therecorder logic 1140 after a predetermined amount of time has elapsed, e.g., as specified by a record duration extracted from the service request. In the timing example 1200, the record duration length1230 between when therecorder logic 1140 starts and stops recording HD audio data may correspond to a record duration value specified the HD audio recording service request. In an alternative example, therecorder logic 1140 may receive the record duration value through therecord start message 1220. Then, therecorder logic 1140 may stop recordingHD audio data 1222 after the amount of time specified by the record duration elapses. Thus, the time-shift logic 1120 may obtain and record HD audio data for a specified record duration and from a specified audio source. -
Figure 13 shows a timing example 1300 of forwarding stored HD audio data. The timing example 1300 includes thephone 141, which may be communicatively linked to the time-shift logic 1120. The time-shift logic 1120 may includetelephony logic 164,control logic 1130, A/V logic 161,transcoder logic 163, andrecorder logic 1140, as seen in the timing example 1300. In operation, the time-shift logic 1120 may forward (e.g., send) stored HD audio data to any number of destination devices. The timing example 1300 depicts an exemplary process through which the time-shift logic 1120 may send stored HD audio to theremote communication device 610. The time-shift logic 1120 may also send stored HD audio data to multiple remote communication devices in a similar manner. Alternatively or additionally, the time-shift logic 1120 may send the stored HD audio to any number of electronic devices connected via a local network as well, such as thephone 141. - The time-
shift logic 1120 may initiate a stored HD audio forwarding process upon receiving a forwarding indication, e.g., upon receiving an HD audio service request that specifies a stored HD audio forwarding service. InFigure 13 , the local user may press a predetermined combination of keys on thephone 141 that may specify the stored audio forwarding service. Thephone 141 may then sendDMTF tones 1210 corresponding to the key presses to thetelephony logic 164. Then, thetelephony logic 164 may determine a service code associated with the DMTF tones 710, and may thus identify the HD audio recording service. - Upon determining the service request corresponds to a stored HD audio forwarding service, the
telephony logic 164 may identify additional service information with respect to the stored HD audio forwarding service, such as a destination device. The destination device may refer to an electronic device the time-shift logic 1120 is to send the stored HD audio to. The destination device may be characterized by any number of identifying information, such as a phone number, speed dial number, IP address, any form of device code or categorization, or others. Thetelephony logic 164 may obtain identifying information associated with the destination device in various ways. In one example, thetelephony logic 164 may send a dial-tone signal 1312 to thephone 141, for play back to the local user. The local user may enter key presses, and thephone 141 may subsequently sendDMTF tones 1314, that may identify the destination device. Alternatively, the service request initially sent by the local user may include identifying information associated with the destination device. In the timing example 1300 inFigure 13 , thetelephony logic 164 receives an identifying phone number specifying theremote communication device 610 as the destination device. - The time-
shift logic 1120 may also obtain a stored audio selection, which may specify a particular stored HD audio stream or data. In one example, the time-shift logic 1120 may obtain a stored audio selection through a user query. For example, thetelephony logic 164 and/orcontrol logic 1130 may request identification, e.g., a listing, of available stored HD audio streams or data from therecord logic 1140. Then, thetelephony logic 164 may provide a stored HD audio options indication to thephone 212 for playback to the local user. The stored HD audio options indication may identify stored HD audio available for forwarding. For example, the stored HD audio options may list one or more HD audio streams or recordings stored in thememory 1150, allowing the local user to select one of the audio options as the stored audio selection. The stored HD audio options indication may also include audio identifying information for each stored HD audio stream or data, including as examples, an audio source the stored HD audio data was obtained from, a recording duration, a recording date, a recording description, or other information. Thetelephony logic 164 may obtain the stored audio selection from the local user, e.g., via a DMTF tone signal from thephone 141 corresponding to a key press of the local user. - Upon identifying additional service information with respect to the stored HD audio forwarding service, the
telephony logic 164 may generate and send aservice indication message 1316 to thecontrol logic 1130. Theservice indication 1316 may specify the requested stored HD audio forwarding service and additional service information. Theservice indication 1316 may include the destination device or identifying information associated with the destination device. InFigure 13 , theservice indication 1316 may include a phone number value identifying theremote communication device 610. Theservice indication 1316 may also include the stored audio selection. - The time-
shift logic 1130 may also obtain supplemental audio data to send with stored HD audio data. For example, thetime shift logic 1130 may obtain supplemental audio data describing the stored HD audio data, e.g., by generating a supplemental audio stream including any of the audio identifying information described above. The time-shift logic 1130 (e.g., any combination of thetelephony logic 164,control logic 1130,transcoder logic 163, and recorder logic 1140) may also obtain supplemental audio data from a local user requesting the stored HD audio forwarding service. For example, the time-shift logic 1120 may obtain and/or record an audio message from the local user (e.g., a user greeting) that the time-shift logic 1120 may forward as a preamble prior to sending the stored HD audio data to the destination device. - After receiving the
service indication 1316 and optionally obtaining supplemental audio data, thecontrol logic 1130 may establish a call connection with the destination device, e.g., theremote communication device 610. To do so, thecontrol logic 1130 may send an initiatecall message 1318 to thetelephony logic 164, whereupon thetelephony logic 164 may attempt to establish a call connection with theremote communication device 610. InFigure 13 , thetelephony logic 164 attempts to establish a call connection by initiating a phone call using the phone number of theremote communication device 610. If thetelephony logic 164 is unable to establish a call connection with theremote communication device 610, the time-shift logic 1120 may abort the stored HD audio forwarding service, e.g., by foregoing further action and/or alerting the local user of the unsuccessful call connection attempt with theremote communication device 610. When thetelephony logic 164 establishes a successful call connection with the remote communication device 610 (e.g., when theremote communication device 610 accepts an incoming call request from the telephony logic 164), thetelephony logic 164 may send acall confirmation 1320 to thecontrol logic 1130 indicating the successful call connection. - After receiving the
call confirmation 1320, thecontrol logic 1130 may forward stored HD audio data to theremote communication device 610, for example through the established call connection. In one example, the time-shift logic 1130 may send obtained supplemental audio data, such as a recorded preamble or greeting message from the local user, prior to sending the stored HD audio data. Thecontrol logic 1130 may also instruct therecorder logic 1140 to begin sending stored HD audio data through a forwardingstart message 1322. The forwardingstart message 1322 may include a stored audio selection indication, which may specify a particular HD audio stream or data for therecorder logic 1140 to retrieve from a memory to forward. Then, therecorder logic 1140 may retrieve the specified stored HD audio data and send theHD audio data 1324 to thetelephony logic 164. To distribute theHD audio data 1324 to theremote communication device 610, thetelephony logic 164 may encode or decode theHD audio data 1324 into a communication format supported by the call connection. Thetelephony logic 164 may then send theHD audio data 1326 to theremote communication device 610 via the call connection. Thetelephony logic 164 may also send the stored HD audio selection to the local user device that initiated the audio forwarding service, such as thephone 141. To do so, thetelephony logic 164 may decode theHD audio data 1324 into a communication format supported by thephone 141 and send the decoded HD audio data 1328 to thephone 141. - The time-
shift logic 1120 may continue to send the stored HD audio data to theremote communication device 610,phone 141, or both, until identifying a termination indication. The time-shift logic 1120 may identify a termination indication in any number of ways, including through any of the termination indications discussed above. As examples, the time-shift logic 1120 may identify a termination indication when theremote communication device 610 terminates the call connection, such as by sending a termination signal (e.g., on-hook signal) to thetelephony logic 164. Or, the time-shift logic 1120 may identify a termination indication when the sending of the specified stored audio selection has completed. Thecontrol logic 1130 may identify when forwarding of the stored HD audio selection has completed, e.g., when a recording duration has elapsed or when receiving a forwarding complete indication from therecorder 1140 that the end of a specified stored HD audio stream or data has been reached. - In response to identifying a termination indication, the
control logic 1130 may send a forwarding completedmessage 1330 to therecorder logic 1140, which may instruct therecorder logic 1140 to cease sending storedHD audio data 1324. Then, thecontrol logic 1130 may send a terminatecall message 1332 to thetelephony logic 164, whereupon thetelephony logic 164 may terminate the call connection with theremote communication device 610. Then, thetelephony logic 164 may send atermination confirmation 1334 to thecontrol logic 1130, which may conclude the stored HD audio forwarding service. -
Figure 14 shows an example oflogic 1400 that may be implemented as hardware, software, or both. For example, the time-shift logic 1120 may implement thelogic 1400, e.g., through any combination of theAN logic 161,broadband logic 162,transcoder logic 163,telephony logic 164,control logic 1130, orrecorder logic 1140, and across any number of devices. - The time-
shift logic 1120 may obtain a service request (1402) in any of the ways discussed above, e.g., as DMTF tones sent from thephone 141 operated by a local user. The time-shift logic 1120 may examine the service request and determine a service associated with the service request (1404). As examples, thetime shift logic 1120 may determine that the obtained (e.g., received) service request specifies an HD audio storing service or a stored HD audio forwarding service. - When the service request specifies an HD audio storing service, the time-
shift logic 1120 may identify an audio source from which to obtain and store audio data (1406). The time-shift logic 1120 may identify the audio source from a portion of service request, which may specify an audio source (e.g., a broadcast channel number, streaming source identification code, etc.) to record. The time-shift logic 1120 may also identify a record duration (1406) by examining a predetermined portion of the service request specifying a recording duration value. In an alternative example, the time-shift logic 1120 may send a query to the local user, e.g., via thephone 141, prompting the local user to provide a specified audio source, record duration, or both. - Then, the time-
shift logic 1120 may obtain audio data from the specified audio source by, for example, tuning a communication resource to receive audio data from the specified audio source (1408), determining an initial codec associated with the audio data (1410), and obtaining the audio data from the specified audio source (1412), e.g., through the tuned communication resource. The time-shift logic 1120 may transcode the received audio data into HD audio data (1414) and store the HD audio data (1416) into a memory, e.g., an external memory or a memory embedded within a device implementing any portion of the time-shift logic 1120 or thememory 1150. - The time-
shift logic 1120 may continue to obtain and store HD audio data for a length of time equal to the record duration. Until the record duration time elapses (1418), the time-shift logic 1120 may continue to obtain audio data from the specified audio source, transcode the audio data into HD audio data, and stored the HD audio data in the memory. In one example, the time-shift logic 1120 may store the audio data obtained from the specified audio source without transcoding the audio data into HD audio data. In this example, the time-shift logic 1120 may associate a transcoding indication with the stored audio data, which may indicate the stored audio data was not transcoded into an HD audio format prior to storing in the memory. The transcoding indication may also include the initial audio codec associated with the stored audio data. Also, the time-shift logic 1120 may employ any number of compression techniques to the audio data or HD audio data when storing the data into the memory. After the time-shift logic 1120 has obtained audio data (HD or according to an initial audio codec) for the record duration, the time-shift logic 1120 may complete the HD audio recording process. - The time-
shift logic 1120 may also determined that an obtained service request specifies a stored HD audio forwarding service. In response, the time-shift logic 1120 may identify a stored audio selection (1420) and destination device (1422), such as through any of the ways discussed above. For example, the time-shift logic 1120 may obtain the stored audio selection as an explicit selection from the local user. The stored audio selection may include a time duration value associated with the stored audio selection. The time-shift logic 1120 may also obtain supplemental audio data (1424) to send with the stored audio selection. As discussed above, the supplemental audio data may include a pre-recorded or generated audio stream describing the stored audio selection, which may include any identifying information associated with the stored audio selection. Or the supplemental audio data may be a recorded audio greeting from the local user. - The time-
shift logic 1120 may attempt to establish a connection with the destination device (1426). When the connection attempt fails, the time-shift logic 1120 may stop the stored HD audio forwarding process and/or send a failed connection indication to the local user, e.g., via thephone 141. When the time-shift logic 1120 successfully establishes a connection with the destination device, the time-shift logic 1120 may forward HD audio data of the stored audio selection to the destination device (1428). In one example, the time-shift logic 1120 may transcode audio data retrieved from a memory when the audio data was not previously transcoded into HD audio data. Also, the time-shift logic 1120 may encode or decode an HD audio data stream retrieved from a memory into a communication format supported by the communication link to the destination device. The time-shift logic 1120 may also decode and forward HD audio data to a local device initiating the stored HD audio forwarding service as well. The time-shift logic 1120 may continue to forward the stored HD audio data to the destination device until identifying a termination indication (1430), which may take the form of any of the termination indications discussed above. -
Figure 15 shows a timing example 1500 of time-shifting the distribution of HD audio. The timing example 1500 includes thephone 141, which may be communicatively linked to the time-shift logic 1120, e.g., via a local analog network. The time-shift logic 1120 may include thetelephony logic 164,control logic 1130, A/V logic 161,transcoder logic 163, andrecorder logic 1140, as seen in the timing example 1500. In operation, the time-shift logic 1120 may time-shift the distribution of HD audio data upon identifying a time-shift indication. For example, and as seen in the timing example 1500, the time-shift logic 1120 may identify a time-shift indication when the time-shift logic 1120 receives an incoming call request during an HD audio distribution process. As described below, the time-shift logic 1120 may alert a local user of an incoming call and record the HD audio stream currently being distributed. In one instance, the time-shift logic 1120 may time-shift, e.g., delay, the distribution of the recorded HD audio until after a call between a remote communication device and a local phone device completes. - In the timing example 1500, an HD audio distribution process may occur prior to an incoming call request, e.g., via any of the HD distribution processes described above. While the distribution of HD audio distribution is in progress, the
telephony logic 164 may identify an incoming call request to a communication device linked to thetelephony logic 164, such as theincoming call request 1510 to thephone 141 from theremote communication device 610. In response to receiving theincoming call request 1510 during the HD audio distribution process, thetelephony logic 164 may send anincoming call notification 1512 to thecontrol logic 1130. Then, thecontrol logic 1130 may initiate a recording of the HD audio data currently being distributed until theincoming call request 1510 and/or subsequent call connection is resolved. - The A/
V logic 161 may continue to obtain initial audio data from the specified audio source of the HD distribution process and thetranscoder logic 163 may continue to transcode the initial audio data into HD audio data. During the time-shifting process, thetranscoder logic 163 may send the transcoded HD audio data to therecorder logic 1140 for recording instead of to thetelephony logic 164 for play back to the local user. To do so, thecontrol logic 1130 may send adestination transition indication 1514 to thetranscoder logic 163, which may instruct thetranscoder logic 163 to send transcodedHD audio data 1520 to therecorder logic 1140. Thecontrol logic 1130 may also send arecord start message 1516 to therecorder logic 1140, which may initiate storing ofHD audio data 1520 sent from thetranscoder logic 163 to therecorder logic 1140. - The
control logic 1130 may send arecording start confirmation 1522 to thetelephony logic 164, whereupon thetelephony logic 164 may send an incoming call indication to thephone 141, such as through thecall alert 1524. In one example, thetelephony logic 164 may send acall alert 1524 as a local ring tone to thephone 141, which may interrupt the previous HD audio distribution and alert the local user of theincoming call request 1510. The time-shift logic 1120 may cease the HD audio distribution until completion of the call request or connection. - When a local user accepts the
incoming call request 1510, thephone 141 may send a call acceptance indication, such as the acceptmessage 1526 inFigure 15 . Then, thetelephony logic 164 may support thecall connection 1534, by exchanging voice signals between thephone 141 and theremote communication device 610. To that end, thetelephony logic 164 may send and receive ananalog voice signal 1530 from thephone 141 and the VoIP packet voice signal 1532 from theremote communication device 610. Thetelephony logic 164 may identify a call termination indication, such as when theremote communication device 610 sends an on-hook signal ortermination signal 1536 to thetelephony logic 164. Then, thetelephony logic 164 may send acall termination notification 1538 to thecontrol logic 1130. - Upon identifying resolution of the
incoming call request 1510 orsubsequent call connection 1534, thecontrol logic 1130 may send aplayback start indication 1540 to therecorder logic 1140. Therecorder logic 1140 may send recordedHD audio data 1542 starting from a point when the previous HD audio distribution ceased, e.g., upon receiving theincoming call request 1510 and sending thecall alert 1524 to thephone 141. Therecorder logic 1140 may send the recordedHD audio data 1542 to thetelephony logic 164 for decoding and distribution to thephone 141 as decodedHD audio data 1544. Thephone 141 may play back the decodedHD audio 1544, thus resuming distribution of HD audio from a point where the distribution was interrupted by theincoming call request 1510. The time-shift logic 1120 may continue to time-shift the HD audio distribution (e.g., record and subsequently distribute) until identifying a distribution termination indication, such as receiving an on-hook signal or predetermined termination signal from thephone 141. -
Figure 16 shows an example oflogic 1600 that may be implemented as hardware, software, or both. For example, the time-shift logic 1120 may implement thelogic 1600, e.g., through any combination of the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164,control logic 1130, orrecorder logic 1140, and across any number of devices. - The time-
shift logic 1120 may identify an incoming call request (1602) from aremote communication device 610 directed to any communication device linked to the time-shift logic 1120, e.g., phone devices connected to the time-shift logic 1120 via a local analog phone network. In response, the time-shift logic 1120 may identify whether an audio distribution process is currently in progress, e.g., by identifying whether the time-shift logic 1120 or other interconnected logic (e.g., distribution logic 160) is currently distributing HD audio across. When an audio distribution process is not currently in progress, the time-shift logic 1120 may send a call alert signal (1604) to a communication device identified by the incoming call request and subsequently process a call connection (1606) between the remote communication device and the communication device. - When, the time-
shift logic 1120 determines that the incoming call request occurs during an audio distribution process, the time-shift logic 1120 may delay the distribution of the currently distributed audio stream, for example, until the incoming call request or a subsequent call connection completes. To that end, the time-shift logic 1120 may cease the distribution of HD audio data (1608), send a call alert signal (1610) to one or more communication devices identified by the incoming call request, and record HD audio data (1612) from the audio source that was distributed prior to receiving the incoming call request. The time-shift logic 1120 may also process a call connection (1614) between the remote communication device and the communication device identified by the incoming call request, e.g., a local communication device such as thephone 141. - The time-
shift logic 1120 may continue to record HD audio data corresponding to the previously distributed audio source and process the call connection until identifying a call termination indication (1616), such as upon receiving an on-hook signal fromremote communication device 610 or any other call termination indication. Then, the time-shift logic 1120 may distribute, e.g., playback, the recorded HD audio (1618) starting, for example, from the point the previous HD audio distribution process was interrupted by the incoming call request. In this way, the time-shift logic 1120 may resume distribution of HD audio data without skipping audio content as a result of the incoming call request during the previous HD audio distribution. The time-shift logic 1120 may also continue to record HD audio data from the specified audio source (1620) for subsequent distribution (1618), thereby time-shifting the distribution of the HD audio data. - The time-
shift logic 1120 may continue to time-shift the distribution of the interrupted HD audio data stream until identifying a distribution termination indication (1622), such as any of the distribution termination indications discussed above. For example, the time-shift logic 1120 may identify a termination indication upon receiving an on-hook signal from a communication device the HD audio data is distributed to. The time-shift logic 1120 may also end the HD audio time-shifting process under other time-shift termination circumstances as well, such as when the time-shift logic 1120 or other logic obtains an audio source change request, when the memory exceeds a memory capacity threshold, when the recorded audio duration exceeds a predetermined duration threshold, or under other termination circumstances. Thus, the time-shift logic 1120 may time-shift the distribution of HD audio data or an HD audio data stream to handle an incoming call request. -
Figure 17 shows an example of a system for sending HD audio as a ringback tone. A ringback tone may refer to an audio signal sent to and played back by a communication device while the communication device directs a call to a target communication device. Theexemplary system 1700 or any portion thereof may share any number of common characteristics or elements with respect toFigures 1 ,6 , and11 above, including with respect to thedistribution device 110,communication network 115, audio sources 121-128,network 135,phone 141, andremote communication device 610. InFigure 17 , thedistribution device 110 includes acommunication interface 150 and theringback logic 1720. Theringback logic 1720 may include the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164, andrecorder logic 1140, as described above. Theringback logic 1720 may also include thecontrol logic 1730 for sending HD audio as a ringback tone. As described in greater detail below, theringback logic 1720 may identify an incoming call from a remote communication device (e.g., the remote communication device 610), identify a ringback audio source, and send audio data from the ringback audio source to the remote communication device as a ringback tone. -
Figure 18 shows a timing example 1800 of sending live HD audio as a ringback tone. The timing example 1800 includes thephone 141, which may be communicatively linked toringback logic 1720, e.g., via an analog telephony network. Theringback logic 1720 may include thetelephony logic 164,control logic 1730, A/V logic 161, andtranscoder logic 163, as seen in the timing example 1800. In operation, theringback logic 1720 may send live HD audio as a ringback tone to a remote communication device sending an incoming call request. - The
remote communication device 610 may send anincoming call request 1810 to a requested communication device communicatively linked to theringback logic 1720, such as thephone 141. For example, InFigure 18 , thephone 141 connects to adistribution device 110 implementing theringback logic 1720 through a local analog phone network. Thetelephony logic 164 may identify and receive theincoming call request 1810, and in response send anincoming call notification 1812 to thecontrol logic 1730. Then, thecontrol logic 1730 may identify a ringback audio source to obtain a ringback tone for sending to theremote communication device 610. In one example, thecontrol logic 1730 may identify the ringback audio source as any audio source, e.g., a broadcast A/V channel, streaming audio, or any of the audio sources discussed above. - The ringback audio source may be specified or configured in any number of ways. For example, the
ringback logic 1720 may receive an audio service request that may specify a ringback audio source change service. Theringback logic 1720 may receive such a service request in any ways described above, e.g., via DMTF tones generated based on a local user's key presses. In another example, theringback logic 1720 may interface with an operator-provided web interface to receive ringback audio source changes. In each of these examples, a local user may specify, configure, or change a previously specified ringback audio source. - The
control logic 1730 may also identify a ringback audio source according to any number of ringback selection criteria. As examples, the ringback selection criteria may include time criteria which may specify a particular ringback audio source depending on the time-of-day, week, or month. The ringback selection criteria may include call identification criteria, which may specify a particular ringback audio source based on caller identification information of theremote communication device 610 sending the incoming call request. The ringback selection criteria may specify a particular ringback audio source according to a selected portion of the caller identification information associated with theremote communication device 610, e.g., with respect to the area code of theremote communication device 610. Or, the ringback selection criteria may specify a particular ringback audio source for specific phone number, thus allowing customization of the ringback audio source based on the identity or identification information of theremote communication device 610. Similar ringback selection criteria may include location-based criteria (e.g., GSP location info of the remote communication device 610) or any other criteria. In one example, the ringback selection criteria may be configurable, e.g., by a local user or by a network operator. - As one example in
Figure 18 , thecontrol logic 1730 may identify a ringback audio source as live audio data from a selected audio source and subsequently tune a communication resource to obtain audio data from the ringback audio source. Thecontrol logic 165, A/V logic 161, andtranscoder logic 163 may obtaininitial audio data 322 from the specified audio source and transcode theinitial audio data 322 intoHD audio data 324, as described above. For example, thecontrol logic 165, A/V logic 161, andtranscoder logic 163 may exchange messaging such as atuning request 314, tuningconfirmation 316, configuration request 318, and configuration confirmation 320 in a similar fashion as described above. Theringback logic 1720 may also obtain HD audio data from a streamed audio data using a streaming client as similarly described above. Thetranscoder logic 163 may send a transcoded audio data, e.g., theHD audio data 324, to thetelephony logic 164. - The
telephony logic 164 may encode or decode theHD audio data 324 into a communication format supported by a communication link with theremote communication device 610. For example, thetelephony logic 164 may decode theHD audio data 324 into VoIP packets for transmission to theremote communication device 610. Thetelephony logic 164 may then send the HD audio data to theremote communication device 610 for play back as a ringback tone, e.g., the HDaudio ringback signal 1820. Thetelephony logic 164 may continue to send the HDaudio ringback signal 1820 until a requested communication device accepts the incoming call request or other ringback termination conditions occur, e.g., after a predetermined termination time elapses without receiving a call acceptance signal from the requested communication device. - After sending the HD
audio ringback signal 1820, theringback logic 164 may also alert the requested communication device of the incoming call request. InFigure 18 , theincoming call request 1810 may be directed to thephone 141. Thus, thetelephony logic 164 may send a localring tone signal 1822 to thephone 141 to indicate an incoming call request directed to thephone 141. In one example, thetelephony logic 164 may send the HDaudio ringback signal 1820 to theremote communication device 610 and delay alerting the requested communication device of the incoming call request, e.g., delay sending the localring tone signal 1822. Thetelephony logic 164 may delay alerting the requested communication device of the incoming call request for a predetermined delay period, so that theremote communication device 610 receives the HDaudio ringback signal 1820 for at least the predetermined delay period. The delay period may be a programmable or predefined time value stored by thetelephony logic 164. -
Figure 19 shows timing example 1900 of sending recorded HD audio as a ringback tone. The timing example 1900 includes thephone 141, which may be communicatively linked toringback logic 1720 through a local analog network. Theringback logic 1720 may include thetelephony logic 164,control logic 1730, A/V logic 161,transcoder logic 163, andrecorder logic 1140, as seen in the timing example 1900. In operation, theringback logic 1720 may send recorded HD audio as a ringback tone to a remote communication device sending an incoming call request. - In the timing example 1900, the
telephony logic 164 may identify the incoming call request 1910 from theremote communication device 610. In response, thetelephony logic 164 may send anincoming call notification 1912 to thecontrol logic 1730. Then, thecontrol logic 1730 may identify a ringback audio source to obtain a ringback tone for sending to theremote communication device 610. For example, theringback logic 1720 may identify the ringback audio source according to any number of ringback selection criteria, as discussed above. In the timing example 1900, thecontrol logic 1730 may identify the ringback audio source as a recorded HD audio stream or data, which may be stored on a memory, such as thememory 1150. Then, thecontrol logic 1730 may send a forwardingstart indication 1914 to therecorder logic 1140, which may also specify a particular stored audio data stream or data for therecorder logic 1140 to retrieve from the memory. Therecorder logic 1140 may obtain HD audio data specified by the ringback audio source and send theHD audio data 1926 to thetelephony logic 164. - The
telephony logic 164 may encode or decode theHD audio data 1926 into a communication format supported by a communication link with theremote communication device 610 and send the HD audio data to theremote communication device 610 for play back as a ringback tone, e.g., send the HDaudio ringback signal 1920. Thetelephony logic 164 may continue to send the HDaudio ringback signal 1920 and wait for a delay period until alerting thephone 141 of the incoming call request (e.g., via sending a local ring tone signal 1922). Upon receiving a call acceptsignal 1924 from thephone 141, thetelephony logic 164 may cease sending the HDaudio ringback signal 1920, localring tone signal 1922, or both. -
Figure 20 shows an example oflogic 2000 that may be implemented as hardware, software, or both. For example, theringback logic 1720 may implement thelogic 2000, e.g., through any combination of the A/V logic 161,broadband logic 162,transcoder logic 163,telephony logic 164,control logic 1730, orrecorder logic 1140, and across any number of devices. Theringback logic 1720 may identify an incoming call request from a communication device, such as the remote communication device 610 (2002). Then, theringback logic 1720 may determine a ringback selection (2004), which may include determining a ringback audio source and/or particular audio data associated with the ringback audio source. Theringback logic 1720 may determine the ringback selection according to any number of ringback selection criteria, including any of the criteria discussed above. - In one example, the ringback selection criteria may specify advertising content as the ringback audio source. For example, the
ringback logic 1720 may identify a ringback audio source containing advertising content stored on a memory, e.g., thememory 1150. The advertising content may have been previously selected by a local user or other entity, extracted from a broadcast channel, and recorded unto thememory 1150 by theringback logic 1720. Or, the recorded advertising content may have been provided by a local network operator or service-provider, e.g., pre-downloaded onto a memory provided by the network operator or service provider. As another example, the ringback selection criteria may specify one or more broadcast or streaming ringback audio sources specifically including advertising content. The ringback selection criteria may be configured to specifically identify the advertisement ringback audio sources, e.g., by a network operator or service provider. - The
ringback logic 1720 may obtain HD audio data from the ringback audio source, which may include an audio source providing a live audio stream or an audio source storing recorded audio data. When the ringback selection specifies an audio source sending live audio data, theringback logic 1720 may obtain audio data from the audio source in any of the ways described above. For example, theringback logic 1720 may tune a communication resource (2006), determine an initial audio codec associated with audio data obtained from the audio source (2008), obtain initial audio data (2010), and transcode the initial audio data into HD audio data (2012) in any of the ways described above. When the ringback selection specifies audio data from an audio source storing recorded audio data, theringback logic 1720 may obtain recorded HD audio according to the ringback selection (2014), e.g., by retrieving a particular HD audio data stream or HD audio data from a memory based on the ringback selection. - Then, the
ringback logic 1720 may send the obtained HD audio data as a ringback tone (2016) to theremote communication device 610 sending the incoming call request. Theringback logic 1720 may also alert the request communication device of an incoming request after a delay period, e.g., by sending a local ring tone signal to the requested communication device after the delay period elapses (2018). - The
ringback logic 1720 may identify ringback termination indication (2020) in various ways, including, for example, when the requested communication device sends a call accept indication or after a predetermined termination period elapses. Theringback logic 1720 may continue to obtain and send the HD audio data as a ringback tone to theremote communication device 610 until identifying a ringback termination (2022). Similarly, theringback logic 1720 may continue to send a local ring tone to the requested communication device until identifying a ringback termination indication as well. When theringback logic 1720 identifies a ringback termination indication, theringback logic 1720 may cease sending the ringback tone and local ring tone to theremote communication device 610 and requested communication device respectively. Thus, as described above, theringback logic 1720 may send HD audio data as a ringback tone to aremote communication device 610 sending an incoming call request. - The
distribution logic 160, time-shift logic 1120, andringback logic 1720, or any portion thereof, may share any number of common characteristics, elements, functionality, or more. Also, thedistribution logic 160, time-shift logic 1120, andringback logic 1720 may be implemented together in any combination. For any of the audio distribution services described above, thedistribution logic 160, time-shift logic 1120,ringback logic 1720, or any combination thereof may determine a distribution eligibility of a distribution service or user. The logic may determine whether a distribution threshold has been exceeded (e.g., amount of time, data, or other metric). For example, a network provider or service provider may specify a predetermined distribution threshold to a local user, set of communication devices, service, telephone account, etc., with respect to one or more HD audio distribution services. Thedistribution logic 160, time-shift logic 1120, andringback logic 1720 may forego providing a requested HD audio service when the predetermined distribution threshold is exceeded. In one example, the distribution threshold may be increased (e.g., by a local user or with respect to a particular account), e.g., by paying a monetary amount to the service or network provider. - The methods, devices, and logic described above may be implemented in many different ways in many different combinations of hardware, software or both hardware and software. For example, all or parts of a system may include circuitry in a controller, a microprocessor, or an application specific integrated circuit (ASIC), or may be implemented with discrete logic or components, or a combination of other types of analog or digital circuitry, combined on a single integrated circuit or distributed among multiple integrated circuits. All or part of the logic described above may be implemented as instructions for execution by a processor, controller, or other processing device and may be stored in a tangible or non-transitory machine-readable or computer-readable medium such as flash memory, random access memory (RAM) or read only memory (ROM), erasable programmable read only memory (EPROM) or other machine-readable medium such as a compact disc read only memory (CDROM), or magnetic or optical disk. Thus, a product, such as a computer program product, may include a storage medium and computer readable instructions stored on the medium, which when executed in an endpoint, computer system, or other device, cause the device to perform operations according to any of the description above.
- The processing capability of the system may be distributed among multiple system components, such as among multiple processors and memories, optionally including multiple distributed processing systems. Parameters, databases, and other data structures may be separately stored and managed, may be incorporated into a single memory or database, may be logically and physically organized in many different ways, and may implemented in many ways, including data structures such as linked lists, hash tables, or implicit storage mechanisms. Programs may be parts (e.g., subroutines) of a single program, separate programs, distributed across several memories and processors, or implemented in many different ways, such as in a library, such as a shared library (e.g., a dynamic link library (DLL)). The DLL, for example, may store code that performs any of the system processing described above.
- While various embodiments have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible. Accordingly, the systems and methods are not to be restricted except in light of the attached claims and their equivalents.
Claims (8)
- A device comprising:a memory (1150);a communication interface (150); anda processor connected with the memory (1150) and the communication interface (150), the processor comprising time-shift logic (1120), the time-shift logic (1120) configured to:receive a record indication from a communication device (610), the record indication specifying an audio selection, and in response:tune the communication interface (150) to obtain initial audio data according to the audio selection;transcode the initial audio data into High Definition (HD) Voice data; andinitiate a storage of the HD Voice data in the memory (1150); andreceive a forward indication from the communication device (610), and in response:determine a destination device (610, 141); andtransmit the HD Voice data stored in the memory (1150) to the destination device (610, 141) through the communication interface (150).
- The device of claim 1, where the destination device (610, 141) comprises the communication device (610).
- The device of claim 1 or 2, where the destination device (610, 141) comprises a remote communication device (610).
- The device of claim 3, where the time-shift logic (1120) is configured to transmit the HD Voice data to the remote communication device (610).
- The device of claim 4, where the time-shift logic (1120) is configured to transmit the HD Voice data to the remote communication device (610) by establishing a call connection with the remote communication device (610).
- The device of any preceding claim, where the time-shift logic (1120) is further configured to:obtain a preamble message from the communication device (610); andtransmit the preamble message to the destination device (610, 141) along with the HD Voice data.
- The device of any preceding claim, where the time-shift logic (1120) is configured to determine the destination device (610, 141) by obtaining identifying information associated with the destination device (610, 141).
- The device of any preceding claim, where the identifying information associated with the destination device (610, 141) comprises a phone number.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/602,733 US9544074B2 (en) | 2012-09-04 | 2012-09-04 | Time-shifting distribution of high definition audio data |
Publications (3)
Publication Number | Publication Date |
---|---|
EP2704340A2 EP2704340A2 (en) | 2014-03-05 |
EP2704340A3 EP2704340A3 (en) | 2015-02-11 |
EP2704340B1 true EP2704340B1 (en) | 2017-12-06 |
Family
ID=49083493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP13004057.9A Active EP2704340B1 (en) | 2012-09-04 | 2013-08-14 | Time-shifting distribution of high definition audio data |
Country Status (4)
Country | Link |
---|---|
US (1) | US9544074B2 (en) |
EP (1) | EP2704340B1 (en) |
CN (1) | CN103685793B (en) |
TW (1) | TWI559727B (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9357215B2 (en) * | 2013-02-12 | 2016-05-31 | Michael Boden | Audio output distribution |
US9253452B2 (en) * | 2013-08-14 | 2016-02-02 | Digital Ally, Inc. | Computer program, method, and system for managing multiple data recording devices |
GB201319687D0 (en) * | 2013-11-07 | 2013-12-25 | Microsoft Corp | Call handling |
WO2016024143A1 (en) * | 2014-08-13 | 2016-02-18 | Intel Corporation | Method, apparatus and system for exchanging a data communication via an audio connector |
KR102031474B1 (en) * | 2015-03-31 | 2019-10-11 | 인터랙티브 인텔리전스 그룹, 인코포레이티드 | A system and a method for offline survivability |
CN114189793B (en) | 2016-02-04 | 2024-03-19 | 奇跃公司 | Techniques for directing audio in augmented reality systems |
US11445305B2 (en) | 2016-02-04 | 2022-09-13 | Magic Leap, Inc. | Technique for directing audio in augmented reality system |
CN105791062A (en) * | 2016-03-11 | 2016-07-20 | 中国联合网络通信集团有限公司 | Method for identifying service, home gateway, and home network system |
CN110337318B (en) * | 2017-02-28 | 2024-06-14 | 奇跃公司 | Virtual and real object recording in mixed reality devices |
US10733998B2 (en) * | 2017-10-25 | 2020-08-04 | The Nielsen Company (Us), Llc | Methods, apparatus and articles of manufacture to identify sources of network streaming services |
US10601877B2 (en) | 2017-12-21 | 2020-03-24 | At&T Intellectual Property I, L.P. | High-definition voice for fixed mobile convergence on mobile and wireline networks |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7092379B1 (en) | 1996-10-30 | 2006-08-15 | 8×8, Inc. | Internet telephony arrangement and method |
US7257217B1 (en) | 1999-12-27 | 2007-08-14 | Nortel Networks Limited | Call features for automatic call distribution system |
US7219136B1 (en) | 2000-06-12 | 2007-05-15 | Cisco Technology, Inc. | Apparatus and methods for providing network-based information suitable for audio output |
US7689510B2 (en) | 2000-09-07 | 2010-03-30 | Sonic Solutions | Methods and system for use in network management of content |
EP1323284A2 (en) | 2000-09-27 | 2003-07-02 | Intellprop Limited | Telecommunications services apparatus for accessing stored broadcasts |
KR100605885B1 (en) | 2001-12-29 | 2006-08-01 | 삼성전자주식회사 | Apparatus and method of sound signal output of mobile station |
US8023458B2 (en) * | 2001-12-31 | 2011-09-20 | Polycom, Inc. | Method and apparatus for wideband conferencing |
US7450570B1 (en) * | 2003-11-03 | 2008-11-11 | At&T Intellectual Property Ii, L.P. | System and method of providing a high-quality voice network architecture |
US8249102B2 (en) | 2004-07-27 | 2012-08-21 | Motorola Solutions, Inc. | Method and apparatus for session layer framing to enable interoperability between packet-switched systems |
EP1686565B1 (en) * | 2005-01-31 | 2007-05-02 | Harman Becker Automotive Systems GmbH | Bandwidth extension of bandlimited speech data |
GB2443990B (en) | 2005-11-26 | 2009-01-28 | Wolfson Microelectronics Plc | Audio device |
US8185437B2 (en) | 2007-07-12 | 2012-05-22 | Utbk, Inc. | Systems and methods to provide communication connections via partners |
US8321906B2 (en) | 2008-09-11 | 2012-11-27 | At&T Intellectual Property I, Lp | Method and system for a transcoder |
US8600737B2 (en) | 2010-06-01 | 2013-12-03 | Qualcomm Incorporated | Systems, methods, apparatus, and computer program products for wideband speech coding |
CN201868109U (en) | 2010-10-21 | 2011-06-15 | 深圳市江波龙电子有限公司 | Digital audio player |
-
2012
- 2012-09-04 US US13/602,733 patent/US9544074B2/en active Active
-
2013
- 2013-08-14 EP EP13004057.9A patent/EP2704340B1/en active Active
- 2013-09-02 TW TW102131544A patent/TWI559727B/en not_active IP Right Cessation
- 2013-09-04 CN CN201310397607.3A patent/CN103685793B/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
None * |
Also Published As
Publication number | Publication date |
---|---|
TWI559727B (en) | 2016-11-21 |
CN103685793A (en) | 2014-03-26 |
US20140067381A1 (en) | 2014-03-06 |
TW201412080A (en) | 2014-03-16 |
EP2704340A3 (en) | 2015-02-11 |
CN103685793B (en) | 2017-04-12 |
EP2704340A2 (en) | 2014-03-05 |
US9544074B2 (en) | 2017-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2704340B1 (en) | Time-shifting distribution of high definition audio data | |
US8379824B2 (en) | Methods and apparatus to provide a network-based caller identification service in a voice over internet protocol network | |
US8739236B1 (en) | Method, apparatus, and system for invoking third-party call control via a cable-television host device | |
US8649773B2 (en) | System and apparatus to support clipped video tone on televisions, personal computers, and handheld devices | |
KR101868533B1 (en) | Video media playing methods, apparatuses and systems, and computer storage medium | |
US8077853B2 (en) | VoIP adapter, IP network device and method for performing advanced VoIP functions | |
US20090109957A1 (en) | Content Delivery During Call Setup | |
US20230353673A1 (en) | Call processing method, call processing apparatus, and related device | |
CN116636192A (en) | Call processing system and call processing method | |
US20080140818A1 (en) | Video Processing Apparatus and Method for Managing Operations Based on Telephony Signals | |
RU2015156799A (en) | SYSTEM AND METHOD FOR CREATING A WIRELESS TUBE FOR STATIONARY PHONES USING A HOME GATEWAY AND A SMARTPHONE | |
EP2627100B1 (en) | Method and device for playing media streams of a ring tone service | |
EP2704453A2 (en) | High definition audio distribution system | |
US9253312B2 (en) | Sound output setting system for information processing terminal | |
EP1592216A1 (en) | Content delivery during call setup | |
KR101093801B1 (en) | System for providingg audio data in ip telephony and method thereof | |
US20090271522A1 (en) | System, Method and Apparatus For On-Demand Recording Of A Communication Session | |
KR20060108557A (en) | Media streaming service apparatus and method for multimedia on demand in mobile telecommunication system | |
US8971515B2 (en) | Method to stream compressed digital audio over circuit switched, voice networks | |
CN113810331A (en) | Terminal control method, system, control device and storage medium | |
JP2009164679A (en) | Key telephone system and codec conversion method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
17P | Request for examination filed |
Effective date: 20130814 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
RBV | Designated contracting states (corrected) |
Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04H 60/27 20080101AFI20140902BHEP |
|
PUAL | Search report despatched |
Free format text: ORIGINAL CODE: 0009013 |
|
AK | Designated contracting states |
Kind code of ref document: A3 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04H 60/27 20080101AFI20150107BHEP |
|
17Q | First examination report despatched |
Effective date: 20150128 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
INTG | Intention to grant announced |
Effective date: 20170626 |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 953266 Country of ref document: AT Kind code of ref document: T Effective date: 20171215 Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602013030290 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20171206 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20180306 |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 953266 Country of ref document: AT Kind code of ref document: T Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20180307 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20180306 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602013030290 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R082 Ref document number: 602013030290 Country of ref document: DE Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, DE Ref country code: DE Ref legal event code: R081 Ref document number: 602013030290 Country of ref document: DE Owner name: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LT, SG Free format text: FORMER OWNER: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE, SG |
|
26N | No opposition filed |
Effective date: 20180907 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20180814 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180831 Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180814 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180831 |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20180831 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: MM4A |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180814 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180831 Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180831 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180814 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180814 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20130814 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20171206 Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20171206 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20180406 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20230731 Year of fee payment: 11 |