KR101689128B1 - 동영상 전문가 그룹 전송 스트림의 채널에 동조하기 위한 장치 및 방법 - Google Patents

동영상 전문가 그룹 전송 스트림의 채널에 동조하기 위한 장치 및 방법 Download PDF

Info

Publication number
KR101689128B1
KR101689128B1 KR1020127005622A KR20127005622A KR101689128B1 KR 101689128 B1 KR101689128 B1 KR 101689128B1 KR 1020127005622 A KR1020127005622 A KR 1020127005622A KR 20127005622 A KR20127005622 A KR 20127005622A KR 101689128 B1 KR101689128 B1 KR 101689128B1
Authority
KR
South Korea
Prior art keywords
transport stream
program clock
bit rate
clock reference
mpeg transport
Prior art date
Application number
KR1020127005622A
Other languages
English (en)
Other versions
KR20120054609A (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 KR20120054609A publication Critical patent/KR20120054609A/ko
Application granted granted Critical
Publication of KR101689128B1 publication Critical patent/KR101689128B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • 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/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • 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/44004Processing 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 video buffer management, e.g. video decoder buffer or video display buffer
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip
    • 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

예컨대 인터넷 프로토콜 텔레비전(IPTV)망에 사용되는, 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널에 동조를 위한 방법과 장치들이 채널 변경 절차를 최적화하기 위해 제공된다. 방법은 MPEG 전송 스트림을 제1비트율에서 수신하는 단계를 포함하고, MPEG 전송 스트림은 다수의 텔레비전 채널을 포함한다. 수신한 MPEG 전송 스트림에서 프로그램 클록 기준(PCR)값들이 식별되고, 프로그램 클록 기준(CPR)값들 중 하나 이상이 조정된다. 조정된 프로그램 클록 기준값을 포함하는 MPEG 전송 스트림은 제2비트율로 셋탑박스와 같은 수신기 장치로 전송되어, 셋탑박스가 채널 변경 절차는 보다 빨리 수행할 수 있도록 해준다.

Description

동영상 전문가 그룹 전송 스트림의 채널에 동조하기 위한 장치 및 방법{APPARATUS AND METHOD FOR TUNING TO A CHANNEL OF A MOVING PICTURES EXPERT GROUP TRANSPORT STREAM(MPEG-TS)}
본 발명은 예컨대 인터넷 프로토콜 텔레비전(IPTV)망에서 고속채널변환(FCC) 절차를 수행할 때, 동영상 전문가그룹 전송 스트림(MPEG-TS)의 채널에 동조를 위한 방법에 관한 것이다.
가입자 품질의 경험은 인터넷 프로토콜 텔레비전(IPTV)와 이동성 텔레비전(Mobile Tv) 둘 다에 대해 중요한 면이다. 화상품질 또는 신뢰도와 같은 IPTV 서비스품질에 영향을 미치는 많은 요인들이 있지만, 중요한 품질경험의 요소는 얼마나 빨리 또한 신뢰성을 가지고서 가입자들이 TV채널들을 변경할 수 있는가이다.
통상적으로 IPTV에서, 비디오채널을 시청하기를 원하는 가입자는 비디오 스트림내 적절한 액세스포인트에서 비디오 스트림에 참여하여야만 한다. 이는 IPTV에서 채널변경 절차 동안에(예컨대, 소위 "채널 잽핑(channel zapping)" 동안에) 지연을 야기시킬 수 있는데, 이는 채널변경 동안에 가입자가 늦은 응답시간을 경험하게 할 수 있다.
채널변경 응답시간을 개선하기 위하여, 고속 채널 변경(FCC)와 고속 콘텐츠 스위칭(Fast Content Switching:FCS)이 IPTV와 이동성 TV를 위해 각각 개발되었다.
도 1은 IPTV에서 전형적인 채널변경 절차 동안에 수행되는 단계를 도시하고, 또한 1초의 비디오 버퍼시간과 0.5초의 화상집합(Group of Pictures:GOP)시간(GOP 는 IPTV망에서 일련의 I, B 및 P프레임들이다)을 기반으로 한 평균(최악의 경우) 타이밍을 가지는 예시적 시나리오를 나타낸다.
먼저, 셋탑박스(STB) 또는 새로운 채널을 수신하고자 원하는 텔레비전과 같은 수신기는 반드시 새로운 채널에 동조되어야 한다. 이는 동조가 완료되기 전까지 망에 명령을 전송하는 것과 그리고 명령을 처리하는 것을 수반한다(이들 단계는 시간 t1, t2 및 t3 에 도시되어 있다). 제1비디오 패킷들은 시간 t3 에서 셋탑박스에 의해서만 수신되게 된다. 즉, 동조가 완료된 후에 수신되게 된다. IPTV의 경우에, 가입자들에게 멀티캐스트 트래픽의 전달에 전형적으로 사용되는 제어매카니즘은 인터넷 그룹 멀티캐스트 프로토콜(Internet Group Multicast Protocol:IGMP)이다. IGMP 명령들은 업스트림 장비가 한 채널을 전송하는 것을 중단하도록 하거나("(떠남)leave") 또는 다른 채널을 개시하도록("참여(join)") 지시하는데 사용된다. 따라서, 시간 t1 에서, 셋탑박스는 IGMP 참여(join) 명령을 망에 전송하고, 이에 의해 망은 요청된 채널에 대하 패킷들을 셋탑박스로 전송을 개시하게 된다.
대안적으로, 명령을 패치(fetch)하는데 IGMP 명령 대신에 데이터를 실시간 스트리밍 프로토콜(Real Time Streaming Protocol:RTSP) 명령을 사용할 수 있고, RTSP 명령은 전형적으로 소정의 IPTV 채널에 "참여하거나(join)" 또는 "떠나는데(leave)"에만 사용할 수 있다. RTSP는 미디어 스트리밍 서버의 제어에 전형적으로 사용되는 제어 프로토콜이다. RTSP는 전형적으로 유니캐스트(unicast) 전달을 제어하는데 사용되고(그러나, 멀티캐스트에 대해 사용할 수 있다), 멀티캐스트 전달의 경우에 IGMP는 멀티캐스트 그룹에 대한 가입을 제어하는데 사용된다.
전통적이 방송의 경우에, 예컨대 디지털 비디오 방송-위성(Digital Video Broadcast-Satellite:DVB-S)에서, 수신기(예컨대 셋탑박스 또는 텔레비전)은 채널 또는 채널 번들의 새로운 트랜스폰더 주파수(transponder frequency)에 동조되어야만 한다. MPEG 전송 스트림(MPEG-TS)는 전형적으로 이러한 방송 시스템들에 사용되는데, 여기서 다수의 채널들이 다일 전송 스트림으로 다중화된다. 그런 다음 다수 채널들을 포함하는 전송 스트림이 단일 주파수(예컨대, 위성 트랜스폰더)를 통해 전송된다. 셋탑박스는 수신한 MPEG 전송 스트림을 분석하여, 프로그램 지정 정보(Program Specific Information:PSI), 주로 프로그램 관련 테이블(Program Association Table:PAT)와 프로그램 맵 테이블(Program Map Table:PMT)을 구한다. 이들 두 테이블들은 전송 스트림 내에서 채널의 할당을 기술하는데, 즉 채널에 속하는 패킷 식별자(PID)와, 멀티미디어 코덱(MPEG2, MPEG4, 등)과 그리고 어느 PID들이 채널에 대한 프로그램 클록 기준(Program Clock Reference:PCR)들을 기술한다. 이 예는, "무료(free-to-air)" 전송을 가정한다. 콘텐츠 보호 IPTV 채널들의 경우에, 셋탑박스는 또한 사용되는 콘텐츠 보호 방법을 기술하는, 조건적 액세스 테이블(conditional access table:CAT)을 구한다. 이러한 시스템에서, 셋탑박스는 또한 콘텐츠를 표시하기 위하여(render) MPEG 전송 스트림을 암호화한다.
프로그램 클록 기준(PCR)이 제공되어, 셋탑박스가 정확한 속도에서, 동기화 방식으로 현재 프로그램에 셋탑박스가 있도록 조력한다. 예컨대, 유럽 비디오 프레임들은 초당 25 프레임으로 디스플레이되도록 되어 있고, 비디오 스트림 내 각 화소는, 영상프레임이 시간으로 디스플레이되어야 할 때를 나타내는 타임 스탬프(time stamp)를 반송하게 된다(예컨대, 제1프레임의 오후 2시에 그리고 후속 프레임은 1/25번째 초 이후에 등). PCR은 수신기의 클록을 송신기의 클록과 동기화시키고, 수신기에서 전송 스트림의 버퍼링을 제어하는데 사용된다.
상기에서 설명한 바와 같이 수신한 전송 스트림의 처리 동안에 원치 않은 지연들을 경험할 수 있다는 것을 이해하게 될 것이다.
예컨대, 셋탑박스가 PID들을 취득하는 동안에, 전형적으로 100 내지 200 msec의 시간 t3 내지 t4 간에 지연 "X"가 있다.
셋탑박스가 PAT와 PMT를 취득하였으면, 셋탑박스는 새로운 채널에서 적절한 "무작위 액세스 지점(random access point:RAP)에 대한 분석을 시작한다. MPEG2 비디오의 경우에, 이는 인트라 프레임 절차(Intra Frame procedure)이다. 도 1은, 무작위 액세스 지점이 매 0.5초 마다 제공된다. 다시, 도 1에서 시간 t4 내지 t5 사이에 지연 "Y"로 도시된 바와 같이, 비디오 시작을 위한 검색 동안에 원치 않는 지연을 경험할 수 있다는 알 것이다.
셋탑박스가 TV 채널에 대한 무작위 액세스 지점을 식별한 후에, 즉 시간 t5 에서 비디오 시작을 발견한 후에, 셋탑박스는 수신한 패킷들의 버퍼링을 개시한다. 버퍼는 (상대적으로) 일정한 전송율에 비해 가변하는 미디어 비트율을 고려하도록 되어 있다.
인트라 프레임에 대한 복호시간이 전송 프레임 내에 제공되고, 특히 패킷화 기본 시스템(Packetized Elementary System:PES) 헤더의 디코딩 타임 스탬프(DTS) 확장 헤더(extension header)에 제공된다. 셋탑박스는 복호를 위한 그의 시스템 클록을 송신기측과 동기화하기 위하여 PCR 정보를 필요로 한다. 그러므로, MPED-TS 수신기는 PCR를 사용하여 셋탑박스에서 버퍼링 시간(즉, 시간 t5 에서 비디오 시작이 발견되는 시간에서부터 복호화가 시작되는 시간까지)을 결정한다. 버퍼링 시간 Bt 는 다음과 같이 주어진다:
버퍼링 시간 Bt = DTS(i) - PCR(i)
여기서, "i"는 비디오 인트라 프레임의 첫 번째 MPEG-TS 패킷이고, DTS(i)는 i번째 MPEG-TS 패킷에서 시작하는 프레임의 디코딩 타임 스탬프이고, 그리고 PCR(i)는 MPEG-TS 패킷에서 수신기 시스템 시간이다. i번째 MPEG-TS 패킷은 프레임의 시작을 포함한다.
이 프레임에 대한 모든 PES 데이터들은 이 버퍼시간 Bt(즉, (DTS(i) - PCR(i)/300)/9000 동안에 전송되어야만 하는데, 시스템 클록 주파수가 27MHz(또한 PCR의 정확도)이기 때문에; PCR(i)가 27000000 초(27MHz)의 단위들로 시스템 클록을 나타내고, PCR(i)/300이 90000 초(90kHz)의 단위들로 시스템을 클록을 나타내기 때문에; (DTS(I) - PCR(i)/300)이 90000 초(90kHz)의 단위들로 버퍼시간을 나타내고, (DTS(i) - PCR(i)/300)/90000가 초들 단위들로 버퍼시간을 나타내기 때문이다. 프레임에 대한 PES 패킷들은 적어도 다음과 같은 비트율로 전송되어야만 한다:
(len(PES-Data)*90000/(DTS(i) - PCR(i)/300))
전형적으로, 비트율은 스트림에서 다음과 같이 PCR들에 관련된다:
(PCR(i+N) - PCR(i))/(27000000*N),
여기서, N은 전송 스트림 내에서 패킷들의 숫자와 동일하고, 전송 스트림의 비트율은 PCT 경계들 간에서 일정하다.
이 디코딩 시간 이외에도, 셋탑박스는 프레임들은 "전송 순서(transmission order)"에서 "디스플레이 순서"(PTS-DTS)로 재배열하기 위한 추가 시간을 필요로 한다.
따라서, 도 1의 시간 t5 와 t6 간에 지연 "Z"로 도시된 바와 같이, 전형적으로 700 내지 1000msec 일 수 있는 원치 않은 지연을 이 디코딩 절차 동안에 경험할 수 있다는 것을 이해할 것이다.
따라서, 상기에서 기술한 동조 또는 채널 변경 절차는 다수의 바람직하지 않은 지연들을 가진다. 버퍼링 절차 동안의 지연들을 포함해 이들 지연들은, 동조 또는 채널 변경 절차에서의 상이한 단계들에 의해 야기된다.
본 발명의 목적은 상기에서 언급한 지연들 중 하나 이상의 줄이기 위한 것이다. 특히, 본 발명의 목적은 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조를 최적화하기 위한, 예컨대 인터넷 프로토콜 텔레비전(IPTV)망을 통해 MPEG 전송 스트림(MPEG-TS)을 사용할 때, MPEG 패킷들 전송하도록 구성되는 인터넷 프로토콜(IP)망에서 채널 변경 절차를 최적화하기 위한 장치와 방법을 제공하는 것이다.
본 발명의 한 특징에 따라, 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널에 동조를 위한 방법이 제공된다. 이 방법은 제1비트율로 MPEG 전송 스트림을 수신하는 단계를 포함하고, 상기 MPEG 전송 스트림은 다수의 채널들을 포함한다. 프로그램 클록 기준(PCR) 값들이 수신된 MPEG 전송 스트림에서 식별되고, 그리고 프로그램 클록 기준(PCR) 값들 중 하나 이상이 조정된다. 방법은 또한 제2비트율로 조정된 프로그램 클록 기준값들을 포함하는 MPEG 전송 스트림을 전송하는 단계를 포함한다.
본 발명은 빠른 속도로 MPEG-TS 데이터와 같은 데이터를 최종 수신기로 전송할 수 있어서, 채널 변경 절차 동안에 데이터 스트림에서 동조 시간(tune-in time)이 줄어들 수 있도록 해준다.
본 발명의 이러한 실시예에서, 조정단계는 제2비트율과 제1비트율 간의 차이에 관하여 하나 이상의 프로그램 클록 기준값들을 조정하는 단계를 포함한다. 제1프로그램 클록 기준값과 제2프로그램 클록 기준값 간의 차이를 조정할 수 있다. 이외에도, 제1프로그램 클록 기준값과 제2프로그램 클록 기준값 간의 차이도 조정할 수 있다.
본 발명의 한 실시예에 따라, 선규정된 프로그램 클록 기준값이 수신된 MPEG 전송 스트림에서 선택될 수 있고, MPEG 전송 스트림에서 상기 선규정된 프로그램 클록 기준값에 앞서 발생하는 모든 프로그램 클록 기준값들이 조정되고, 그리고 모든 후속 프로그램 클록 기준값들은 수정되지 않은 채로 남겨진다.
수신된 MPEG 전송 스트림은 버퍼링될 수 있어서, 전송된 MPEG 전송 스트림은 수신된 MPEG 전송 스트림보다 높은 비트율에서 전송될 수 있다. 본 발명의 한 실시예에 따라, 이는 선규정된 프로그램 클록 기준값 전까지 수신된 MPEG 전송 스트림을 버퍼링하는 단계를 포함한다. MPEG 전송 스트림은 선규정된 시간 주기 동안, 예컨대 동조 또는 채널 변경 절차 동안 데이터를 버퍼링시키는데 필요한 시간 주기 동안에 제2비트율로 전송될 수 있다.
본 발명의 한 실시예에 따라, 방법은 프로그램 특정 정보를 수신된 MPEG 전송 스트림내 인트라 프레임들과 정렬시키고, 또한 정렬된 MPEG 전송 스트림을 전송하는 단계를 더 포함한다.
본 발명의 한 실시예에 따라, MPEG 전송 스트림을 전송하는 단계는 인트라 프레임 패킷들을 전송하기 앞서 프로그램 특정 정보(PSI)를 전송하는 단계를 포함할 수 잇다.
프로그램 클록 기준(PCR)들이 MPEG 전송 스트림의 인트라 프레임 패킷들 내에 제공될 수 있다. 다르게는, 프로그램 클록 기준(PCR)들이 MPEG 전송 스트림 내 전용 채널에 제공될 수 있다.
MPEG 전송 스트림의 채널에 동조하는 단계는 현 채널에서 새로운 채널로 동조하는 단계, 또는 초기 채널로 동조하는 단계를 포함할 수 있다.
본 발명의 다른 특징에 따라, 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널에 동조를 위한 노드가 제공된다. 노드는 제1비트율로 MPEG 전송 스트림을 수신하기 위한 수신기 유닛을 포함하고, MPEG 전송 스트림은 다수의 채널들을 포함한다. 노드는 또는 수신한 MPEG 전송 스트림에서 프로그램 클록 기준(PCR)값들을 식별하고, 또한 프로그램 클록 기준(PCR)값들 중 하나 이상을 조정하기에 적합한 처리유닛을 포함한다. 노드는 조정딘 프로그램 클록 기준값들을 포함하여, MPEG 전송 스트림을 제2기준율로 전송하기에 적합한 송신기 유닛을 더 포함한다.
처리유닛은 제2비트율과 제1비트율 간의 차이에 관하여 하나 이상의 프로그램 클록 기준값들을 조정하기에 적합할 수 있다. 본 발명의 한 실시예에 따라, 처리유닛은 제1프로그램 클록 기준값과 제2프로그램 클록 기준값 간의 차이를 조정하기에 적합하다. 조정수단은 또한 제2프로그램 클록 기준값과 제3프로그램 클록 기준값 간의 차이를 조정하기에 적합하다. 본 발명의 한 실시예에 따라, 처리유닛은 수신한 데이터 스트림에서 선규정된 프로그램 클록 기준값을 선택하기에 적합하고, 또한 데이터 스트림에서 상기 선규정된 프로그램 클록 기준값보다 앞서 발생하는 모든 프로그램 클록 기준값들을 조정하고, 또한 모든 후속 프로그램 클록 기준값들을 수정하지 않은 채로 남겨두기에 적합하다.
노드는 또한 수신한 MPEG 전송 스트림을 저장하기 위한 버퍼를 포함한다. 송신기 유닛은 선규정된 시간 주기 동안에 제2비트율로 MPEG 전송 스트림을 전송하기에 적합할 수 있다. 예컨대, 이는 동조 또는 채널 변경 절차 동안에 버퍼 데이터에 대해 이루어진 시간에 대응할 수 있다.
노드는 또한 프로그램 특정 정보(PSI)를 저장하기 위한 캐시(cache)를 포함할 수 있다. 송신기 유닛은 MPEG 전송 스트림의 인트라 프레임 패킷들을 전송하기 전에 캐시로부터 프로그램 특정 정보(PSI)를 전송하기에 적합할 수 있다.
본 발명의 또 다른 특징에 따라, 인트라 프레임들의 렌더링(rendering)은 시스템 클록과 동기화될 수 있는데, 이는 프로그램 클록 기준(PCR)을 사용하여 송신기 클록과 동기화된다. 이는 도 1에 도시된 시간 "Y"를 감소시키는 장점을 가진다.
본 발명의 또 다른 특징에 따라, PSI 정보는 동조 절차(tune-in procedure) 이후 최초 패킷들로 전송될 수 있는데, 이는 도 1에 도시된 시간 "X"를 감소시키는 장점을 가진다.
본 발명은 빠른 속도로 MPEG-TS 데이터와 같은 데이터를 최종 수신기로 전송할 수 있어서, 채널 변경 절차 동안에 데이터 스트림에서 동조 시간이 줄어들 수 있도록 해준다.
도 1은 전형적인 채널 변경 절차를 보여주는 도면.
도 2는 본 발명의 제1실시예에 따라 수행되는 단계들을 보여주는 도면.
도 3은 본 발명의 다른 실시예에 따른 채널 변경 유닛을 보여주는 도면.
도 4는 본 발명의 다른 실시예에 따른 채널 변경 유닛을 보여주는 도면.
도 5는 본 발명의 한 실시예에 의해 수행되는 단계들을 보여주는 도면.
도 6은 본 발명의 다른 실시예에 따른 채널 변경 유닛을 보여주는 도면.
도 7은 본 발명의 실시예들에 따라 프로그램 클록 기준들이 어떻게 조정될 수 있는지를 설명하는 도면.
본 발명의 보다 나은 이해를 위해, 또한 어떻게 효율적으로 수행될 수 있는 보다 명확히 보여주기 위해, 첨부도면에 대한 참조가 이루어진다.
실시예들은 인터넷 프로토콜 텔레비전(IPTV)에 관련해 아래에서 설명하고, MPEG 포맷 MPEG2를 사용하여 방송되는 TV채널들로 설명한다. 그러나, 본 발명은 이들 특정한 것에 한정되지 않고, 이동성 IPTV(또는 이동성 TV)를 포함하는 소정 형태의 디지털 TV와, 데이터를 전달하기 위해, MPEG2 외의 다른 소정 형태의 프로토콜을 포함한다는 것을 명심해야 한다.
또한, "동조(tuning)" 또는 채널 "변경(changing)"에 대해 이루어진 소정의 참조들은 한 채널에서 다른 채널을 동조(tuning) 또는 변경하는 것, 또는 초기 채널, 측 제1채널로 동조하는 것을 포함한다는 것을 알아야 한다.
본 발명의 제1특징에 따라, 채널 변경 절차 동안에, 도 1에서 시간 "Z"로 도시된 버퍼링 시간에 대응하는 초기 버퍼링 시간을 최소화하기 위한 장치와 방법이 제공되어, 셋탑박스는 송신기가 의도한 것보다 빨리 표시를 시작할 수 있다.
본 발명의 제1실시예에 따라, 이는 초기에 의도한 것보다 빨리(즉 높은 비트율로) 셋탑박스에 비디오 데이터를 제공함으로써 이루어진다. 그러나, 만일 MPEG 전송 스트림에서 비디오 데이터가 초기에 의도한 것보다 단지 빨리 전송된다면, 상기에서 기술한 바와 같이 수신기에서 버퍼링 시간 Bt 를 결정하는 것이 송신기이기 때문에 이는 어떠한 이점도 제공하지 않는다. 이는, 버퍼링 시간 Bt 가 디코딩 타임 스탬프(DTS)와 프로그램 클록 기준(PCR) 간의 차이와, 그리고 데이터 스트림에서 PCR값들을 통한 비트율에 의해 결정되기 때문이다. 따라서, 높은 비트율로 단지 MPEG 전송 스트림을 전송하는 것은, 셋탑박스의 버퍼가 오버플로(overflow)되게 하여, 채널 변경 경험을 저하시키는 효과를 가진다.
따라서, 본 발명의 한 실시예에 따라, PCR들이 MPEG-TS 스트림에서 식별되고 또한 MPEG-TS의 비트율을 증가시키는 량에 관해 수정된다. 즉 달리 말하면, PCR들이 예컨대 비트율이 얼마나 많이 증가되는지에 관련해 증가된다.
다음의 설명에서, MPEG-TS를 증가시키는 단계가 버퍼링 시간을 줄이는 바람직한 효과를 가지는 것을 보장하기 위한 다양한 예들이 설명된다. 이들은 단지 예들이고, 또한 본 발명은 첨부된 청구항의 범위 내에 들어가는 다른 방법들도 포함한다는 것을 명심해야 한다.
도 2는 본 발명의 실시예에 의해 수행되는 단계들 보여주는 것으로서, 예컨대 고속 채널 변깅 기능을 제공하는 IPTV 망의 노드(이후 "채널 변경 유닛"으로 언급)를 보여준다. 단계(401)에서, MPEG 전송 스트림이 수신된다. MPEG 전송 스트림은 MPEG 전송 스트림의 전송기, 예컨대 IPTV 망에 제공되는 MPEG-TS 멀티플렉서에 의해 결정되게 되는 제1비트율을 가지게 된다. 단계(403)에서, 프로그램 클록 기준들이 수신된 MPEG-TS 내에서 식별된다. 프로그램 클록 기준들 중 하나 이상이, 채널 변경 절차 동안에 MPEG 전송 스트림의 비트율이 증가되게 되는 양에 따라, 즉 이러한 채널 변경 절차 동안에 최종 수신기(예컨대, 셋탑박스)에서 버퍼링 시간을 줄이기 위하여 프로그램 클록 기준들의 타임 스탬프를 증가시킴으로써 조정된다(단계 405). 그런 다음, MPEG-TS 는 증가된 비트율로 수신기로 전송되고(단계 407), 그리고 조정된 프로그램 클록 기준값들을 포함한다.
아래에서 보다 자세히 기술되는 바와 같이, 입중계(incoming) 전송 스트림은 채널 변경 유닛에서 선규정된 시간주기 동안에 버퍼링되어야 할 필요가 있고, 선규정된 시간주기는 단계(407)에서의 전송 데이터율이 채널 변경 절차 동안에 일시적으로 증가될 수 있도록 하기에 충분하다는 것을 이해하게 될 것이다.
프로그램 클록 기준값들을 조정함으로써, 즉 수신기의 클록을 송신기의 클록과 동기화시키는데 사용하는 값들을 조정함으로써, MPEG 전송 스트림은 채널 변경 절차 동안에 높은 비트율로 채널 변경 유니에서 최종 수신기로 전송될 수 있지만, 최종 수신기에의 버퍼에서 오버플로를 야기시키지는 않는다.
도 3은 본 발명의 한 실시예에 따른 채널 변경 유닛을 보여준다. "최종 수신기" 또는 수신기 유닛(501), 예컨대 셋탑박스는 IPTV 망에 제공되는 MPEG-TS 멀티플렉서와 같은 송신기 유닛(503)으로부터 비디오 데이터를 수신한다. 본 발명의 이 실시예에 따라, 채널 변경 유닛(505)은 송신기 유닛(503)으로부터 MPEG-TS 데이터를 수신하기 위한 수신기 유닛(509)를 포함한다. 도 2와 관련해 상기에서 언급하였듯이, 채널 변경 유닛(505)은 제1비트율로 송신기 유닛(503)로부터 MPEG-TS 데이터를 수신하고, 또한 제2비트율로 전송기(510)를 사용하여 MPEG-TS 데이터를 수신기 유닛(501)로 일시적으로 전송하도록, 예컨대 채널 변경 절차 동안에 높은 비트율로 전송하도록 구성된다. 채널 변경 유닛은 버퍼(506)와 처리유닛(508)을 포함한다. 버퍼유닛(506)은 송신기 유닛(503)으로부터 (수신기 유닛(509)을 통해) 수신한 MPEG-TS 데이터를 버퍼링하여, 채널 변경 유닛(505)은 높은 비트율로 MPEG-TS 데이터를 수신기 유닛(501)으로 일시적으로, 즉 채널 변경 절차 동안에 전송할 수 있게 된다. 버퍼(506)의 크기는 관계되는 비트율과 그리고 채널 변경 유닛(505)이 높은 비트율로 일시적으로 전송하도록 예상되는 시간의 양에 따라 선택된다. 예컨대, 500ms의 기간 동안에 입중계 비트율이 5Mbit/s이고 또한 출중계(outgoing) 비트율이 10Mbit/s 라 가정하면(즉, 비트율이 2의 인수로 증가된다), 버퍼(506)는 채널 변경 절차 동안에 수신기(501)로 전송되는 데이터(504)에서 이 시간 동안에 채널 변경 유닛(505)이 수신하는 데이터(502)를 뺀, 즉 5Mbit/s*500ms=2.5Mbit 데이터를 반송하기에 충분히 크게 된다.
본 발명에 따라, 채널 변경 유닛(505)의 처리유닛(508)은 MPEG-TS 내에서 프로그램 클록 기준들을 식별하고, 또한 제2비트율과 제1비트율 간의 차이에 따라, 예컨대 얼마나 많은 비트율이 증가되고 있는지를 기반으로 프로그램 클록 기준값들을 증가시키도록 구성된다.
본 발명은 도 1에 도시된 버퍼 시간"Z"를 줄이는 효과를 가진다.
상기 실시예에서, 채널 변경 유닛(505)은 중간 노드의 형태로 작용한다. 그러나, 채널 변경 유닛(505)에 의해 수행되는 기능은, 도 3에 도시된 개별적인 노드 보다는, 송신기 유닛(503) 또는 수신기 유닛(501)의 일부로서 동등하게 제공될 수 있다는 것을 이해하게 될 것이다.
송신기 유닛(503)으로부터 수신한 MPEG-TS 데이터(502) 내에 포함된 프로그램 특정 정보는 비디오 인트라 프레임과 정렬될 수 있거나 또는 정렬되지 않을 수 있다. 만일 송신기 유닛(503)으로부터 수신한 MPEG-TS 데이터(502)가 비디오 인트라 프레임과 정렬된다면, MPEG-TS 데이터(504)가 정렬된 프로그램 특정 정보와 함께 제2비트율(즉, 높은 비트율로)로 바람직하게 전송된다. 프로그램 특정 정보만이 MPEG-TS 의 초기 주기 동안에, 즉 처음 몇 초 동안에 정렬되게 된다. 이 실시예에 따라, 프로그램 특정 정보가 인트라 프레임들과 정렬되는 포맷으로 이미 수신되었기 때문에, 채널 변경 유닛(505)은 수신한 전송 스트림에서 인트라 프레임들을 검출할 필요가 없다. 대신에, 채널 변경 유닛(505)은 프로그램 관련 테이블을 사용하여 수신한 전송 스트림에서 적절한 채널 변경 또는 동조 지점들을 검출하도록 구성될 수 있다.
도 4는 본 발명의 추가 실시예를 보여주는 것으로서, 송신기 유닛(503)으로부터 수신한 MPEG-TS 데이터에서 프로그램 특정 정보가 비디오 인트라 프레임들과 정렬되지 않는 경우에 채널 변경 유닛이 어떻게 더 수정될 수 있는지를 보여준다.
도 4에 도시된 바와 같이, 수신기 유닛(601), 예컨대 셋탑박스는 송신기 유닛(603), 예컨대 MPEG-TS 멀티플렉서로부터 비디오 데이터를 수신한다. 채널 변경 유닛(605)은 제1비트율로 송신기 유닛(603)로부터 MPEG-TS 데이터를 수신하기 위한 수신기 유닛(609)과, 제2비트율로, 예컨대 높은 비트율로 수신기 (601) 유닛으로 MPEG-TS 데이터를 전송하기 위한 전송기 유닛(610)을 포함한다. 채널 변경 유닛(605)은 버퍼(606)와 처리유닛(608)을 포함한다. 버퍼유닛(606)은 (수신기 유닛(609)을 통해) 송신기 유닛(603)으로부터 수신한 MPEG-TS 데이터를 버퍼링하여, 채널 변경 유닛(605)은 채널 변경 절차 동안에 MPEG-TS 데이터를 높은 비트율로 수신기 유닛(601)으로 일시적으로 전송할 수 있다. 버퍼(606)의 크기는 관련된 비트율과 그리고 채널 변경 유닛(605)이 높은 비트율로 일시적으로 전송할 것으로 기대되는 시간의 양에 따라 선택된다.
도 3에 도시된 바와 같이, 채널 변경 유닛(605)의 처리유닛(608)은 MPEG-TS 내에서 프로그램 클록 기준들을 식별하고, 또한 제2데이터율과 제1데이터율 간의 차이에 따라서, 즉 얼마나 많은 비트율이 증가되고 있는지를 기반으로 프로그램 클록 기준값들 중 하나 이상을 증가시키도록 구성된다. 본 발명의 이 실시예에 따라, 채널 변경 유닛(605)의 처리유닛(608)은 프로그램 특정 정보를 비디오 인트라 프레임들과 정렬하도록 더 구성된다. 이 목적을 위해 프로그램 특정 정보를 저장하기 위해 캐시(607)가 제공된다. 캐시(607)는 채널 변경 유닛(605) 내에 있거나, 또는 망의 다른 곳에 위치할 수 있다. PSI 정보를 인트라 프레임들과 정렬하기 위하여, 채널 변경 유닛(605)은 인트라 프레임들을 식별하기 위하여, 예컨대 전송 스트림의 "어뎁테이션_필드(adaptation_field)"내 "랜덤_액세스_인디케이터(random_access_indicator)" 필드를 해석하거나, 또는 기본 스트림(elementary stream)을 분속하고 또하 사용한 비디오 코덱에 따라 인트라 프레임들을 식별함으로써(즉, 비디오 패킷들의 헤더들을 분석함으로써), MPEG-TS 를 분석한다. MPEG-TS 패킷들이 검출되었으면, 캐시(607)에 버퍼링된 PSI 정보가 인트라 프레임을 반송하는 패킷 바로 직전의 MPEG-TS 에 삽입될 수 있다. 몇몇 PSI 정보들은 시간에 걸쳐 변경될 수 있기 때문에, PSI 캐시(607)는 항상 가장 최근의 PSI 테이블을 유지하여야만 하는 것이 바람직하다는 것을 명심해야 한다.
도 5는 도 4의 실시예에 따른 채널 변경 유닛(605)에 의해 수행되는 단계들을 보여주는 것으로서, 특히 프로그램 특정 정보를 인트라 프레임들과 정렬하기 위해 채널 변경 유닛(605)이 어떻게 구성되어야 하는가에 대한 세부를 보여준다. 단계(701)에서, MPEG 전송 스트림이 수신된다. MPEG 전송 스트림은 제1비트율을 가지게 되는데, 이는 예컨대 IPTV망에 제공되는 MPEG-TS 멀티플렉서와 같은 MPEG 전송 스트림의 송신기에 의해 결정되게 된다.
단계(703)에서, 채널 변경 유닛(605)은 입중계 MPEG 전송 스트림을 프로그램 특정 정보에 대해 분석하도록 구성된다. 이는 초기 개시-단계(initial start-up phase) 동안에 바람직하게 수행되어, 프로그램 특정 정보를 이용할 수 있게 되어 프로그램 클록 기준들을 식별할 수 있도록 한다. 분석된 프로그램 특정 정보는 캐시(607)에 저장된다. 바람직하게, 몇몇 프로그램 특정 정보는 시간에 걸쳐 변하기 때문에, 채널 변경 유닛(605)은 가장 최근의 프로그램 특정 정보 테이블을 저장하기에 적합하여야 한다.
다음에, 단계(705)에서, 프로그램 클록 기준들이 수신된 MPEG-TS 내에서 식별된다. 그런 다음 채널 변경 절차 동안에 MPEG 전송 스트림의 비트율을 증가시키게 될 양에 딸, 즉 이러한 채널 변경 절차 동안에 버퍼링 시간을 줄이기 위하여 프로그램 클록 기준값들 중 하나 이상을 증가시킴으로써 프로그램 클록 기준들 중 하나 이상이 조정된다(단계 707).
채널 변경 유닛(605)은 또한 비디오 인트라 프레임들(즉, 무작위 액세스 지점들)을 반드시 식별하거나 또는 추적해야만 한다(track)(단계 709). 채널 번경 또는 동조 명령(예컨대 IGMP 참여(join))을 수신하자 마자, 높은 비트율로 새로운 IPTV 채널에 대한 실제 MPEG-TS 데이터의 전송을 개시하기 전에 채널 변경 유닛(605)은 단계(711)에서 요청된 IPTV 채널에 대한 모든 프로그램 특정 정보를(IP 멀티캐스트 그룹) 캐시(607)에서부터 전송하고, 단계(713)에서 증가된 프로그램 클록 기준들과 함께 전송한다.
따라서, 도 1에 도시된 지연 "Z"를 감소시키는 이외에, 도 4와 5의 실시예는 또한 도 1에 도시된 지연 "X"를 감소시킨다.
도 6은 본 발명의 다른 특징에 따른 실시예를 보여주는 것으로서, 도 1에 도시된 지연 "Y"를 감소시키는 것을 목적으로 한다. 이 실시예는 송신기 제어 PSI 정렬(sender controlled PSI alignment)에 관련된다. 도 3과 4에 도시된 바와 같이, 수신기 유닛(801), 예컨대 셋탑박스는 송신기 유닛(803), 예컨대 MPEG-TS 멀티플렉서로부터 비디오 데이터를 수신한다. 이 실시예에서, 송신기 유닛(803)은 프로그램 특정 정보를 스트림(인트라 프레임들) 내 비디오 무작위 액세스 지점들과 독립적으로 정렬시키도록 구성되어, 채널 변경 절차 동안에 스트림의 빠른 개시의 가능성을 증가시킨다.
상기에서 기술한 실시예들에 따라 프로그램 클록 기준값들이 어떻게 조정될 수 있는지에 관한 추가 정보가 주어지게 된다. 프로그램 클록 기준값들은 수신기 유닛(501, 601, 801)들의 시스템 클록을 송신기 유닛(503, 603, 803)들의 시스템 클록과 동기화시키는데 사용된다. 프로그램 클록 기준값들은 /127000000 초(27MHz)의 단위들로 주어진다. 두 개의 프로그램 클록 기준값들(PCR1, PCR2)들 간의 차이는 "시스템 클록 진행에서 초당 시간(time in seconds the system clock progresses)"로 계산할 수 있다. 즉:
(PCR2 - PRC1)/27000000
그러므로, 다음의 식은 프로그램 클록 기준과 두 PCR 패킷들("dNoTS") 간의 전송 스트림 패킷들의 수의 항으로 의도한 MPEG 전송 스트림의 비트율을 보여준다. 이 비트율은 PCR 경계에서 변경되는 것으로 추정한다. 비트율은 이 시간 동안에 시스템 클록 진행으로 나눈 두 PCR 패킷들 간의 비트들로 계산할 수 있다:
dNoTS*188*8*27000000/(PCR2 - PCR1) = 비트로 전송 스트림 비트율/초(Transport Stream bit rate in bits/s)
따라서, MPEG 전송 스트림의 비트율을 상승시키기 위하여, 두 PCR 값들 간의 전송 스트림에서 패킷들의 수가 증가되어야만 하거나 또는 두 PRC 값들(PCR2 - PCR1) 간의 차이가 감소되어야만 한다.
상기에서 기술한 실시예들은, 수정되는 프로그램 클록 기준들을 가지는 두 패킷들 간의 전송 스트림에서 패킷들의 수보다는, 초기 MPEG 전송 스트림에서 프로그램 클록 기준값들을 수정한다는(즉, 차이(PCR2 - PCR1)가 감소된다) 것을 기반으로 한다.
도 7은 프로그램 클록 기준값들이 어떻게 조정되는가를 보여준다. 기준들(PCR1, PCR2)들은 시스템 클록의 값들을 나타내고, 그리고 도 3과 4의 송신기 유닛(503, 603)들로부터 각각, 원래 MPEG 전송 스트림에서 수신된 프로그램 클록 기준값들에 대응한다. 본 발명에 따라서, 이들 프로그램 클록 기준값들 중 하나 이상은 도 7의 하부측에 도시된 것과 같이 조정된다. PCR 값들의 실제 숫자는 첫 번째로 발견된 인트라 프레임의 버퍼링 시간(즉, DTA(i) - PCR(i))에 따라 조정되게 된다. 이 초기 버퍼링 시간은 "단축"될 수 있어서, 제1 인트라 프레임의 복호(디코딩) 시간 전까지의 모든 PCR 타임스탬프들은 수정되어야만 한다. 예컨대, 비트율이 얼마나 많이 증가되어야 하는가에 따라서, 첫 번째 세 개의 프로그램 클록 기준값들(PCR1, PCR2 및 PCR3)은 그들의 값을 PCR'1 PCR'2 및 PCR'3 로 증가시킴으로서 조정될 수 있다. 보다 적은 또는 보다 많은 PCR 값들이 조정될 수 있다. 조정하게 될 PCR 값들의 숫자는, (1) TS 패킷들에서 PCR 율(즉, PCR 값들을 반송하는 TS 패킷들의 부분은 어느 것인가?), (2) 출중계 비트율과 입중계 비트율 간의 상기 부분으로서 주어진 비트율 상승 인자, (3) 높은 비트율로 채널 변경 유닛 전송하게 되는 지속 기간을 포함하는, 다수의 인자들에 따라 다르다.
예컨대, 만일 도 3과 4의 채널 변경 유닛(505, 605)들이 제1비트율로 MPEG 전송 스트림을 수신하고, 그리고 MPEG 전송 스트림이 제1비트율보다 30% 높은 제2비트율로 채널 변경 유닛(505, 605)에서부터 전송되게 된다면, 즉 셋받박스(501, 601)에 빠른 버퍼 필(buffer fill)을 제공한다면, "PCR2 와 PCR1", "PCR3 와 PCR2" 그리고 "PCR4 와 PCR3" 간의 차이들은 23%(즉, p.(1+p)) 감소되어야 한다.(여기서 "p"는 백분율을 나타내고, 이 예에서 제2비트율이 제1비트율보다 30%=0.3 높아, 0.3/1.3=23%가 된다). 여기서, 제1 인트라 프레임의 초기 버퍼링 시간(DTS1 - PCR1)은 (PCR4 -PCR1)과 동일하다.
상기 예에서, PCR4 로부터 계속되는 PCR값들은 변경되지 않거나, 적어도 DTS/PTS와 함께 동일 고정량으로 변위된다(즉, 버퍼들이 충분히 충전되기 때문에 PCR4 로부터 계속되는 MPEG 전송 스트림은 "의도한" 비트율로 전송되게 되기 때문이다).
PCR 값들을 수정할 수 있는 많은 방법이 있다. 본 발명은 모든 이러한 방법들을 포함하고, 이들 중 몇몇을 아래에서 기술한다.
한 실시예에 따라, 모든 이전 값들이 수정되고, 또한 모든 후속 PCR 값들이 수정되지 않은 채 남도록 적어도 하나의 선규정된 PCR, 예컨대 PCR4 을 안다고 가정한다. 이를 가능하게 하기 위하여, PCR1 이 수정되어 전송될 수 있기 전에 전송 스트림이 규정된 PCR 값, 즉 PCR4 까지 망 버퍼에 버퍼링되어야만 한다. 전송 스트림은 채널 변경 유닛(505, 605)에 버퍼링될 수 있거나, 아니면 망에 버퍼링될 수 있다. 그럼 다음, 전송 스트림이 PCR4 까지 버퍼링되었기 때문에, 이는 PCR2 와 PCR3 가 수정될 수 있도록 해준다.
비트율에서 30% 증가를 위해, 새로운 값들 PCR'1, PCR'2, PCR'3들은 다음과 같이 계산된다:
(PCR4 - PCR3)*0.77 = (PCR4 - PCR'3), 따라서
PCR'3 = PCR4 - (PCR4 - PCR3)*.077
(PCR3 - PCR2)*0.77 = (PCR'3 - PCR'2), 따라서
PCR'2 = PCR'3 - (PCR3 - PCR2)*0.77
그리고, 마지막으로,
(PCR2 - PCR1)*0.77 = (PCR'2 - PCR'1), 따라서
PCR'1 = PCR'2 - (PCR2 - PCR1)*0.77
다른 실시예에 따라, PCR 값을 조정하는 다른 방법은 PCR1 에 대한 값을 "good" 값 PCR'1으로 증가시키는 것이다. 예컨대, 프레임들은 약 500ms 동안 버퍼링될 수 있다. 개선된 시작은, 약 250ms의 감소된 버퍼링을 이끌어낸다. 이는, PCR 값이 6750000(27MHz 단위) 또는 22500(90kHz 단위)의 dPCR로 증가되어야 한다는 것을 의미한다. PCR'2에 대한 값은, MPEG 전송 스트림 비트율이 원하는 백분율로 증가되거나 또는 dPCR이 다수의 PCR 값들을 통해 제로(0)로 선형적으로 감소되도록 선택된다.
다른 실시예에 따라, 다수의 PCR 값들이, 예컨대 PCR1, PCR2, PCR3들이 수정되어 비트율을 증가시키고, 모든 잔여 PCR 값들(PCR4, PCR5 등)은 모든 잔여 DTS/PTS와 함께 변위되게 된다. 그러나 이 기술의 단점은, 초기 단계 동안(즉, 채널 변경 동안)에 비트 스트림 처리를 필요로 할 뿐만 아니라, 항상 이루어져야 할 필요가 있다는 것이다.
상기에서 기술한 본 발명의 다양한 실시예들은 채널 변경 절차가 최적화될 수 있게 한다는 장점을 가진다는 것을 이해하게 될 것이다.
상기에서 기술한 실시예들에서, 최적화를 더 제공하기 위하여, 인트라 프레임 이전에 셋탑박스가 PAT 및 PMT 테이블들을 수신하는 것이 바람직하다. 이는, PAT 직후에(최악의 경우) 그러나 PMT 직전에 셋탑박스가 동조할 확률을 감소시킨다는 장점을 가진다(셋탑박스가 PAT 없이 PMT를 발견하지 못한다). PAT와 PMT 테이블들은 전송 스트림에서 인트라 프레임들을 찾는 것을 조력한다. 이는, 셋탑박스와 같은 수신기가 초기 인트라 프레임(비디오 스트림에서 무작위 액세스 지점) 전에 필요한 모든 PSI 정보(특히 PAT, PMT, 그러나 CA 정보도) 수신하기 때문에 바람직하다. 그렇지 않으면, 수신기는 MPEG-TS 스트림에서 정확한 흐름을 찾을 수 없다.
다른 실시예에 따라, 중간 노드(505, 605)는 PSI 캐시(607)로부터 PSI 정보를 먼저 송신하고 그런 다음에 PCR 수정없이 버퍼(506, 606)로부터 제1인트라 프레임을 송신함으로서 채널 변경을 개선시키기에 적합할 수 있다.
상기에서 기술한 실시예들은 프로그램 클록 기준들을 조정하는 것을 필요로 한다. MPEG 전송 스트림에 프로그램 클록 기준들을 전달하고, 그리고 이들을 어떻게 조정하는가에 관해서는 많은 방법들이 있다.
한 기술에 따라, MPEG 전송 스트림은, 단지 인트라 프레임 전송 스트림 패킷들만이 PCR 정보를 반송하도록 구성될 수 있다. 그러므로, 만일 채널 변경 유닛이 "높은 초기 데이터율"로 MPEG 전송 스트림을 제공하도록 구성된다면, MPEG TS 헤더 내 PCR 값이 수정된다. 이러한 기술로, PCR 값들을 조정하는 단계는 PCR 필드를 가지는 전송 스트림 패킷들을 식별하는 단계를 더 포함한다.
다른 기술에 따라, MPEG 전송 스트림은, PCR 값들에 대해 "더미(dummy)" 스트림이 제공되도록 구성될 수 있다. 즉 환언하면, MPEG 전송 스트림은, PCR이 개별적인 TS 스트림으로서 제공되도록 구성된다. 상기에서 언급하였듯이, PMT는 PCR 스트림의 PID를 규정한다. 따라서, 망은 흐름을 식별하고 또한 (다른 패킷들에 대한 어떠한 의존도 없이) 식별된 TS 패킷들을 쉽게 다시 쓰기할 수 있다.
다른 기술에 따라, 전자 서비스 가이드 데이터(Electronic Services Guide data), 또는 다른 적절한 부채널(side channel)을 특별한 채널 변경 정보를 포함하도록 확장시킬 수 있다. 예컨대, 전자 서비스 가이드에 제공된 채널 변경 정보는, MPEG 전송 스트림 비트율을 증가시키는 인자를 포함할 수 있다. 따라서 주어진 인자를 통해 셋탑박스와 같은 수신기는 복호시간(디코딩 시간)을 반드시 조정하여야 하고 또한 버퍼링 시간을 감소시켜야만 한다. 따라서, 이러한 배열에 따라, 셋탑박스는, 전송 스트림이 높은 비트율로 제공된다는 것을 알기 때문에 프로그램 클록 기준들을 무시한다. 그러나, 이러한 실시예는, 셋탑박스를 조정해야 하는 것을 필요로 한다는 단점이 있고, 이는 현 장비에 사용할 수 없다는 것을 의미한다.
상기에서 설명한 실시예에서, 채널 변경 유닛(505, 605)은 셋탑박스와 같은 수신기 유닛과 MPEG-TS 멀티플렉서와 같은 송신 유닛 간의 소정 위치에 있는 것으로 기술하였다. 그러나, 채널 변경 유닛은 또한 수신기 유닛 또는 송신기 유닛의 일부를 형성할 수 있다는 것을 알아야 한다. 예컨대, 수신기에 충분한 대역폭이 있어서, 수신기가 단지 "선택된" 채널보다는 다수의 채널들을 직접 수신하고, 채널 변경 유닛이 수신기 내에 채용될 수 있다.
상기에서 언급한 실시예들은 본 발명을 제한하기보다는 설명적인 것이고, 또한 본 기술분야의 당업자라면 첨부 청구항의 범위로부터 이탈하는 일이 없이 많은 다른 실시예들을 디자인할 수 있다는 것을 알아야 한다. 단어 "포함하다(comprising)"는 청구항 나열된 것 이외의 다른 요소들과 단계들의 존재를 배제하지 않고, "a" 와 "an"은 복수를 배제하지 않고, 그리고 단일 프로세서 또는 다른 유닛은 청구항에 인용한 여러 유닛들의 기능을 충족할 수 있다. 청구항의 참조부호는 범위를 제한하는 것으로 구성되어서는 안 된다.

Claims (25)

  1. 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법에 있어서,
    다수의 채널들을 포함하는 MPEG 전송 스트림을 제1비트율로 수신하는 단계와;
    수신한 MPEG 전송 스트림에서 프로그램 클록 기준(PCR)값들을 식별하는 단계와;
    상기 수신한 MPEG 전송 스트림에서 선규정된 프로그램 클록 기준값을 선택하는 단계와;
    선규정된 프로그램 클록 기준값 이전에 발생하는 프로그램 클록 기준(PCR)값들을 조정하는 단계와;
    조정된 프로그램 클록 기준값들을 포함하는 MPEG 전송 스트림을 제2비트율로 전송하는 단계를 포함하며,
    상기 조정단계는 제2비트율과 제1비트율 간의 차이에 관해서 각각의 프로그램 클록 기준값들을 조정하는 단계를 포함하고, 상기 제2비트율은 상기 제1비트율보다 높은 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  2. 제1항에 있어서,
    상기 조정단계는 제1프로그램 클록 기준값과 제2프로그램 클록 기준값 간의 차이를 조정하는 단계를 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  3. 제2항에 있어서,
    상기 조정단계는 제2프로그램 클록 기준값과 제3프로그램 클록 기준값 간의 차이를 조정하는 단계를 더 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  4. 청구항 4은(는) 설정등록료 납부시 포기되었습니다.
    제1항 내지 제3항 중 어느 한 항에 있어서,
    수신한 MPEG 전송 스트림을 버퍼링하는 단계를 더 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  5. 청구항 5은(는) 설정등록료 납부시 포기되었습니다.
    제4항 있어서,
    상기 선규정된 프로그램 클록 기준값 전까지 수신한 MPEG 전송 스트림을 버퍼링하는 단계를 더 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  6. 제1항 내지 제3항 중 어느 한 항에 있어서,
    수신한 MPEG 전송 스트림에서 프로그램 특정 정보(PSI)를 인트라 프레임들과 정렬시키는 단계를 더 포함하고, 상기 전송단계는 정렬된 MPEG 전송 스트림을 전송하는 단계를 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  7. 청구항 7은(는) 설정등록료 납부시 포기되었습니다.
    제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 MPEG 전송 스트림을 전송하는 단계는 인트라 프레임 패킷들을 전송하기 전에 프로그램 특정 정보(PSI)를 전송하는 단계를 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  8. 제1항 내지 제3항 중 어느 한 항에 있어서,
    MPEG 전송 스트림은 선규정된 시간 주기 동안에 제2비트율로 전송되는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  9. 청구항 9은(는) 설정등록료 납부시 포기되었습니다.
    제8항에 있어서,
    상기 선규정된 시간주기는 동조 절차 동안에 데이터를 버퍼링하는데 필요한 시간주기에 대응하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  10. 청구항 10은(는) 설정등록료 납부시 포기되었습니다.
    제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 프로그램 클록 기준(PCR)들은 MPEG 전송 스트림의 인트라 프레임 패킷들에 제공되는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  11. 청구항 11은(는) 설정등록료 납부시 포기되었습니다.
    제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 프로그램 클록 기준(PCR)들은 MPEG 전송 스트림에서 전용 채널에 제공되는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  12. 청구항 12은(는) 설정등록료 납부시 포기되었습니다.
    제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 MPEG 전송 스트림에 채널에 동조하는 단계는 현 채널에서 새로운 채널로 동조하는 단계, 또는 초기 채널에 동조하는 단계를 포함하는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  13. 청구항 13은(는) 설정등록료 납부시 포기되었습니다.
    제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 방법은 인터넷 프로토콜 텔레비전(IPTV)망의 채널에 동조하는데 사용되는 것을 특징으로 하는 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널을 동조하기 위한 방법.
  14. 동영상 전문가 그룹 전송 스트림(MPEG-TS)의 채널에 동조하기 위한 노드에 있어서,
    다수의 채널들을 포함하는 MPEG 전송 스트림을 제1비트율로 수신하기 위한 수신기 유닛과;
    수신한 MPEG 전송 스트림에서 프로그램 클록 기준(PCR)값들을 식별하고, 수신한 MPEG 전송 스트림에서 선규정된 프로그램 클록 기준값을 선택하고, 또한 상기 선규정된 프로그램 클록 기준값 이전에 발생하는 프로그램 클록 기준(PCR)값들을 조정하기에 적합한 처리유닛과;
    조정된 프로그램 클록 기준값들을 포함하는 MPEG 전송 스트림을 제2비트율로 전송하기에 적합한 전송기 유닛을 포함하고, 상기 처리유닛은 제2비트율과 제1비트율 간의 차이에 관해서 각 프로그램 클록 기준값들을 조정하기에 적합하고, 상기 제2비트율은 상기 제1비트율보다 높은 것을 특징으로 하는 노드.
  15. 제14항에 있어서,
    상기 처리유닛은 제2프로그램 클록 기준값과 제3프로그램 클록 기준값 간의 차이를 조정하기에 적합한 것을 특징으로 하는 노드.
  16. 제14항 또는 제15항에 있어서,
    수신한 MPEG 전송 스트림을 저장하기 위한 버퍼를 더 포함하는 것을 특징으로 하는 노드.
  17. 제14항 또는 제15항에 있어서,
    상기 전송기 유닛은 선규정된 시간주기 동안에 MPEG 전송 스트림을 제2비트율로 전송하기에 적합한 것을 특징으로 하는 노드.
  18. 제14항 또는 제15항에 있어서,
    프로그램 특정 정보(PSI)를 저장하기 위한 캐시를 더 포함하고, 전송기 유닛은 MPEG 전송 스트림의 인트라 프레임 패킷들을 전송하기 전에 캐시로부터 프로그램 특정 정보(PSI)를 전송하기에 적합한 것을 특징으로 하는 노드.
  19. 청구항 19은(는) 설정등록료 납부시 포기되었습니다.
    인터넷 프로토콜 텔레비전(IPTV)망의 노드에 있어서,
    상기 노드는 제14항에 규정된 것이거나, 제1항에 규정된 방법을 수행하도록 구성되는 것을 특징으로 하는 노드.
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
KR1020127005622A 2009-08-07 2009-08-07 동영상 전문가 그룹 전송 스트림의 채널에 동조하기 위한 장치 및 방법 KR101689128B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2009/060309 WO2011015251A1 (en) 2009-08-07 2009-08-07 Apparatus and method for tuning to a channel of a moving pictures expert group transport stream (mpeg-ts)

Publications (2)

Publication Number Publication Date
KR20120054609A KR20120054609A (ko) 2012-05-30
KR101689128B1 true KR101689128B1 (ko) 2016-12-23

Family

ID=41724224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127005622A KR101689128B1 (ko) 2009-08-07 2009-08-07 동영상 전문가 그룹 전송 스트림의 채널에 동조하기 위한 장치 및 방법

Country Status (7)

Country Link
US (1) US9369746B2 (ko)
EP (1) EP2462738B1 (ko)
JP (1) JP5767638B2 (ko)
KR (1) KR101689128B1 (ko)
CA (1) CA2769949C (ko)
IN (1) IN2012DN01126A (ko)
WO (1) WO2011015251A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2498494A1 (en) * 2011-03-11 2012-09-12 Thomson Licensing Decoder and method at the decoder for synchronizing the rendering of contents received through different networks
KR101717555B1 (ko) * 2011-06-20 2017-03-17 엘지전자 주식회사 미디어 컨텐트 송수신 방법 및 그를 이용한 송수신 장치
US10171710B2 (en) * 2012-04-04 2019-01-01 Mitsubishi Electric Corporation Device and method for digital data distribution, device and method for digital data reproduction, synchronized reproduction system, program, and recording medium
KR101937247B1 (ko) * 2016-12-28 2019-01-14 네이버 주식회사 실시간 라이브 환경에서 버퍼 기반 대역폭 측정 및 적응형 데이터 전송을 위한 방법 및 시스템
US20210377330A1 (en) * 2018-10-22 2021-12-02 Radiant Communications Corporation Low-latency video internet streaming for management and transmission of multiple data streams
CN112640479B (zh) * 2018-11-08 2024-02-20 Sk电信有限公司 用于切换媒体服务频道的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200548A1 (en) 2001-12-27 2003-10-23 Paul Baran Method and apparatus for viewer control of digital TV program start time
US20070204320A1 (en) 2006-02-27 2007-08-30 Fang Wu Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US20070214490A1 (en) * 2006-03-08 2007-09-13 Cheng Gary F Method for reducing channel change startup delays for multicast digital video streams

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3851721B2 (ja) * 1998-03-11 2006-11-29 株式会社東芝 マルチメディアデータ入出力インタフェース装置及び同装置に適用される一定レートストリーム出力方法
ATE343262T1 (de) * 2000-12-21 2006-11-15 Cit Alcatel Verbesserungsverfahren für eine programmtaktreferenz einer in vielfachzugriffsverfahren und burst-modus abeitende abwärts verbindung in einem integriertem mehrstrahlsatelliten kommunikationssystem
US8683535B2 (en) * 2004-03-26 2014-03-25 Broadcom Corporation Fast channel change
JP5041844B2 (ja) * 2007-03-28 2012-10-03 株式会社日立国際電気 Pcr補正回路
JP4585550B2 (ja) * 2007-07-31 2010-11-24 ポステック・アカデミー‐インダストリー・ファウンデーション Iptvの応答遅延減少方法及びその方法を具現するためのiptvサービス提供サーバー
JP4922910B2 (ja) * 2007-12-18 2012-04-25 日本放送協会 再送信装置、再変調装置及び放送システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030200548A1 (en) 2001-12-27 2003-10-23 Paul Baran Method and apparatus for viewer control of digital TV program start time
US20070204320A1 (en) 2006-02-27 2007-08-30 Fang Wu Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US20070214490A1 (en) * 2006-03-08 2007-09-13 Cheng Gary F Method for reducing channel change startup delays for multicast digital video streams

Also Published As

Publication number Publication date
KR20120054609A (ko) 2012-05-30
IN2012DN01126A (ko) 2015-04-10
US9369746B2 (en) 2016-06-14
CA2769949A1 (en) 2011-02-10
EP2462738A1 (en) 2012-06-13
US20120246690A1 (en) 2012-09-27
WO2011015251A1 (en) 2011-02-10
JP5767638B2 (ja) 2015-08-19
EP2462738B1 (en) 2018-03-21
CA2769949C (en) 2017-06-06
JP2013501440A (ja) 2013-01-10

Similar Documents

Publication Publication Date Title
EP2158747B1 (en) Method and arrangement for improved media session management
KR101480969B1 (ko) 디지털 비디오에 관한 빠른 채널 변경을 위한 방법 및 장치
US7490344B2 (en) System and method for seamless switching
KR101797507B1 (ko) 미디어 컨텐트 송수신 방법 및 그를 이용한 송수신 장치
US20070174880A1 (en) Method, apparatus, and system of fast channel hopping between encoded video streams
KR100842262B1 (ko) Iptv 서비스 또는 디지털 방송 환경에서의 방송 채널전환 가속 시스템 및 그 방법
KR101689128B1 (ko) 동영상 전문가 그룹 전송 스트림의 채널에 동조하기 위한 장치 및 방법
US8286217B2 (en) Method and system for fast channel change
EP2545708B1 (en) Method and system for inhibiting audio-video synchronization delay
WO2009050714A2 (en) A device, method and system for media packet distribution
EP2071850A1 (en) Intelligent wrapping of video content to lighten downstream processing of video streams
Concolato et al. Synchronized delivery of multimedia content over uncoordinated broadcast broadband networks
KR100906981B1 (ko) 버퍼링 서버를 통한 iptv 채널 변경 속도 개선 방법
US20120008053A1 (en) Method and system for fast channel change between programs utilizing a single decoder to concurrently decode multiple programs
US10757473B2 (en) Digital media splicing system and method
JP2015216654A (ja) MPEG(MovingPicturesExpertGroup)トランスポートストリーム(MPEG−TS)のチャンネル選局を行う装置及び方法
Akgul A Client-Based Fast Channel Change Technique Using Multiple Decoder Clocks
EP3035691A2 (en) Methods and apparatus for minimizing timing artifacts in remultiplexing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191212

Year of fee payment: 4