KR20090092813A - Iptv 시스템에서 로우 비트 레이트 스트림을 이용하는 비디오 데이터 손실 복원 - Google Patents

Iptv 시스템에서 로우 비트 레이트 스트림을 이용하는 비디오 데이터 손실 복원

Info

Publication number
KR20090092813A
KR20090092813A KR1020097012689A KR20097012689A KR20090092813A KR 20090092813 A KR20090092813 A KR 20090092813A KR 1020097012689 A KR1020097012689 A KR 1020097012689A KR 20097012689 A KR20097012689 A KR 20097012689A KR 20090092813 A KR20090092813 A KR 20090092813A
Authority
KR
South Korea
Prior art keywords
video data
bit rate
rate video
bit stream
data bit
Prior art date
Application number
KR1020097012689A
Other languages
English (en)
Other versions
KR101465813B1 (ko
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 KR20090092813A publication Critical patent/KR20090092813A/ko
Application granted granted Critical
Publication of KR101465813B1 publication Critical patent/KR101465813B1/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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • 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, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video 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/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
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440263Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
    • 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/64322IP

Abstract

프레임 손실 또는 손상이 있는지를 결정하도록 제1 비트 레이트 비디오 데이터 비트 스트림을 모니터링하는 단계, 프레임 손실 또는 손상이 있는 경우 제2 비트 레이트 비디오 데이터 비트 스트림의 디코딩 파라미터들, 제2 비트 레이트 비디오 데이터 비트 스트림 및 제1 비트 레이트 비디오 데이터 비트 스트림을 멀티플렉싱하는 단계, 제1 비트 레이트 비디오 데이터 비트 스트림 및 제2 비트 레이트 비디오 데이터 비트 스트림을 디멀티플렉싱하는 단계, 제1 비트 레이트 비디오 데이터 비트 스트림을 디코딩하는 단계, 제1 비트 레이트 비디오 데이터 비트 스트림으로부터 손상된 프레임들을 제거하는 단계, 제2 비트 레이트 비디오 데이터 비트 스트림을 디코딩하는 단계, 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림이 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 해상도를 가지는 경우에 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림으로부터 프레임들을 업샘플링하는 단계, 및 제2 비트 레이트 비디오 데이터 비트 스트림 및 제1 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 융합하는 단계를 포함하는 데이터 손실을 복원하기 위한 시스템 및 방법이 기재된다.

Description

IPTV 시스템에서 로우 비트 레이트 스트림을 이용하는 비디오 데이터 손실 복원{VIDEO DATA LOSS RECOVERY USING LOW BIT RATE STREAM IN AN IPTV SYSTEM}
본 발명은 일반적으로는 인터넷 프로토콜 텔레비전(IPTV)에 관한 것이며, 특히 IPTV 시스템에서 비디오 데이터 손실을 복원하는데 로우 비트 레이트 비트 스트림의 이용에 관한 것이다.
모션 픽쳐 전문가 그룹(motion picture experts group; MPEG 2) 또는 H.264 진보된 비디오 코딩(advanced video coding; AVC)과 같은 진보된 비디오 코더-디코더들(coders-decoders; CODECs)은 인트라-코딩되고 인터-코딩된 예측(predication)을 이용하여, 높은 압축 레이트를 달성한다. 인터-코딩된 픽쳐는 압축을 위해 다른 픽쳐들로부터의 정보를 이용한다. 그러므로, 압축된 픽쳐의 패킷/프레임 손실은 픽쳐 자체의 품질을 저하시킬 뿐만 아니라, 인터-코딩된 예측을 위한 기준으로서 이러한 픽쳐를 이용하는 모든 픽쳐들의 품질에도 영향을 미칠 것이다. 예를 들면, I 프레임의 패킷 손실은 잠재적으로는 그 픽쳐 그룹(GOP)의 모든 픽쳐들에 대해 악 영향을 미칠 수 있다.
상용 디지털 TV 브로드캐스트 시스템에서, 비디오 데이터 스트림들은 헤드-엔드 스트리밍 서버들로부터 백본(backbone) 네트워크를 통해, 도 1a에 도시된 바와 같이 비디오 데이터 스트림들이 복수의 거주지 셋탑 박스들에 멀티캐스팅되는 다수의 멀티캐스트 스위치들에 전송된다. 백본 트랜스포트에서의 데이터 무결성이 매우 중요하다. 백본 트랜스포트에서의 임의의 패킷 손실은 도 1b에 도시된 바와 같이 모든 다운스트림 셋탑 박스들에게 전파될 것이다.
실시간 스트리밍에서, 사용자 데이터그램 프로토콜(user datagram protocol; UDP)이 종종 스트림들을 트랜스포팅하는데 이용된다. UDP 자체로는 서비스의 품질을 보장하지 못한다. 고품질의 상용 비디오 서비스(예를 들면, 에러 없는 시간으의 99.999%)를 제공하기 위해서는, 패킷 손실은 ITU Y.1541의 클래스 0 네트워크 서비스(최상)에서 정의된 1 x 10E-3의 패킷 손실 레이트보다 훨씬 작도록, 백본 네트워크에서 매우 낮아야 한다(1 x 10E-6보다 작음). 포워드 에러 정정(FEC) 또는 선택적 재송신 기술은 효율적인 패킷 손실 레이트를 크게 감소시킬 수 있다. 그러나, 실제 시스템에서, 패킷 손실은 다양한 이유들 때문에 여전히 발생할 수 있다.
패킷 손실이 발생하는 경우, 최종 사용자들에게 제공되는 종속적인 비디오 산물(artifact)들을 줄이는 것이 중요하다. 통상적으로, 에러 은닉(error concealment) 기술이 그 목적에 이용된다. 에러 은닉 기술들은 시간적 또는 공간적 이웃들로부터의 정보를 활용하여, 오류 발생된 영역들 또는 프레임들에 에러들을 은폐시킨다. 그러나, 에러 은닉은 일반적으로 손실된 패킷들이 기준 프레임들(I 또는 P) 데이터를 포함하거나 대규모의 연속적인 프레임들이 전체적으로 손실된 경우에는 양호한 성능을 가지지 못한다.
멀티캐스트 백본 네트워크에서 패킷 손실 레이트를 줄이기 위한 이전의 노력들이 수행되어 왔다. FEC는 서비스 품질(QoS)을 크게 증가시키는 실제적인 방식이다. 일부 최근 연구들은 FEC 알고리즘들을 개선하는데 초점을 맞추어 왔다. 그러나, 강한 FEC는 종종 높은 계산력을 필요로 하고, 비디오 데이터 스트림 트랜스포트에서 상당한 추가적인 레이턴시를 유입시키는데 반해, 약한 FEC는 종종 연장된 사용불능(outage)(예를 들면, > 2초)에 대해서는 적절한 성능을 가지지 못한다. 적응형 FEC는 양방향 통신을 이용하여 FEC의 세기를 다이나믹하게 조정하지만, 시스템의 복잡도는 훨씬 더 높다.
일부 IPTV 시스템들(예를 들면, 최대 서비스 텔레비전(MSTV))은 재송신을 이용하여 손실 복원을 수행한다. 2가지 타입의 멀티캐스트 데이터 손실 복원 스킴들, 즉 소스-기반 및 분배된 복원이 있다. 분배된 멀티캐스트 데이터 손실 복원 스킴들은 통상적으로 대규모 비디오 멀티캐스트에 대해 필수적인 효율 및 복원 레이턴시에서 소스-기반 비디오 데이터 손실 복원 스킴들보다 성능이 더 우수하다. 그러나, 분배된 손실 복원 스킴들은 계층적 네트워크 토폴로지의 상이한 레벨들에서 복수의 노드들에 배치되는 액티브한 손실 복원 컴포넌트들을 필요로 한다. 소스-기반 복원 스킴은 구현하기 더 용이하고, 네트워크에서 더 적은 액티브 컴포넌트들을 필요로 하지만, 특히 대규모 배치(deployment)에서는 덜 효율적이다. 또한, 서버는 다량의 재송신 요구들로 넘쳐날 수 있다, 즉 부정 승인(NAK) 폭주 문제가 나타날 수 있다.
엄격한 QoS 레벨을 요구하는 일부 상용 시스템들은 백본 트랜스포트에 대해 잉여 경로들을 이용하는데, 그 하나는 주 경로에 이용되고 다른 하나는 백업 경로로서 이용된다. 그러한 시스템은 매우 높은 신뢰성을 가지고 있지만, 네트워크 트랜스포트의 측면에서의 비용은 거의 두 배가 된다.
본 발명은 상기 문제들을 다룬다.
본 발명은 첨부된 도면과 조합하여 읽을 때 이하의 상세한 설명으로부터 가장 잘 이해된다. 도면들은 이하에 간략하게 기재된 이하의 도면들을 포함한다.
도 1은 종래 멀티캐스트 IPTV 시스템의 개략도이다.
도 2는 고속 채널 변경들에 이용되는 로우 비트 레이트 비디오 데이터 비트 스트림의 일례이다.
도 3은 노멀(레귤러) 비트 레이트 비디오 데이터 비트 스트림에서 데이터 손실을 복원하는데 이용되는 로우 비트 레이트 비트 스트림의 개략도이다.
도 4는 비디오/데이터 악화 이벤트의 시작 및 끝을 마킹하는 것을 예시하고 있다.
도 5는 프록시 서버에 의해 수행되는 손실 검출 방법의 플로우차트이다.
도 6은 스트림 수신, 디-멀티플렉싱, 디코딩 및 프레임 복원을 수행하는 셋탑 박스의 상세화된 개략도이다.
도 7은 본 발명에 따라 종래 데이터 복원 및 비디오 복원을 비교하는 상세화된 개략도이다.
도 8은 더 짧은 픽쳐 그룹의 로우 비트 레이트 비트 스트림을 이용하는 장점을 예시하고 있다.
본 발명에서, 비디오 데이터 프레임들은 로우 비트 레이트 및 레귤러/노멀 비트 레이트 비디오 데이터 비트 스트림으로 인코딩된다. 여기에 이용된 바와 같이, "/"는 동일한 컴포넌트 또는 개념에 대한 대안 명칭들을 나타내는데 이용된다. 이들 2개의 스트림들은 비디오 서버에 의해 2개의 분리된 멀티캐스트 그룹들에서 백본 네트워크를 통해, 비디오 데이터 비트 스트림들이 복수의 비디오 터미널들(예를 들면, 셋탑 박스들)에게 선택적으로 멀티캐스팅되는 하나 이상의 멀티캐스트 스위치들에게 접속되는 프록시 서버에 전달된다. 정상적인 조건들 하에서, 로우 비트 레이트 비디오 데이터 비트 스트림은 멀티캐스트 스위치들과 셋탑박스들 사이에 접속하는 경로의 어떠한 대역폭도 소비하지 않는다.
프록시 서버는 레귤러 비디오 데이터 비트 스트림의 패킷 손실을 모니터링한다. 패킷 손실 이벤트가 검출되는 경우, 프록시 서버는 로우 비트 레이트 비디오 데이터 비트 스트림의 디코딩 파라미터들(예를 들면, 시퀀스 파라미터 세트(SPS) 및 픽쳐 파라미터 세트(PPS)), 및 레귤러 비트 레이트 비디오 데이터 비트 스트림의 누락 부분에 대응하는 로우 비트 레이트 비디오 데이터 비트 스트림을 레귤러 비디오 데이터 비트 스트림의 멀티캐스트 그룹으로 멀티플렉싱한다. 그리고나서, 수신하는 셋탑 박스는 로우 비트 레이트 및 레귤러 비트 레이트 비디오 데이터 비트 스트림들을 디멀티플렉싱하고, 로우 비트 레이트 비디오 데이터 비트 스트림으로부터 디코딩된 프레임들을 이용하여 손실되거나 손상된 프레임들을 레귤러 비트 레이트 비디오 데이터 비트 스트림에 은폐시킨다. 동일한 로우 비트 레이트 비디오 데이터 비트 스트림이 고속 채널 변경 및 화면 내 화면 또는 모자이크 뷰에 이용될 수 있다. 모자이크 뷰는 사진들의 썸네일(thumbnail)과 유사하다. 이는 복수의(예를 들면, 12) 비디오의 채널들을 하나의 스크린 상에 표시한다.
프레임 손실 또는 손상이 있는지를 결정하도록 제1 비트 레이트 비디오 데이터 비트 스트림을 모니터링하는 단계, 프레임 손실 또는 손상이 있는 경우 제2 비트 레이트 비디오 데이터 비트 스트림의 디코딩 파라미터들, 제2 비트 레이트 비디오 데이터 비트 스트림 및 제1 비트 레이트 비디오 데이터 비트 스트림을 멀티플렉싱하는 단계, 제1 비트 레이트 비디오 데이터 비트 스트림 및 제2 비트 레이트 비디오 데이터 비트 스트림을 디멀티플렉싱하는 단계, 제1 비트 레이트 비디오 데이터 비트 스트림을 디코딩하는 단계, 제1 비트 레이트 비디오 데이터 비트 스트림으로부터 손상된 프레임들을 제거하는 단계, 제2 비트 레이트 비디오 데이터 비트 스트림을 디코딩하는 단계, 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림이 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 해상도를 가지는 경우에 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림으로부터 프레임들을 업샘플링하는 단계, 및 제2 비트 레이트 비디오 데이터 비트 스트림 및 제1 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 융합하는 단계를 포함하는 데이터 손실을 복원하기 위한 시스템 및 방법이 기재된다.
본 발명에서, 로우 비트 레이트(예를 들면, 200Kbps) 및 짧은 GOP 크기(예를 들면, 0.5초) 비디오 데이터 스트림은 인코딩되어 레귤러 비디오 데이터 스트림을 따라 트랜스포팅된다. 로우 비트 레이트 비디오 스트림은 더 낮은 해상도(예를 들면, CIF) 또는 동일한 해상도를 가질 수 있지만, 레귤러 비디오 스트림과 비교하여 더 낮은 비디오 품질을 가진다. 도 2A는 채널 변경 동안 레귤러 비디오 데이터 비트 스트림 및 로우 비트 레이트 비디오 데이터 비트 스트림의 트랜스포트를 도시하고 있고, 도 2B는 채널 변경 후(트랜스포트를 따라서 어떠한 로우 비트 레이트 비디오 데이터 비트 스트림도 없음) 레귤러 비디오 데이터 비트 스트림의 트랜스포트를 도시하고 있다. 또한 도 2A에 도시되어 있는 것은 표시되는 로우 비트 레이트 비디오 데이터 비트 스트림으로부터 디코딩된 프레임들이다. 레귤러 및 로우 비디오 데이터 비트 레이트 스트림들의 트랜스포트는 제로 시간-시프트로 사이멀캐스팅되거나 고정되거나 구성가능한 시간 거리(예를 들면, 2초)로 스태거캐스팅(staggercasting)될 수 있다. 스태거캐스팅은 하나의 네트워크 결함(glitch)이 동일한 미디어 시간에 양쪽 스트림에서 패킷 손실들을 유발할 가능성을 최소화시키고 따라서 양호한 방법이다. 스태거캐스트 시나리오에서, 로우 비트 레이트 비디오 데이터 비트 레이트 스트림은 시간 거리(예를 들면, 2초)만큼 레귤러 스트림을 선행(lead)하거나 후행(lag)할 수 있다.
정상적인 조건 하에서, 2개의 비디오 데이터 비트 스트림들은 2개의 상이한 멀티캐스트 그룹들에게 전송되어, 각 비디오 데이터 비트 스트림은 독립적으로 조합되고 최종 사용자들에 의해 이용되거나 미사용될 수 있다. 이것은 멀티캐스트 스위치와 셋탑 박스 사이에 있는, 네트워크의 최종 세그먼트에서의 대역폭을 감소시킨다. 디지털 가입자 라인(DLS) 배치에서, 최종 세그먼트는 종종 IPTV 시스템에서 대역폭 병목인, DSL 액세스 멀티플렉서(DSLAM)와 셋탑 박스간의 로컬 루프이다. 그러므로, DSLAM 대역폭의 사용을 줄이는 것이 중요하다.
본 발명의 장점은, 로우 비트 레이트 비디오 데이터 비트 스트림이 화면 속 화면(PIP) 표시 또는 고속 채널 변경에 이용될 수 있다는 점이다. 이들 어플리케이션들에서, 로우 비트 레이트 비디오 데이터 비트 스트림은 STB에 의해 요구되는 경우에만 STB에게 캐스팅된다. 도 2는 채널 변경 어플리케이션에서의 스트리밍을 도시하고 있다.
본 발명은 백본 네트워크와 멀티캐스트 스위치 사이에 놓인 프록시 서버를 제공한다. 레귤러 비트 레이트 비디오 데이터 비트 스트림 및 로우 비트 레이트 비디오 데이터 비트 스트림 양쪽 모두가 프록시 서버에 의해 수신되어 일정 기간(예를 들면, 5초) 동안 버퍼링/저장된다(메모리 저장 디바이스). 디코딩 파라미터들(예를 들면, H.264 스트림에 대해서는 SPS, PPS)도 또한 프록시 서버에 저장된다. 프록시 서버는 임의의 패킷 손실(QOS)에 대해 레귤러 비트 레이트 비디오 데이터 비트 스트림을 모니터링한다. 패킷 손실 또는 손상된 패킷을 검출한 경우, 프록시 서버는 우선 비디오 악화 이벤트의 시작(Tb)에 대응하는 미디어 프리젠테이션 시간스탬프를 결정할 것이다. H.264 베이스라인 프로파일 인코딩과 같이, B 픽쳐들을 허용하지 않는 비디오 인코딩에서, Tb는 최종 수신된 양호한 프레임의 미디어 프리젠테이션 시간이다. B 픽쳐들을 가지는 비디오 인코딩에서, Tb는 개방형 GOP로서 인코딩되는 경우에는 최종 수신된 양호한 B 프레임의 미디어 프리젠테이션 시간이거나, 폐쇄형 GOP로서 인코딩된 경우에는 최종 수신된 양호한 B 또는 I 프레임의 미디어 프리젠테이션 시간이다. 시간스탬프 Tb는 패킷 손실 이벤트의 시작을 마킹한다. 그리고나서, 프록시 서버는 그 로컬 버퍼에 저장된 로우 비트 레이트 비디오 데이터 비트 스트림, 및 그 시간스탬프가 Tb 바로 이전인 I 프레임에 대한 인커밍 스트림을 탐색한다. 프록시 서버의 버퍼 크기는 이러한 I 프레임이 대부분의 경우들에서 발견될 수 있도록 설계된다. 그런 후, 프록시 서버는 로우 비트 레이트 비디오 데이터 비트 스트림의 디코딩 파라미터들을 전송한 후, 도 3에 도시된 바와 같이, 그 I 프레임으로부터 시작하는 로우 비트 레이트 비디오 데이터 비트 스트림을, 상이한 프로그램으로서 레귤러 비트 레이트 비디오 데이터 비트 스트림의 멀티캐스트 그룹으로 릴레이한다. 유의할 점은, "패칭(patching)"하는 로우 비트 레이트 비디오 데이터 비트 스트림이 레귤러 비트 레이트 비디오 데이터 비트 스트림과 통합되는 것이 아니라 레귤러 비트 레이트 비디오 데이터 비트 스트림 멀티캐스트 트랜스포트 그룹내에서 분리된 스트림으로서 전달된다는 점이다. "패칭하는" 로우 비트 레이트 비디오 데이터 비트 스트림의 레귤러 비트 레이트 비디오 데이터 비트 스트림으로의 실제적인 융합은 셋탑 박스들에서 수행된다.
그리고나서 프록시 서버는 비디오 악화 이벤트의 끝을 탐색한다. 비디오 악화 이벤트의 끝에 대응하는 프리젠테이션 시간스탬프는 프록시 서버에 의해 Te로서 기록된다. 프록시 서버는 그 프리젠테이션 시간스탬프가 Te보다 큰 로우 비트 레이트 I 프레임을 검출할 때까지 모든 로우 비트 레이트 비디오 데이터 비트 스트림 패킷들을 전달한다. 이것은 그 프리젠테이션 시간 스탬프가 Te보다 작은 모든 로우 비트 레이트 비디오 데이터 비트 스트림 패킷들이 프록시 서버에 의해 전달되는 것을 보장하고, 따라서 멀티플렉싱된 로우 비트 레이트 비디오 데이터 비트 스트림 패킷들은 레귤러 비트 레이트 비디오 데이터 비트 스트림의 전체 손실된 부분을 커버한다.
패킷 손실의 끝은 일반적으로 비디오 악화의 끝을 의미하지 않는다. 이것은 손실되거나 손상된 픽쳐가 뒤따르는 픽쳐들에 의해 기준 픽쳐로서 이용될 수 있기 때문이다. 일반적으로, 레귤러 비트 레이트 비디오 데이터 비트 스트림에서 다음 수신된 양호한 I 프레임(MPEG2 및 H.264에 대함) 또는 중간 데이터 레이트(IDR) 프레임(H.264에 대함)이 비디오 악화 이벤트의 끝으로 간주된다. 도 4는 비디오 악화 시간스탬프의 끝을 예시하고 있다. 구체적으로는, 경우 A에서, B 프레임들은 레귤러 비트 레이트 비디오 데이터 비트 스트림에서 인코딩되지 않고, 비디오 악화 이벤트의 시작 Tb는 식별된 손실 P 프레임들을 바로 선행하는 P 프레임 바로 앞에 마크된다. 대응하여, 비디오 악화 이벤트의 끝 Te는 다음 I 프레임의 바로 앞에 마크된다.
경우 B에서, B 프레임들이 레귤러 비트 레이트 비디오 데이터 비트 스트림에 존재한다. 비디오 프레임들은 디코딩 순서로 전달된다. 손실된 레귤러 비트 레이트 비디오 데이터 비트 스트림 프레임들은 18, 20, 22, 32 및 26으로서, 디코딩 순서에 있어서 연속적이다. 비디오 악화 이벤트의 시작 Tb는 식별된 손실 P 프레임들을 바로 선행하는 B 프레임의 바로 앞에 마크된다. 대응하여, 비디오 악화 이벤트의 끝 Te는 다음 I 프레임의 바로 앞에 마크된다. 비디오 프레임들은 프리젠테이션 순서 표시에 내장된 로우 비트 레이트 프레임들에 있어서는 숫자 순서로 프리젠팅되고, 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들은 디코딩 순서에서 연속적인 순서로 프리젠팅되지 않는다.
도 5는 프록시 서버에 의해 레귤러 비트 레이트 비디오 데이터 비트 스트림의 프레임들에 대해 수행된 손실 검출 방법의 플로우차트이다. 일단 손실된 프레임들이 검출되고 비디오 악화 이벤트(Tb, Te)가 마크되기만 하면, 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들은 레귤러 비트 레이트 비디오 데이터 비트 스트림으로 멀티플렉싱된다. 505에서, 패킷/프레임 손실이 검출되었는지를 결정하는 테스트가 수행된다. 어떠한 패킷/프레임 손실도 검출되지 않는 경우, 이러한 액트는 반복된다. 510에서 패킷/프레임 손실이 검출된 경우, 비디오 악화 이벤트의 시작 Tb가 마크되고 기록된다. 515에서, 백워드 탐색이 수행된다. 백워드 탐색은 Tb보다 작거나 같은 시간스탬프를 가지는 로우 비트 레이트 비디오 데이터 비트 스트림에서 제1 I 프레임을 버퍼에서 검색한다. 520에서, 로우 비트 레이트 비디오 데이터 비트 스트림의 I 프레임이 로케이팅되었는지에 대한 테스트가 수행된다. I 프레임이 로케이팅되지 않았다면, 525에서, 인커밍 로우 비트 레이트 비디오 데이터 비트 스트림은 Tb보다 작거나 같은 제1 I 프레임에 대해 탐색된다. 530에서, 로우 비트 레이트 비디오 데이터 비트 스트림의 I 프레임이 로케이팅되었는지를 결정하는 테스트가 수행된다. I 프레임이 로케이팅되지 않았다면, 단계 535에서, 타임아웃이 있었는지를 결정하는 테스트가 수행된다. 아직 타임아웃이 없었다면, 525에서의 테스트가 반복된다. 타임아웃이 있었다면, 액트 505가 반복된다. 540에서 액트 520에서 로우 비트 레이트 비디오 데이터 비트 스트림 I 프레임이 로케이팅되었다면, 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들은 레귤러 비트 레이트 비디오 데이터 비트 스트림으로 멀티플렉싱된다. 545에서, 비디오 악화 손실의 끝이 검출되었는지를 결정하는 테스트가 수행된다. 비디오 악화 손실의 끝이 검출되지 않은 경우, 540이 반복된다. 비디오 악화 손실의 끝이 검출되었다면, 비디오 악화 손실 시간스탬프의 끝 Te의 결정이 550에서 수행된다. 550에서, 최종 로우 비트 레이트 비디오 데이터 비트 스트림 I 프레임의 시간스탬프가 Te보다 큰지 여부를 결정하는 테스트가 수행된다. 시간스탬프가 Te보다 크지 않은 경우에는, 560에서 계속해서 로우 비트 레이트 비디오 데이터 비트 스트림의 패킷들을 레귤러 비트 레이트 비디오 데이터 비트 스트림으로 멀티플렉싱한다. 시간 스탬프가 Te보다 큰 경우, 멀티플렉싱을 중지하고 액트 505를 반복한다.
로우 비트 레이트 비디오 데이터 비트 스트림의 레귤러 비트 레이트 비디오 데이터 비트 스트림 멀티캐스트 그룹으로의 멀티플렉싱이 중요하다. 이것은 STB들이 로우 비트 레이트 비디오 데이터 비트 스트림을 액티브하게 요구하지 않고서도 수신할 수 있도록 한다. 그렇지 않으면, 로우 비트 레이트 비디오 데이터 비트 스트림을 수신하기 위해서, 멀티캐스트 조인(join) 명령(예를 들면, 인터넷 그룹 관리 프로토콜(IGMP) 조인)이 STB에 의해 전송되어야만 할 것이다. 패킷 손실 이벤트는 그 프로그램으로 튜닝된 모든 STB들을 트리거링하여, 멀티캐스트 조인 명령들을, 이들 명령들에 의해 넘쳐날 수 있는 멀티캐스트 스위치에 동시에 전송할 것이다. 본 발명에서, STB들은 단지 레귤러 채널로부터 데이터를 수신한다. 프록시 서버는 레귤러 비트 레이트 비디오 데이터 비트 스트림의 손실 또는 손상이 검출된 경우에, 레귤러 비트 레이트 비디오 데이터 비트 스트림(그러나, 상이한 프로그램으로서)과 함께, 로우 비트 레이트 비디오 데이터 비트 스트림을 레귤러 채널에 액티브하게 릴레이한다. 도 6에 도시된 바와 같이, STB들은 레귤러 채널로부터 양쪽 프로그램들을 수신하고 프로그램 번호에 기초하여 2개의 프로그램들로 디멀티플렉싱하며 그리고나서 이들을 분리하여 디코딩한다. 레귤러 비트 레이트 비디오 데이터 비트 스트림에 대한 디코더는 비디오 스트림을 디코딩하고 손상된 비디오 프레임들을 제거한다. 에러 정정 모듈은 디코딩된 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들을 디코딩된 레귤러 비트 레이트 비디오 데이터 비트 스트림에 융합한다. 로우 비트 레이트 비디오 데이터 비트 스트림이 레귤러 비트 레이트 비디오 데이터 비트 스트림보다 낮은 해상도를 가지고 있는 경우, 에러 정정 모듈은 디코딩된 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들이 디코딩된 레귤러 비트 레이트 비디오 데이터 비트 스트림 프레임들과 동일한 해상도를 가지도록 디코딩된 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들에 대한 업-샘플링을 수행한다.
도 7은 레귤러 비트 레이트 비디오 데이터 비트 스트림에서 손실된 데이터를 복원하는데 이용되는 로우 비트 레이트 비디오 데이터 비트 스트림의 이용의 상세화된 개략도이다. 구체적으로는, 도 7은 종래 기술과 본 발명간의 비교이다. 로우 비트 레이트 비디오 데이터 비트 스트림이 레귤러 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 해상도를 가지는 경우에, 도 7에 도시된 바와 같이, 디코딩된 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들은 레귤러 비트 레이트 비디오 데이터 비트 스트림의 동일 해상도로 업-샘플링되고, 레귤러 비트 레이트 비디오 데이터 비트 스트림의 손실되거나 손상된 프레임들을 대체하거나 수리하는데 이용된다. 그리고나서 대체되거나 수리된 프레임들은 표시 디바이스에 전송된다. 종래 기술에서, 데이터 손실은 레귤러 비트 레이트 비디오 데이터 비트 스트림의 프레임 손실을 야기한다. 본 발명에서는, 데이터 손실은 레귤러 비트 레이트 비디오 데이터 비트 스트림의 손실된 프레임들을 로우 비트 레이트 비디오 데이터 프레임들로 대체함으로써 복원된다.
잉여(redundant) 데이터로서 FEC, 패리티 또는 공간 스케일링가능한 비디오 코딩보다는 로우 비트 레이트 비디오 데이터 비트 스트림을 이용하는 장점은, 동일한 로우 비트 레이트 비디오 데이터 비트 스트림이 화면 속 화면, 모자이크 뷰 또는 고속 채널 변경 스트림에 이용될 수 있다는 점이다.
레귤러 비트 레이트 비디오 데이터 비트 스트림의 손상되거나 손실된 프레임들의 대체는 디코딩 후에 수행된다는 점이 중요하다. 그러므로, 본 발명은 어느 스트림의 디코딩 프로세스를 방해할 필요가 없다. 또한, 동일한 GOP의 다른 프레임들을 변경하지 않고 레귤러 비트 레이트 비디오 데이터 비트 스트림의 단일 프레임을 대체할 수 있다.
또한, 로우 비트 레이트 비디오 데이터 비트 스트림의 GOP 크기는 레귤러 스트림의 크기보다 더 짧다는 것이 중요하다. 레귤러 비트 레이트 비디오 데이터 비트 스트림의 일부가 손실되거나 손상되는 경우, 프록시 서버는 단지 로우 비트 레이트 비디오 데이터 비트 스트림의 대응하는 GOP를 STB에게 릴레이하기만 하면 된다. 도 4의 경우 A는, B 프레임들이 존재하지 않는 경우에 비디오 악화 이벤트의 지속기간이 레귤러 비트 레이트 비디오 데이터 비트 스트림의 GOP 크기보다 더 짧을 수 있다는 것을 도시하고 있다. 그러므로, 악화 주기를 커버하는데 필요한 로우 비트 레이트 비디오 데이터 비트 스트림 프레임들의 "패칭(patching)"은 레귤러 비트 레이트 비디오 데이터 비트 스트림의 GOP 크기보다 더 짧을 수 있다. 이것은 도 8에 도시되어 있고, 여기에서 레귤러 비트 레이트 비디오 데이터 비트 스트림의 손상된 부분은 컬러링되고/음영처리되지 않았다. 로우 비트 레이트 비디오 데이터 비트 스트림의 GOP4만이 에러 복원에 필요하다.
본 발명은 다양한 형태의 하드웨어, 소프트웨어, 펌웨어, 특별 목적 프로세서들, 또는 그 조합들로 구현될 수 있다는 것은 자명하다. 바람직하게는, 본 발명은 하드웨어 및 소프트웨어의 조합으로서 구현된다. 더구나, 소프트웨어는 양호하게는 프로그램 저장 디바이스 상에서 실체적으로 실시되는 어플리케이션 프로그램으로서 구현된다. 어플리케이션 프로그램은 임의의 적합한 아키텍쳐를 포함하는 머신에 업로딩되어 실행될 수 있다. 바람직하게는, 머신은 하나 이상의 중앙 처리 유닛들(CPU), 랜덤 액세스 메모리(RAM) 및 입출력(I/O) 인터페이스(들)와 같은 하드웨어를 가지는 컴퓨터 플랫폼 상에서 구현된다. 컴퓨터 플랫폼은 오퍼레이팅 시스템 및 마이크로명령 코드를 또한 포함한다. 여기에 기재된 다양한 프로세스들 및 기능들은 마이크로명령 코드의 일부이거나 어플리케이션 프로그램(또는 그 조합)의 일부 중 어느 하나일 수 있고, 이는 오퍼레이팅 시스템을 통해 실행된다. 뿐만 아니라, 추가적인 데이터 저장 디바이스 및 인쇄 디바이스와 같은 다양한 다른 주변장치 디바이스들이 컴퓨터 플랫폼에 접속될 수 있다.
첨부된 도면들에 도시된 일부 구성 시스템 컴포넌트들 및 방법 단계들이 양호하게는 소프트웨어로 구현되기 때문에, 시스템 컴포넌트들(또는 프로세스 단계들) 간의 실제 접속들은 본 발명이 프로그래밍되는 방식에 따라 상이할 수 있다는 것은 또한 자명하다. 본 설명들이 주어지는 경우, 본 기술분야의 통상의 기술자라면, 본 발명의 이들 및 유사한 구현들 또는 구성들을 생각할 수 있을 것이다.
[정부 라이센스 권리들]
미국 정부는 본 발명에 대해 지불완료된 라이센스를 가지고 있고, 미국국립표준기술연구소에 의해 재정된 계약 제70NANB3H3053호의 약정들에 의해 제공되는 바와 같이, 제한된 상황들에서 특허 소유자가 합리적인 조건들에 기초하여 다른 사람들에게 라이센싱하도록 요구하는 권리를 가지고 있다.

Claims (24)

  1. 데이터 손실을 복원하기 위한 방법으로서,
    제1 비트 레이트 비디오 데이터 비트 스트림을 모니터링하여 프레임 손실 및 손상 중 하나가 있는지를 판정하는 단계와,
    프레임 손실 및 손상 중 하나가 있는 경우에, 제2 비트 레이트 비디오 데이터 비트 스트림의 디코딩 파라미터들, 상기 제2 비트 레이트 비디오 데이터 비트 스트림 및 상기 제1 비트 레이트 비디오 데이터 비트 스트림을 멀티플렉싱하는 단계 - 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가짐 - 와,
    상기 제1 비트 레이트 비디오 데이터 비트 스트림 및 상기 제2 비트 레이트 비디오 데이터 비트 스트림을 디멀티플렉싱하는 단계와,
    상기 제1 비트 레이트 비디오 데이터 비트 스트림을 디코딩하여 처리된 제1 비트 레이트 비디오 데이터 비트 스트림을 생성하는 단계와,
    상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림으로부터 손상된 프레임들을 제거하는 단계와,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림을 디코딩하여 처리된 제2 비트 레이트 비디오 데이터 스트림을 생성하는 단계 - 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가지고 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가짐 - 와,
    상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림이 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 해상도를 가지는 경우에, 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 업샘플링하는 단계와,
    상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림 및 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 융합하는 단계
    를 포함하는 데이터 손실 복원 방법.
  2. 제1항에 있어서, 상기 제1 비트 레이트 비디오 데이터 비트 스트림 및 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 사이멀캐스팅되는(simulcast) 데이터 손실 복원 방법.
  3. 제1항에 있어서, 상기 제1 비트 레이트 비디오 데이터 비트 스트림 및 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 스태거캐스팅되는(staggercast) 데이터 손실 복원 방법.
  4. 제1항에 있어서,
    상기 제1 비트 레이트 비디오 데이터 비트 스트림을 제1 멀티캐스트 그룹에 송신하는 단계와,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림을 제2 멀티캐스트 그룹에 송신하는 단계
    를 더 포함하는 데이터 손실 복원 방법.
  5. 제1항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 고속 채널 변경을 달성하는데 이용되는 데이터 손실 복원 방법.
  6. 제1항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 화면 속 화면(picture-in-picture)에 이용되는 데이터 손실 복원 방법.
  7. 제1항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 모자이크 뷰(mosaic view)에 이용되는 데이터 손실 복원 방법.
  8. 제1항에 있어서,
    비디오 악화 이벤트의 시작을 결정하는 단계와,
    상기 비디오 악화 이벤트의 끝을 결정하는 단계
    를 더 포함하는 데이터 손실 복원 방법.
  9. 제8항에 있어서,
    메모리 저장 소자에서 백워드들, 및 인커밍 제2 비트 레이트 비디오 데이터 비트 스트림에서 포워드를 탐색하여, 상기 비디오 악화 이벤트의 상기 시작 이전에 제1 I 프레임을 로케이팅하는 단계와,
    상기 메모리 저장 소자 및 상기 인커밍 제2 비트 레이트 비디오 데이터 비트 스트림 중 하나에서, 상기 비디오 악화 이벤트의 상기 끝 후의 제1 I 프레임을 탐색하는 단계
    를 더 포함하는 데이터 손실 복원 방법.
  10. 제9항에 있어서,
    상기 멀티플렉싱 액트는 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 상기 손실되고 손상된 프레임들 중 하나에 대응하는 상기 제2 비트 레이트 비디오 데이터 비트 스트림의 픽쳐 그룹을 선택적으로 멀티플렉싱하는 데이터 손실 복원 방법.
  11. 제10항에 있어서,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림의 상기 픽쳐 그룹의 해상도는 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 상기 픽쳐 그룹의 해상도보다 작거나 같은 것 중 하나인 데이터 손실 복원 방법.
  12. 데이터 손실을 복원하기 위한 방법에 있어서,
    멀티캐스트 그룹에서 멀티플렉싱된 비디오 데이터 비트 스트림을 수신하는 단계와,
    상기 수신된 비디오 데이터 비트 스트림을 제1 비트 레이트 비디오 데이터 비트 스트림 및 제2 비트 레이트 비디오 데이터 비트 스트림으로 디멀티플렉싱하는 단계 - 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 손실 및 손상 프레임들 중 하나에 대응하는 프레임들을 포함하고, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가짐 - 와,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 디코딩하여, 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 상기 손실 및 손상 프레임들 중 하나를 대체하고 수리하는 것 중 하나를 수행하는 단계
    를 포함하는 데이터 손실 복원 방법.
  13. 데이터 손실을 복원하기 위한 시스템에 있어서,
    제1 비트 레이트 비디오 데이터 비트 스트림을 모니터링하여 프레임 손실 및 손상 중 하나가 있는지를 결정하기 위한 수단과,
    프레임 손실 및 손상 중 하나가 있는 경우에, 제2 비트 레이트 비디오 데이터 비트 스트림의 디코딩 파라미터들, 상기 제2 비트 레이트 비디오 데이터 비트 스트림 및 상기 제1 비트 레이트 비디오 데이터 비트 스트림을 멀티플렉싱하기 위한 수단 - 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가짐 - 과,
    상기 제1 비트 레이트 비디오 데이터 비트 스트림 및 상기 제2 비트 레이트 비디오 데이터 비트 스트림을 디멀티플렉싱하기 위한 수단과,
    상기 제1 비트 레이트 비디오 데이터 비트 스트림을 디코딩하여 처리된 제1 비트 레이트 비디오 데이터 비트 스트림을 생성하기 위한 수단과,
    상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림으로부터 손상된 프레임들을 제거하기 위한 수단과,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림을 디코딩하여 처리된 제2 비트 레이트 비디오 데이터 스트림을 생성하기 위한 수단 - 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가짐 - 과,
    상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림이 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 해상도를 가지는 경우에, 상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 업샘플링하기 위한 수단과,
    상기 처리된 제2 비트 레이트 비디오 데이터 비트 스트림 및 상기 처리된 제1 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 융합하기 위한 수단
    을 포함하는 데이터 손실 복원 시스템.
  14. 제13항에 있어서, 상기 제1 비트 레이트 비디오 데이터 비트 스트림 및 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 사이멀캐스팅되는 데이터 손실 복원 시스템.
  15. 제13항에 있어서, 상기 제1 비트 레이트 비디오 데이터 비트 스트림 및 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 스태거캐스팅되는 데이터 손실 복원 시스템.
  16. 제13항에 있어서,
    상기 제1 비트 레이트 비디오 데이터 비트 스트림을 제1 멀티캐스트 그룹에 송신하기 위한 수단과,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림을 제2 멀티캐스트 그룹에 송신하기 위한 수단
    을 더 포함하는 데이터 손실 복원 시스템.
  17. 제13항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 고속 채널 변경을 달성하는데 이용되는 데이터 손실 복원 시스템.
  18. 제13항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 화면 속 화면(picture-in-picture)에 이용되는 데이터 손실 복원 시스템.
  19. 제13항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 모자이크 뷰에 이용되는 데이터 손실 복원 시스템.
  20. 제13항에 있어서,
    비디오 악화 이벤트의 시작을 결정하기 위한 수단과,
    상기 비디오 악화 이벤트의 끝을 결정하기 위한 수단
    을 더 포함하는 데이터 손실 복원 시스템.
  21. 제20항에 있어서,
    메모리 저장 소자의 백워드들 및 인커밍 제2 비트 레이트 비디오 데이터 비트 스트림의 포워드를 탐색하여 상기 비디오 악화 이벤트의 상기 시작 이전에 제1 I 프레임을 로케이팅하기 위한 수단과,
    상기 메모리 저장 소자 및 상기 인커밍 제2 비트 레이트 비디오 데이터 비트 스트림 중 하나에서, 상기 비디오 악화 이벤트의 상기 끝 후의 제1 I 프레임을 탐색하기 위한 수단
    을 더 포함하는 데이터 손실 복원 시스템.
  22. 제21항에 있어서,
    상기 멀티플렉싱하기 위한 수단은 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 상기 손실되고 손상된 프레임들 중 하나에 대응하는 상기 제2 비트 레이트 비디오 데이터 비트 스트림의 픽쳐 그룹을 선택적으로 멀티플렉싱하기 위한 수단인 데이터 손실 복원 시스템.
  23. 제22항에 있어서, 상기 제2 비트 레이트 비디오 데이터 비트 스트림의 상기 픽쳐 그룹의 해상도는 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 상기 픽쳐 그룹의 해상도보다 작거나 같은 것 중 하나인 데이터 손실 복원 시스템.
  24. 데이터 손실을 복원하기 위한 장치에 있어서,
    멀티캐스트 그룹에서 멀티플렉싱된 비디오 데이터 비트 스트림을 수신하기 위한 수단과,
    상기 수신된 비디오 데이터 비트 스트림을 제1 비트 레이트 비디오 데이터 비트 스트림 및 제2 비트 레이트 비디오 데이터 비트 스트림으로 디멀티플렉싱하기 위한 수단 - 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 손실 및 손상 프레임에 대응하는 프레임들을 포함하고 상기 제2 비트 레이트 비디오 데이터 비트 스트림은 상기 제1 비트 레이트 비디오 데이터 비트 스트림보다 더 낮은 비트 레이트를 가짐 - 과,
    상기 제2 비트 레이트 비디오 데이터 비트 스트림으로부터의 프레임들을 디코딩하여, 상기 제1 비트 레이트 비디오 데이터 비트 스트림의 상기 손실 및 손상 프레임들 중 하나를 대체하기 위한 수단
    을 포함하는 데이터 손실 복원 장치.
KR1020097012689A 2006-12-20 2006-12-20 Iptv 시스템에서 로우 비트 레이트 스트림을 이용하는 비디오 데이터 손실 복원 KR101465813B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2006/048632 WO2008088305A2 (en) 2006-12-20 2006-12-20 Video data loss recovery using low bit rate stream in an iptv system

Publications (2)

Publication Number Publication Date
KR20090092813A true KR20090092813A (ko) 2009-09-01
KR101465813B1 KR101465813B1 (ko) 2014-11-27

Family

ID=39596368

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097012689A KR101465813B1 (ko) 2006-12-20 2006-12-20 Iptv 시스템에서 로우 비트 레이트 스트림을 이용하는 비디오 데이터 손실 복원

Country Status (7)

Country Link
US (1) US8750385B2 (ko)
EP (1) EP2100461A2 (ko)
JP (1) JP4943513B2 (ko)
KR (1) KR101465813B1 (ko)
CN (1) CN101584221B (ko)
BR (1) BRPI0622169A2 (ko)
WO (1) WO2008088305A2 (ko)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070106782A1 (en) * 2005-11-10 2007-05-10 Scientific-Atlanta, Inc. Bandwidth management in each network device in a switched digital video environment
US20070107024A1 (en) * 2005-11-10 2007-05-10 Scientific-Atlanta, Inc. Atomic channel changes in a switched digital video system
US8099756B2 (en) * 2005-11-10 2012-01-17 Versteeg William C Channel changes between services with differing bandwidth in a switched digital video system
US7742407B2 (en) * 2005-11-10 2010-06-22 Scientific-Atlanta, Llc Quality of service management in a switched digital video environment
US7873760B2 (en) * 2005-11-11 2011-01-18 Versteeg William C Expedited digital signal decoding
US20080022320A1 (en) * 2006-06-30 2008-01-24 Scientific-Atlanta, Inc. Systems and Methods of Synchronizing Media Streams
US7725797B2 (en) 2006-07-07 2010-05-25 Scientific-Atlanta, Llc Buffer for storing data and forward error correction (FEC)
US7774672B2 (en) * 2006-07-07 2010-08-10 Scientific-Atlanta, Llc Requesting additional forward error correction
US7877660B2 (en) * 2006-07-07 2011-01-25 Ver Steeg William C Transmitting additional forward error correction (FEC) upon request
US7899046B2 (en) * 2006-07-07 2011-03-01 Ver Steeg William C Determining strategy for multicast and/or unicast transmission to correct forward errors
US7870465B2 (en) * 2006-10-18 2011-01-11 Versteeg William C Reducing channel-change time
US20080244667A1 (en) * 2007-03-27 2008-10-02 Osborne Jason C Bandwidth sensitive switched digital video content delivery
US8370889B2 (en) * 2007-03-28 2013-02-05 Kanthimathi Gayatri Sukumar Switched digital video client reverse channel traffic reduction
US8832766B2 (en) * 2007-07-27 2014-09-09 William C. Versteeg Systems and methods of differentiated channel change behavior
US8776160B2 (en) * 2007-07-27 2014-07-08 William C. Versteeg Systems and methods of differentiated requests for network access
CN101796840A (zh) * 2007-08-28 2010-08-04 汤姆森特许公司 无频道改变延迟的交错播送
US8331459B2 (en) * 2007-09-26 2012-12-11 Intel Corporation Method and apparatus for smooth digital media playback
US8798145B2 (en) 2008-07-22 2014-08-05 Thomson Licensing Methods for error concealment due to enhancement layer packet loss in scalable video coding (SVC) decoding
JP2011529674A (ja) * 2008-07-28 2011-12-08 トムソン ライセンシング スケーラブル・ビデオ符号化(svc)ストリームを用いて高速チャネル変更を行う方法および装置
DE102008039051A1 (de) * 2008-08-21 2010-02-25 Audi Ag Verfahren zum Gewinnen von Bildern bei Mehrfachempfang
CN101420317B (zh) * 2008-11-21 2011-10-26 华为终端有限公司 媒体文件录制错误的修复方法、录制终端、服务器和系统
GB2469107B (en) * 2009-04-02 2015-01-21 Livestation Ltd Method and apparatus for distributing data
US8719885B2 (en) * 2009-11-30 2014-05-06 Echostar Technologies L.L.C. Systems and methods for accessing recoverable program content
US9401813B2 (en) * 2009-12-29 2016-07-26 Iheartmedia Management Services, Inc. Media stream monitor
US8374113B2 (en) * 2010-06-03 2013-02-12 Cisco Technology, Inc. Distributed gateway for reliable multicast wireless video
GB2493498A (en) 2011-07-18 2013-02-13 Nds Ltd Fast channel change using an aggregated video service
CN102780916B (zh) * 2012-04-12 2015-03-18 天脉聚源(北京)传媒科技有限公司 一种视频直播流汇聚分发方法
CN103379360B (zh) * 2012-04-23 2015-05-27 华为技术有限公司 一种视频质量评估方法和装置
US10356143B2 (en) 2012-10-10 2019-07-16 Samsung Electronics Co., Ltd. Method and apparatus for media data delivery control
US9681155B2 (en) * 2013-03-15 2017-06-13 Sony Interactive Entertainment America Llc Recovery from packet loss during transmission of compressed video streams
CN103546765B (zh) * 2013-06-08 2016-12-28 上海数字电视国家工程研究中心有限公司 传输流封装方法、传输流及其解析方法
CN103533387B (zh) * 2013-10-21 2016-08-17 腾讯科技(深圳)有限公司 一种视频直播控制方法、设备及系统
US20160182919A1 (en) * 2014-12-22 2016-06-23 Kabushiki Kaisha Toshiba Transmitting device and receiving device
US20160227235A1 (en) * 2015-02-02 2016-08-04 Yaniv Frishman Wireless bandwidth reduction in an encoder
US9781182B2 (en) * 2015-06-23 2017-10-03 Alcatel Lucent Monitoring of IP multicast streams within an internet gateway device
EP3185455A1 (en) 2015-12-21 2017-06-28 Thomson Licensing Method and apparatus for detecting packet loss in staggercasting
CN106535006B (zh) * 2016-12-12 2019-04-09 朝阳聚声泰(信丰)科技有限公司 一种基于互联网的音视频识别系统及其方法
US11005909B2 (en) 2019-08-30 2021-05-11 Rovi Guides, Inc. Systems and methods for providing content during reduced streaming quality
US11184648B2 (en) 2019-08-30 2021-11-23 Rovi Guides, Inc. Systems and methods for providing content during reduced streaming quality
US10986378B2 (en) * 2019-08-30 2021-04-20 Rovi Guides, Inc. Systems and methods for providing content during reduced streaming quality
US11323730B2 (en) * 2019-09-05 2022-05-03 Apple Inc. Temporally-overlapped video encoding, video decoding and video rendering techniques therefor
KR20210050752A (ko) * 2019-10-29 2021-05-10 삼성전자주식회사 전자장치 및 그 제어방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694173A (en) * 1993-12-29 1997-12-02 Kabushiki Kaisha Toshiba Video data arranging method and video data encoding/decoding apparatus
US5629736A (en) * 1994-11-01 1997-05-13 Lucent Technologies Inc. Coded domain picture composition for multimedia communications systems
US6731811B1 (en) * 1997-12-19 2004-05-04 Voicecraft, Inc. Scalable predictive coding method and apparatus
US6263371B1 (en) 1999-06-10 2001-07-17 Cacheflow, Inc. Method and apparatus for seaming of streaming content
US6577762B1 (en) * 1999-10-26 2003-06-10 Xerox Corporation Background surface thresholding
KR100320476B1 (ko) * 2000-01-12 2002-01-15 구자홍 비디오 디코더 및 디코딩 방법
JP2001333394A (ja) 2000-05-19 2001-11-30 Hitachi Ltd 番組配信装置、複製転送装置及び番組データの複製転送方法
US7693220B2 (en) * 2002-01-03 2010-04-06 Nokia Corporation Transmission of video information
US7810124B2 (en) * 2003-01-28 2010-10-05 Thomson Licensing Robust mode staggercasting fast channel change
US7603689B2 (en) * 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
US8811492B2 (en) 2003-06-16 2014-08-19 Thomson Licensing Encoding method and apparatus enabling fast channel change of compressed video
JP2005033556A (ja) 2003-07-14 2005-02-03 Toshiba Corp データ送信装置、データ送信方法、データ受信装置、データ受信方法
JP4182347B2 (ja) 2003-07-31 2008-11-19 日本電気株式会社 画像データ通信システム及び画像データ通信方法
US7676722B2 (en) * 2004-03-31 2010-03-09 Sony Corporation Multimedia content delivery using pre-stored multiple description coded video with restart
BRPI0510329A8 (pt) * 2004-05-03 2018-05-22 Thomson Res Funding Corporation Aparelho e método para habilitar uma mudança de canal
KR100679011B1 (ko) * 2004-07-15 2007-02-05 삼성전자주식회사 기초 계층을 이용하는 스케일러블 비디오 코딩 방법 및 장치
US20060020995A1 (en) 2004-07-20 2006-01-26 Comcast Cable Communications, Llc Fast channel change in digital media systems
JP2008516556A (ja) * 2004-10-13 2008-05-15 トムソン ライセンシング コンプレクシティスケーラブル映像符号化復号化方法及び装置
US7979885B2 (en) * 2005-08-11 2011-07-12 Harmonic Inc. Real time bit rate switching for internet protocol television
WO2007044556A2 (en) * 2005-10-07 2007-04-19 Innovation Management Sciences, L.L.C. Method and apparatus for scalable video decoder using an enhancement stream
EP1958080A4 (en) * 2005-12-08 2014-05-07 Nortel Networks Ltd SESSION INITIATION PROTOCOL MULTI-DIFFUSION MANAGEMENT METHOD
US7870465B2 (en) * 2006-10-18 2011-01-11 Versteeg William C Reducing channel-change time

Also Published As

Publication number Publication date
US20100046634A1 (en) 2010-02-25
JP4943513B2 (ja) 2012-05-30
WO2008088305A3 (en) 2008-10-16
CN101584221B (zh) 2013-07-03
EP2100461A2 (en) 2009-09-16
JP2010514346A (ja) 2010-04-30
CN101584221A (zh) 2009-11-18
BRPI0622169A2 (pt) 2011-12-27
US8750385B2 (en) 2014-06-10
WO2008088305A2 (en) 2008-07-24
KR101465813B1 (ko) 2014-11-27

Similar Documents

Publication Publication Date Title
KR101465813B1 (ko) Iptv 시스템에서 로우 비트 레이트 스트림을 이용하는 비디오 데이터 손실 복원
US8958486B2 (en) Simultaneous processing of media and redundancy streams for mitigating impairments
US8804845B2 (en) Non-enhancing media redundancy coding for mitigating transmission impairments
CN101518082B (zh) 用于数字视频的快速频道转换的方法和装置
US8265154B2 (en) Redundant data dispersal in transmission of video data based on frame type
US7870465B2 (en) Reducing channel-change time
KR101635235B1 (ko) 스케일러블 비디오 코딩(svc)을 이용한 고속 채널 변경 응용을 위한 실시간 전송 프로토콜(rtp) 패킷화 방법
JP3572067B2 (ja) 転送セルに圧縮されたビデオデータをフォーマットする方法
US8798145B2 (en) Methods for error concealment due to enhancement layer packet loss in scalable video coding (SVC) decoding
US20080098428A1 (en) Network Managed Channel Change In Digital Networks
Greengrass et al. Not all packets are equal, part i: Streaming video coding and sla requirements
US20110109810A1 (en) Method an apparatus for fast channel change using a scalable video coding (svc) stream
US20110029684A1 (en) Staggercasting with temporal scalability
JP4823232B2 (ja) ディジタル・ネットワークにおけるネットワーク管理チャネル変更
KR100994053B1 (ko) Iptv 방송 서비스 시스템, iptv 방송 서비스 시스템에 있어서의 채널 전환 방법, iptv 셋톱박스

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20130329

Effective date: 20140820

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181112

Year of fee payment: 5