KR20040084922A - Ip 네트워크를 통해 파인 그래뉼라 확장성 코드화된비디오를 스트리밍하는 방법 - Google Patents

Ip 네트워크를 통해 파인 그래뉼라 확장성 코드화된비디오를 스트리밍하는 방법 Download PDF

Info

Publication number
KR20040084922A
KR20040084922A KR10-2004-7012810A KR20047012810A KR20040084922A KR 20040084922 A KR20040084922 A KR 20040084922A KR 20047012810 A KR20047012810 A KR 20047012810A KR 20040084922 A KR20040084922 A KR 20040084922A
Authority
KR
South Korea
Prior art keywords
receiver
node
data
network
adaptation
Prior art date
Application number
KR10-2004-7012810A
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 KR20040084922A publication Critical patent/KR20040084922A/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • 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/234327Processing 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 decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/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/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • 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/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • 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/64Addressing
    • H04N21/6405Multicasting
    • 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
    • H04N21/6437Real-time Transport Protocol [RTP]
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 IP 네트워크와 같은 데이터 네트워크를 통해 인코딩 비디오 데이터의 공급을 위한 시스템 및 방법에 관한 것이다. 데이터 네트워크로의 데이터의 다수 층들을 송신할 수 있는 서버를 가지는 것 외에, 상기 시스템은 서버와, 적응 노드의 다운스트림에 위치한 클라이언트들 중간에 위치한 적응 노드들을 포함하고, 이들 클라이언트는 수신기 및/또는 다른 적응 노드일 수 있다. 수신기와 적응 노드들은 디바이스에서의 데이터 네트워크의 네트워크 정체 상태들을 감지하고, 감지된 네트워크 정체 상태들에 기초하여 수신기 및/또는 적응 노드가 가입한 채널 가입들을 동적으로 변경시킴으로써 네트워크 용량을 분석할 수 있다. 본 요약서는 검색자나 다른 독자가 기술 명세서의 주제를 신속하게 확인할 수 있도록 하는 요약서를 요구하는 규칙을 따르기 위해 제공된다는 점이 강조된다. 본 요약서는 청구항들의 의미의 범위를 해석하거나 한정하는데 사용되지 않을 것이라는 이해를 가지고 제출되었다.

Description

IP 네트워크를 통해 파인 그래뉼라 확장성 코드화된 비디오를 스트리밍하는 방법{A METHOD FOR STREAMING FINE GRANULAR SCALABILITY CODED VIDEO OVER AN IP NETWORK}
인터넷과 같은 변하는 대역폭을 가지는 네트워크들에 걸친 전송을 위해 비디오를 압축하는데 파인 그래뉼라 확장성(FGS)이 사용되어 왔다. FGS 구조는 비트율 RBL로 코드화된 기본 층과, REL로 코드화된 단일 파인 그래뉼라 강화 층으로 이루어진다.
강화 층의 파인 그래뉼라리티(fine granularity)로 인해, FGS 비디오 스트림은 B최소= RBL로부터 B최대= RBL+ REL까지의 범위에 있는 이용 가능한 대역폭을 가진 임의의 네트워크 세션(session)을 통해 전송될 수 있다. 예를 들어, 전송기와 수신기 사이의 이용 가능한 대역폭이 B = R이라면, 전송기는 속도 RBL로 기본 층을, 그리고 속도 Re= R - RBL로 강화 층의 일부만을 송신한다. 강화 층 부분들은 전송을위해 파인 그래뉼라 방식으로 선택될 수 있다. 그러므로, 총 전송 비트율은 R = RBL+ Re이다.
FGS 인코딩 방법들은 최근에 스트리밍 애플리케이션용 표준으로서 MPEG-4에 의해 채택되었다. FGS는 예측할 수 없는 대역폭 변동에 대한 높은 적응성으로 인해 무선 및 이기종간 접속 네트워크(heterogeneous network) 환경에서 점진적으로 인기를 얻을 것으로 기대되고 있다. FGS를 완전히 성공적으로 만드는데 도움이 되기 위해서, FGS의 대역폭 적응 특성을 이용할 수 있는 특화된 스트리밍 해결책이 유리하다. 현재로서는 FGS를 스트리밍하기 위한 이용 가능한 완성된 기술이 없다.
FGS의 적응 특징을 이용하기 위해서, 종래 기술은 주어진 링크가 관리할 수 있는 층들의 개수만을 선택적으로 발송하는, 즉 동일한 멀티캐스트 분포 트리나 수신기들의 층 가입 상태에 의해 암시적으로 한정된 서브 트리들을 따라 모든 층들이 공급되는 것을 제안한다. 그러므로, 수신기들은 수신 흐름에서 인터넷들을 표현함으로써 멀티캐스트 분포 트리를 암시적으로 한정할 수 있다. 그 다음, 이 모드에서는 수신기가 현재의 가입 레벨이 너무 높거나 너무 낮은지를 결정한다.
조정 가능한 대역폭을 처리하는 종래 기술의 방법들은 확장성이 약하다는 단점이 있다. 예를 들어, 피드백 내폭(implosion)에서 종래 기술에 공지된 것처럼 종래 기술의 종단간(end-to-end) 해결책은, 더 많은 수의 사용자들이 동일한 시각에 세션에 합류할 때 사용자로부터 소스로 재 전송된 제어 신호들이 소스를 압도하는(overwhelming) 결과를 낳는다. 소스는 이들 제어 신호들을 처리하기 위한계산 자원들을 가지지 않을 수 있다.
또한, 종래 기술은 세션간 공평성이 약함을 보여준다. 복수의 사용자가 동일한 병목(bottleneck) 링크를 공유하면, 한 사용자의 활동성이 다른 사용자의 대역폭, 즉 다른 사용자의 감지된 비디오 품질에 영향을 줄 수 있다.
또한, 종래 기술의 방법들은 불량한 응답 시간을 보여준다. 수신기는 수신율을 적응시키기 위해 "합류 또는 탈퇴(join or leave)" 멀티캐스트 그룹 제어를 사용하지만, 이들 제어 절차들은 그 목적을 달성하기 위해 함께 협력하는 많은 인터넷 프로토콜들을 수반한다. 이는 수신기가 제어 명령어를 발하는 시간과 그 명령어가 성공적으로 실행되는 시간 사이의 수용 불가능한 잠재시간(latency)을 감지하게 할 수 있다.
본 발명은 일반적으로 비디오 스트리밍에 관한 것으로, 특히 인터넷과 같은 IP 네트워크를 통해 파인 그래뉼라 코드화된 비디오를 스트리밍하는 것에 관한 것이다.
도 1은 본 발명의 예시적인 실시예의 개략도.
도 2는 본 발명의 예시적인 실시예를 트리 형태로 나타낸 개략도.
도 3은 본 명세서에 사용된 바와 같은 채널들의 개략도.
도 4는 채널들의 또다른 선도.
도 5와 도 6은 본 발명의 예시적인 방법의 블록도. 블록들은 여기에 열거된 바와 같이 그들의 번호로 설명된다.
200 : 하나의 적응 노드를 데이터 네트워크에서의 서버와 수신기 중간에 논리적으로 배치하는 단계.
210 : 적응 노드를 통해 데이터 네트워크를 통해 서버와 수신기 사이의 통신을 논리적으로 개시하는 단계.
220 : 수신기에 의해 감지된 대로 네트워크 용량에 기초하여 수신기에 의해 하나 또는 그 이상의 채널에 가입하는 단계.
230 : 적응 노드를 통해 각 가입 채널에 관해 데이터 네트워크를 통해 서버와 수신기 사이의 종단간 통신 채널을 논리적으로 개시하는 단계.
240 : 상기 서버와 상기 수신기 중간에 동작 가능하게 배치된 적응 노드의 다운스트림을 수신기에 의해 가입된 채널들의 적응 노드에서 인지하는 단계.
250 : 상기 서버에 의해 복수의 데이터 층의 미리 정해진 개수의 데이터 층들을 그들 각각의 채널들을 통해 상기 데이터 네트워크로 송신하는 단계.
260 : 상기 수신기에서 상기 수신기에 의해 상기 네트워크 용량을 감시하는 단계.
270 : 상기 적응 노드에 의해 상기 적응 노드에서의 네트워크 용량을 감시하는 단계.
280 : 상기 수신기에 의해 감지된 대로 네트워크 용량에 기초하여 상기 수신기에서 상기 가입된 채널들의 전송을 수정하는 단계.
281 : 모든 가입들을 수신하고 최대 가입율을 계산하는 단계.
282 : 상기 계산된 최대 가입율을 역-전파하는 단계.
290 : 상기 적응 노드에 의해 감지된 대로 네트워크 용량에 기초하여, 상기 적응 노드를 통해, 수신기로 상기 가입된 채널들을 전송하는 것을 수정하는 단계.
본 발명은 IP 네트워크를 통해 인코드된 비디오 데이터를 공급하기 위한 시스템과 방법에 관한 것이다. 일반적으로, 도 2를 참조하면 IP 네트워크로 다수의 데이터 층들을 송신할 수 있는 서버(일반적으로 번호 40으로 표시됨)를 가지는 것 외에, 시스템은 서버(40)의 다운스트림에 위치한 적응 노드들(일반적으로 번호 50으로 표시됨)을 포함한다. 적응 노드들(50)은 서버(40)와, 적응 노드들(50)의 다운스트림에 위치한 수신기들(일반적으로 번호 60으로 표시됨) 중간에 배치된다. 수신기(60)와 적응 노드들(50)은 데이터 네트워크의 네트워크 정체 상태들을 감지하고, 수신기(60) 및/또는 적응 노드(50)가 감지된 네트워크 정체 상태들에 기초하여 가입한 채널들을 동적으로 변경시킴으로써 네트워크 용량을 분석할 수 있다.
보호 범위는 전술한 예시적인 실시예의 요약에 의해 한정되지 않고, 청구항들에 의해서만 한정된다.
전 도면에서, 동일한 참조 번호는 대응하는 부분을 나타낸다.
이제, 도 1과 도 3을 시작으로 하여 도면들을 참조하면, 파인 그래뉼라 확장성(FGS) 인코딩은 비디오 품질이나 FGS 기본 층(21)(도 3)에서 전송된 모든 프레임이나 화상의 신호 대 잡음비(SNR)를 개선하도록 구현된다. 본 발명은 확장성을 달성하고 데이터 네트워크(100)와 같은 표준 IP 네트워크의 상부에 직접적으로 실시예가 전개되도록 허용하기 위해 상기 데이터 스트림에 배치된 특화된 적응 노드(51, 52)(도 1)를 도입함으로써, 데이터 네트워크(100)를 통해 FGS 인코드된 비디오를 스트리밍하기 위한 채널 관리 모델과 속도-제어 메커니즘을 제공한다.
도 1에서 특정 실제 개략 배치로 집합적으로 도시되고, 좀더 일반적으로 도 2에서 등가 논리 트리 배치로 도시된 예시적인 실시예에서, 본 발명은 네트워크 용량에 민감한 비디오 데이터를 인코딩하고, 인코드된 비디오 데이터를 전달하는 시스템을 포함한다. 이 시스템은 서버(40), 적응 노드(일반적으로, 도 2에서 번호 50으로 표시되고 도 1에서는 번호 51과 52로 명시된), 및 수신기(일반적으로, 도 2에서는 번호 60으로 표시되고 도 1에서는 번호 61과 62로 명시된)를 포함하고, 이들 모두 인터넷(100)과 같은 IP 네트워크를 통해 동작 가능하게 상호 연결된다.
도 1과 도 3에 도시된 바와 같이, 서버(40)는 프로세서와 메모리를 가지고, 다수의 채널(30)(도 3)을 통해 네트워크(100)로 데이터 통신 디바이스(42)(도 1)를 거쳐 데이터를 송신할 수 있다. 데이터는 FGS 기본 층(21)과 복수의 강화 비디오 층(22 내지 25)과 같은 복수의 층(20)(도 3)을 포함한다. 소프트웨어로서 구현될 수 있는 기본 층 인코더(44)(도 1)는 서버(40) 내에서 존재하고 실행될 수 있으며, 상기 기본 층 인코더(44)는 기본 층 프레임을 생성하기 위해 비디오 데이터의 일부를 인코드 할 수 있다. 이는 MPEG-4 표준과 같은 표준을 따르는 인코딩을 포함할 수 있다. 또한, 소프트웨어로서 구현될 수 있는 강화 층 인코더(45)(도 1)는 서버(40) 내에서 실행될 수 있고, 상기 강화 층 인코더(45)는 FGS 코딩 기술을 사용하여 비디오 데이터와 기본 층 프레임들로부터 움직임 보상된 잔여 이미지 프레임들을 생성할 수 있다.
도 2에 도시된 바와 같이, 적응 노드(50)는 서버(40)와, 수신기(60)와 같은 다운스트림 클라이언트 중간에 동작 가능하게 배치되고 및/또는 예를 들어 도 1에서의 적응 노드(52)인 다른 적응 노드들(50)은 적응 노드(51)의 클라이언트이다. 적응 노드(50)는 수신기(60)에 의해 가입된 채널들(30)(도 3에 도시된)을 수신기(60)에 보낼 수 있다.
도 1과 도 2에 도시된 바와 같이, 복수의 적응 노드(50)가 존재할 수 있는데, 일부는 다른 적응 노드들(50)과 같은 다른 피어(peer)로부터 업스트림에 있고, 예를 들어 도 1에서의 적응 노드(51)는 적응 노드(52)로부터의 논리적인 업스트림에 있으며, 일부는 복수의 다운스트림 수신기(60)와 같은 다운스트림 피어들을 가진다. 도 2에 추가적으로 도시된 바와 같이, 적응 노드(50)는 논리적으로 서버(40)와 다른 적응 노드(50), 수신기(60) 또는 그들의 조합 중간에 논리적으로 놓여있다. 적응 노드(50){도 1에서의 적응 노드(51)}는 적응 노드(50) 내에서 실행되는 소프트웨어일 수 있는 네트워크 분석기(54)를 포함한다. 본 발명의 일 실시예에서, 네트워크 분석기(54)의 유일한 기능은 그것의 다운스트림 수신기(60) 각각이 가입한 채널(30)의 개수를 설명하는 것이 될 수 있다. 본 발명의 또다른 실시예에서, 각각의 다운스트림 수신기(60)에 의해 가입된 채널들의 개수를 설명하는 것 외에, 네트워크 분석기(54)는 또한 적응 노드(50)에서의 네트워크 정체 상태들을 감지할 수 있다. 적응 노드(50)에서의 감지된 네트워크 정체 상태들에 기초하여, 적응 노드(50)는 수신기(60)에 의해 가입된 채널(30)(도 3)의 전송을 동적으로 수정한다.
적응 노드(50)는 2가지 상이한 기능들을 수행할 수 있다. 서버(40)로부터 수신기(60)로의 순방향으로는 적응 노드(50)가 스트리밍 애플리케이션에 대하여 원하는 서비스 품질을 제공하기 위해, 네트워크(100)를 강화할 수 있다. 역방향으로는,적응 노드(50)가 피드백 내폭을 억제하고 채널 적응 제어의 속도를 높일 수 있는 제어 대리 장치(agent)의 역할을 할 수 있다. 따라서, 적응 노드(50)는 그 적응 노드(50)의 다운스트림에 위치한 하나 또는 그 이상의 클라이언트, 즉 다운스트림에 위치한 하나 또는 그 이상의 다른 적응 노드(50)에서부터 뿐만 아니라 하나 또는 그 이상의 수신기(60)의 채널 가입 요청을 또한 처리할 수 있다. 그러므로, 가입 요청은 역 전파(back propagation)의 끝에서 적응 노드(50)나 서버(40)에 의해 처리될 수 있다.
적응 노드(50)는 또한 층들(20)(도 3)을 버퍼링하기 위한 데이터 저장 장치(55)를 포함한다. 데이터 저장 장치(55)는 하나 또는 그 이상의 고정되거나 탈착 가능한 자기 매체, 고정되거나 탈착 가능한 광학 매체, 및 고정되거나 탈착 가능한 전자 매체를 포함할 수 있다.
적응 노드(50)와 데이터 송신기, 예를 들어 서버(40)나 또다른 적응 노드(50)는 수신기(60)에 관한 채널 가입 또는 비가입을 달성하기 위해 수신된 제어 신호들에 기초하여, 주어진 채널(30), 예를 들어 도 3에 도시된 채널들(31 내지 35)을 활성화시키거나 비활성화시킬 수 있다.
수신기(60)는 채널 구조를 모른다. 수신기(60)는 수신된 패킷들을 디코드하고, 그것들을 디스플레이 모니터나 텔레비전(도면에는 미도시)과 같은 프리젠테이션 시스템으로 출력한다. 수신기(60) 내에서 실행되는 소프트웨어로서 구현될 수 있는 네트워크 분석기(64)(도 1)는 감지된 네트워크 정체 상태들에 대해서 수신기(60)에서 네트워크(100)를 감시한다. 감지된 네트워크 정체에 기초하여, 수신기(60)는 제어 신호들{가령, 실시간 스트리밍 프로토콜(RTSP) 방법을 사용함으로써}을 적응 노드(50)에 또는 서버(40)와 같은 데이터 송신기에 직접 송신함으로써, 미리 정해진 개수의 채널(30)에 동적으로 가입한다.
적응 노드(50)는 수신기(60)나 또다른 적응 노드(50)와 같은 클라이언트의 다운스트림으로부터 가입을 수신할 수 있다. 그 다음, 적응 노드(50)는 가입을 업스트림으로 보낼 수 있다. 또한, 모든 다운스트림 노드(50, 60)로부터 수신된 미리 정해진 개수의 가입들을 포함하는 가입 메시지는 역-전파된 업스트림일 수 있다. 적응 노드(50)는 또한 다운스트림 링크 로드를, 예를 들어 패킷 손실과 지터 보고를 통해 관찰할 수 있고, 예를 통해 상부 채널들(30)에서의 패킷들과 같은 패킷들을 누락시킴으로써 제한되지 않으면서 발송 속도를 감소시키는 것을 결정할 수 있다.
추가적으로 도 4를 참조하면, 적응 노드(50)나 서버(40)는 또한 버스트나 정규 모드로 채널들(30)에서의 층 데이터(20)를 포함하는 패킷들의 전송 계획을 세울 수 있다. 패킷들은 그룹으로 발송되고, 각 그룹은 화상들이나 프레임들 그룹의 하나의 비디오 프레임을 나타낸다. 전형적인 상황에서, 그룹 발송의 순서는 재전송 요청(110)이 기본 층(21) 프레임의 프리젠테이션 데드라인 전에 처리되는 더 큰 기회를 가지도록, 기본 층(21)을 포함하는 패킷들을 먼저 전송함으로써 우선 순위가 정해진다. 데이터 저장 장치(55)는 수신기(60)(도 4에는 미도시)로부터 재전송 요청(110)을 좀더 신속하게 처리하는데 사용될 수 있다.
적응 노드(50)는 또한 데이터 저장 장치(55)로의 전송에서 패킷들의 손실에관한 적응 노드의 재전송 요청(110)을 업스트림으로 올릴 수 있다. 그러한 잃어버린 패킷이 적응 노드(50)에 도착할 때, 적응 노드(50)는 데이터 저장 장치(55)에 잃어버린 패킷을 저장할 수 있고, 또한 잃어버린 패킷에 우선 순위 플래그(flag)로 표시하거나 표시하지 않고 잃어버린 패킷의 발송을 다운스트림으로 보낼 수 있다.
일반적으로, 예시적인 실시예의 동작에서, 비디오 데이터의 소스, 예를 들어 서버(40)(도 1)는 FGS 표준에 따라 비디오 데이터를 인코드한다. 비디오 데이터는 비디오 데이터의 일부가 기본 층 프레임(21)(도 3)을 생성하도록 먼저 사용되는 FGS 기술을 사용하여 서버(40)(도 1)에서와 같이 인코드될 수 있다. 그 다음, 움직임 보상된 잔여 이미지들이 파인 그래뉼라 코딩 기술을 사용하여 비디오 데이터와 기본 층 프레임(21)으로부터 생성된다. 그 다음, 강화 층(22 내지 25)(도 3)들이 각 강화 층(22 내지 25)이 움직임 보상된 잔여 이미지들의 부분에서 포함하는 움직임 보상된 잔여 이미지들을 사용하여 생성된다. 서버(40)는 복수의 채널(30)을 통하여 네트워크(100)를 통해 FGS 코드화된 비디오를 스트리밍하도록 복수의 패킷을 송신한다. 수신기(60)(도 1)는 적어도 부분적으로 수신기(60)에서 감지된 대역폭에 따라, 하나 또는 그 이상의 채널들(30)에 가입한다.
바람직한 모드에서, 서버(40)는 기본 층(21)을 포함하는 패킷들에 관해 가장 높은 전달 우선 순위를 할당하여, 강화 층들(22 내지 25)에 관해 상이한 강화 층들(22 내지 25)이나 채널들(32 내지 35)로부터 패킷들에 관한 우선 순위를 점진적으로 감소시킨다. 예를 들어, 적응 노드(50)가 패킷을 누락시킬 필요가 있을 때, 바람직한 모드에서, 가장 낮은 우선 순위를 가진 것들로부터 선택할 것이다.
이제, 도 5를 참조하면, 단계 200에서, 하나 또는 그 이상의 적응 노드(50)들이 100과 같은 데이터 네트워크에서의 서버(40)와 수신기(60) 중간에 논리적으로 배치된다. FGS 처리 후, 서버(40)는 서버(40)와, 하나 또는 그 이상의 다운스트림 수신기(60)들 사이의 복수의 종단간 통신 채널(30)을 개시할 수 있고, 이 채널을 통해 서버(40)는 인코드된 비디오를 네트워크(100)에 제공한다. 전형적인 실시예에서, 31과 같은 미리 정해진 채널은 미리 정해진 대역폭과 우선 순위를 가진 기본 층(21)과 연관된다. 채널(32 내지 35)과 같은 추가 채널(30)들이 강화 층(22 내지 25)들과 연관될 수 있다.
그 다음, 서버(40)와 수신기(60) 사이의 통신이 단계 210에서 하나 또는 그 이상의 적응 노드(50)들을 통해 데이터 네트워크(100)를 통해 논리적으로 개시된다. 단계 220에서, 수신기(60)는 기본 층(21)과, 수신기(60)에 의해 감지된 것과 같은 네트워크 용량에 기초하여 적어도 하나의 강화 층(22 내지 25)들을 포함하는 하나 또는 그 이상의 채널(30)들에 가입한다. 채널들(30)로의 실제 가입은 수신기(60)에 의해 감지된 대로 네트워크 용량에 적어도 부분적으로는 기초하고 있다. 따라서, FGS 스트림 세션(session)에 그들이 참여하고 있는 동안, 적응 노드(50)와 수신기(60)는 대역폭을 연속적으로 감시하고 채널 가입들을 동적으로 조정한다.
단계 230에서, 서버(40)와 수신기(60)는 서버(40)와 수신기(60) 사이에 논리적으로 배치된 하나 또는 그 이상의 적응 노드들(50)을 통해 논리적으로 각 가입된 채널(30)에 관해 데이터 네트워크(100)를 통해 종단간 통신 채널들을 개시한다. 단계 240에서, 적응 노드(50)는 서버(40)와 수신기(60)들 중간에 동작 가능하게 배치된 적응 노드(50)의 다운스트림에 있는 수신기(60)에 가입된 채널(30)들을 인지한다.
일단 채널(30)들이 설정되면, 서버(40)는 단계 250에서 그들 각각의 채널(30)을 통해 데이터 네트워크(100)로 복수의 데이터 층의 데이터 층(20)들의 미리 정해진 개수만큼 송신한다.
이제 도 6을 참조하면, 수신기(60)에 의해 이룩된 채널 제어는, 하나 또는 그 이상의 채널(30)들에 가입하거나 가입을 철회함으로써 수신기(60)가 정체된 멀티캐스트 그룹들에 합류하거나 떠나는 것을 허용한다. 단계 260에서, 수신기(60)는 수신기(60)에서의 네트워크 용량을 감시한다. 단계 280에서, 수신기(60)는 단계 280에서 수신기(60)에 의해 감지된 대로 네트워크 용량에 기초하여 수신기(60)에서 가입된 채널(30)들의 전송을 수정할 수 있다.
현재 계획 중인 실시예에서, 수신기(60)는 수신기(60)에서 감지된 네트워크 정체 상태들에 기초하여 서버(40)와 수신기(60) 사이의 종단간 통신 채널(30)들을 동적으로 셋업하거나 분리시킨다. 이러한 방식으로, 서버(40), 적응 노드(50), 및 수신기(60)를 포함하는 전체적인 시스템은 모든 것이 31과 같은 단일 채널(30)로 보내진다면, 요구될 수 있는 강화 층들(22 내지 25)에 관한 정교한 절단(truncation) 알고리듬에 의존하지 않고 FGS 코드화된 비디오의 전송 속도를 효율적으로 적응시킬 수 있다.
적절한 시각에, 수신기(60)는 수신되지 않은 패킷들에 관한 재전송 요구를할 수 있다. 하지만, 수신기(60)가 멀티캐스트 그룹에 합류하거나 떠나기 건에, 수신기(61)로부터의 업스트림에 있는 적응 노드(51)와 같은 수신기(60)의 업스트림에 있는 적응 노드(50)에 제어 신호를 보낼 수 있다.
본 발명과 FGS의 다수채널 스트리밍 모델을 가지고, 서버(40)는 적어도 하나의 수신기(60)가 받아들일 수 있는 최대 속도로 채널들(30)을 통해 패킷들을 송신할 것이다. 각 수신기(60)는 단계 281에서, 모든 가입을 수신하고 최대 가입율을 계산할 것이다. 더 낮은 속도로만 수신할 수 있는 모든 다른 수신기(60)들은 채널(30)들의 서브그룹들에만 가입할 것이다. 따라서, 동일한 방송 세션의 모든 채널(30)들이 동일한 멀티캐스트 전송 트리를 공유하거나 부분적으로 공유하고 서버(40)가 채널(30)들을 통해 최대 대역폭으로 데이터 스트림을 송신할 지라도, 각 수신기(60)는 그 수신기(60)에 의해 감지된 네트워크 용량에 기초하여 그 수신기에 적절한 대역폭으로 데이터 스트림을 받아들인다.
그 다음, 수신기(60)는 단계 282에서, 계산된 최대 가입율을 업스트림에 위치한 적응 노드(50)나 업스트림에 위치한 서버(40)로 역-전파할 수 있다.
단계 270에서, 수신기(60)가 대역폭을 감시하고 데이터를 수신하는 동안, 적응 노드(50)는 또한 네트워크 용량을 감시하지만 적응 노드(50)에서의 네트워크 용량에 초점을 맞춘다. 따라서, 적응 노드(50)는 또한 상이한 채널들(30)로 패킷들을 수신하고 그것들을 적응 노드(52)와 같은 추가 적응 노드들(50)과 수신기(61, 62)를 포함할 수 있는 다음 다운스트림 수신 장치로 발송한다. 적응 노드(50)에서 수신된 네트워크 용량에 기초하여, 단계 290에서는 적응 노드(50)가 적응 노드(50)에 의해 감지된 것과 같은 네트워크 용량에 기초하여 채널들(30)에 가입한 수신기(60)로 적응 노드(50)를 통해 가입된 채널들(30)을 전송하는 것을 수정할 수 있다. 그러므로, 적응 노드(50)는 다운스트림 수신기(60)에 의해 가입된 채널들(30)을 적응 노드(50)를 통해, 우선 순위 버퍼링이나 패킷 누락시킴과 같은 제한적이지 않은 예를 통해, 다운스트림 수신기(60)에 전송하는 것을 수정할 수 있다.
현재 계획된 실시예에서, 52와 같은 대부분의 다운스트림 적응 노드(50)는 수신기(62)와 같은 적응 노드(52)로부터 바로 다운스트림에 있는 수신기(60)로부터 채널 가입 요청을 받을 수 있다. 그 다음, 이러한 대부분의 다운스트림 적응 노드(52)는 대부분의 다운스트림 적응 노드(52)에서 적절한 최대 채널 가입 레벨을 계산하고, 적응 노드(51)와 같은 다음 적응 노드 업스트림으로 상기 최대 가입 레벨을 전파한다. 이 과정은 서버(40)까지 반복될 수 있다. 그 결과는 멀티캐스트 트리의 각 브랜치를 따라, 각 브랜치의 네트워크 로드 용량에 관해 적절한 최대 개수의 채널들(30)이 전송된다는 것이다.
또한 업스트림 경로에서의 각각의 적응 노드(50)는 그것들의 다운스트림 수신기(60)나 다운스트림 적응 노드들(50)로부터 수신된 모든 제어 신호들을 모을 수 있고, 필요하다면 서버(40)로 모아진 제어 신호를 다시 발송할 수 있다. 그 다음, 서버(40)는 적응 노드(50)에 의해 발송되는 수신된 제어 신호들에 따라, 그것의 방송 채널들(30)을 조정할 수 있다.
적응 노드(50)는 필요하다면 패킷들을 누락시킬 수 있거나 일시적인 통신량변화를 완만하게 하기 위해 수신기(60)가 수용할 수 있는 특정 지연 파라미터들 내의 패킷들을 전송하는 것을 지연시킬 수 있다. 제한적이지 않은 예를 통해, 적응 노드(51)와 같은 발송 노드는, 적응 노드(51)의 다운스트림의 링크 용량이 특정 시간 스케일과 같은 미리 정해진 링크 임계치를 넘는, 동시 발생하는 통신량에 의해 포화될 때에만, 패킷을 누락시키도록 구성될 수 있다. 이러한 포화가 갑작스럽게 발생하는 통신량에 의해 야기될 수 있는 일시적인 것이라면, 발송 프로세스는 일시적으로 느려지는 것일 수 있지만, 지연된 패킷들을 발송하기 위한 시간 범위(span)는 모든 채널(30)들이 도착한 시간 범위와 동일한 지속 시간으로 여전히 유지될 수 있다.
적응 노드(50)들은 이들 데이터 패킷들에 할당된 우선 순위 순서대로 데이터 패킷들을 처리할 수 있다. 바람직한 실시예에서, 적응 노드(50)는 그것의 다운스트림 링크들이 소비할 수 있는 것보다 높은 채널(30)들에 있는 패킷들은 발송하지 않는데, 즉 누락시킨다. 누락된 패킷들은 이들 데이터 패킷들에 할당된 우선 순위들에 따라 누락될 수 있으며, 그에 따라 업스트림 노드는 통지를 받게 된다.
적응 노드(50)가 전송(forwarding) 버퍼(55)를 가지는 실시예에서, 적응 노드(50)는 채널(30)로부터의 컨텐트를 버퍼링할 수 있어서, 적응 노드(50)가 업스트림과 다운스트림에 있는 서로 상이한 네트워크 용량에 반응할 수 있도록 한다. 적응 노드(50)는 예를 들어, 적응 노드(50)가 전송 버퍼(55)를 가진다면 적응 노드(50)가 전송 버퍼(55)로부터 다운스트림 재전송 요구를 다루도록 패킷들을 숨길 수 있다. 적응 노드(50)가 그것의 전송 버퍼(55)에서의 오버플로(overflow) 때문에 패킷들을 누락시켜야 한다고 탐지하면, 그렇게 할 수 있고 그에 따라 51 및 40과 같은 업스트림 노드들에 통지한다.
또한, 적응 노드(50)는 임의의 적응 노드(50)들이나 적응 노드(50)로부터의 다운스트림에 있는 수신기(60)에 무관하게 하나 또는 그 이상의 패킷들의 재전송을 요구할 수 있다. 그 다음, 서버(40)는 요구된 패킷들을 적응 노드(50)에 재전송할 수 있다. 다운스트림 용량이 이용 가능하게 되면, 적응 노드(50)는 그러한 추가적인 용량을 업스트림 노드들에게 통지하고, 추가 채널들(30)을 요구할 수 있다.
따라서, 적응 노드(50)는 서버(40)와 같은 업스트림 소스로부터 재전송을 요구할 수 있고 및/또는 다운스트림 재전송 요구에 응답할 수 있다. 또한, 적응 노드(50)의 버퍼링 능력을 사용하여, 적응 노드(50)는 서버(40)와 같은 데이터의 업스트림 소스로부터 제 1 속도로 채널 데이터를 수신할 수 있고, 한편으로 상기 데이터의 다운스트림 수신기(60)로 채널 데이터를 제 2 속도로 전파한다. 이는 적응 노드(50)의 양쪽에서 각 부분들을 오버로딩(overloading)하지 않고 효율적인 종단간 데이터 속도를 증가시킬 수 있는 버퍼 채움/비움 동작들을 초래할 수 있다.
제한적이지 않은 또다른 예에 의하면, 수신기가 현재 가입되어 있는 채널(35)을 탈퇴하기를 원한다고 가정한다. 수신기(60)는 먼저 적응 노드(50) 또는 서버(40)로 채널 제어 신호를 송신한다. 이 제어 신호가 결국에 서버(40)에 도달할 때, 수신기(60)가 정상적인 절차들을 통해 멀티캐스트 그룹 채널을 성공적으로 탈퇴할 수 없었더라도, 어떠한 다른 수신기도 채널(35)에 현재 가입되어 있지 않다면, 서버(40)는 모든 패킷들을 채널(35)을 통해 송신하는 것을 즉시 중단할 수 있다. 채널(35)은 즉시 조용하게 되어 네트워크 자원들을 절약할 것이다.
적응 노드(50)가 패킷을 발송하는 다운스트림 링크의 용량은, 허용 가능한 종단간 지연에 따라, 제한적이지 않은 예로 TCP-친화 기준을 충족하는 발송 속도를 따르게 되어, 해당 링크에서의 일시적인 정체에 적응하도록 예컨대, 32 내지 35와 같은 상위 채널에서 오는 패킷이 계속 발송되면서, 현재의 병목 링크에서 버퍼링되도록 한다. 따라서, 적응 노드(50)는 2개의 상이한 기능을 가질 수 있는데, 서버(40)로부터 수신기(60)로의 순방향으로 적응 노드(50)는 선택적인 패킷 누락과 같은 서비스의 품질(QoS)을 스트리밍 애플리케이션에 제공하기 위해 IP 네트워크를 강화시킬 수 있다. 역방향으로는 적응 노드(50)가 피드백 내폭을 억제하고 채널 적응 제어의 속도를 높일 수 있는 제어 대리 장치의 역할을 할 수 있다.
본 발명이 위에서 특정 예들에 관해서 기술되었지만, 본 발명은 본 명세서에 기재된 예들에 구속되거나 한정되는 것으로 의도된 것이 아니라는 점을 이해해야 한다. 예를 들어, 본 발명은 임의의 특정 코딩 전략 프레임 타입이나 확률 분포에 한정되지 않는다. 오히려, 본 발명은 첨부된 청구항들의 취지와 범위 내에 포함된 본 발명의 다양한 구조들과 수정한 것들을 커버하도록 의도되었다.
본 발명은 일반적으로 비디오 스트리밍에 이용할 수 있는 것으로, 특히 인터넷과 같은 IP 네트워크를 통해 파인 그래뉼라 코드화된 비디오를 스트리밍하는 것에 이용 가능하다.

Claims (11)

  1. 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 제공하는 시스템으로서,
    파인 그래뉼라 확장성 코드화된 비디오 데이터를 복수의 채널들을 통해 데이터 네트워크로 송신하기 위한 서버;
    수신기에서 데이터 네트워크의 네트워크 정체 상태들을 감지하고, 상기 수신기에서 데이터 네트워크의 상기 감지된 정체 상태들에 기초하여 미리 정해진 수의상기 복수의 채널에 대한 가입(subscription)을 동적으로 수정하는 제 1 네트워크 분석기를 가지는 수신기; 및
    상기 수신기에 의해 가입된 채널들의 개수를 설명하는 제 2 네트워크 분석기를 가지는 적응 노드를 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터 제공 시스템.
  2. 제 1항에 있어서, 상기 적응 노드는 복수의 적응 노드를 포함하고, 상기 복수의 적응 노드 중 적어도 하나는 상기 복수의 적응 노드 중 적어도 다른 하나의 업스트림(upstream)에 있는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터 제공 시스템.
  3. 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법으로서,
    a. 적응 노드를 데이터 네트워크에서의 서버와 수신기 중간에 논리적으로 배치하는 단계;
    b. 적응 노드를 통해 데이터 네트워크를 통해 상기 서버와 상기 수신기 사이의 통신을 논리적으로 개시하는 단계;
    c. 상기 수신기에 의해 감지된 대로, 네트워크 용량에 기초하여 상기 수신기에 의해 하나 또는 그 이상의 채널들에 가입하는 단계로서, 각 채널은, 상기 서버에서 이용 가능한 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 포함하는 복수의 데이터 층들의 미리 정해진 데이터 층에 대응하는, 하나 또는 그 이상의 채널들에 가입하는 단계;
    d. 상기 적응 노드를 통해 각 가입된 채널에 관한 상기 데이터 네트워크를 통해 상기 서버와 상기 수신기 사이의 종단간(end-to-end) 통신 채널들을 논리적으로 개시하는 단계;
    e. 상기 서버와 상기 수신기 중간에 동작 가능하게 배치한 적응 노드의 다운스트림에 있는 수신기에 의해 가입된 채널들을 상기 적응 노드를 통해 인지하는 단계;
    f. 상기 서버에 의해 복수의 데이터 층들의 미리 정해진 개수의 데이터 층들을 그들 각각의 채널들을 통해 상기 데이터 네트워크로 송신하는 단계;
    g. 상기 수신기에서 상기 수신기에 의해 상기 네트워크 용량을 감시하는 단계;
    h. 상기 적응 노드에 의해 상기 적응 노드에서의 네트워크 용량을 감시하는 단계;
    i. 상기 수신기에 의해 감지된 대로 네트워크 용량에 기초하여 상기 수신기에서 상기 가입된 채널들의 전송을 수정하는 단계; 및
    j. 상기 적응 노드에 의해 감지된 대로 네트워크 용량에 기초하여 상기 적응 노드를 통해 상기 수신기로의 상기 가입된 채널들의 전송을 수정하는 단계를 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  4. 제 3항에 있어서, 상기 단계 (c)는
    a. 기본 층 프레임을 생성하기 위해 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터의 일부를 코드화하는 단계;
    b. 파인 그래뉼라 코딩 기술을 사용하여, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터와 기본 층 프레임으로부터 움직임 보상된 잔여 이미지를 생성하는 단계;
    c. 상기 움직임 보상된 잔여 이미지들을 사용하여 강화 층을 생성하는 단계로서, 상기 강화 층은 복수의 층들을 포함하고, 각 층은 상기 움직임 보상된 잔여 이미지들의 일부를 포함하는, 강화 층 생성 단계를 더 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  5. 제 4항에 있어서, 상기 적응 노드에서 기본 층 프레임과 강화 층을 버퍼링하는 단계를 더 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  6. 제 5항에 있어서, 상기 버퍼링 단계는
    a. 업스트림 노드로부터 재송신을 요청하는 단계와,
    b. 다운스트림 노드로부터 재송신 요청에 응답하는 단계를 더 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  7. 제 4항에 있어서,
    a. 데이터의 업스트림 소스로부터 제 1 속도로 층 데이터를 수신하는 단계와,
    b. 상기 데이터의 다운스트림 수신기로 제 2 속도로 상기 층 데이터를 전송하는 단계를 더 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  8. 제 4항에 있어서, 상기 적응 노드는 상기 적응 노드의 다운스트림에 논리적으로 배치된 클라이언트의 가입 요청을 처리하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  9. 제 8항에 있어서, 상기 클라이언트는 수신기와 제 2 적응 노드중 적어도 하나를 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  10. 제 8항에 있어서, 상기 처리는
    a. 상기 적응 노드에서 상기 수신기로부터의 가입 요청을 수신하는 단계;
    b. 상기 적응 노드에 의해 최대 가입 레벨을 계산하는 단계; 및
    c. 상기 적응 노드에 의해 최대 가입 레벨을 다음 피어(peer)의 업스트림으로 전파하는 단계를 포함하는, 스트리밍 파인 그래뉼라 확장성 코드화된 비디오 데이터를 송신하는 방법.
  11. 스트리밍 비디오 데이터 시스템에서 사용하기 위한 적응 노드로서,
    a. 데이터 네트워크에 동작 가능하게 연결하기 위한 데이터 통신 인터페이스와,
    b.네트워크 분석기를 포함하는, 스트리밍 비디오 데이터 시스템에서 사용하기 위한 적응 노드에 있어서, 상기 네트워크 분석기는
    ⅰ. 상기 적응 노드에서 상기 데이터 네트워크의 네트워크 정체 상태들을 감지하고,
    ⅱ. 감지된 네트워크 정체 상태들에 기초하여, 상기 적응 노드의 업스트림에 논리적으로 배치된 데이터 채널들의 소스로부터 상기 적응 노드의 다운스트림에 논리적으로 배치된 클라이언트로 데이터 채널들을 송신하는 것을 동적으로 수정하기 위한 것인, 스트리밍 비디오 데이터 시스템에서 사용하기 위한 적응 노드.
KR10-2004-7012810A 2002-02-22 2003-02-12 Ip 네트워크를 통해 파인 그래뉼라 확장성 코드화된비디오를 스트리밍하는 방법 KR20040084922A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/042,762 2002-02-22
US10/042,762 US20040071083A1 (en) 2002-02-22 2002-02-22 Method for streaming fine granular scalability coded video over an IP network
PCT/IB2003/000551 WO2003071806A1 (en) 2002-02-22 2003-02-12 A method for streaming fine granular scalability coded video over an ip network

Publications (1)

Publication Number Publication Date
KR20040084922A true KR20040084922A (ko) 2004-10-06

Family

ID=27752596

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7012810A KR20040084922A (ko) 2002-02-22 2003-02-12 Ip 네트워크를 통해 파인 그래뉼라 확장성 코드화된비디오를 스트리밍하는 방법

Country Status (7)

Country Link
US (1) US20040071083A1 (ko)
EP (1) EP1479238A1 (ko)
JP (1) JP2005518729A (ko)
KR (1) KR20040084922A (ko)
CN (1) CN1636404A (ko)
AU (1) AU2003202792A1 (ko)
WO (1) WO2003071806A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1246394A1 (en) * 2001-03-26 2002-10-02 Koninklijke KPN N.V. System for personalised information distribution
US7391807B2 (en) * 2002-04-24 2008-06-24 Mitsubishi Electric Research Laboratories, Inc. Video transcoding of scalable multi-layer videos to single layer video
US20030236904A1 (en) * 2002-06-19 2003-12-25 Jonathan Walpole Priority progress multicast streaming for quality-adaptive transmission of data
US7480252B2 (en) * 2002-10-04 2009-01-20 Koniklijke Philips Electronics N.V. Method and system for improving transmission efficiency using multiple-description layered encoding
US7116716B2 (en) 2002-11-01 2006-10-03 Microsoft Corporation Systems and methods for generating a motion attention model
US8964830B2 (en) * 2002-12-10 2015-02-24 Ol2, Inc. System and method for multi-stream video compression using multiple encoding formats
US20090118019A1 (en) 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US9108107B2 (en) * 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US9077991B2 (en) 2002-12-10 2015-07-07 Sony Computer Entertainment America Llc System and method for utilizing forward error correction with video compression
US9314691B2 (en) 2002-12-10 2016-04-19 Sony Computer Entertainment America Llc System and method for compressing video frames or portions thereof based on feedback information from a client device
US9138644B2 (en) 2002-12-10 2015-09-22 Sony Computer Entertainment America Llc System and method for accelerated machine switching
US7063195B2 (en) * 2004-07-27 2006-06-20 Ford Global Technologies, Llc Dual clutch assembly for a motor vehicle powertrain
US9053754B2 (en) 2004-07-28 2015-06-09 Microsoft Technology Licensing, Llc Thumbnail generation and presentation for recorded TV programs
US7986372B2 (en) * 2004-08-02 2011-07-26 Microsoft Corporation Systems and methods for smart media content thumbnail extraction
EP1650973A1 (en) * 2004-10-25 2006-04-26 Alcatel USA Sourcing, L.P. Method for encoding a multimedia content
EP1847071A4 (en) * 2005-01-26 2010-10-20 Internet Broadcasting Corp B V MULTI-DIFFUSION IN LAYERS AND EXACT ATTRIBUTION OF BANDWIDTH AND PRIORIZATION OF PACKETS
US20060221847A1 (en) * 2005-03-29 2006-10-05 Dacosta Behram M Method and apparatus for selecting transmission modulation rates in wireless devices for A/V streaming applications
US20070112811A1 (en) * 2005-10-20 2007-05-17 Microsoft Corporation Architecture for scalable video coding applications
EP1781035A1 (en) * 2005-10-27 2007-05-02 Thomson Licensing S.A. Real-time scalable streaming system and method
US8180826B2 (en) * 2005-10-31 2012-05-15 Microsoft Corporation Media sharing and authoring on the web
US7773813B2 (en) 2005-10-31 2010-08-10 Microsoft Corporation Capture-intention detection for video content analysis
US8196032B2 (en) 2005-11-01 2012-06-05 Microsoft Corporation Template-based multimedia authoring and sharing
EP2206270B1 (en) 2007-11-01 2018-01-10 Thomson Licensing A method and apparatus for streaming scalable multimedia data streams
US8799940B2 (en) 2007-11-30 2014-08-05 France Telecom Method of coding a scalable video stream destined for users with different profiles
US8462797B2 (en) * 2009-11-30 2013-06-11 Alcatel Lucent Method of priority based transmission of wireless video
US8976744B2 (en) * 2010-11-03 2015-03-10 Broadcom Corporation Vehicle communication network including wireless communications
US8509072B2 (en) 2011-03-07 2013-08-13 Comcast Cable Communications, Llc Network congestion analysis
US20130318251A1 (en) * 2012-05-22 2013-11-28 Alimuddin Mohammad Adaptive multipath content streaming
US9285865B2 (en) * 2012-06-29 2016-03-15 Oracle International Corporation Dynamic link scaling based on bandwidth utilization
US9106391B2 (en) * 2013-05-28 2015-08-11 International Business Machines Corporation Elastic auto-parallelization for stream processing applications based on a measured throughput and congestion
EP3485646B1 (en) * 2016-07-15 2022-09-07 Koninklijke KPN N.V. Streaming virtual reality video
EP3535644B1 (en) 2016-11-04 2023-02-22 Koninklijke KPN N.V. Streaming virtual reality video
CN109391680B (zh) * 2018-08-31 2021-07-09 创新先进技术有限公司 一种定时任务数据处理方法、装置及系统
US11523185B2 (en) 2019-06-19 2022-12-06 Koninklijke Kpn N.V. Rendering video stream in sub-area of visible display area

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US16008A (en) * 1856-11-04 Machine fob
US23429A (en) * 1859-03-29 Improved milk-pan
CA2126467A1 (en) * 1993-07-13 1995-01-14 Barin Geoffry Haskell Scalable encoding and decoding of high-resolution progressive video
US5555244A (en) * 1994-05-19 1996-09-10 Integrated Network Corporation Scalable multimedia network
US5740075A (en) * 1994-09-12 1998-04-14 Bell Atlantic Network Services, Inc. Access subnetwork controller for video dial tone networks
US5742892A (en) * 1995-04-18 1998-04-21 Sun Microsystems, Inc. Decoder for a software-implemented end-to-end scalable video delivery system
US5621660A (en) * 1995-04-18 1997-04-15 Sun Microsystems, Inc. Software-based encoder for a software-implemented end-to-end scalable video delivery system
US6075768A (en) * 1995-11-09 2000-06-13 At&T Corporation Fair bandwidth sharing for video traffic sources using distributed feedback control
US6233017B1 (en) * 1996-09-16 2001-05-15 Microsoft Corporation Multimedia compression system with adaptive block sizes
US6564262B1 (en) * 1996-09-16 2003-05-13 Microsoft Corporation Multiple multicasting of multimedia streams
US6173013B1 (en) * 1996-11-08 2001-01-09 Sony Corporation Method and apparatus for encoding enhancement and base layer image signals using a predicted image signal
KR100261254B1 (ko) * 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 데이터 부호화/복호화방법 및 장치
US6091777A (en) * 1997-09-18 2000-07-18 Cubic Video Technologies, Inc. Continuously adaptive digital video compression system and method for a web streamer
US6148005A (en) * 1997-10-09 2000-11-14 Lucent Technologies Inc Layered video multicast transmission system with retransmission-based error recovery
US6424624B1 (en) * 1997-10-16 2002-07-23 Cisco Technology, Inc. Method and system for implementing congestion detection and flow control in high speed digital network
US5928331A (en) * 1997-10-30 1999-07-27 Matsushita Electric Industrial Co., Ltd. Distributed internet protocol-based real-time multimedia streaming architecture
US5941951A (en) * 1997-10-31 1999-08-24 International Business Machines Corporation Methods for real-time deterministic delivery of multimedia data in a client/server system
US6215766B1 (en) * 1998-01-30 2001-04-10 Lucent Technologies Inc. Hierarchical rate control of receivers in a communication system transmitting layered video multicast data with retransmission (LVMR)
US6256623B1 (en) * 1998-06-22 2001-07-03 Microsoft Corporation Network search access construct for accessing web-based search services
US6275531B1 (en) * 1998-07-23 2001-08-14 Optivision, Inc. Scalable video coding method and apparatus
US6275847B1 (en) * 1999-01-07 2001-08-14 Iq Net Solutions, Inc. Distributed processing systems incorporating processing zones which communicate according to both streaming and event-reaction protocols
US6501797B1 (en) * 1999-07-06 2002-12-31 Koninklijke Phillips Electronics N.V. System and method for improved fine granular scalable video using base layer coding information
US6263022B1 (en) * 1999-07-06 2001-07-17 Philips Electronics North America Corp. System and method for fine granular scalable video with selective quality enhancement
US7028096B1 (en) * 1999-09-14 2006-04-11 Streaming21, Inc. Method and apparatus for caching for streaming data
US7016412B1 (en) * 2000-08-29 2006-03-21 Koninklijke Philips Electronics N.V. System and method for dynamic adaptive decoding of scalable video to balance CPU load

Also Published As

Publication number Publication date
EP1479238A1 (en) 2004-11-24
US20040071083A1 (en) 2004-04-15
JP2005518729A (ja) 2005-06-23
CN1636404A (zh) 2005-07-06
WO2003071806A1 (en) 2003-08-28
AU2003202792A1 (en) 2003-09-09

Similar Documents

Publication Publication Date Title
KR20040084922A (ko) Ip 네트워크를 통해 파인 그래뉼라 확장성 코드화된비디오를 스트리밍하는 방법
EP2193634B1 (en) Bandwidth reservation for data flows in interconnection networks
CN1217543C (zh) 对等视频点播系统中的设备和方法
EP3127285B1 (en) Method and systems for optimizing bandwidth utilization in a multi-participant full mesh peer-to-peer video session
EP2817971B1 (en) Network controlled streaming
US9413797B2 (en) Data communication system and method
EP2989800A1 (en) Data communication system and method
US20200120152A1 (en) Edge node control
DE60208474T2 (de) Verfahren zur Übertragung von Datenströmen abhängig vom überwachten Zustand des Anwendungsspeichers des Nutzers
WO2002035844A2 (en) Dynamic quality adaptation using personal quality profiles and composite performance metric
KR100563659B1 (ko) 실시간 스트리밍 서비스 장치
Sisalem et al. QoS control using adaptive layered data transmission
JP2005523605A (ja) 適応レート制御のための方法および装置
Kang et al. The active traffic control mechanism for layered multimedia multicast in active network
KR101023775B1 (ko) 통신 세션 관리 시스템 및 이 시스템을 포함하는 스트림허브
KR20050066050A (ko) 레이어 멀티캐스팅을 이용한 hdtv 미디어 게이트웨이시스템 및 운용방법
Ma et al. Access point centric scheduling for dash streaming in multirate 802.11 wireless network
Kawada et al. Cooperative inter-stream rate control scheme for layered multicast
JP7298690B2 (ja) コンテンツ配信システム、マルチキャストユニキャスト/マルチキャストマルチキャスト変換装置、マルチキャストユニキャスト変換装置、コンテンツ配信方法及びコンテンツ配信プログラム
Shih et al. A transparent loss recovery scheme using packet redirection for wireless video transmissions
Sathyanarayana Multipath Transport Protocols for Real Time Communication Systems
Smith et al. Fair link sharing with layered multicast videoconferencing
Patil Video Transmission over varying bandwidth links
Guo et al. A bandwidth allocation algorithm based on historical QoS metric for adaptive video streaming
JP2006067385A (ja) 映像レイヤ決定装置および映像レイヤ決定方法

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