SYSTEMS AND METHODS FOR PUSH-TO-TALK VOICE COMMUNICATION OVER VOICE OVER INTERNET PROTOCOL NETWORKS
First Claim
1. A method of communicating voice communications between push to talk (PTT) devices via an intervening packet-based communication network, the method comprising:
- generating a comfort tone at a listener'"'"'s PTT device when communication of a voice communication is paused due to at least one delayed, corrupted or lost voice packet transmitted from a speaker'"'"'s PTT device, wherein the at least one delayed, corrupted or lost voice packet includes a voice communication portion of the of the voice communication;
communicating a packet re-transmit request from the listener'"'"'s PTT device to the speaker'"'"'s PTT device, wherein the packet re-transmit request identifies the at least one delayed, corrupted or lost voice packet;
receiving at least one replacement voice packet that is communicated from the speaker'"'"'s PTT device to the listener'"'"'s PTT device, wherein a voice communication portion of the replacement voice packet is the same as the voice communication portion of the at least one delayed, corrupted or lost voice packet;
repairing the voice communication with the voice communication portion of the replacement voice packet; and
in response to repairing the voice communication, the method further comprising;
ending generation of the comfort tone from the speaker'"'"'s PTT device; and
ending the pause of the voice communication at the speaker'"'"'s PTT device.
3 Assignments
0 Petitions
Accused Products
Abstract
Push to talk (PTT) devices that communicate packet-based voice communications are disclosed. An example PTT device receives voice packets via a packet-based communication network from another PTT device. Voice information in the received voice packets are used to reconstruct the voice communication. The receiving PTT device is able to identify an occurrence of at least one delayed, corrupted or lost voice packet, and then communicate a packet re-transmit request to the other PTT device requesting a replacement voice packet that has a portion of the voice communication that is identical to the voice communication portion of the delayed, corrupted or lost voice packet. The voice communication may then be repaired based on the received replacement voice packet. While the voice communication is being repaired, a comfort tone may be generated so that the listener of the PTT device understands that the voice communication is being repaired.
11 Citations
20 Claims
-
1. A method of communicating voice communications between push to talk (PTT) devices via an intervening packet-based communication network, the method comprising:
-
generating a comfort tone at a listener'"'"'s PTT device when communication of a voice communication is paused due to at least one delayed, corrupted or lost voice packet transmitted from a speaker'"'"'s PTT device, wherein the at least one delayed, corrupted or lost voice packet includes a voice communication portion of the of the voice communication; communicating a packet re-transmit request from the listener'"'"'s PTT device to the speaker'"'"'s PTT device, wherein the packet re-transmit request identifies the at least one delayed, corrupted or lost voice packet; receiving at least one replacement voice packet that is communicated from the speaker'"'"'s PTT device to the listener'"'"'s PTT device, wherein a voice communication portion of the replacement voice packet is the same as the voice communication portion of the at least one delayed, corrupted or lost voice packet; repairing the voice communication with the voice communication portion of the replacement voice packet; and in response to repairing the voice communication, the method further comprising; ending generation of the comfort tone from the speaker'"'"'s PTT device; and ending the pause of the voice communication at the speaker'"'"'s PTT device. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of receiving packet-based voice communications at a listener'"'"'s push to talk (PTT) device, wherein the voice communications are generated by a speaker'"'"'s PTT device, and wherein the voice communications are communicated in a series of voice packets via an intervening packet-based communication network, the method comprising:
-
receiving the voice packets at the listener'"'"'s PTT device, wherein each received voice packet is one of a serial ordered sequence of voice packets, wherein each voice packet corresponds to a unique portion of a voice communication generated by the speaker'"'"'s PTT device, and wherein each voice packet includes an identifier that identifies the relative position of that particular voice packet in the serial ordered sequence of voice packets; storing, at the listener'"'"'s PTT device, the received voice packets in an order defined by the identifier; determining, at the listener'"'"'s PTT device, when a predefined amount of voice communication information has been received and stored, wherein the predefined amount of voice communication information is complete and perfect; while the predefined amount of voice communication information is being received and stored, generating an audible comfort tone from a speaker residing in the listener'"'"'s PTT device; and after the predefined amount of voice communication information has been received and stored, the method further comprising; ending the audible comfort tone from the speaker of the listener'"'"'s PTT device; and generating an audible reproduction of the voice communication from the speaker, wherein the generated audible reproduction of the voice communication corresponds to the complete and perfect predefined amount of voice communication information. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method of communicating packet-based voice communications from a speaker'"'"'s push to talk (PTT) device to a listener'"'"'s PTT device, wherein the voice communications are communicated via an intervening packet-based communication network, the method comprising:
-
receiving, at the speaker'"'"'s PTT device, a voice communication from a user of the speaker'"'"'s PTT device; generating, at the speaker'"'"'s PTT device, a digital voice signal from the received voice communication; parsing, at the speaker'"'"'s PTT device, the digital voice signal into a serially ordered sequence of discreet digital voice signal portions; and encapsulating, at the speaker'"'"'s PTT device, each of the serially ordered sequence of discreet digital voice signal portions into a corresponding voice packet, wherein each of the voice packets are arranged in a serially ordered sequence of voice packets that correspond to the serially ordered sequence of discreet digital voice signal portions, and wherein each voice packet is identified by a unique identifier that identifies the relative position of the voice packet in the serially ordered sequence of voice packets; communicating each of the voice packets from the speaker'"'"'s PTT device to the listener'"'"'s PTT device via the intervening packet-based communication network; and storing, at the speaker'"'"'s PTT device, each of the voice packets as a replacement voice packet, wherein each replacement voice packet has the same identifier as its corresponding voice packet that is communicated from the speaker'"'"'s PTT device to the listener'"'"'s PTT device. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A push to talk (PTT) device, wherein a plurality of PTT devices are configured to communicate packet-based voice communications from a speaker'"'"'s PTT device to at least one listener'"'"'s PTT device, and wherein the voice communications are communicated via an intervening packet-based communication network, each PTT device comprising:
-
a listening portion configured to receive a plurality of first voice packets corresponding to a first voice communication spoken by a user of another PTT device, the listening portion comprising; a first packetizer configured to receive the plurality of first voice packets, wherein the plurality of first voice packets comprise digitized portions of the first voice communication, and wherein each of the plurality of first voice packets include a unique identifier that identifies the relative position of that particular voice packet in a serial ordered sequence of first voice packets; a jitter buffer communicatively coupled to the first packetizer, wherein the jitter buffer is configured to receive the plurality of first voice packets from the first packetizer, and wherein the jitter buffer is configured to store the received plurality of first voice packets in the serial ordered sequence according to the identifier of each one of the received plurality of first voice packets; a first vocoder communicatively coupled to the jitter buffer, wherein the first vocoder is configured to deconstruct each of the plurality of first voice packets received from the jitter buffer into digital data that corresponds to the digitized portion of the first voice communication; a digital to analog (D/A) converter communicatively coupled to the first vocoder, wherein the D/A converter is configured to convert the received digital data into an analog portion of the first voice communication; and a speaker communicatively coupled to the D/A converter, wherein the speaker is configured to generate sound corresponding to an analog portion of the first voice communication that is heard by the listener; and a jitter buffer manager controllably coupled to the jitter buffer, wherein the jitter buffer manager is configured to; identify an occurrence of at least one delayed, corrupted or lost first voice packet in the received plurality of first voice packets; determine an identifier of the at least one delayed, corrupted or lost first voice packet; generate a packet re-transmit request that is communicated from the listener'"'"'s PTT device to the speaker'"'"'s PTT device, wherein the packet re-transmit request includes the identifier of the at least one delayed, corrupted or lost first voice packet, wherein at least one replacement voice packet that is communicated from the speaker'"'"'s PTT device to the listener'"'"'s PTT device is received by the first packetizer, wherein a voice communication portion of the replacement voice packet is the same as a voice communication portion of the at least one delayed, corrupted or lost first voice packet; and store the replacement voice packet into the jitter buffer at a location where the at least one delayed, corrupted or lost first voice packet is missing from the serial ordered plurality of first voice packets, such that the first voice communication is repaired with the replacement voice packet, wherein a currently stored portion of voice communication information is complete and perfect after the replacement voice packet is stored in the jitter buffer; and a speaking portion configured to process a second voice communication spoken by a user of the PTT device, the speaking portion comprising; a microphone configured to detect the second voice communication spoken by the user of the PTT device, wherein the microphone is configured to generate analog voice information from the detected second voice communication; an analog to digital (A/D) converter communicatively coupled to the microphone, wherein the A/D converter is configured to convert the detected second voice communication from the generated analog voice information into digital voice information; a second vocoder communicatively coupled to the A/D converter, wherein the second vocoder is configured to parse out the converted digital voice communication information into discreet digital voice communication information portions; a second packetizer communicatively coupled to the second vocoder, wherein the second packetizer is configured to encapsulate the discreet digital voice communication information portions into a plurality of second voice packets that are communicated to the other PTT device, and wherein the plurality of second voice packets are communicated to the other PTT devices; and a voice packet buffer communicatively coupled to the second packetizer, wherein the voice packet buffer is configured to store each of the second voice packets received from the second packetizer as a corresponding replacement voice packet, wherein each replacement voice packet has the same identifier as its corresponding second voice packet; and a voice packet recovery system communicatively coupled to the voice packet buffer of the speaking portion, wherein the voice packet recovery system is configured to; identify a stored replacement voice packet based on a packet re-transmit request that has been received from the other PTT device, wherein the packet re-transmit request identifies a previously communicated second voice packet, wherein the previously communicated second voice packet corresponds to an occurrence of at least one delayed, corrupted or lost second voice packet at the other PTT device, and wherein the previously communicated second voice packet is identified by a unique identifier of the previously communicated second voice packet; retrieve the identified stored replacement voice packet from the voice packet buffer, wherein the identified stored replacement voice packet has the same unique identifier as the unique identifier of the previously communicated second voice packet; and communicate the retrieved replacement voice packet to the other PTT device, wherein the replacement voice packet includes the identifier that is the same as the at least one delayed, corrupted or lost second voice packet, wherein the other PTT device is configured to repair the second voice communication using the communicated replacement voice packet. - View Dependent Claims (19, 20)
-
Specification