USPatent applicationPatented

Converting media streams in a communication system

Granted 19 Jan 2010 · 5 office actions

Application· this page
10/446,474
filed 27 May 2003
Publication
Not published
not published
Patent
US 7,649,898
granted 19 Jan 2010

Life of the application

19 dated events
⤢ drag to zoom20042006200820102012201420162018202020222024ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

Converting a media stream includes communicating a call for a first system according to a first protocol. A media stream is retrieved from a second system, where the media stream communicated according to a second protocol distinguishable from the first protocol. The media stream is converted from the second protocol to the first protocol, and is associated with the call. The media stream is transmitted to the first system according to the first protocol.

Description

7 parts
›TECHNICAL FIELD OF THE INVENTION

This invention relates generally to the field of telecommunications and more specifically to converting media streams in a communication system.

›BACKGROUND OF THE INVENTION

Communication systems typically include smaller systems that operate according to different protocols. Accordingly, communicating media streams from one system to another system may involve converting the streams between different protocols. Known techniques for converting media streams, however, may not be effective in converting between some protocols. Consequently, known techniques for converting media streams may be unsatisfactory in certain situations.

›SUMMARY OF THE INVENTION

In accordance with the present invention, disadvantages and problems associated with previous techniques for converting media streams may be reduced or eliminated.

According to one embodiment of the present invention, converting a media stream includes communicating a call for a first system according to a first protocol. A media stream is retrieved from a second system, where the media stream communicated according to a second protocol distinguishable from the first protocol. The media stream is converted from the second protocol to the first protocol, and is associated with the call. The media stream is transmitted to the first system according to the first protocol.

Certain embodiments of the invention may provide one or more technical advantages. A technical advantage of one embodiment may be that a media stream may be converted from one protocol to another protocol. By performing this conversion, the media stream may, for example, be inserted into a call between communication devices.

Certain embodiments of the invention may include none, some, or all of the above technical advantages. One or more other technical advantages may be readily apparent to one skilled in the art from the figures, descriptions, and claims included herein.

›BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and its features and advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a block diagram illustrating one embodiment of a communication system that includes a conversion module operable to convert media streams;

FIG. 2 is a diagram illustrating one embodiment of a method for converting data; and

FIG. 3 is a block diagram illustrating one embodiment of a conversion module.

›DETAILED DESCRIPTION OF THE DRAWINGS · 1 of 3

Embodiments of the present invention and its advantages are best understood by referring to FIGS. 1 through 3 of the drawings, like numerals being used for like and corresponding parts of the various drawings.

FIG. 1 is a block diagram illustrating one embodiment of a communication system 10 that includes a conversion module operable to convert media streams. Communication system 10 may include systems that operate according to different protocols such as different codec or transport schemes. The conversion module may convert media streams between the different protocols.

According to the illustrated embodiment, communication system 10 includes a streaming media system 20 and an Internet Protocol (IP) telephony system 24 coupled to a conversion module 28 as illustrated in FIG. 1 . Communication system 10 may include other or additional types of systems coupled to conversion module 28 . According to one embodiment, systems 20 and 24 of communication system 10 may each have different control planes, data planes, or both. As an example, systems 20 and 24 may operate according to different protocols such as different codec, transport, or call control schemes.

Streaming media system 20 provides streaming media for communication system 10 . “Streaming” refers to the transmission of data to a communication device that may play or decode the data as the data is received, without waiting until the entire file has been downloaded. Streaming media may comprise single or multiple media data, for example, audio data, video data, or both, and may include a live broadcast or an on-demand playback of pre-recorded data. The media streams may be unicast or multicast.

Streaming media system 20 may operate according to any suitable transport protocol such as transport protocols of the Internet Engineering Task Force (IETF) standards. The protocols may include the Realtime Transport Protocol (RTP) for streaming media, Real Time Streaming Protocol (RTSP), Moving Pictures Experts Group (MPEG) transport protocol, or other suitable protocol.

According to one embodiment, streaming media system 20 may include one or more peripheral devices 30 and a streaming server 34 coupled to a communication network 38 as illustrated in FIG. 1 . Peripheral device 30 may comprise equipment that operates in conjunction with communication network 28 to provide communication services. Examples of peripheral devices 30 may include, for example, an Internet Voice on Demand (IVoD) device, a broadcast server, a transport stream device such as a MPEG-2 transport stream device, or any other device suitable for operating in conjunction with communication network 28 to provide communication services.

Streaming server 34 may comprise a streaming server 34 operable to provide streaming media for communication system 10 by, for example, encoding streaming media according to a streaming media protocol. Streaming server 34 may comprise a codec that operates according to any suitable streaming media codec protocol, for example, Moving Pictures Experts Group (MPEG) 1/2/4 for video data or MPEG Layer-3 (MP3), Advanced Audio Coding (AAC), or Dolby Digital (AC3) for audio data.

TABLE 1 illustrates examples of codec schemes and associated transport protocols that may be used by streaming server 34 .

Communication network 38 allows streaming media system 20 to communicate with other networks or devices of communication system 10 . Communication network 38 may comprise a public or private data network, the Internet, a wireline or wireless network, a local, regional, or global communication network, an enterprise intranet, other suitable communication link, or any combination of the preceding.

Internet Protocol telephony system 24 provides transmission of data packets according to the Internet Protocol. Internet Protocol telephony system 24 may operate according to any suitable control protocol such as the Signaling Connection Control Part (SCCP), H.323 protocol provided by the International Telecommunications Union (ITU), Session Initiation Protocol (SIP) provided by the Internet Engineering Task Force (IETF), or other suitable control protocol. Codecs of Internet Protocol telephony system 24 may operate according to any suitable protocol, for example, H.323 protocols such as H.261 or H.263 video protocols or G.711, G.722, G.723, G.728, or G.729 audio protocols.

TABLE 2 illustrates example codec schemes and associated transport protocols that may be used by Internet Protocol telephony system 24 .

According to the illustrated embodiment, Internet Protocol telephony system 24 includes a call manager 40 and one or more communication devices 42 coupled to a communication network 44 as illustrated in FIG. 1 . Call manager 40 manages communication of data packets between communication network 44 and communication device 42 .

Communication device 42 may comprise, for example, a cellular telephone, an IP telephone with video, audio, or both types of capabilities, or any other device suitable for communicating data packets to and from system 10 . Communication device 42 may support, for example, simple Internet Protocol (IP), mobile IP, or any other suitable communication protocol. Communication device 42 may utilize, for example, General Packet Radio Service (GPRS) or any other suitable mobile communication technology. A call from communication device 42 may comprise data packets communicating information such as data, video, multimedia, any other suitable type of information, or any combination of the preceding.

Communication network 44 allows Internet Protocol telephony system 24 to communicate with other networks or devices of communication system 10 . Communication network 44 may comprise a public or private data network, the Internet, a wireline or wireless network, a local, regional, or global communication network, an enterprise intranet, other suitable communication link, or any combination of the preceding. According to one embodiment, communication network 44 may comprise all or a portion of communication network 38 .

›DETAILED DESCRIPTION OF THE DRAWINGS · 2 of 3

A gateway 46 may be used to couple Internet Protocol telephony system 24 to a public switched telephone network 48 to allow communication between Internet Protocol telephony system 24 and PSTN device 50 . Since public switched telephone network 48 uses circuit switching to communicate telephone calls, gateway 46 may convert between a circuit-switched signal for public switched telephone network 48 and digital data for Internet Protocol telephony system 24 .

Conversion module 28 may convert media streams between different protocols used by different systems of communication system 10 . “Conversion” may refer to modifying data streams that conform to one protocol so that the data streams conform to another protocol. The conversion may involve changes between codec protocols, transport protocols, call control protocols, or other suitable protocols. Conversion may involve transcoding media data from one protocol to another protocol, which may involve decoding data conforming to one protocol to yield raw data and encoding the raw data to conform to another protocol. Raw data may comprise data that carries information and that may be translated from one format to another format.

According to one embodiment, conversion module 28 may convert between a streaming media codec protocol and an Internet Protocol codec protocol, and may convert between a streaming media transport protocol, such as an Audio-Video Transport (AVT) protocol, and an Internet Protocol transport protocol. Conversion module 28 , however, may convert data between any two suitable protocols. Conversion module 28 may also be configured to perform transcoding only in certain situations. For example, conversion module 28 may determine whether transcoding is needed and perform transcoding in response to the determination.

According to one embodiment, conversion module 28 may use appropriate control planes for different protocols to initiate communication sessions, communicate between different codecs, and transport media streams. As an example, conversion module 28 may initiate sessions with streaming media system 20 using a streaming media control plane such as Real Time Streaming Protocol (RTSP), Session Description Protocol (SDP), a proprietary protocol, or other suitable protocol, and may initiate sessions with Internet Protocol telephony system 24 using an Internet Protocol such as Signaling Connection Control Part (SCCP), Session Initiation Protocol (SIP), H.323 protocol, or other suitable protocol.

Conversion module 28 may transmit data between streaming media codecs operating according to Moving Pictures Experts Group (MPEG) 1/2/4 video protocol or MPEG Layer 3 (MP3) or MJPEG audio protocol and codecs operating according to an Internet Protocol such as H.261, H.263, or H263+ video protocol or G.711, G.723, or G.729 audio protocol.

Conversion module 28 may also translate data between different transport protocols such as Real Time Transport Protocol (RTP) over Real Time Streaming Protocol (RTSP), User Datagram Protocol (UDP), or other protocol for streaming media system 20 and Realtime Transport Protocol over user Datagram Protocol (UDP) or a proprietary protocol of Internet Protocol telephony system 24 . Data may be converted between audio-visual transport protocols such as RFC 3016, 2250, or 3119, or other suitable transport protocol to an Internet Protocol telephony transport protocol such as RFC 2032, 2190, 2429, or 1890, or other suitable transport protocol.

As an example, in operation, conversion module 28 receives a media stream from streaming media system 20 . The streaming media may be delivered according to any suitable format such as HyperText Transfer Protocol (HTTP) or Session Announcement Protocol (SAP) format, and the data may be sent according to Real Time Transport Protocol. The media stream may be converted by decoding the media stream to yield raw media data, and encoding the raw media data to yield telephony codec data. The raw media data may comprise pulse code modulation (PCM) audio data, Yuv formatted video data, or both. The telephony codec data may comprise data that can be transmitted according to Internet Protocol telephony protocols. According to one embodiment, conversion module 28 may replicate the media stream to multiple clients. Conversion module 28 may be used to, for example, inject a training video into a video conference. As another example, an IP mobile phone may receive a streaming broadcast. Conversion module 28 is described in more detail with reference to FIGS. 2 and 3 .

Modifications, additions, or omissions may be made to communication system 10 without departing from the scope of the invention. Moreover, the operations of communication system 10 may be performed by more or fewer modules. For example, the operations of conversion module 28 may be performed by more than one module. Additionally, functions may be performed using any suitable logic comprising software, hardware, other logic, or any suitable combination of the preceding. As used in this document, “each” refers to each member of a set or each member of a subset of a set.

FIG. 2 is a diagram 70 illustrating one embodiment of a method for converting data. Diagram 70 shows communication between communication device 42 , call manager 40 , conversion module 28 , and streaming server 34 .

The method begins at step 74 , where communication device 42 dials into call manager 40 to initiate a call session. Call manager 40 places a call to conversion module 28 at step 76 . In response, conversion module 28 sends a ready response to call manager 40 at step 78 . Call manager 40 sends a ready response to communication device 42 at step 80 .

Conversion module 28 calls streaming server 34 at step 82 . Streaming server 34 initiates transmission of streaming media to conversion module 28 . Streaming media is transmitted to conversion module at step 84 . Conversion module 28 converts the streaming media from a streaming media protocol to an Internet Protocol. The streaming media is sent to communication device 42 at step 86 to inject the streaming media into the call.

›DETAILED DESCRIPTION OF THE DRAWINGS · 3 of 3

Modifications, additions, or omissions may be made to the method without departing from the scope of the invention. For example, call manager 40 may be omitted, and communication device 42 may communicate directly with conversion module 28 . Communication device 42 may initiate a call with conversion module 28 at step 90 . Conversion module 28 may send a ready response to communication device 42 at step 92 and then proceed to step 82 . Additionally, steps may be performed in any suitable order without departing from the scope of the invention.

FIG. 3 is a block diagram illustrating one embodiment of conversion module 28 . According to the illustrated embodiment, conversion module 28 includes an interface (I/F) 110 , a processor 114 , a memory 118 , a call control 119 , and other modules 120 coupled as shown in FIG. 3 . Interface 110 receives and transmits signals. Processor 114 manages the operation of conversion module 28 , and may comprise any suitable device operable to accept input, process the input according to predefined rules, and produce output.

Memory 118 stores data used by processor, and may include Random Access Memory (RAM), Read Only Memory (ROM), magnetic drives, disk drives, Compact Disk (CD) Drives, Digital Video Disk (DVD) drives, removable media storage, any other suitable data storage device, or a combination of any of the preceding. Call control 119 may set up one or more sessions, where each session is operable to handle a media stream. Each session may handle an audio stream, a video stream, or both.

Modules 120 may comprise logic such as software, hardware, or any suitable combination of software and hardware operable to perform conversion operations, and may include, for example, a receiver 122 , a decoder 126 , a resizer/resampler 130 , an encoder 134 , and a transmitter 138 . Modules 120 , however, may include fewer, more, or other modules. Modules 120 may be coupled to processor 114 using a bus connection or other suitable link.

Receiver 122 receives streaming data through interface 110 , and may comprise, for example, an Ethernet controller, an Internet Protocol stack, a realtime protocol receiver, or other suitable component. The streaming data may be encoded according to one or more first protocols comprising protocols for streaming data such as Ethernet protocol, Internet Protocol, User Datagram Protocol, Real Time Transport Protocol, and codec specific Real Time Transport Protocol. Decoder 126 decodes the streaming data, and may comprise a streaming decoding engine such as an MPEG 1 Layer 3 audio decoder. Resizer/resampler 130 resizes and/or resamples the streaming data to prepare the data for encoding according to a second protocol such as an IP telephony protocol. Encoder 134 encodes the data according to the second protocol. Transmitter 138 transmits the encoded data to one or more destinations.

Modifications, additions, or omissions may be made to the system without departing from the scope of the invention. Moreover, the operations of the system may be performed by more or fewer modules. For example, the operations of resizer/resampler 130 and encoder 134 may be performed by one module, or the operations of resizer/resampler 130 may be performed by more than one module. Additionally, functions may be performed using any suitable logic comprising software, hardware, other logic, or any suitable combination of the preceding.

Certain embodiments of the invention may provide one or more technical advantages. A technical advantage of one embodiment may be that a media stream may be converted from one protocol to another protocol. By performing this conversion, the media stream may, for example, be inserted into a call between communication devices.

Although an embodiment of the invention and its advantages are described in detail, a person skilled in the art could make various alterations, additions, and omissions without departing from the spirit and scope of the present invention as defined by the appended claims.

›Tables in the description — 2
TABLE 1
CodecTransport Protocol
MPEG 4 videoRFC 3016
MPEG ½ videoRFC 2250
MP3 filesRFC 2250 or 3119
AAC audioRFC 3016
TABLE 2
CodecTransport Protocol
H.261RFC 2032
H.263 or H.263+RFC 2190 or 2429
G.711RFC 1890
G.723RFC 1890
G.729RFC 1890

Claims as granted

13 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

4 codes
IPC · International Patent Classification
Section H — Electricity
  • H04L69/085
  • H04L12/28
USPC · US Patent Classification
370/401370/466

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoom2004200520062007200820092010USPTOApplicantNon-final rejectionResponse after finalResponse after non-finalAdvisory actionResponse after non-final
USPTOApplicanthover for detail · click to open
Pendency
6.7 y
2,429 days filing → grant
Office actions
5
non-final + final
Responses
5
2 RCE
Interviews
1
examiner interview summaries
Examiner
Jayanti K Patel
art unit 2419 · TC 2400
Citations: 17 back · 6 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom20042006200820102012201420162018202020222024Owner 1
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock