KR20050010832A - 채널 전송 속도의 변동을 흡수하기 위해 가상 수신 버퍼를사용하는 전송 방법 - Google Patents

채널 전송 속도의 변동을 흡수하기 위해 가상 수신 버퍼를사용하는 전송 방법 Download PDF

Info

Publication number
KR20050010832A
KR20050010832A KR10-2004-7018877A KR20047018877A KR20050010832A KR 20050010832 A KR20050010832 A KR 20050010832A KR 20047018877 A KR20047018877 A KR 20047018877A KR 20050010832 A KR20050010832 A KR 20050010832A
Authority
KR
South Korea
Prior art keywords
data
risk
transmission
bit rate
rate
Prior art date
Application number
KR10-2004-7018877A
Other languages
English (en)
Inventor
페이로랑트
Original Assignee
코닌클리케 필립스 일렉트로닉스 엔.브이.
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 코닌클리케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20050010832A publication Critical patent/KR20050010832A/ko

Links

Classifications

    • 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
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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 
    • 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/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 가변 채널 전송 속도를 가지는 전송 채널을 통해 데이터 비트율 언급되는 적응 가능 비트율을 가지는 데이터 스트림의 전송에 관한 것이다. 수신기는 수신 버퍼 및 디코더를 포함한다. 본 발명에 따라, a) 상기 수신 버퍼에서 데이터 결핍의 위험 및 데이터 오버플로우의 위험이 추정되고 b) 현재 채널 전송 속도의 추정은 계산되고 c) 현재 채널 전송 속도의 상기 추정에 의존하는 상기 데이터 비트율의 적응은 데이터 결핍 또는 데이터 오버플로우의 위험이 존재하면 트리거된다.

Description

채널 전송 속도의 변동을 흡수하기 위해 가상 수신 버퍼를 사용하는 전송 방법{Transmission method using a virtual reception buffer to absorb fluctuation of the channel transmission rate}
본 발명은 특히, 인터넷을 통한 스트리밍 오디오 및/또는 비디오에 대한 흥미로운 어플리케이션들을 가진다.
논문 "인터넷 비디오 스트리밍을 위한 계층 품질 적응(Layered Quality Adaptation for Internet Video Streaming)" (Reza Rejaie, Mark Handley andDeborah Estrin, IEEE journal on selected areas in Communications, vol.18 No.12, December 2000)은 인터넷을 통한 오디오 또는 비디오 콘텐트의 스트리밍을 다룬다.
한 편, 이 논문에서 설명된 것처럼, 인터넷은 말단 시스템들이 적절하고 빠르게 정체에 반응하도록 예측되는 공유된 환경이다. 이것을 달성하기 위해, 스트리밍 어플리케이션에 대해 사용 가능한 대역폭은 네트워크의 상태에 기초하여 결정된다. 따라서, 대역폭은 예측할 수 없고 잠재적으로 다양한 방식으로 변할 수 있다. 반면에, 비디오 스트리밍 어플리케이션들은 일정한 품질을 가진 스트림을 제공하기 위해 비교적 일정한 대역폭을 요구한다.
이러한 2개의 요구 사항들을 동시에 만족시키기 위해, 인터넷 스트리밍 어플리케이션들은 품질-적응형이 되어야 한다. 이것은, 스트림을 전송하는데 요구된 대역폭이 이용 가능한 대역폭과 매치하도록 스트리밍 어플리케이션들이 공급된 스트림의 품질을 조절해야 하는 것을 의미한다. 이것을 달성하기 위한 하나의 해결책은 각각이 다른 품질에 대응하는 복수의 사전-인코딩된 스트림들 사이를 스위치하는 것이다.
본 발명은 데이터 비트율로 언급되는 적응 가능 비트율을 가지는 데이터 스트림을 전송하는 송신기, 수신 버퍼 및 디코더를 포함하는 수신기, 및 가변 채널 전송 속도를 가지는 전송 채널을 포함하는 전송 시스템에 관한 것이다.
본 발명은 또한 그와 같은 전송 시스템에서 사용되는 송신기에 관한 것이다.
본 발명은 또한 가변 채널 전송 속도를 가지는 전송 채널을 통해 송신기로부터 수신기로 적응 가능 비트율을 가지는 데이터 스트림을 전송하는 전송 방법에 관한 것이다.
본 발명은 또한 상기 프로그램이 처리기에 의해 처리될 때 그와 같은 전송 방법을 구현하는 명령들을 포함하는 프로그램에 관한 것이다.
도 1은 본 발명에 따른 전송 시스템의 제 1 실시예의 기능 블록도.
도 2는 본 발명에 따른 전송 시스템의 제 2 실시예의 기능 블록도.
도 3은 본 발명에 따른 전송 방법의 단계들을 기술하는 흐름도.
본 발명은 전송된 스트림의 비트율을 적응하는 개선된 방법을 제안한다.
본 발명에 따라, 데이터 비트율로 언급되는 적응 가능 비트율을 가진 데이터 스트림을, 가변 채널 전송 속도를 가지는 전송 채널을 통해, 수신 버퍼 및 디코더를 포함하는 수신기에 전송하는 송신기는
상기 수신 버퍼에서 데이터 결핍의 위험을 추정하고;
상기 수신 버퍼에서 데이터 오버플로우의 위험을 추정하고;
현재 채널 전송 속도의 추정을 계산하고;
데이터 결핍의 위험 또는 데이터 오버플로우의 위험이 있다면, 상기 현재 채널 전송 속도의 상기 추정에 따라 상기 데이터 비트율의 적응을 트리거하도록 구성된다.
본 발명에 따라, 수신 버퍼에서 결핍의 위험 또는 오버플로우의 위험이 있는 경우에서만, 데이터 비트율이 적응된다.
이것은 본 발명이 수신 버퍼의 필링 상태(filling state)가 허용하는 한 채널 전송 속도의 변동을 흡수하기 위해 수신 버퍼를 이용하는 것을 의미한다. 이 점에 있어서, 수신 버퍼의 결핍 또는 오버플로우를 피하는 것은 이것이 콘텐트 렌더링에 직접적으로 영향을 주기때문에 필수적이다.
데이터 비트율의 변동들을 제한함으로써, 본 발명은 사용자에 대한 본질적 전체 품질을 개선한다. 사실, 매 시간 데이터 비트율은 수정되고, 렌더링된 콘텐트의 품질은 수신기 측에서 변하며, 콘텐트의 품질에서 너무 잦은 변화들은 최종 사용자에게 매우 불편하다.
송신기 측에서 수신 버퍼의 필링의 정확한 표현을 얻기 위해, 전송 채널을 통한 과도 기간(transit duration)의 현재 값 TD(t)은 데이터 결핍 또는 데이터 오버플로우의 위험을 추정하도록 고려된다.
유리하게, 과도 기간의 현재 값은 하기의 수학식
으로 주어지고, 여기에서 RTT(t)는 상기 라운드 트립 시간의 현재 값이고, RTTmin은 상기 라운드 트립 시간의 최소 값이고,는 0내지 0.5인 상수 인자이다.
데이터가 송신 시간 및 디코딩 시간과 관련된 기본 유닛들(elementary units)로 구성될 때, 데이터 오버플로우 및/또는 데이터 결핍의 위험은 유리하게,
수신된 데이터의 양과 디코딩된 데이터의 양을 비교하고; 및/또는
아직 디코딩되지 않은 수신된 기본 유닛들과 관련된 디코딩 시간들의 최대 값과 최소 값을 비교하고;
송신 시간 및 상기 현재 과도 기간의 합이 상기 현재 시간보다 작거나 같다면 기본 유닛이 수신된 것으로 간주하고, 디코딩 시간이 초과되면 기본 유닛이 디코딩된 것으로 간주하여, 추정된다.
기본 유닛들의 크기가 가변이거나, 2개의 연속적인 기본 유닛들의 디코딩 시간들 간의 차가 가변일 때, 결핍의 위험 및 오버플로우의 위험을 추정하기 위해 관련된 렌더링 기간 및 데이터의 양 모두를 사용하는 것이 유리하다. 수신 버퍼에 저장된 데이터의 양을 제어하는 것은 수신 버퍼가 결코 가득 차거나 비지 않도록 만든다. 수신 버퍼에 저장된 데이터의 렌더링 기간을 제어하는 것은 수신 버퍼에 과도한 양의 데이터를 저장하는 것을 회피하면서 전송에서 작은 홀(hole)들을 흡수하는 것을 허용한다. 이 실시예는 콘텐트가 MPEG-4 표준에 따라 인코딩된 비디오 일때 유리하게 적용하는데, 이 경우 데이터 스트림들이 I-프레임들 및 P-프레임들로 불리는 기본 유닛들을 포함하고, P-프레임들은 I-프레임들보다 더 적은 데이터를 포함하기 때문이다.
본 발명은 결핍 및 오버플로우 전에 어떤 여유도(margin)를 얻기 때문에, 결핍 또는 오버플로우의 어떤 위험 없이 송신기 송신 속도로서 현재 채널 송신 속도의 상기 추정을 강제하도록 기본 유닛들의 송신 시간들을 제어하는 것이 가능하다. 이것은 정체 제어를 개선하기에 유리하다.
예를 들어, TCP 또는 TFRC 같은 제어 속도 프로토콜들은 송신기 송신 속도로서 채널 송신 속도의 추정들을 강제하도록 기본 유닛들의 송신 시간을 제어한다. 본 발명은 수신 버퍼에서 어떤 데이터의 양을 유지하면서 그와 같은 제어 속도 프로토콜들을 사용하는 것을 허용한다.
본 발명은 첨부된 도면들을 참조하여 또한 기술될 것이다.
본 발명에 따른 전송 시스템은 송신기 TX, 수신기 RX, 가변 채널 전송 속도을 가지는 전송 채널 CX, 및 전송 채널 CX를 통해 전송된 데이터 스트림 D2를 제공하는 적응 소스 AS를 포함한다. 적응 소스 AS는 현재 채널 전송 속도에 의존하는 데이터 스트림 D2의 속도(이하에서 데이터 비트율로서 언급되는)에 적응하도록 의도된다. 도 1에서, 적응 소스 AS는 송신기 TX의 일부이다. 도 2에서, 적응 소스 AS 및 송신기 TX는 2개의 분리 엔티티들이다.
본 발명의 제 1 실시예에서, 적응 소스 AS는 다양한 콘텐트 품질들에 대응하는 다양한 인코딩 속도들 R1,...,Rn으로 콘텐트를 인코딩함으로써 얻어지는 복수의 사전-코딩된 데이터 스트림들 S1,...,Sn간의 스위치하도록 의도된 파일 스위처(file switcher)를 포함한다. 상기 사전-코딩된 데이터 스트림들은 적응 소스의 메모리 내에 국부적으로 또는 적응 소스 AS에 의해 이동가능 지원 판독 상에 또는 콘텐트 서버내에 원격적으로 저장될 수 있다.
본 발명의 제 2 실시예에서, 적응 소스 AS는 가변 비트율로 콘텐트를 인코딩하도록 의도된 가변 비트율 인코더를 포함한다.
도 1 및 2에 따라, 송신기 TX는 ISO 프로토콜 스택의 제 1의 4개 계층들을 구현하는 전송/수신 블록 TB를 포함한다. 이 예에서, 네트워크 프로토콜(ISO 계층 3)은 IP(인터넷 프로토콜) 및 전송 프로토콜(ISO 계층 4)은 UDP(사용자 데이터그램 프로토콜)에 대한 RTP(실시간 전송 프로토콜)이다. UDP는 속도 제어 없는 전송 프로토콜이기에, 송신기 TX는 또한 전송 속도 추정 블록 TCB를 포함한다. 전송 속도 추정 블록 TCB는 전송 블록 TB으로부터 데이터 D1을 수신한다. 데이터 D1은 현재 채널 전송 속도의 추정 MB(t)를 계산하기 위해 전송 속도 추정 블록 TCB에 의해 사용된다. 상기 현재 채널 전송 속도 MB(t)의 추정은 적응 소스 AS에 전송된다. 데이터 스트림 D2의 데이터 비트율을 적응하도록 사용된다. 데이터 스트림 D2는 적응 소스 AS로부터 전송 채널 CX를 통해 전송되도록 위에서 언급된 프로토콜과 관련하여 처리되는 전송/수신 블록 TB까지 보내진다.
수신기 RX는 또한 전송/수신 블록 및 송신기 TX의 것과 유사한 전송 속도 추정 블록을 포함한다. 도 1 및 2에서 전송/수신 블록 및 수신기의 전송 속도 추정 블록은 참조 기호들 RB 및 RCB를 개별적으로 운반한다. 수신기 RX는 또한 수신 버퍼 MEM 및 디코더 DEC를 포함한다. 전송 채널을 통해 수신된 데이터는 전송/수신 블록 RB에 의해 처리된다. 그 때 그것들은 디코더 DEC에 의해 소비되기 전에 수신 버퍼 MEM에 저장된다.
본 발명의 목적들 중 하나는 수신 버퍼 MEM의 결핍 및 오버플로우을 피하는 동안 채널 전송 속도의 변동을 흡수하기 위해 수신 버퍼 MEM을 사용하는 것이다. 따라서, 수신 버퍼 시뮬레이션 블록 VB는 송신기 측에서, 수신 버퍼 MEM의 이미지를 만들기 위해 적응 소스 AS의 업스트림으로 제공된다. 수신 버퍼 시뮬레이션 블록 VB는 수신 버퍼 MEM에서 데이터 오버플로우의 위험 및 데이터 결핍의 위험을 추정하고, 데이터 결핍의 위험 또는 데이터 오버플로우의 위험이 있다면, 트리거 신호 TG를 적응 소스 AS에 보낸다. 그와 같은 트리거 신호의 수신시, 적응 소스 AS는 데이터 스트림 D2의 데이터 비트율을 적응한다.
본 발명의 바람직한 실시예에서, 데이터 스트림들은 송신 시간 TSi및 디코딩 시간 DTSi와 관련된 기본 유닛들 Ui로 구성되고, 상기 디코딩 시간은 디코딩 시작 시간 Td에 관하여 정의된다. 디코딩 시작 시간은 송신기 TX로부터 알 수 있다(예컨대, 송신기는 수신 버퍼가 미리 정의된 바이트들의 수 또는 미리 정의된 기본 유닛들의 수을 포함할 때 디코더가 디코딩을 시작한다는 알 수 있다). 디코딩 시작 시간이 송신기 TX로부터 알 수 없다면, 수신기 RX는 디코딩의 시작을 통보하기 위해 송신기에 RTCP 메시지를 보내야 한다(RTCP 메시지의 포맷은 위에서 언급된 RTP 전송 프로토콜로 정의된다). 디코더 DEC의 클록의 어떤 변경은 디코딩 시작 시간 Td의 값을 갱신하도록 송신기 TX에 전송되어야 한다.
수신 버퍼 시뮬레이션 블록 VB는,
송신 시간 TSi, 디코딩 시간 DTSi 및 수신기 RX에 송신되는 각 기본 유닛 Ui에 대한 바이트들의 수 ni를 저장하고,
송신 채널 CX를 통한 기본 유닛의 과도 기간 TD(t)의 현재 값을 계산한다.
이러한 데이터는,
어떤 기본 유닛들이 수신기 RX에 의해 수신되고 수신 버퍼 MEM에 저장되는 것으로 간주되는지;
어떤 기본 유닛들이 디코더 DEC에 의해 소모되는 것으로 간주되는지를 결정하는데 사용된다.
예컨대,
과도 기간 TD(t)의 현재 값은 하기의 방법으로 계산된다;
여기서 RTT(t)는 RTP 프로토콜에 의해 계산되는 라운드 트립 시간(round trip time)이고, RTTmin은 라운드 트립 시간의 최소값이고,는 전송 채널상의 정체의 분배에 대응하는 상수 요소이다.
정체가 다운링크(송신기 TX로부터 수신기 RX)에서만 나타난다면, 그 때= 0;
정체가 다운링크 및 업링크(수신기 RX로부터 송신기 TX) 모두에서 나타난다면, 그 때= 0.5;
정체가 업링크에서만 나타난다면, 그 때= 1;
다운링크가 업링크보다 더 정체된다면, 그 때 0 0.5;
tTSi +TD(t)라면, 기본 유닛 Ui는 수신 버퍼 MEM에 저장되고, 수신기 RX에의해 수신되는 것으로 여겨진다.
DTSit - td 라면, 기본 유닛 Ui는 디코더 DEC에 의해 소모되는 것으로 여겨진다.
데이터 결핍의 위험 및 데이터 오버플로우의 위험을 추정하기 위해, 2개의 표준들은 수신 버퍼 시뮬레이션 블록 VB에 의해 사용될 수 있는데: 수신 버퍼에(바이트들 수내에 또는 기본 유닛들 수내에) 저장된 데이터 N(t)의 양 및/또는 수신 버퍼에 저장된 데이터의 렌더링의 기간(t)이다.
여기에서 DTSmax는 수신 버퍼에서 최종 수신된 기본 유닛의 디코딩 시간이고, DTSmin는 수신 버퍼에서 가장 오래된 기본 유닛의 디코딩 시간이고, N(t)가 바이트들의 수로 표현된다면 ni는 기본 유닛 Ui에서 바이트들의 수이거나, N(t)가 패킷들의 수로 표현된다면 ni는 1과 같다.
기본 유닛들의 크기들이 가변일 때, 또는 두개의 연속적인 기본 유닛들의 디코딩 시간들간의 차가 가변일 때, 적어도 결핍의 위험을 추정하는 두개의 표준을 사용하는 것이 유리하다.
수신 버퍼 시뮬레이션 블록 VB에 의해 구현되는 알고리즘의 바람직한 실시예는 지금 도 3을 참조하여 기술될 것이다.
알고리즘은 단계 T0에서 시작된다.
단계 T2에서, 데이터 N(t)의 양 및 관련된 렌더링 기간(t)은 갱신된다.
단계 T3에서, 결핍 테스트는 실행된다.(t)K1 이고 N(t) G (분기가 “예”)라면, 결핍의 위험은 없다. 단계 T4가 처리된다. 반대로(t)K1 또는 N(t) G (분기가 “아니오”)라면, 결핍의 위험이 있다. 단계 T5가 처리된다.
단계 T4에서, 오버플로우 테스트가 실행된다.(t)K2 이고 N(t) G (분기가 “예”)라면, 오버플로우의 위험은 없다. 단계 T0로 되돌아간다. 반대로,(t)K2 또는 N(t) G(분기가 “아니오”)라면, 오버플로우의 위험이 있고, 단계 T5가 처리된다.
단계 5에서, 최종 라운드 트립 시간 RTT(t)가 계산되는 동안 평균 채널 전송 속도 MB(t)는,
그 때 단계 T6는 실행된다.
단계 T6에서, 트리거 신호는 적응 소스 AS에 보내어져 현재 전송 속도 MB(t)에 의존하는 데이터 스트림 D2의 데이터 비트율을 적응시킨다. K1, K2,는 0<K1<K2 및 0<<<1인 정수들이다. 예컨대, 인터넷 네트워크 및 GPRS 이동 네트워크를 통한 전송에 대하여 K1=10s, K2=15s,=0,1 및=0.9이다.
적응 소스가 파일 스위처일 때, 인코딩 속도 Ri가 MB(t)에 가장 근접한 데이터 스트림 Si(i=1,...,n)으로 스위치한다. 대안으로, 알고리즘의 수렴을 증가시키기 위해, 인코딩 속도 Ri는 결핍의 경우 (1-)xMB(t)에 가장 근접하고 오버플로우의 경우(예컨대,=0,1)(1+)xMB(t)에 가장 근접하는 데이터 스트림으로 스위치한다. 단계 T6가 실행된 후, 단계 T0으로 돌아간다.
위에서 기술된 알고리즘에서, 스위치는 기본 유닛들의 본질을 고려하지 않는다. 일정 경우들에서, 렌더링의 품질은 스위치 전에 기본 유닛들의 본질을 고려함으로써 개선될 수 있다. 이것은 단지 기본 유닛들의 일부가 디코더가 수신된 데이터의 디코딩을 시작하는 것으로부터의 랜덤 억세스 포인트들인 경우이다(예컨대 MPEG에서, 랜덤 억세스 포인트들은 I-프레임에 의해 수행되는 GOV에 대응한다). 그 때, 보내진 다음 기본 유닛이 랜덤 억세스 포인트(RAP)라면 유리하게 알고리즘은 시험하기 위해 부가의 초기 단계 T1(단계 T2 전)를 포함한다.
도 3에서, 단계 T1은 점선들로 표현된다. 단계 T1에서, 현재 기본 유닛이 랜덤 억세스 포인트라면, 단계 T2가 실행된다. 그렇지 않다면, 단계 TO로 돌아간다.
도 1 및 2에서, 정형 블록(shaping block)은 점선들로 표현된다. 이 정형 블록은 선택이다. 정형 블록은 전송 속도 추정 블록 TCB으로부터 현재 채널 전송 속도 MB(t)의 추정을 수신하고 송신기 전송 속도로서 현 채널 전송 속도의 상기 추정을 실행하도록 데이터 스트림 D2의 기본 유닛들의 송신 시간들을 제어한다. 적응 소스 AS에 의해 제공된 데이터 스트림 D2는 전송/수신 블록 TB에 제공되기 전 정형 블록 HB를 통과한다.
다른 실시예에서(도면들에 도시되지 않은), 전송 속도 추정 블록 TCB 및 정형 블록 HB는 일반적으로 속도 제어 블록으로 불리는 단일 블록의 부분들이다. 속도 제어 블록의 기능들은 ISO 프로토콜 스택의 전송 프로토콜에 의해 실행될 수 있다. 예컨대, TFRC 프로토콜이 사용된다.
유리하게, 상기-기술된 기능들은 하나 이상의 컴퓨터들 또는 송신기 및 수신기에 위치하는 디지털 처리기들의 제어아래 실행될 수 있는 명령들의 세트들에 의해 구현된다.
기술된 전송 시스템, 송신기 및 전송 방법의 변형들 및 개선들은 본 발명의 범위를 벗어나지 않고 제안될 수 있다. 따라서 본 발명은 제공된 예들에 제한되지 않는다.
동사 "포함하다"의 사용 및 활용은 청구범위들 기술된 것과 다른 단계들 또는 요소들의 표현을 배제하지 않는다.

Claims (11)

  1. 데이터 비트율로 언급되는 적응 가능 비트율을 가진 데이터 스트림을 전송하는 송신기, 수신 버퍼 및 디코더를 포함하는 수신기, 및 가변 채널 전송 속도를 가지는 전송 채널을 포함하는 전송 시스템으로서,
    상기 송신기는,
    상기 수신 버퍼에서 데이터 결핍의 위험을 추정하고;
    상기 수신 버퍼에서 데이터 오버플로우의 위험을 추정하고;
    현재 채널 전송 속도의 추정을 계산하고;
    데이터 결핍의 위험 또는 데이터 오버플로우의 위험이 있다면, 상기 현재 채널 전송 속도의 상기 추정에 따라 상기 데이터 비트율의 적응을 트리거하도록 구성되는, 전송 시스템.
  2. 제 1 항에 있어서,
    상기 데이터 비트율의 상기 적응은 다양한 인코딩 속도들로 콘텐트를 사전-인코딩함으로써 얻어진 복수의 사전-인코딩된 데이터 스트림들간을 스위치함으로써 행해지는, 전송 시스템.
  3. 제 1 항에 있어서,
    상기 데이터는 가변 과도 기간(transit duration)에 제공된 기본 유닛들(elementary units)로 구성되고, 상기 데이터 결핍 및 데이터 오버플로우의 위험은 상기 과도 기간의 현재 값을 고려함으로써 추정되는, 전송 시스템.
  4. 제 3 항에 있어서,
    상기 전송 채널은 가변 라운드 트립 시간을 가지고, 상기 과도 기간의 현재 값은
    으로 계산되며, RTT(t)는 상기 라운드 트립 시간의 현재 값이고, RTTmin은 상기 라운드 트립 시간의 최소 값이고,는 0내지 1의 상수 인자인, 전송 시스템.
  5. 제 3 항에 있어서,
    상기 데이터는 송신 시간 및 디코딩 시간과 관련된 기본 유닛들로 구성되고, 상기 데이터 오버플로우의 위험 및 상기 데이터 결핍의 위험은,
    수신된 데이터의 양과 디코딩된 데이터의 양을 비교하고; 및/또는
    아직 디코딩되지 않은 수신된 기본 유닛들과 관련된 디코딩 시간들의 최대 값과 최소 값을 비교함으로써 추정되며,
    그 송신 시간 및 상기 현재 과도 기간의 합이 상기 현재 시간보다 작거나 같으면 기본 유닛이 수신되는 것으로 간주되고 그 디코딩 시간이 초과되면 기본 유닛은 디코딩되는 것으로 간주되는, 전송 시스템.
  6. 제 1 항에 있어서,
    상기 데이터는 송신 시간과 관련된 기본 유닛들로 구성되고, 상기 송신기는 송신기 송신 속도로서 상기 현재 채널 전송 속도의 상기 추정을 실시하도록 상기 기본 유닛들의 상기 송신 시간들을 제어하도록 또한 구성되는, 전송 시스템.
  7. 데이터 비트율로 언급되는 적응 가능 비트율을 가진 데이터 스트림을, 가변 채널 전송 속도를 가지는 전송 채널을 통해, 수신 버퍼 및 디코더를 포함하는 수신기에 전송하는 송신기에 있어서,
    상기 송신기는,
    상기 수신 버퍼에서 데이터 결핍의 위험을 추정하고;
    상기 수신 버퍼에 데이터 오버플로우의 위험을 추정하고;
    현재 채널 전송 속도의 추정을 계산하고;
    데이터 결핍의 위험 또는 데이터 오버플로우의 위험이 있다면, 상기 현재 채널 전송 속도의 상기 추정에 따라 상기 데이터 비트율의 적응을 트리거하도록 구성되는, 전송 시스템.
  8. 제 7 항에 있어서,
    상기 데이터 비트율의 상기 적응은 다양한 인코딩 속도들로 콘텐트를 사전-인코딩함으로써 얻어진 복수의 사전-인코딩된 데이터 스트림들간을 스위치함으로써 행해지는, 송신기.
  9. 데이터 비트율로 언급되는 적응 가능 비트율을 가진 데이터 스트림을, 가변 채널 전송 속도를 가지는 전송 채널을 통해, 송신기로부터 수신기에 전송하는 전송 방법에 있어서, 상기 수신기는 수신 버퍼 및 디코더를 포함하고,
    상기 전송 방법은,
    상기 수신 버퍼에서 데이터 결핍의 위험을 추정하는 단계;
    상기 수신 버퍼에서 데이터 오버플로우의 위험을 추정하는 단계;
    현재 채널 전송 속도의 추정을 계산하는 단계;
    데이터 결핍의 위험 또는 데이터 오버플로우의 위험이 있다면, 상기 현재 채널 전송 속도의 상기 추정에 따라 상기 데이터 비트율의 적응을 트리거하는 단계들을 포함하는, 전송 방법.
  10. 제 9 항에 있어서,
    상기 데이터 비트율의 상기 적응은 다양한 인코딩 속도들로 콘텐트를 사전-인코딩함으로써 얻어진 복수의 사전-인코딩된 데이터 스트림들간을 스위치함으로써 행해지는, 전송 방법.
  11. 프로그램이 처리기에 의해 실행될 때, 제 9 항 또는 제 10 항에 청구된 전송방법을 구현하는 명령들을 포함하는, 프로그램.
KR10-2004-7018877A 2002-05-22 2003-05-05 채널 전송 속도의 변동을 흡수하기 위해 가상 수신 버퍼를사용하는 전송 방법 KR20050010832A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP02291262.0 2002-05-22
EP02291262 2002-05-22
PCT/IB2003/001781 WO2003098935A2 (en) 2002-05-22 2003-05-05 Transmission method using a virtual reception buffer to absorb fluctuation of the channel transmission rate

Publications (1)

Publication Number Publication Date
KR20050010832A true KR20050010832A (ko) 2005-01-28

Family

ID=29433209

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7018877A KR20050010832A (ko) 2002-05-22 2003-05-05 채널 전송 속도의 변동을 흡수하기 위해 가상 수신 버퍼를사용하는 전송 방법

Country Status (7)

Country Link
US (1) US20050201485A1 (ko)
EP (1) EP1510077A2 (ko)
JP (1) JP2005526455A (ko)
KR (1) KR20050010832A (ko)
CN (1) CN1656809A (ko)
AU (1) AU2003225503A1 (ko)
WO (1) WO2003098935A2 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101022471B1 (ko) * 2004-01-17 2011-03-16 삼성전자주식회사 멀티미디어 데이터를 기록한 정보저장매체, 그 재생방법및 재생장치
US8050272B2 (en) 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
US8437307B2 (en) 2007-09-03 2013-05-07 Damaka, Inc. Device and method for maintaining a communication session during a network transition
US8009586B2 (en) 2004-06-29 2011-08-30 Damaka, Inc. System and method for data transfer in a peer-to peer hybrid communication network
US7570636B2 (en) 2004-06-29 2009-08-04 Damaka, Inc. System and method for traversing a NAT device for peer-to-peer hybrid communications
US7933260B2 (en) 2004-06-29 2011-04-26 Damaka, Inc. System and method for routing and communicating in a heterogeneous network environment
KR100631514B1 (ko) 2004-12-16 2006-10-09 엘지전자 주식회사 실시간 스트리밍 서비스의 전송률 제어 방법
EP1872536B1 (en) * 2005-04-11 2008-09-10 Telefonaktiebolaget LM Ericsson (publ) Technique for controlling data packet transmissions of variable bit rate data
US7920469B2 (en) * 2006-06-15 2011-04-05 Alcatel-Lucent Usa Inc. Indicating a variable control channel structure for transmissions in a cellular system
US8862164B2 (en) 2007-09-28 2014-10-14 Damaka, Inc. System and method for transitioning a communication session between networks that are not commonly controlled
US8380859B2 (en) 2007-11-28 2013-02-19 Damaka, Inc. System and method for endpoint handoff in a hybrid peer-to-peer networking environment
US8588071B2 (en) 2008-03-12 2013-11-19 Telefonaktiebolaget L M Ericsson (Publ) Device and method for adaptation of target rate of video signals
CN101924603B (zh) 2009-06-09 2014-08-20 华为技术有限公司 数据传输速率的自适应调整方法、装置及系统
US8892646B2 (en) 2010-08-25 2014-11-18 Damaka, Inc. System and method for shared session appearance in a hybrid peer-to-peer environment
US8725895B2 (en) 2010-02-15 2014-05-13 Damaka, Inc. NAT traversal by concurrently probing multiple candidates
US8874785B2 (en) 2010-02-15 2014-10-28 Damaka, Inc. System and method for signaling and data tunneling in a peer-to-peer environment
US9043488B2 (en) 2010-03-29 2015-05-26 Damaka, Inc. System and method for session sweeping between devices
US9191416B2 (en) 2010-04-16 2015-11-17 Damaka, Inc. System and method for providing enterprise voice call continuity
US8352563B2 (en) 2010-04-29 2013-01-08 Damaka, Inc. System and method for peer-to-peer media routing using a third party instant messaging system for signaling
US8611540B2 (en) 2010-06-23 2013-12-17 Damaka, Inc. System and method for secure messaging in a hybrid peer-to-peer network
WO2012001339A1 (en) 2010-06-30 2012-01-05 British Telecommunications Public Limited Company Video streaming
EP2426923A1 (en) 2010-09-02 2012-03-07 British Telecommunications Public Limited Company Adaptive streaming of video at different quality levels
US8468010B2 (en) 2010-09-24 2013-06-18 Damaka, Inc. System and method for language translation in a hybrid peer-to-peer environment
US8743781B2 (en) 2010-10-11 2014-06-03 Damaka, Inc. System and method for a reverse invitation in a hybrid peer-to-peer environment
US8407314B2 (en) 2011-04-04 2013-03-26 Damaka, Inc. System and method for sharing unsupported document types between communication devices
US8694587B2 (en) 2011-05-17 2014-04-08 Damaka, Inc. System and method for transferring a call bridge between communication devices
US8478890B2 (en) * 2011-07-15 2013-07-02 Damaka, Inc. System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability
US9027032B2 (en) 2013-07-16 2015-05-05 Damaka, Inc. System and method for providing additional functionality to existing software in an integrated manner
US9357016B2 (en) 2013-10-18 2016-05-31 Damaka, Inc. System and method for virtual parallel resource management
CA2956617A1 (en) 2014-08-05 2016-02-11 Damaka, Inc. System and method for providing unified communications and collaboration (ucc) connectivity between incompatible systems
US10091025B2 (en) 2016-03-31 2018-10-02 Damaka, Inc. System and method for enabling use of a single user identifier across incompatible networks for UCC functionality
CN109495764B (zh) * 2018-12-07 2022-04-01 晶晨半导体(上海)股份有限公司 一种直播时移的视频断网续播的方法和iptv播放装置
EP3767962A1 (en) * 2019-07-19 2021-01-20 THEO Technologies A media client with adaptive buffer size and the related method

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5159447A (en) * 1991-05-23 1992-10-27 At&T Bell Laboratories Buffer control for variable bit-rate channel
US5619341A (en) * 1995-02-23 1997-04-08 Motorola, Inc. Method and apparatus for preventing overflow and underflow of an encoder buffer in a video compression system
US5881245A (en) * 1996-09-10 1999-03-09 Digital Video Systems, Inc. Method and apparatus for transmitting MPEG data at an adaptive data rate
US6188700B1 (en) * 1996-11-07 2001-02-13 Sony Corporation Method and apparatus for encoding MPEG signals using variable rate encoding and dynamically varying transmission buffers
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network
US6415329B1 (en) * 1998-03-06 2002-07-02 Massachusetts Institute Of Technology Method and apparatus for improving efficiency of TCP/IP protocol over high delay-bandwidth network
GB9817302D0 (en) * 1998-08-10 1998-10-07 Nds Ltd Method and apparatus for managing a decoder buffer
US6233226B1 (en) * 1998-12-14 2001-05-15 Verizon Laboratories Inc. System and method for analyzing and transmitting video over a switched network
EP1182875A3 (en) * 2000-07-06 2003-11-26 Matsushita Electric Industrial Co., Ltd. Streaming method and corresponding system
US6765963B2 (en) * 2001-01-03 2004-07-20 Nokia Corporation Video decoder architecture and method for using same
EP1244255A1 (de) * 2001-03-20 2002-09-25 Telefonaktiebolaget L M Ericsson (Publ) Verfahren und Vorrichtung zur Verbesserung eines Datendurchsatzes
US7444418B2 (en) * 2001-05-11 2008-10-28 Bytemobile, Inc. Transcoding multimedia information within a network communication system
CN1557072A (zh) * 2001-09-21 2004-12-22 ���˹���Ѷ��� 使用缓冲器大小计算用于拥塞控制的传输速率的数据通信方法和系统
US7747729B2 (en) * 2002-06-14 2010-06-29 Hanoch Levy Determining client latencies over a network

Also Published As

Publication number Publication date
EP1510077A2 (en) 2005-03-02
AU2003225503A1 (en) 2003-12-02
WO2003098935A3 (en) 2004-02-12
CN1656809A (zh) 2005-08-17
WO2003098935A2 (en) 2003-11-27
JP2005526455A (ja) 2005-09-02
US20050201485A1 (en) 2005-09-15

Similar Documents

Publication Publication Date Title
KR20050010832A (ko) 채널 전송 속도의 변동을 흡수하기 위해 가상 수신 버퍼를사용하는 전송 방법
US8230105B2 (en) Adaptive bitrate management for streaming media over packet networks
EP2415234B1 (en) Adaptive bitrate management for streaming media over packet networks
EP2719144B1 (en) On-demand adaptive bitrate management for streaming media over packet networks
JP4748729B2 (ja) データおよび対応するプロダクトを送信する準備のための装置と方法
US20180248806A1 (en) Adaptive video over multicast
MXPA05000594A (es) Metodo para permitir la compensacion del retardo de transferencia del paquete en emision en continua para multimedia.
KR20040041170A (ko) 혼잡 제어를 위한 전송률을 계산하기 위해 수신 버퍼 크기를 사용하는 데이터 통신 방법 및 시스템
KR20060011964A (ko) 혁신적인 레이트 적응 시그널링을 위한 방법 및 장치
KR102012528B1 (ko) 수신 비트율 및 연관된 수신기의 동적 적응 방법
CA2457193C (en) Data communications method and system for transmitting multiple data streams calculating available bandwidth per stream and bit stream trade-off
Balk et al. Adaptive MPEG-4 video streaming with bandwidth estimation
Balk et al. Adaptive video streaming: pre-encoded MPEG-4 with bandwidth scaling
KR102491033B1 (ko) 왕복 시간 추정
Zodi Real-time data flow models and congestion management for wire and wireless IP networks
KR20060010067A (ko) 네트워크 상에서 데이터의 유효 전송율 추정 방법 및데이터 전송 시스템

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid