WO2003053040A2 - Systeme et procede de modification d'un flot de donnees video sur la base d'un environnement client ou reseau - Google Patents

Systeme et procede de modification d'un flot de donnees video sur la base d'un environnement client ou reseau Download PDF

Info

Publication number
WO2003053040A2
WO2003053040A2 PCT/US2002/039919 US0239919W WO03053040A2 WO 2003053040 A2 WO2003053040 A2 WO 2003053040A2 US 0239919 W US0239919 W US 0239919W WO 03053040 A2 WO03053040 A2 WO 03053040A2
Authority
WO
WIPO (PCT)
Prior art keywords
computer
video stream
network
obtaining
modifying
Prior art date
Application number
PCT/US2002/039919
Other languages
English (en)
Other versions
WO2003053040A3 (fr
Inventor
Jens Cahnbley
John William Richardson
Original Assignee
Thomson Licensing S.A.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Thomson Licensing S.A. filed Critical Thomson Licensing S.A.
Priority to MXPA04005740A priority Critical patent/MXPA04005740A/es
Priority to EP02797305A priority patent/EP1454250A4/fr
Priority to AU2002361665A priority patent/AU2002361665A1/en
Priority to JP2003553813A priority patent/JP2005513876A/ja
Priority to KR1020047008811A priority patent/KR101080237B1/ko
Priority to US10/498,737 priority patent/US8352991B2/en
Publication of WO2003053040A2 publication Critical patent/WO2003053040A2/fr
Publication of WO2003053040A3 publication Critical patent/WO2003053040A3/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234381Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number

Definitions

  • the invention disclosed herein relates to a system and method for delivering a video stream across a data communications network.
  • the quality of the presentation at a client device of video based on a video stream received through a network can be limited by the bandwidth available in the network. Network congestion can result in data being dropped from data transmissions carried by the network. Thus, when a network experiences congestion, a video stream being carried by the network can suffer frame loss thereby resulting in degraded quality of video presented based on the video stream. Also, the quality of the presentation at a client device of video based on a video stream received through a network can be limited by the ability of the client device to decode the video stream. Where a client device lacks the ability to fully decode a video stream that is being received, the unused data corresponds to wasted network bandwidth.
  • the present invention provides for a video stream being encoded according to one or more parameters and transmitted through a network to a computer to be dynamically modified during the encoding process based on conditions in the network and the ability of the computer to decode the video stream.
  • the invention provides a method, system, and computer program product for modifying a video stream being encoded according to the values of one or more parameters and being delivered through a network. First, data related at least to the ability of the network to transport the video stream is obtained. Then, the values of the one or more parameters according to which the video stream is being encoded are modified based on the obtained data.
  • the video stream being encoded according to the values of one or more parameters is being delivered through the network to a computer.
  • Data related at least to the ability of the network to transport the video stream and the ability of the computer to decode the video stream is obtained.
  • the values of the one or more parameters according to which the video stream is being encoded are then modified based on the obtained data.
  • the one or more parameters according to which the video stream is being encoded includes a frame resolution which is modified based on the obtained data.
  • the one or more parameters according to which the video stream is being encoded includes a frame rate which is modified based on the obtained data.
  • the data related to the ability of the network to transport the video stream to the computer and related to the ability of the computer to decode the video stream is obtained through RTCP packets received from the computer.
  • the data related to the ability of the network to transport the video stream to the computer and related to the ability of the computer to decode the video stream includes a measurement representing the computer processor power available at the computer for decoding the video stream being delivered to the computer.
  • the data related to the ability of the network to transport the video stream to the computer and related to the ability of the computer to decode the video stream includes a measurement representing the packet loss associated with the delivery of the video stream through the network to the computer.
  • the data related to the ability of the network to transport the video stream to the computer and related to the ability of the computer to decode the video stream includes a measurement representing the bytes transmitted and the bytes received associated with the delivery of the video stream through the network to the computer.
  • the data related to the ability of the network to transport the video stream to the computer and related to the ability of the computer to decode the video stream includes a measurement representing a bit error rate associated with the delivery of the video stream through the network to the computer.
  • Fig. 1 is a block diagram showing an embodiment of the present invention and the environment in which it operates;
  • Fig. 2 is a table showing examples of predefined data ranges and corresponding parameter values
  • Fig. 3 is a flowchart showing an operative embodiment of the invention.
  • Fig. 4 is a flowchart showing another operative embodiment of the invention.
  • a Video Server (“VS") System 100 communicates with a Video Client (“VC") System 300 through a Network 200.
  • VS System 100 encompasses any computer system capable of (a) encoding a video stream according to one or more parameters, (b) transmitting the encoded stream to another computer through a network, (c) receiving data regarding conditions in the network and the other computer, and (d) modifying the one or more parameters based on the received data to thereby modify the encoding of the video stream.
  • VS System 100 may comprise computer code to perform the above functions.
  • VS System 100 comprises a Video
  • VET System 100 encompasses any computer system capable of performing the encoding and transmitting functions described above, and may comprise computer code for performing those functions.
  • VET System 100 may comprise a computer system capable of encoding a video stream of any known format, e.g., MPEG and H.263, according to one or more parameters, including, for example, frame resolution and frame rate, and transmitting the video stream over a network through known techniques, for example, according to IP, TCP/IP, and UDP protocols as well as protocols related to the transport of streaming data, e.g., Real Time Streaming Protocol (RTSP), Real-Time Transport Protocol (RTP), and Real Time Control Protocol (RTCP).
  • RTSP Real Time Streaming Protocol
  • RTP Real-Time Transport Protocol
  • RTCP Real Time Control Protocol
  • the one or more parameters described above may be stored, e.g., in a memory, so that they can be modified and accessed by other computer systems, e.g., VEC System 120.
  • VEC System 120 encompasses any computer system capable of performing the receiving and modifying functions described above, and may comprise computer code for performing those functions.
  • VEC System 120 may comprise a computer system capable of receiving data regarding conditions in the network over which the video stream is being sent and in the computer receiving the video stream as application specific data contained within RTCP packets received from the computer receiving the video stream, and modifying the one or more parameters according to which the video stream is being encoded based on tables of predefined ranges for the received data and predefined parameters values corresponding to the predefined ranges.
  • Fig. 2 shows an exemplary table of predefined ranges for the received data and predefined parameters values corresponding to the predefined ranges.
  • the first column of the table shows CPU Power Available, described further below, as predefined percentage ranges.
  • the second column of the table shows predefined frame resolutions corresponding to the predefined CPU Power Available percentage ranges.
  • VEC System 120 could consult the table of Fig. 2 to determine that a frame resolution of 352 x 288 to corresponds with the predefined range encompassing the received data.
  • VEC System 120 would modify the frame resolution parameter to 352 x 288 to thereby cause VET System 110 to encode the video stream at that frame resolution.
  • Similar tables may be used in relation to other types of data received by VEC System 120, as described further below.
  • the values shown in Fig. 2 are exemplary only and that the values in this table, as well as the values that may be used in similar tables related to other types of data received by VEC System 120 other than CPU Power Available, are exemplary only and may be varied as a matter of design choice for the user and implementer of the invention.
  • Network 200 encompasses any communication network capable of transporting video streams and related control data.
  • Network 200 may comprise a LAN, WAN, or the Internet.
  • VC System 300 encompasses any computer system capable of (a) receiving a video stream through a network and decoding the received video stream for presentation to a user, (b) gathering data regarding (i) conditions in the network through which the video stream is being received and (ii) resources available within VC System 300 for decoding the video stream being received, and (c) transmitting the gathered data to the computer system transmitting the video stream being received by VC System 300.
  • VC System 300 may comprise computer code to perform the above functions.
  • VC System 300 comprises a Video Receiving and Decoding (“VRD") System 310 and a Condition Reporting ("CR") System 320.
  • VRD System 310 encompasses any computer system capable of receiving video streams through a network and decoding the received video streams for presentation to a user.
  • VRD System 310 may comprise known video streaming client software, e.g., RealOneTM Player from RealNetworks, Inc. or Windows Media PlayerTM from Microsoft Corporation.
  • CR System 320 encompasses any computer system capable of gathering data regarding conditions in the network through which a video stream is being received and resources available within VC System 300 for decoding the video stream being received, and transmitting the gathered data to the computer system transmitting the video stream being received by VC System 300.
  • CR System 320 may comprise computer code for gathering data regarding conditions in a network as well as data regarding the resources available within a computer system according to any known method or technique.
  • the types of data gathered by CR System 320 regarding conditions in a network may include, for example, measurements related to the reception through the network of a video stream currently being received, including, for example, measurements representing the packet loss, bytes transmitted/received, and bit error rate associated with a video stream currently being received through the network.
  • the types of data gathered by CR System 320 regarding resources available within VC System 300 for decoding the received video stream include, for example, measurements representing the memory and CPU power available for decoding the received video stream.
  • CR System 320 may comprise computer code for performing the function of transmitting the gathered data to the computer system transmitting the video stream being received by VC System 300.
  • CR System 320 may comprise computer code which, when executed, causes CR System 320 to transmit the gathered data as application specific data in RTCP packets that it sends to the computer system transmitting the video stream being received by VC System 300.
  • VET System 110 and VEC System 120 each may comprise computer code that resides on the same computer hardware of VS System 100 .
  • VET System 110 and VEC System 120 each may be implemented in distinct computer hardware.
  • Figs. 3 and 4 are flowcharts showing one way in which the present invention may operate, where Fig. 3 shows the operations performed at VS 100 and Fig. 4 shows the operations performed at VC 300.
  • Fig. 3 shows the operations performed at VS 100
  • Fig. 4 shows the operations performed at VC 300.
  • VC System 300 For example, VS System 100 may communicate with VC System 300 to establish an RTP/UDP connection over which encoded video maybe transmitted to VC System 300 and an RTCP/UDP connection over which diagnostic information may be received from VC System 300.
  • a determination may be made as to whether any source data remains to encode and transmit as part of the video stream.
  • VET System 110 may make a determination of whether the process of encoding live video is continuing, and where the source data is video data from a stored file that is being transcoded by VS System 100, VET System 110 may make a determination of whether any data remains in the stored video file to be transcoded. If the determination resulting from the operations represented in block 1050 is negative, then processing terminates at VS System 100. On the other hand, if the determination resulting from the operations represented in block 1050 is positive, then the operations represented in blocks 1100, 1200, and 1300 are performed. As represented in block 1100, the stored values for the one or more parameters according to which the video stream is encoded are retrieved.
  • VET System 110 may retrieve values for each of the one or more parameters from the storage location associated with each parameter.
  • the source data is encoded into a video stream according to the retrieved values for the one or more parameters, as represented in block 1200.
  • VET System 110 may encode the source data according to a known video compression algorithm, e.g., MPEG or H.263, according to the values retrieved for the one or more parameters previously described, e.g., frame resolution and frame rate.
  • the encoded video stream is transmitted, as represented in block 1300.
  • VET System 110 may transmit the encoded video stream over Network 200 to VC System 300. Processing then returns to the operations represented in block 1050.
  • the operations represented in blocks 1400, 1500, and 1600 are also performed.
  • the operations represented in blocks 1400, 1500, and 1600 maybe performed concurrently and independently of the operations represented in blocks 1100, 1200, and 1300.
  • a determination is made as to whether any data has been received from VC System 300 regarding the conditions in Network 200 or VC System 300.
  • VEC System 120 of VS System 100 may examine the RTCP packets received from VC System 300 over the established RTCP/UDP connection to determine if data has been received from VC System 300 regarding the conditions in Network 200 or the conditions in VC System 300 regarding its ability to decode the video stream in the application specific portion of RTCP packets received from VC System 300. If the determination resulting from the operations represented in block 1400 is negative, then processing returns to the operations represented in block 1050. If the determination resulting from the operations represented in block 1400 is positive, then processing continues with the operations represented in block 1500, where values for each of the one or more parameters that corresponds to the received data are determined.
  • VEC System 120 may compare the data received from VC System 300 with a table specifying predefined ranges for the type of data received and corresponding values for each of the one or more parameters for each predefined range, as described previously in connection with Fig. 2. For instance, where the data received from VC System 300 represents a measurement of the CPU power available at VC System 300 for decoding the video stream currently being transmitted from VS System 100 to VC System 300, then VEC System 120 may compare the data received from VC System 300 with the table of Fig. 2 to determine the predefined range encompassing the received data and the value for the frame resolution parameter corresponding to this range.
  • VEC System 120 may determine 352 x 288 to be the proper value for the frame resolution parameter corresponding to this received data. In a similar manner, VEC System 120 may determine the values of each of the one or more parameters that corresponds to the data received from VC System 300.
  • VEC System 120 may compare the values determined for each of the one or more parameters, from the operations represented in block 1500, with the stored values for each of the one or more parameters. If any of the determined values differs from the stored value for a parameter, VEC System 120 stores the determined value in the storage area associated with the parameter. Processing then goes back to the operations represented in block 1050.
  • VC System 300 receives the video stream through Network 200 and decodes it for presentation to a user operating VC System 300.
  • communications are established with VS System 100, as represented in block 2000.
  • VC System 300 may communicate with VS System 100 to establish the RTP/UDP connection over which encoded video may be received from VS System 300 and an RTCP/UDP connection over which diagnostic information may be transmitted to VS System 100.
  • VRD System 310 then begins and continues the process of receiving and decoding the video stream being sent from VS System 100. While VRD System 310 in the receiving and decoding process, CR System 320 continually performs the operations represented in blocks 2050, 2100, and 2200 shown in Fig. 4.
  • CR System 320 begins monitoring this process, as represented in block 2050, by making a determination of whether this receiving and decoding process is continuing at VRD System 310. If this determination is negative, the processing at CR System 320 terminates.
  • CR System 300 may employ known techniques to obtain data including, for example, measurements representing (a) the packet loss associated with the delivery of the video stream from VS System 100 to VC System 300 through Network 200, (b) the number of bytes transmitted by VS System 100 and the number of bytes received by VC System 300 associated with the delivery of the video stream from VS System 100 to VC System 300 through Network 200, (c) the bit error rate associated with the delivery of the video stream from VS System 100 to VC System 300 through Network 200.
  • CR System may employ known techniques to obtain data including, for example, measurements representing the memory available or the CPU power available at VC System 300 to decode the video stream being received from VS System 100. It should be noted that the memory and CPU power available may fluctuate as those resources are used and released for other purposes at VC System 300, e.g., as other application programs are opened or closed at VC System 300.
  • the data described above may be measured in any known manner so long as the standard of measurement used by CR System 320 is the same standard used by VEC System 120 (e.g., CPU power available represented as a percentage of total CPU power by CR System 320 as well as VEC System 120, such as shown in the table of Fig. 2).
  • VEC System 120 e.g., CPU power available represented as a percentage of total CPU power by CR System 320 as well as VEC System 120, such as shown in the table of Fig. 2 2).
  • the gathered data is transmitted to VS System 100, as represented in " block 2200.
  • CR System 320 may transmit the gathered data regarding conditions in Network 200 and the resources available in VC System 200 to decode the video stream as application specific data of RTCP packets that are transmitted back to VS System 100 over the established RTCP/UDP connection. Processing then continues with the operations in block 2050.
  • VC System 200 may continually gather data regarding the conditions in Network 200 and in VC System 200 and send this data to VS System 100 for use in adjusting the encoding of the video stream.
  • the data received at VS System 100 may cause it to reduce, for example, the frame resolution of the video stream being encoded.
  • data received at VS System 100 may cause it to increase, for example, the frame resolution of the video stream being encoded.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Selon la présente invention, un serveur vidéo (100) code un flot de données vidéo conformément aux valeurs de certains paramètres et envoie le flot de données vidéo sur un réseau (200) à un client vidéo (200) qui décode le flot de données vidéo reçu pour que ces données soit présentées à un utilisateur. A la réception du flot de données vidéo, le client vidéo (200) réunit en continu les données concernant au moins l'état du réseau (200) et envoie ces données au serveur vidéo (100). Ce serveur vidéo (100) modifie les valeurs des paramètres sur la base des données reçues du client vidéo (200) qui, à son tour, modifie le codage du flot de données vidéo.
PCT/US2002/039919 2001-12-15 2002-12-13 Systeme et procede de modification d'un flot de donnees video sur la base d'un environnement client ou reseau WO2003053040A2 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
MXPA04005740A MXPA04005740A (es) 2001-12-15 2002-12-13 Sistema y metodo para modificar una corriente de video con base en un cliente o en un ambiente de red.
EP02797305A EP1454250A4 (fr) 2001-12-15 2002-12-13 Systeme et procede de modification d'un flot de donnees video sur la base d'un environnement client ou reseau
AU2002361665A AU2002361665A1 (en) 2001-12-15 2002-12-13 System and method for modifying a video stream based on a client or network environment
JP2003553813A JP2005513876A (ja) 2001-12-15 2002-12-13 クライアント又はネットワーク環境に基づいて映像ストリームを修正するシステム及び方法
KR1020047008811A KR101080237B1 (ko) 2001-12-15 2002-12-13 클라이언트 또는 네트워크 환경에 기초한 비디오 스트림을 수정하는 시스템 및 방법, 비디오 스트림의 수정을 용이하게 하는 시스템 및 방법, 및 컴퓨터 사용가능한 매체
US10/498,737 US8352991B2 (en) 2002-12-09 2002-12-13 System and method for modifying a video stream based on a client or network environment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US34167201P 2001-12-15 2001-12-15
US60/341,672 2001-12-15

Publications (2)

Publication Number Publication Date
WO2003053040A2 true WO2003053040A2 (fr) 2003-06-26
WO2003053040A3 WO2003053040A3 (fr) 2003-12-18

Family

ID=23338551

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2002/039919 WO2003053040A2 (fr) 2001-12-15 2002-12-13 Systeme et procede de modification d'un flot de donnees video sur la base d'un environnement client ou reseau

Country Status (7)

Country Link
EP (1) EP1454250A4 (fr)
JP (1) JP2005513876A (fr)
KR (1) KR101080237B1 (fr)
CN (1) CN1316398C (fr)
AU (1) AU2002361665A1 (fr)
MX (1) MXPA04005740A (fr)
WO (1) WO2003053040A2 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1922878A2 (fr) * 2005-08-01 2008-05-21 Covi Technologies, Inc. Systèmes et procédés pour la sélection de flux vidéo
US7428271B2 (en) 2003-07-15 2008-09-23 Samsung Electronics Co., Ltd. Network device and data transmission method for efficient data transmission and reception in mobile ad hoc network environment
WO2012154157A1 (fr) * 2011-05-06 2012-11-15 Google Inc. Appareil et procédé pour la modification dynamique de schéma de codage sur la base d'utilisation de ressources
JP2014509113A (ja) * 2011-01-19 2014-04-10 サムスン エレクトロニクス カンパニー リミテッド 相互階層最適化を用いた、マルチメディアデータパケットを送信する方法及び装置

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4789401B2 (ja) 2003-06-25 2011-10-12 トヨタ自動車株式会社 コンテンツ配信システム
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
CN100588249C (zh) * 2006-07-27 2010-02-03 腾讯科技(深圳)有限公司 调节视频质量的方法、系统及终端
CN101282141B (zh) * 2007-04-05 2012-06-06 华为技术有限公司 一种传输数据和接收数据的方法、装置和系统
JP2009152952A (ja) * 2007-12-21 2009-07-09 Nec Corp 配信システム、配信方法及びプログラム
CN101215118B (zh) * 2008-01-14 2010-06-09 张建荣 共聚型聚羧酸类减水剂及其制备方法
CN101365125B (zh) * 2008-09-27 2012-03-21 腾讯科技(深圳)有限公司 多路视频通信方法与系统
CN101552913B (zh) * 2009-05-12 2011-07-06 腾讯科技(深圳)有限公司 多路视频通讯系统及处理方法
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US9456015B2 (en) * 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
CN102668579A (zh) * 2010-10-05 2012-09-12 英特尔公司 用于动态调整视频质量的方法和装置
JP5660983B2 (ja) 2011-06-28 2015-01-28 トヨタ自動車株式会社 コンテンツ配信システム
CN103313095A (zh) * 2012-03-16 2013-09-18 腾讯科技(深圳)有限公司 视频传输方法、播放方法、终端和服务器
WO2014122693A1 (fr) * 2013-02-08 2014-08-14 三菱電機株式会社 Dispositif client, dispositif serveur et système de transmission d'écran
US20140347376A1 (en) * 2013-05-24 2014-11-27 Nvidia Corporation Graphics server and method for managing streaming parameters
US20150117516A1 (en) * 2013-10-30 2015-04-30 Vered Bar Bracha Dynamic video encoding based on channel quality
CN104935971B (zh) * 2015-06-02 2018-08-07 阔地教育科技有限公司 一种在线课堂中的视频传输动态调整方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006241A (en) * 1997-03-14 1999-12-21 Microsoft Corporation Production of a video stream with synchronized annotations over a computer network
US6233017B1 (en) * 1996-09-16 2001-05-15 Microsoft Corporation Multimedia compression system with adaptive block sizes
US6445679B1 (en) * 1998-05-29 2002-09-03 Digital Vision Laboratories Corporation Stream communication system and stream transfer control method
US6529475B1 (en) * 1998-12-16 2003-03-04 Nortel Networks Limited Monitor for the control of multimedia services in networks

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100345497B1 (ko) * 1994-06-07 2002-10-04 유니시스 코포레이션 동기화 그룹을 사용하는 멀티-캐스트 디지탈 비디오 데이터서버
WO1997022201A2 (fr) * 1995-12-12 1997-06-19 The Board Of Trustees Of The University Of Illinois Procede et systeme de transmission et/ou de recuperation d'information audio et video en temps reel par des systemes de transmission limites en performance
JPH10126771A (ja) * 1996-10-15 1998-05-15 Toshiba Corp 画像データ転送システムにおける画像データ送出レート制御方法および画像データ転送方法
US6421733B1 (en) * 1997-03-25 2002-07-16 Intel Corporation System for dynamically transcoding data transmitted between computers
US6192032B1 (en) * 1998-01-02 2001-02-20 International Business Machines Corporation Rate attenuation systems, methods and computer program products for reducing low priority video frame packets transmitted over a network
JPH11266229A (ja) * 1998-03-18 1999-09-28 Matsushita Electric Ind Co Ltd スペクトラム拡散通信方式によるデータ伝送装置
SG77650A1 (en) * 1998-09-07 2001-01-16 Victor Company Of Japan A scalable delivery scheme of compressed video
JP2000228676A (ja) * 1998-11-30 2000-08-15 Matsushita Electric Ind Co Ltd データ送信方法
JP2000270330A (ja) * 1999-03-18 2000-09-29 Fujitsu Ltd 映像配信システム及び映像配信方法
JP2000295597A (ja) * 1999-04-09 2000-10-20 Oki Electric Ind Co Ltd メディアデータ受信および送信装置
JP2001025013A (ja) * 1999-07-12 2001-01-26 Matsushita Electric Ind Co Ltd 送受信方法及びその装置
US20010047517A1 (en) * 2000-02-10 2001-11-29 Charilaos Christopoulos Method and apparatus for intelligent transcoding of multimedia data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233017B1 (en) * 1996-09-16 2001-05-15 Microsoft Corporation Multimedia compression system with adaptive block sizes
US6006241A (en) * 1997-03-14 1999-12-21 Microsoft Corporation Production of a video stream with synchronized annotations over a computer network
US6445679B1 (en) * 1998-05-29 2002-09-03 Digital Vision Laboratories Corporation Stream communication system and stream transfer control method
US6529475B1 (en) * 1998-12-16 2003-03-04 Nortel Networks Limited Monitor for the control of multimedia services in networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1454250A2 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7428271B2 (en) 2003-07-15 2008-09-23 Samsung Electronics Co., Ltd. Network device and data transmission method for efficient data transmission and reception in mobile ad hoc network environment
CN100456673C (zh) * 2003-07-15 2009-01-28 三星电子株式会社 移动专用网络环境中有效发送接收数据的网络设备和方法
EP1922878A2 (fr) * 2005-08-01 2008-05-21 Covi Technologies, Inc. Systèmes et procédés pour la sélection de flux vidéo
EP1922878A4 (fr) * 2005-08-01 2010-09-22 Covi Technologies Inc Systèmes et procédés pour la sélection de flux vidéo
JP2014509113A (ja) * 2011-01-19 2014-04-10 サムスン エレクトロニクス カンパニー リミテッド 相互階層最適化を用いた、マルチメディアデータパケットを送信する方法及び装置
US9584441B2 (en) 2011-01-19 2017-02-28 Samsung Electronics Co., Ltd. Method and apparatus for transmitting a multimedia data packet using cross-layer optimization
US10630603B2 (en) 2011-01-19 2020-04-21 Samsung Electronics Co., Ltd. Method and apparatus for transmitting a multimedia data packet using cross-layer optimization
US11316799B2 (en) 2011-01-19 2022-04-26 Samsung Electronics Co., Ltd. Method and apparatus for transmitting a multimedia data packet using cross-layer optimization
WO2012154157A1 (fr) * 2011-05-06 2012-11-15 Google Inc. Appareil et procédé pour la modification dynamique de schéma de codage sur la base d'utilisation de ressources

Also Published As

Publication number Publication date
EP1454250A2 (fr) 2004-09-08
CN1605075A (zh) 2005-04-06
AU2002361665A1 (en) 2003-06-30
EP1454250A4 (fr) 2010-08-25
MXPA04005740A (es) 2004-12-06
KR101080237B1 (ko) 2011-11-08
CN1316398C (zh) 2007-05-16
KR20040074997A (ko) 2004-08-26
WO2003053040A3 (fr) 2003-12-18
JP2005513876A (ja) 2005-05-12
AU2002361665A8 (en) 2003-06-30

Similar Documents

Publication Publication Date Title
US8352991B2 (en) System and method for modifying a video stream based on a client or network environment
WO2003053040A2 (fr) Systeme et procede de modification d'un flot de donnees video sur la base d'un environnement client ou reseau
US8255551B2 (en) Adaptive bitrate management for streaming media over packet networks
US9191664B2 (en) Adaptive bitrate management for streaming media over packet networks
JP3814614B2 (ja) マルチメディア・ストリーミング環境におけるサーバベースのレート制御
KR101449710B1 (ko) 데이터 통신시스템, 데이터 송신장치, 데이터 송신방법 및패킷 사이즈 및 용장도 결정방법
EP2719144B1 (fr) Gestion de débit binaire adaptative à la demande permettant une transmission multimédia en continu sur des réseaux de paquets
JP4748729B2 (ja) データおよび対応するプロダクトを送信する準備のための装置と方法
CA2457193C (fr) Procede et systeme de transmission des donnees pour la transmission de multiples flots de donnees par calcul de bande passante disponible par flot et choix de trains de bits
WO2004017638A1 (fr) Procede et systeme de transmission multimedia domestique
WO2012161652A1 (fr) Procédés d'émission et de réception d'un signal numérique, émetteur et récepteur
KR20050091054A (ko) 콘텐츠의 스트림 비트율을 조정하기 위한 디바이스 및프로세스 그리고 관련 제품
US20090268730A1 (en) Data transmitting apparatus and method and program for controlling transmission rate
EP1533969A1 (fr) Rapport de pertes pour des services de transmission en continu à commutation par paquets en utilisant loss RLE report blocks
CN110881018B (zh) 媒体流的实时接收方法及客户端
JP2001186187A (ja) データ通信装置及び通信制御方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LU MC NL PT SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1473/DELNP/2004

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2003553813

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2002797305

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020047008811

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: PA/a/2004/005740

Country of ref document: MX

WWE Wipo information: entry into national phase

Ref document number: 10498737

Country of ref document: US

Ref document number: 20028251229

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2002797305

Country of ref document: EP