Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

The present invention is embodied in a digital communication system where multiple media data sources are time multiplexed into a packetized data stream, each packet having an assigned priority and the packetized data stream transmitted in substantially the order of assigned priority. At both the transmit side, and the receive side, audio packets are given priority processing over video packets, which in turn have priority over text/graphics data packets. Continuous real time audio playback is maintained at the receiver by delaying the playback of received audio in a first in/first out (FIFO) buffer providing a delay at least equal to the predicted average packet delay for the communication system. Optionally, the average system delay is continuously monitored, and the audio playback delay time is adjusted accordingly. Audio playback is slowed or accelerated in order to shrink or grow the difference in time between the sender and receiver. In another aspect of the invention, a...

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US4516156Mar 15, 1982May 7, 1985Satellite Business SystemsTeleconferencing method and system
US4707831Oct 23, 1985Nov 17, 1987STC plcPacket switching system
US4763317Dec 13, 1985Aug 9, 1988American Telephone and Telegraph Company, AT&T Bell LaboratoriesDigital communication network architecture for providing universal information services
US4847829Nov 25, 1987Jul 11, 1989Datapoint CorporationVideo conferencing network
US4935953Apr 27, 1989Jun 19, 1990International Business Machines CorporationCyclic video region transmission for videoconferencing systems
US4942470Jul 5, 1989Jul 17, 1990NEC CorporationReal time processor for video signals
US4942569Feb 24, 1989Jul 17, 1990Kabushiki Kaisha ToshibaCongestion control method for packet switching apparatus
US4945410Oct 24, 1988Jul 31, 1990Professional Satellite Imaging, Inc.Satellite communications system for medical related images
US4949169Oct 27, 1989Aug 14, 1990International Business Machines CorporationAudio-video data interface for a high speed communication link in a video-graphics display window environment
US4991169Aug 2, 1988Feb 5, 1991International Business Machines CorporationReal-time digital signal processing relative to multiple digital communication channels
US4995071May 30, 1989Feb 19, 1991Telenorma Telefonbau und Normalzeit GmbHVideo conference installation
US5014267Apr 6, 1989May 7, 1991Datapoint CorporationVideo conferencing network
US5155594May 10, 1991Oct 13, 1992PictureTel CorporationHierarchical encoding method and apparatus employing background references for efficiently communicating image sequences
US5177604Jun 3, 1988Jan 5, 1993Radio Telcom & Technology, Inc.Interactive television and data transmission system
US5210836Oct 13, 1989May 11, 1993Texas Instruments IncorporatedInstruction generator architecture for a video signal processor controller
US5231492Nov 16, 1990Jul 27, 1993Fujitsu LimitedVideo and audio multiplex transmission system
US5309433Jun 18, 1992May 3, 1994International Business Machines Corp.Methods and apparatus for routing packets in packet transmission networks
US5537548Jun 14, 1994Jul 16, 1996International Business Machines CorporationMethod of computer conferencing by intercepting commands issued by application programs and redirecting to all stations for execution
US5594859Feb 21, 1995Jan 14, 1997Digital Equipment CorporationGraphical user interface for video teleconferencing

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US6374316Mar 18, 2000Apr 16, 2002Sony Corporation
Sony Electronics, Inc.
Method and system for circumscribing a topology to form ring structures
US6502158Mar 18, 2000Dec 31, 2002Sony Corporation
Sony Electronics, Inc.
Method and system for address spaces
US6539450Mar 18, 2000Mar 25, 2003Sony Corporation
Sony Electronics Inc.
Method and system for adjusting isochronous bandwidths on a bus
US6624827Aug 4, 2000Sep 23, 2003Dae-Joon HwangApparatus and method for locking or prohibiting access to designated object displayed on shared electronic whiteboard
US6631415Mar 18, 2000Oct 7, 2003Sony Corporation
Sony Electronics Inc.
Method and system for providing a communication connection using stream identifiers
US6647446Mar 18, 2000Nov 11, 2003Sony Corporation
Sony Electronics Inc.
Method and system for using a new bus identifier resulting from a bus topology change
US6714986Nov 25, 2002Mar 30, 2004Matsushita Electric Industrial, Co., Ltd.File system for handling real-time and non-real-time data
US6728358Jan 25, 2001Apr 27, 2004Paltalk Holdings, Inc.Efficient buffer allocation for current and predicted active speakers in voice conferencing systems
US6728821Nov 27, 2000Apr 27, 2004Sony Corporation
Sony Electronics Inc.
Method and system for adjusting isochronous bandwidths on a bus
US6738357Jun 19, 2000May 18, 2004BTG International Inc.
Micron Technology, Inc.
Method and apparatus for multiple media digital communication system
US6738380Apr 26, 1999May 18, 2004Sony CorporationApparatus, method and transmitting medium for transmitting and receiving fragmented coded data
US6757773Jun 30, 2000Jun 29, 2004Sony Corporation
Sony Electronics Inc.
System and method for determining support capability of a device coupled to a bus system
US6792470Mar 2, 2001Sep 14, 2004Matsushita Electric Industrial, Co., Ltd.Method and apparatus for communicating with data frames having priority levels
US6798829Dec 7, 1999Sep 28, 2004Sony CorporationTransmitting apparatus and transmitting method, receiving apparatus and receiving method, and distribution medium
US6810452Mar 18, 2000Oct 26, 2004Sony Corporation
Sony Electronics Inc.
Method and system for quarantine during bus topology configuration
US6907570Mar 29, 2001Jun 14, 2005International Business Machines CorporationVideo and multimedia browsing while switching between views
US6981263Jun 29, 2001Dec 27, 2005BellSouth Intellectual Property Corp.Methods and systems for converged service creation and execution environment applications
US7046780Apr 26, 2004May 16, 2006Efficient buffer allocation for current and predicted active speakers in voice conferencing systems
US7050425Jun 22, 2004May 23, 2006BTG International Inc.
Micron Technology, Inc.
Apparatus for multiple media digital communication
US7075924Mar 19, 2004Jul 11, 2006BTG International Inc.
Micron Technology, Inc.
Methods for multiple media digital communication
US7103157Sep 17, 2002Sep 5, 2006International Business Machines CorporationAudio quality when streaming audio to non-streaming telephony devices
US7103644Jun 29, 2001Sep 5, 2006BellSouth Intellectual Property Corp.Systems for an integrated data network voice-oriented service and non-voice-oriented service converged creation and execution environment
US7295247Jun 28, 2001Nov 13, 2007Telefonaktiebolaget LM Ericsson (publ)Synchronisation of audio and video signals
US7366405Jul 9, 2004Apr 29, 2008Matsushita Electric Industrial Co., Ltd.Recording medium, recording method, reproduction apparatus and method, and computer-readable program
US7386111Feb 10, 2004Jun 10, 2008Vonage Network Inc.Method and apparatus for placing a long distance call based on a virtual phone number
US7415192Jul 9, 2004Aug 19, 2008Matsushita Electric Industrial Co., Ltd.Recording medium, recording method, reproduction apparatus and method, and computer-readable program
US7417981Oct 15, 2003Aug 26, 2008Vonage Holdings Corp.Method and apparatus for enhanced Internet Telephony
US7453990Jun 22, 2004Nov 18, 2008Vonage Holdings Corp.Emergency call completion for VoIP based on location of call originator
US7483523Feb 25, 2004Jan 27, 2009AlcatelTime delay compensation device for the management of multimedia communications via an asynchronous network and a telephone network
US7519278Jun 17, 2005Apr 14, 2009Panasonic CorporationPlayback apparatus, program, playback method
US7580384Jan 16, 2004Aug 25, 2009Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7583888Aug 20, 2007Sep 1, 2009Panasonic CorporationReproduction device, program, and reproduction method
US7586861Feb 20, 2004Sep 8, 2009Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7586907Nov 28, 2006Sep 8, 2009Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7609948Aug 20, 2007Oct 27, 2009Panasonic CorporationReproduction device, reproduction method and program
US7633934Jan 16, 2004Dec 15, 2009Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7646743Feb 20, 2004Jan 12, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7680262May 20, 2008Mar 16, 2010Vonage Network LLCMethod and apparatus for placing a long distance call based on a virtual phone number
US7688811Apr 8, 2004Mar 30, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7693176Feb 23, 2007Apr 6, 2010Vonage Network LLCMethod and system for bidirectional data transfer
US7697467Jan 16, 2004Apr 13, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7715375Mar 16, 2004May 11, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7760703Feb 20, 2004Jul 20, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7768951Sep 8, 2009Aug 3, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7792519Aug 22, 2003Sep 7, 2010Nokia CorporationConferencing system
US7848316Dec 15, 2009Dec 7, 2010Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7853125May 27, 2008Dec 14, 2010Panasonic CorporationReproduction device, program, and reproduction method
US7856169May 27, 2008Dec 21, 2010Panasonic CorporationReproduction device, program, and reproduction method
US7877002Jun 17, 2005Jan 25, 2011Panasonic CorporationReproduction device, program, and reproduction method
US7899007Oct 14, 2008Mar 1, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7912016Jul 18, 2005Mar 22, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7912043May 11, 2010Mar 22, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7916706Mar 13, 2008Mar 29, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7920553Feb 20, 2004Apr 5, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7921445Jun 6, 2002Apr 5, 2011International Business Machines CorporationAudio/video speedup system and method in a server-client streaming architecture
US7924822Feb 14, 2008Apr 12, 2011Vonage Network LLCMethod and apparatus for enhanced internet telephony
US7933252Feb 20, 2004Apr 26, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7936713Jan 12, 2010May 3, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US7949225Jun 17, 2005May 24, 2011Panasonic CorporationReproduction device, program, and reproduction method
US8018907May 5, 2004Sep 13, 2011Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US8027566May 27, 2008Sep 27, 2011Panasonic CorporationRecording medium, reproduction device, recording method, and reproduction method
US8116301Jul 10, 2006Feb 14, 2012RPX CorporationMethod and apparatus for multiple media digital communication system
US8121117Sep 12, 2008Feb 21, 2012F5 Networks, Inc.Application layer network traffic prioritization
US8121463Sep 18, 2007Feb 21, 2012Panasonic CorporationRecording medium, recording method, reproduction apparatus and method, and computer-readable program
US8126316Sep 18, 2007Feb 28, 2012Panasonic CorporationRecording medium, recording method, reproduction apparatus and method, and computer readable program
US8126317Sep 18, 2007Feb 28, 2012Panasonic CorporationRecording medium, recording method, reproduction apparatus and method, and computer readable program
US8139749Oct 29, 2008Mar 20, 2012Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US8139915Jul 11, 2008Mar 20, 2012Panasonic CorporationRecording medium, recording method, reproduction apparatus and method, and computer-readable program
US8149825Jan 16, 2004Apr 3, 2012Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US8194595Aug 25, 2009Jun 5, 2012Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US8213594Jun 10, 2011Jul 3, 2012Vonage Network LLCMethod and apparatus for placing a long distance call based on a virtual phone number
US8228879Jun 18, 2008Jul 24, 2012Broadcom CorporationHierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US8233779Sep 18, 2007Jul 31, 2012Panasonic CorporationRecording medium, recording method, reproduction apparatus and method, and computer-readable program
US8238264Feb 20, 2004Aug 7, 2012Broadcom CorporationHierarchical data collection network supporting packetized voice communication among wireless terminals and telephones
USRE40704May 28, 2004Apr 28, 2009Apple Inc.System for terminating multicast channel and data broadcast when at least two second endpoints do not transmit positive acknowledgement message to first endpoint
USRE42442Dec 7, 2001Jun 7, 2011Apple Inc.System for terminating multicast channel and data broadcast when at least two second endpoints do not transmit positive acknowledgement message to first endpoint

Claims

1. A method of communicating media data packets from a first processing machine to at least one remote processing machine connected to said first processing machine over a communication system, said method comprising the steps of:

enabling at said first processing machine a connection processing stream for said remote processing machine with which said first processing machine communicates over said system during a connection;
enabling at said first processing machine at least one media processing stream associated with said connection processing stream;
establishing a relationship in said first processing machine which associates a media processing stream located in said remote processing machine with said connection processing stream in said first processing machine;
processing with said media processing stream in said first machine at least one type of media data to produce media data packets;
determining a communication path for sending said media data packets to said media processing stream located at said remote processing machine and through said connection stream at said first process machine based on said established relationship;
transmitting said media data packets to said media processing stream in said remote processing machine through said communication path;
receiving an acknowledgment message from said remote processing machine containing information representing when at least one media data packet from said first processing machine was processed at said remote processing machine;
using the received acknowledgment message to determine when a remote processing machine received and processed a media data packet sent to it from said first processing machine.

2. A method as in claim 1 wherein the media data packets transmitted and received by said first processing machine are multimedia data packets.

3. A method as in claim 2 wherein said multimedia data packets include audio and video data packets.

4. A method as in claim 3 wherein said multimedia data packets further include text/graphics data packets.

5. A method of communicating media data packets from a first processing machine to at least one remote processing machine over a communication system, said method comprising:

enabling at said first processing machine a connection processing stream for said remote processing machine with which said first processing machine communicates over said system during a connection;
enabling at said first processing machine at least one media processing stream associated with said connection processing stream;
establishing a relationship in said first processing machine which associates a media processing stream located in said remote processing machine with said connection processing stream in said first processing machine;
processing with said media processing stream in said first processing machine at least one type of media data to produce media data packets;
determining a communication path for sending said media data packets to said media processing stream located at said one remote processing machine and through said connection stream at said first processing machine based on said established relationship;
transmitting said media data packets to said media processing stream in said remote processing machine through said communication path;
storing in said first processing machine a first time relating to a first event associated with the transmission of at least one of said transmitted media data packets,
recording in said remote processing machine a second time relating to a second event associated with the transmission of said at least one of said transmitted media data packets,
comparing said first time to said second time to determine end-to-end system delay; and
receiving an acknowledgment message from said remote processing machine containing information related to said end-to-end system delay.

6. A method in accordance with claim 5, wherein said media data is audio data and said media data packets are audio data packets.

7. A method in accordance with claim 5, wherein plural types of media data packets are transmitted by said first processing machine, including audio data packets and video data packets, said method further comprising:

providing an association between a source of audio data and a source of video data and respective audio and video media processing streams which respectively provide audio and video data packets; and
transmitting each of said audio and video data packets through said connection processing stream associated with said audio and video media processing streams to audio and video data packet processing streams in said remote processing machine in accordance with a relationship established in said first processing machine which associates the audio or video data packet processing stream in said remote machine with said connection processing stream.

8. A method in accordance with claim 7, wherein said plural types of media data packets further includes text/graphics data packets, said method further comprising:

providing an association between a source of text/graphics data and a respective text/graphics media processing stream which provides text/graphics data packets; and
transmitting said text/graphics data packets through said associated connection processing stream in said first processing machine to a text/graphics media processing stream in said remote processing machine in accordance with a relationship established in said first processing machine which associates the audio and video data packet processing streams in said remote machine with said connection processing stream.

9. A method in accordance with claim 5, wherein said first processing machine receives media data packets from said remote processing machine, said method further comprising:

receiving at said connection processing stream in said first processing machine media data packets directed thereto from said remote processing machine; and
directing received media data packets from said connection processing stream to a receiving media data processing stream for processing the same.

10. A method as in claim 9, further comprising the step of:

delaying received media packets, said delay being set in accordance with an end to end system delay.

11. A method as in claim 10, wherein setting said delay further comprises:

increasing and decreasing said delay to be substantially equal to said determined end to end system delay,
wherein the delay of said received media packets increases and decreases substantially in accordance with said end to end system delay.

12. A method as in claim 11, wherein said received media data packets are audio data packets.

13. A method as in claim 11, wherein said received media data packets are video data packets.

14. A method as in claim 11, wherein said received media data packets are text/graphics data packets.

15. A method as in claim 5, wherein said first event comprises storing said at least one media data packet in a buffer associated with said first processing machine, and said second event comprises processing at least a portion of said at least one media data packet in said remote processing machine.

16. A method as in claim 5, wherein said first event comprises storing said at least one media data packet in a buffer associated with said first processing machine, and said second event comprises storing said at least one media data packet in a buffer associated with said remote processing machine.

17. A method as in claim 5, wherein said act of comparing comprises calculating the difference between said first time and said second time.

18. A method of communicating packets associated with media data from a first processing machine to at least one remote processing machine over a communication system, said method comprising:

enabling at said first processing machine a connection processing stream for said remote processing machine with which said first processing machine communicates over said system during a connection;
enabling at said first processing machine at least one media processing stream associated with said connection processing stream;
establishing a relationship in said first processing machine which associates a media processing stream located in said remote processing machine with said connection processing stream in said first processing machine;
processing with said media processing stream in said first processing machine at least one type of media data to produce packets associated with media data;
determining a communication path for sending said packets associated with media data to said media processing stream located at said one remote processing machine and through said connection stream at said first processing machine based on said established relationship;
transmitting said packets associated with media data to said media processing stream in said remote processing machine through said communication path;
recording in said first processing machine a time of transmission for at least one of said packets associated with media data;
receiving an acknowledgment message from said remote processing machine containing information representing a receiver event time related to when said at least one packet associated with media data sent from said first processing machine was processed at said remote processing machine; and
determining at said first processing machine a system path delay based on said recorded time of transmission of said at least one packet associated with data media and said information in said acknowledgment message.

19. A method as in claim 18, wherein said media data is audio data and said packets associated with media data are audio data packets.

20. A method in accordance with claim 19, wherein plural types of packets associated with media data are transmitted by said first processing machine, including audio data packets and video data packets, said method further comprising:

providing an association between a source of audio data and a source of video data and respective audio and video media processing streams which respectively provide audio and video data packets; and
transmitting each of said audio and video data packets through said connection processing stream associated with said audio and video media processing streams to audio and video data packet processing streams in said remote processing machine in accordance with a relationship established in said first processing machine which associates the audio or video data packet processing stream in said remote machine with said connection processing stream.

21. A method in accordance with claim 20, wherein said plural types of packets associated with media data further includes text/graphics data packets, said method further comprising:

providing an association between a source of text/graphics data and a respective text/graphics media processing stream which provides text/graphics data packets; and
transmitting said text/graphics data packets through said associated connection processing stream in said first processing machine to a text/graphics media processing stream in said remote processing machine in accordance with a relationship established in said first processing machine which associates the audio and video data packet processing streams in said remote machine with said connection processing stream.

22. A method in accordance with claim 21, wherein said first processing machine receives packets associated with media data from said remote processing machine, said method further comprising:

receiving at said connection processing stream in said first processing machine packets associated with media data directed thereto from said remote processing machine; and
directing received packets associated with media data from said connection processing stream to a receiving media data processing stream for processing the same.

23. A method as in claim 22, further comprising the step of:

delaying received media packets, said delay being set in accordance with an end to end system delay.

24. A method as in claim 23, wherein setting said delay further comprises:

increasing and decreasing said delay to be substantially equal to said determined end to end system delay,
wherein the delay of said received media packets increases and decreases substantially in accordance with said end to end system delay.

25. A method as in claim 24, wherein said received packets associated with media data are audio data packets.

26. A method as in claim 24, wherein said received packets associated with media data are video data packets.

27. A method as in claim 24, wherein said received packets associated with media data are text/graphics data packets.