An Approximate Reconstruction of NPT for Synchronized Data Broadcasting

동기화된 데이터방송을 위한 근사적인 NPT 재구성 기법

  • 정문열 (서강대학교 영상대학교 미디어공학과) ;
  • 김용한 (서울시입대학교 공과대학 전기전자컴퓨터공학) ;
  • 백두원 (숭실대학교 미디어학부)
  • Published : 2004.03.01

Abstract

DVB-MHP recommends that NPT(normal play time) be used as the times of stream events. NPT is the local time within an event(TV program). But we found that commercial transport stream (TS) generators and middlewares for DVB-MHP settop boxes are not ready to support the use of NPT by applications. In particular, TS generators do not create NPT reference descriptors needed to reconstruct NPT at the TV receiver. This situation is undesirable because program providers cannot experiment with the idea of synchronized applications. So we have implemented a TS generator that inserts NPT reference descriptors to TS and MyGetNPT API to approximately reconstruct NPT. STC (system time clock) is needed to reconstruct NPT, but Xlets are not allowed to read it. So, we approximate STC by using PCR (program clock reference) and the Java system tune. In this method, the stream generator extrats PCRs from an existing TS and inserts them into null TS packets in the form of MPEG sections, which can be read by Xlets. Because PCRs are displaced into new positions in TS, their values should be adjusted based on the time intervals between the original positions and the new positions. We implemented a synchronized application by using our TS generator and MyGetNPT API, where the task of stream events are to display graphic images. We found that graphic images are displayed where 240 ㎳ from their intended time, where 240ms is a human tolerance for the synchronization skew between graphic image and video.

DVB-MHP에서는 NPT(normal play time)를 스트림 이벤트의 시각으로 쓰기를 권하고 있다. NPT는 특정 이벤트(프로그램) 내부의 국지시간이다. 현재 상용으로 나와 있는 전송 스트림(TS) 생성기와 TV 미들웨어는 아직 NPT를 지원하지 못하고 있다. 특히 전송 스트림 생성기가 셋톱박스에서 NPT를 재구성하는데 필요한 NPT참조서술자를 생성하지 않고 있다. 이로 인해 PP가 연동형 애플리케이션(Xlet)의 아이디어를 실험하는 것이 불가능하다. 이에 우리는 TS에 NPT 참조서술자를 삽입하는 스트림 생성기와 NPT를 근사적으로 재구성하는 MyGetNPT API를 구현하였는데, 본 논문은 그 방법을 기술한다 NPT 재구성 API를 구현하기 위해서는 STC(system time clock) 값을 알 필요가 있으나, Xlet에서는 STC를 읽을 수 없다. 따라서 본 연구에서는 TS를 통해 전송되는 PCR (program clock reference) 과 Java 시스템 타임을 이용하여 STC를 근사적으로 계산하는 방법을 제안한다. 이 방법에서 전송 스트림 생성기는 이미 존재하는 TS로부터 PCR 들을 추출한 후, 이를 TS의 null 패킷에 Xlet에서 읽을 수 있는 MPEG 섹션의 형태로 삽입한다. 이때, PCR이 TS 내의 원래 위치에서 이동하여 다른 위치에 삽입되므로, PCR 값은 TS내의 원래 위치와 새로운 위치간의 시간 차이를 고려하여 수정한다. 구현한 TS 생성기와 MyGetNPT API를 이용하여 그래픽 이미지의 디스플레이가 목적인 스트림 이벤트를 가진 연동형 애플리케이션을 구현하여 실험을 하였다. 그 결과 그래픽 이미지들이 원래 의도된 시점으로부터 240ms 이내에 비디오와 동기화 되는 것을 확인하였다. 이 시간은 기존의 연구에서 발견된 그래픽 이미지와 비디오간의 동기화 오차 허용한계이다.

Keywords

References

  1. ATSC. 2003. http://www.atsc.org
  2. OCAP. 2003. http://www.opencable.com
  3. ETSI TS 101 802 : Digital Video Broadcasting-Multimedia Home Platform 1.0.1, 2001
  4. Richard Chernock. 'Data Broadcasting', McGraw-Hill, 2001
  5. ISO/IEC 13818-1 Generic Coding of Moving Picture and Associated Audio : Systems
  6. ISO/IEC 13818-6 Generic Coding of Moving Picture and Associated Audio : Digital Storage Media Command and Control
  7. TR 101 202 DVB; Implementation guidelines for Data Broadcasting
  8. Steven Morris. The Interactive TV Web. http://www.mhpinteractive. org/tutorial 2002
  9. 김세훈, 정문열, 백두원. 연동형 데이터 방송 애플리케이션을 위한 스트림 생성기 개발. 방송공학회 학술대회, pp. 267-270, 2003
  10. Ralf Steinmetz. 'Human Perception of Jitter and Media Synchronization'. IEEE Journal on Selected Areas in Communications, vol. 14, no. 1, Jan. 1996, pp. 61-72
  11. 정문열, 백두원. 연동형 데이터 방송 애플리케이션의 구조. 서강대영상대학원 Technical Report, 2003. 방송공학회 논문지 제출