KR100760087B1 - 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법 - Google Patents

서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법 Download PDF

Info

Publication number
KR100760087B1
KR100760087B1 KR1020060013650A KR20060013650A KR100760087B1 KR 100760087 B1 KR100760087 B1 KR 100760087B1 KR 1020060013650 A KR1020060013650 A KR 1020060013650A KR 20060013650 A KR20060013650 A KR 20060013650A KR 100760087 B1 KR100760087 B1 KR 100760087B1
Authority
KR
South Korea
Prior art keywords
player
resource
specific
service
component
Prior art date
Application number
KR1020060013650A
Other languages
English (en)
Other versions
KR20070081606A (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 엘지전자 주식회사
Priority to KR1020060013650A priority Critical patent/KR100760087B1/ko
Priority to EP07290179A priority patent/EP1819155B1/en
Priority to CN2007101097165A priority patent/CN101068321B/zh
Priority to US11/705,455 priority patent/US7720937B2/en
Publication of KR20070081606A publication Critical patent/KR20070081606A/ko
Application granted granted Critical
Publication of KR100760087B1 publication Critical patent/KR100760087B1/ko

Links

Images

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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47214End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • H04N21/42615Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific demultiplexing arrangements
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • H04N21/4263Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific tuning arrangements, e.g. two tuners
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법에 관한 것으로, 어플리케이션이 특정 리소스(Resource)를 사용하는 특정 자바 미디어 프레임워크 플레이어(JMF Player : Java Media Framework Player)를 설정한다.
본 발명에 따르면, 미디어를 제어하기 위한 플레이어가 사용할 수 있는 리소스가 복수개인 경우에, 어플리케이션(Application)은 리소스 조작 인터페이스(Interface)를 사용하여 플레이어가 특정 리소스를 사용하도록 설정한다. 또한, 어플리케이션에 의하여 설정된 특정 리소스가 어떠한 리소스인지도 통지된다. 그리고 서비스 콘텍스트 조작 인터페이스를 사용하여 특정 리소스를 사용하는 특정 플레이어를 설정한다. 그러므로 시스템상의 리소스를 효율적으로 이용한다.
자바, 플레이어, 리소스 조작 인터페이스, 서비스 콘텍스트 조작 인터페이스

Description

서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법{Method for setting media player for playing service or component}
도 1은 종래의 어플리케이션이 플레이어를 설정하는 동작을 설명하기 위한 도면.
도 2는 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법의 제 1 실시예를 보인 흐름도.
도 3은 리소스 조작 인터페이스의 실시예를 보인 도면.
도 4는 서비스 콘텍스트 조작 인터페이스의 실시예를 보인 도면.
도 5는 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법의 제 2 실시예를 보인 흐름도.
도 6은 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법의 제 3 실시예를 보인 흐름도.
본 발명은 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법에 관한 것으로, 특히, 서비스(Service) 또는 컴포넌트(Component)의 재생을 위하여, 어플리케이션(Application)이 특정 리소스(Resource)를 사용하는 자바 미디어 프레임워크 플레이어(JMF Player: Java Media Framework Player)를 설정하는 미디어 플레이어의 리소스 설정방법에 관한 것이다.
최근 디지털 방송이 가속화되면서 지상파 방송, 위성 방송 및 케이블 방송 등의 다양한 방송 매체를 통한 고화질/고음질의 디지털 방송이 시작되고 있다. 또한, 각 방송사와 케이블 방송 업체에서는 방송 프로그램과 함께 다양한 부가 정보를 제공할 수 있는 데이터 방송 서비스를 도입하고 있다.
데이터 방송이란 방송망을 통해 기존의 방송 프로그램 이외에 방송 프로그램과 관련된 정보 및 날씨, 뉴스, 교통정보 등과 같은 생활정보는 물론 인터넷, 전자상거래 서비스까지 제공하는 대화형 방송(End-to-End Interactive Personalized Solution)을 의미한다. 방송국에서는 방송 프로그램과 함께 부가적인 데이터 콘텐츠를 제공하고, 데이터 방송 수신장치에 네트워크 접속카드를 구비하여 인터넷 통신이 가능하도록 함으로써, 사용자가 원하는 정보를 보다 폭넓게 얻을 수 있다. 예를 들면, 역사 프로그램을 시청하면서 등장 인물이나 시대 배경을 인터넷에 접속하여 확인할 수 있고, 오락 프로그램이나 스포츠 프로그램을 시청하면서 가수나 선수들의 신상자료를 확인할 수도 있다.
상기와 같이 양방향 통신이 가능한 데이터 방송의 특성상 그 응용 분야는 엔터테인먼트, 쇼핑, 스포츠, 교육 등 매우 다양하므로, 데이터 방송 서비스의 발전 가능성은 매우 높다. 이에 따라, 데이터 방송 처리 기능을 갖는 데이터 방송 수신 기들에 대한 개발이 활발하게 진행되고 있다.
데이터 방송 수신기는 외부로부터 입력된 미디어 신호를 제어하기 위하여 자바 미디어 프레임워크를 사용하고 있다. 자바 미디어 프레임워크는 플레이어라는 객체가 실질적으로 미디어 신호를 제어하게 되며, 플레이어는 특정 리소스들을 할당받아 미디어 신호를 제어한다. 그러나 종래에는 플레이어가 특정 리소스를 사용하여 미디어 신호를 제어할 수 없는 문제점이 있었다.
도 1은 종래의 어플리케이션이 플레이어를 설정하는 동작을 설명하기 위한 도면이다. 도시된 바와 같이, 종래의 어플리케이션(100)은 서비스 또는 컴포넌트를 재생하기 위하여 서비스 콘텍스트(Service Context)(110)를 제어할 수 있었다. 그러나 어플리케이션(100)은 서비스 또는 컴포넌트를 재생하기 위한 특정 플레이어(Player)(111)를 설정하는 것이 불가능하였다. 상기 서비스는 소정의 채널을 칭하고, 컴포넌트는 특정 채널에 포함된 오디오, 비디오 및 자막 등이 된다. 한편, 데이터 방송에서 서비스를 재생하기 위하여 서비스 콘텍스트(javax.tv.service.selection.ServiceContext) 인터페이스를 구현(Implementation)한다고 규정상 정의되어 있다. 서비스 콘텍스트 인터페이스에 포함된 선택 메소드(select())가 호출된 경우에, 해당되는 서비스에 존재하는 컴포넌트나 지정된 컴포넌트가 재생된다.
하지만, 상기 선택되는 서비스 또는 컴포넌트를 재생하는 플레이어(111)는 특정 플레이어가 선택되는 것이 아니고, 어플리케이션(100)이 서비스 콘텍스트 인터페이스에 포함된 선택 메소드를 통해서 요청한 서비스 또는 컴포넌트에 대한 적 절한 플레이어(111)가 선택된다. 서비스 또는 컴포넌트를 재생하기 위하여 플레이어(111)는 튜너(Tuner)와, 디멀티플렉서(Demultiplexer)와, 디코더(Decoder)와, 비디오 플레인(Video Plane)등의 리소스를 이용한다. 플레이어(111)는 어플리케이션(100)에 의하여 생성되며, 플레이어(111)가 사용하고자 하는 리소스는 어플리케이션(100) 또는 플레이어(111)에 의하여 예약(Reserve)되어 할당된다. 플레이어(111)가 사용하는 리소스 중에서 튜너와 비디오 플레인만이 그 이용에 관하여 규격상에 정의되어 있는데, 플레이어(111)는 복수의 리소스들 중에서 현재 타 플레이어에 의하여 사용되고 있지 않은 리소스를 할당받아 사용하거나 또는 플레이어의 우선순위(Priority)에 따라서 리소스를 할당받아 사용하였다.
상기한 바와 같이, 어플리케이션(100)에 의하여 생성된 플레이어(110)는 서비스 또는 컴포넌트를 재생하는 데 있어서, 리소스를 수동적으로 할당받게 된다. 그러므로 플레이어(110)가 사용할 수 있는 복수의 리소스가 존재하는 상황에서 효과적으로 리소스를 활용하는 데 문제점이 있었다.
그러므로 본 발명의 목적은 특정 리소스를 사용하는 플레이어를 어플리케이션이 설정하여, 서비스 또는 컴포넌트가 재생될 수 있도록 하여 시스템 리소스에 대하여 세밀하게 제어할 수 있도록 하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법을 제공하는 데 있다.
본 발명의 다른 목적은 어플리케이션이 설정하는 특정 리소스를 사용하여 플 레이어가 미디어 신호를 제어함으로써, 시스템 리소스를 효율적으로 사용할 수 있도록 하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법을 제공하는 데 있다.
이러한 목적을 이루기 위한 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법은 미디어 신호를 재생하기 위한 플레이어를 생성하는 단계와, 상기 생성한 플레이어가 리소스 조작 인터페이스를 구현하도록 함으로써, 플레이어가 특정 리소스를 사용할 수 있도록 설정하는 단계와, 상기 특정 리소스를 사용할 특정 플레이어를 서비스 콘텍스트 인터페이스를 구현하여 설정하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법은 상기 플레이어를 생성하는 단계 이전에, 특정 서비스를 제공하기 위하여 요구되는 모든 특정 리소스를 예약(Reserve)하는 단계를 더 포함하며, 상기 플레이어는 상기 예약된 리소스를 사용하여 미디어 신호를 제어하기 위한 플레이어인 것을 특징으로 한다.
본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법은 상기 플레이어를 생성하는 단계 이전에, 특정 서비스를 제공하기 위하여 요구되는 모든 리소스 중에서 일부의 특정 리소스를 예약하는 단계를 더 포함하며, 상기 플레이어는 상기 예약된 리소스 및 상기 예약된 리소스 이외에 상기 특정 서비스를 제공하기 위하여 요구되는 리소스를 사용하여 미디어 신호를 재생하기 위한 플레이어인 것을 특징으로 한다.
상기 플레이어가 사용하도록 설정한 특정 리소스는 상기 예약한 특정 리소스와 동일한 것을 특징으로 한다.
상기 리소스 조작 인터페이스는 상기 특정 리소스에 관한 프록시(Proxy) 정보가 포함된 인터페이스를 구현하는 리소스 설정 메소드(Method)가 포함되는 것을 특징으로 한다.
상기 리소스 조작 인터페이스는 상기 특정 리소스에 관한 프록시 정보를 통지하도록 하는 리소스 통지 메소드가 포함되는 것을 특징으로 한다.
상기 서비스 콘텍스트 인터페이스는 상기 특정 플레이어에 관한 정보가 포함된 인터페이스를 구현하는 선택 메소드가 포함되는 것을 특징으로 한다.
상기 특정 플레이어에 관한 정보는 복수의 특정 플레이어에 관한 정보인 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법을 상세히 설명한다.
도 2는 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법의 제 1 실시예를 보인 흐름도이다. 도시된 바와 같이 단계(S200)에서 미디어 신호를 제어하기 위한 플레이어를 생성한다. 특정 서비스를 제공하기 위하여 실행되는 어플리케이션은 매니저클래스(Manager Class)(도면 미도시)에 포함된 플레이어 생성 메소드(creatPlayer())를 이용하여 서비스 또는 컴포넌트를 재생하기 위 한 플레이어를 생성한다. 매니저 클래스에 포함된 플레이어 생성 메소드에 의하여 플레이어를 생성하기 위한 일종의 툴(Tool)이 형성된다. 그리고나서 매니저 클래스는 플레이어에 대한 인스턴스(Instance)를 생성함으로써, 플레이어가 실제로 동작할 수 있도록 오브젝트(Object) 예를 들면, 변수, 클래스 등의 저장을 위하여 힙 메모리(Heap Memory)를 예약한다.
단계(S202)에서 플레이어가 리소스 조작 인터페이스를 구현하도록 함으로써, 플레이어가 특정 리소스를 사용할 수 있도록 설정한다. 어플리케이션은 플레이어가 특정 리소스 즉, 제 1 튜너와 제 2 비디오 플레인을 사용하여 서비스 또는 컴포넌트를 재생할 수 있도록 설정한다.
도 3은 리소스 조작 인터페이스의 실시예를 보인 도면이다. 도시된 바와 같이, 리소스 조작 인터페이스(PlayerResourceHandler)는 특정 리소스에 관한 프록시(Proxy)정보가 포함된 인터페이스를 구현하는 리소스 설정 메소드(setPlayerResources())가 포함된다.
어플리케이션이 할당할 수 있는 리소스에 대하여는 리소스에 관한 프록시 정보가 포함된 인터페이스(org.davic.resources.ResourceProxy)를 구현하도록 규격상에 정의되어 있다. 구현의 의미는 인터페이스를 상속받는다는 의미로, 리소스에 관한 프록시 정보가 포함된 인터페이스의 구현은 리소스에 관한 프록시 정보가 포함된 인터페이스를 상속받으나 그 사용에 있어서는 특정 리소스에 관한 프록시 정보가 입력되어 사용된다.
한편, 플레이어가 할당받아 사용할 수 있는 리소스는 복수개가 될 수 있으므 로, 인터페이스에 포함되는 특정 리소스에 관한 프록시 정보는 배열(org.davic.resources.ResourceProxy[] proxy)의 형태로 이루어진다. 예를 들면, 플레이어가 서비스 또는 컴포넌트를 재생하기 위하여 복수의 튜너 중에서 특정 튜너와 복수의 비디오 플레인 중에서 특정 비디오 플레인을 사용하도록 하는 경우 즉, 플레이어가 복수의 리소스를 할당받아 사용하는 경우가 발생할 수 있다. 상기와 같은 경우를 고려하여, 인터페이스에 포함되는 특정 리소스에 관한 프록시 정보는 배열의 형태로 이루어진다.
상기와 같이, 플레이어가 서비스 또는 컴포넌트를 재생하기 위하여 사용되는 리소스 중에서 튜너는 네트워크 인터페이스(org.davic.net.tuning.NetworkInterface)라는 클래스로 규격상에 정의되어 있다. 네트워크 인터페이스 클래스의 오브젝트는 튜너에 대한 네트워크 인터페이스이다. 네트워크 인터페이스는 어플리케이션에 의하여 생성된 네트워크 인터페이스 콘트롤러(org.davic.net.tuning.NetworkInterfaceController) 클래스의 오브젝트에 의하여 제어된다. 그리고 네트워크 인터페이스 콘트롤러 클래스는 리소스에 관한 프록시 정보가 포함된 인터페이스를 구현하게 된다. 이와 같이, 특정 튜너에 관한 프록시 정보가 리소스 조작 인터페이스에 포함됨으로써, 특정 튜너에 대한 네트워크 인터페이스가 제어된다.
한편, 플레이어가 미디어 신호를 제어하기 위하여 사용되는 리소스 중에서 비디오 플레인은 특정 클래스(org.havi.ui.HVideoDevice)로 규격상에 정의되어 있다. 비디오 플레인 역시 궁극적으로 리소스에 관한 프록시 정보가 포함된 인터페이 스를 구현하게 된다. 비디오 플레인의 경우에도 상기 튜너와 마찬가지로, 특정 비디오 플레인에 관한 프록시 정보가 리소스 조작 인터페이스에 포함됨으로써, 특정 비디오 플레인에 대한 인터페이스가 제어된다. 즉, 특정 리소스에 관한 프록시 정보가 포함된 인터페이스를 구현하는 리소스 설정 메소드가 사용되는 경우에, 특정 리소스에 대한 인터페이스가 제어된다. 즉, 플레이어가 사용할 특정 리소스가 설정되므로, 플레이어는 어플리케이션이 설정한 특정 리소스를 사용하여 미디어 신호를 제어할 수 있게 된다.
리소스 조작 인터페이스는 시스템상에서 발생하는 에러 상황을 대처하기 위하여 예외상황 처리 클래스(java.lang.IllegalArgumentException)를 포함한다. 즉, 메소드가 잘못되었거나 부적합한 인수를 전달할 경우 등의 예외 상황을 처리할 수 있도록 한다.
리소스 조작 인터페이스는 특정 리소스에 관한 프록시 정보를 통지하도록 하는 리소스 통지 메소드(getPlayerResources())가 포함된다. 리소스 설정 메소드가 리소스 조작 인터페이스에 포함되어, 플레이어가 서비스 또는 컴포넌트를 재생하는데 사용되는 리소스가 설정된다. 그런데 복수의 플레이어가 동작을 하는 경우에, 각 플레이어가 동일한 리소스를 설정하는 충돌을 방지해야 한다. 그러므로 리소스 통지 메소드가 리소스 조작 인터페이스에 포함되므로, 플레이어가 서비스 또는 컴포넌트를 재생하는데 사용되는 리소스들을 어플리케이션에 통지함으로써, 어플리케이션이 플레이어가 사용할 리소스를 설정하는데 있어서 동일한 리소스가 설정되지 않도록 한다.
단계(S204)에서 특정 리소스를 사용하여 서비스 또는 컴포넌트를 재생하기 위한 특정 플레이어를 설정한다. 어플리케이션은 단계(S202)에서 설정된 특정 리소스인 제 1 튜너와 제 2 비디오 플레인을 사용하여 서비스 또는 컴포넌트를 재생할 특정 플레이어를 설정하였다. 상기 단계(S202)에서는 플레이어가 특정 리소스를 사용해야된다는 것만을 설정한 것으로, 어느 복수의 플레이어 중에서 어느 특정 플레이어로 서비스 또는 컴포넌트를 재생할지는 설정되지 않는다. 즉, 서비스 또는 컴포넌트에 적합한 플레이어가 선택되는 것이 아니고, 어플리케이션에 의하여 특정 플레이어가 설정된다. 서비스 또는 컴포넌트를 재생하기 위한 특정 플레이어를 설정하는 데 있어서 선택 메소드(select())가 이용된다.
도 4는 서비스 콘텍스트 조작 인터페이스의 실시예를 보인 도면이다. 서비스 콘텍스트 조작 인터페이스(AdvancedServiceContext)는 서비스 콘텍스트 인터페이스(javax.tv.service.selection.ServiceContext)를 상속(extends)한다.
서비스 콘텍스트 조작 인터페이스는 서비스와 같은 미디어 데이터를 조절하는, 특정 플레이어(player)에 대한 정보가 포함된 인터페이스를 구현하는 선택 메소드가 포함된다. 서비스와 같은 미디어 데이터를 조절하기 위한 플레이어에 관하여는 미디어 플레이어 인터페이스(javax.media.Player)을 구현하도록 규격상에 정의되어 있다. 그리고 선택 메소드는 특정 플레이어에 대한 정보가 포함되어 있는 미디어 플레이어 인터페이스를 구현하게 되므로, 선택 메소드를 호출하면 특정 플레이어가 선택된다.
특정 플레이어를 선택하는 메소드를 서비스 콘텍스트 조작 인터페이스가 포 함하고 있으며, 상기 서비스 콘텍스트 조작 인터페이스는 서비스를 재생하는 플레이어를 설정하는 서비스 콘텍스트 인터페이스를 상속받게 된다. 이로 인하여 어플리케이션이 특정 플레이어를 선택하도록 하는 선택 메소드를 이용하여 서비스를 재생하기 위한 특정 플레이어가 설정된다.
서비스 콘텍스트 조작 인터페이스는 서비스를 재생하기 위한 특정 플레이어를 선택하는 데 발생할 수 있는 에러상황을 대처하기 위하여 예외상황 처리 클래스(java.lang.SecurityException, java.lang.IllegalStateException)를 포함한다. 예외상황 처리 클래스는 보안상의 위반이 발생한 경우를 처리하는 예외상황 처리 클래스(java.lang.SecurityException)와, 부적절한 시간에 메소드를 호출한 경우를 처리하는 예외상황 처리 클래스(java.lang.IllegalStateException)가 포함된다.
한편, 서비스 콘텍스트 조작 인터페이스는 컴포넌트와 같은 미디어 데이터를 조절하는 특정 플레이어(player)에 대한 정보가 포함된 인터페이스를 구현하는 선택 메소드(select())가 포함된다. 컴포넌트의 경우에는 서비스의 경우와 달리 복수의 특정 오디오 또는 복수의 특정 비디오를 지정해야 하는 경우가 발생할 수 있으므로, 포함되는 플레이어는 배열의 형식으로 이루어진다. 그리고 서비스 콘텍스트 조작 인터페이스는 컴포넌트를 재생하기 위한 특정 플레이어를 선택하는 데 발생할 수 있는 에러상황을 대처하기 위하여 예외상황 처리 클래스(java.lang.SecurityException, java.lang.IllegalStateException, javax.tv.locator.InvalidLocatorException, java.tv.service.selection.InvalidServiceComponentException)를 포함한다. 상기 서비스를 재생하기 위한 특정 플레이어를 선택하는 데 발생할 수 있는 에러상황에 대한 설명은 생략하기로 하고, 예외상황 처리 클래스는 유효하지 않은 위치가 메소드로 전달되는 경우를 처리하는 예외상황 처리 클래스(javax.tv.locator.InvalidLocatorException)와, 유효하지 않은 컴포넌트가 메소드로 전달되는 경우를 처리하는(java.tv.service.selection.InvalidServiceComponentException) 예외상황 처리 클래스가 포함된다.
단계(S206)에서 플레이어를 실행시킨다. 어플리케이션은 실행 메소드(Start())를 사용하여, 상기 단계(S204)에서 특정 리소스를 사용하여 서비스 또는 컴포넌트를 재생하도록 설정한 플레이어를 실행시킨다. 그러나 실행 메소드로 인하여 어플리케이션에 의하여 설정된 리소스가 할당되는 것은 아니다.
단계(S208)에서 실행되는 플레이어가 사용하는 리소스를 예약한다. 플레이어는 미디어 신호를 제어하기 위하여 사용되는 리소스인 제 1 튜너 및 제 2 비디오 플레인을 예약한다. 플레이어가 리소스를 예약하는 데 있어서, 단계(S202)에서 리소스 설정 메소드에 의하여 설정된 리소스와 동일한 리소스가 예약된다. 실행되는 플레이어는 제 1 튜너 및 제 2 비디오 플레인을 사용하여 서비스 또는 컴포넌트를 재생한다.
단계(S210)에서 플레이어의 동작을 종료시킨다. 어플리케이션은 종료 메소드(Close())를 사용하여, 현재 서비스 또는 컴포넌트를 재생하기 위하여 실행되는 플레이어의 동작을 종료시킨다.
단계(S212)에서 실행된 플레이어에 의해 사용되었던 리소스를 반환한다. 플레이어의 동작이 종료되는 경우에 플레이어의 실행에 사용되었던 리소스인 제 1 튜너와 제 2 비디오 플레인은 반환(Release)된다. 그러므로 타 플레이어는 반환된 리소스인 제 1 튜너와 제 2 비디오 플레인을 사용하여 미디어 신호를 제어할 수 있다.
도 5는 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법의 제 2 실시예를 보인 흐름도이다. 도시된 바와 같이, 단계(S500)에서 특정 서비스를 제공하기 위하여 요구되는 모든 특정 리소스를 예약한다. 어플리케이션은 서비스 또는 컴포넌트를 재생하는 특정 서비스를 제공하기 위하여 요구되는 모든 리소스인, 복수의 튜너와 복수의 비디오 플레인 중에서 제 1 튜너 및 제 2 비디오 플레인을 예약한다. 그러나 상기 예약된 제 1 튜너와 제 2 비디오 플레인은 플레이어가 서비스 또는 컴포넌트를 재생하는 데 반드시 사용되는 것은 아니다. 왜냐하면, 제 1 튜너 및 제 2 비디오 플레인을 예약한 플레이어의 우선순위가 낮은 경우에, 상기 예약된 리소스는 타 플레이어에 의해 할당되어 사용될 수 있기 때문이다.
단계(S502)에서 예약된 리소스를 사용하여 미디어 신호를 제어하기 위한 플레이어를 생성한다. 어플리케이션은 플레이어 생성 메소드를 이용하여 미디어 신호를 제어하기 위한 플레이어를 생성하고, 매니저 클래스는 플레이어에 대한 인스턴스를 생성한다.
단계(S504)에서 플레이어가 리소스 조작 인터페이스를 구현하도록 함으로써, 플레이어가 특정 리소스를 사용할 수 있도록 설정한다. 리소스 조작 인터페이스는 특정 리소스에 관한 프록시 정보가 포함된 인터페이스를 구현하는 리소스 설정 메소드가 포함된다. 그런데 특정 리소스에 관한 프록시 정보는 상기 단계(S500)에서 어플리케이션에 의하여 예약되었던 특정 리소스에 관한 프록시 정보가 된다. 즉, 단계(S500)에서 어플리케이션은 플레이어가 미디어 신호를 제어하기 위하여 사용할 제 1 튜너 및 제 2 비디오 플레인을 예약하였으므로, 리소스 조작 인터페이스는 제 1 튜너 및 제 2 비디오 플레인에 관한 프록시 정보가 포함된 인터페이스를 구현하는 메소드가 포함된다.
단계(S506)에서 특정 리소스를 사용하여 서비스 또는 컴포넌트를 재생하기 위한 특정 플레이어를 설정한다. 어플리케이션은 단계(S504)에서 설정된 특정 리소스인 제 1 튜너와 제 2 비디오 플레인을 사용하여 서비스 또는 컴포넌트를 재생할 플레이어를 설정한다. 이는 선택 메소드를 이용한다.
단계(S508)에서 플레이어를 실행시킨다. 어플리케이션은 실행 메소드를 사용하여 플레이어를 실행시킨다. 그리고나서 플레이어는 단계(S504)에서 설정된 제 1 튜너 및 제 2 비디오 플레인을 할당받아서 서비스 또는 컴포넌트를 재생하는 데 사용한다.
단계(S510)에서 플레이어의 동작을 종료시킨다. 어플리케이션은 종료 메소드를 사용하여, 현재 서비스 또는 컴포넌트를 재생하기 위하여 실행되는 플레이어의 동작을 종료시킨다.
단계(S512)에서 실행된 플레이어에 의해 사용되었던 리소스를 반환한다. 플레이어의 동작이 종료되는 경우에 플레이어의 실행에 사용되었던 리소스는 반환된 다. 그러므로 타 플레이어는 반환된 리소스를 사용할 수 있게 된다.
도 6은 본 발명의 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법의 제 3 실시예를 보인 흐름도이다. 도시된 바와 같이, 단계(S600)에서 특정 서비스를 제공하기 위하여 요구되는 모든 리소스 중에서, 일부의 특정 리소스를 예약한다. 어플리케이션이 서비스 또는 컴포넌트 재생이라는 특정 서비스를 제공하기 위하여 요구되는 리소스가 튜너 및 비디오 플레인이지만, 어플리케이션은 일부의 특정 리소스인 제 1 튜너만을 예약한다. 즉, 어플리케이션이 특정 서비스를 제공하기 위하여 비디오 플레인인 리소스가 필요하지만, 특정 비디오 플레인은 예약하지 않는다. 그러나 상기 예약된 리소스가 반드시 어플리케이션이 특정 서비스를 제공하는 데 있어서 사용되는 것은 아니다.
단계(S602)에서 예약된 리소스 및 상기 예약된 리소스 이외에 특정 서비스를 제공하기 위하여 요구되는 리소스를 사용하여 서비스 또는 컴포넌트를 재생하기 위한 플레이어를 생성한다. 어플리케이션은 플레이어 생성 메소드를 이용하여 서비스 또는 컴포넌트를 재생하기 위한 플레이어를 생성하고, 매니저 클래스는 플레이어에 대한 인스턴스를 생성한다.
단계(S604)에서 플레이어가 리소스 조작 인터페이스를 구현하도록 함으로써, 플레이어가 특정 리소스를 사용하여 미디어 신호를 제어할 수 있도록 설정한다. 리소스 조작 인터페이스는 특정 리소스에 관한 프록시 정보가 포함된 인터페이스를 구현하는 리소스 설정 메소드가 포함된다. 그런데 특정 리소스에 관한 프록시 정보는 상기 단계(S600)에서 어플리케이션에 의하여 예약되었던 특정 리소스인 제 1 튜 너에 관한 프록시 정보가 된다.
단계(S606)에서 특정 리소스를 사용하여 서비스 또는 컴포넌트를 재생하기 위한 특정 플레이어를 설정한다. 어플리케이션은 단계(S604)에서 설정된 특정 리소스인 제 1 튜너와 제 2 비디오 플레인을 사용하여 서비스 또는 컴포넌트를 재생할 플레이어를 설정한다. 이는 선택 메소드를 이용한다.
단계(S608)에서 플레이어를 실행시킨다. 어플리케이션은 실행 메소드를 사용하여 플레이어를 실행시킨다.
단계(S610)에서 실행되는 플레이어가 사용하는 리소스 중에서 아직 예약되지 않은 리소스를 예약한다. 플레이어가 서비스 또는 컴포넌트를 재생하기 위하여 요구되는 리소스는 튜너와 비디오 플레인이 되는데, 튜너의 경우에는 단계(S600)에서 어플리케이션이 제 1 튜너를 이미 예약하였다. 그러므로 플레이어는 서비스 또는 컴포넌트를 재생하기 위하여 사용되는 리소스 중에서 아직 예약되지 않은 리소스인 비디오 플레인 중에서 제 2 비디오 플레인만을 예약한다.
특정 비디오 플레인에 대하여 예약을 한 이후에, 플레이어는 단계(S604)에서 설정된 제 1 튜너를 할당받아서 서비스 또는 컴포넌트를 재생하는데 사용한다. 다만, 비디오 플레인의 경우에는 단계(S604)에서 어플리케이션에 의하여 설정되지 않았으므로, 플레이어가 서비스 또는 컴포넌트를 재생하는 데 사용되는 비디오 플레인은 예약된 제 2 비디오 플레인이 될 수도 있고, 그렇지 않을 수도 있다. 즉, 플레이어가 예약한 제 2 비디오 플레인이 현재 타 플레이어에 의하여 사용되는 경우에, 비록 제 2 비디오 플레인이 예약되었다 하더라도 플레이어에 의하여 사용되는 것이 불가능하게 된다.
단계(S612)에서 플레이어의 동작을 종료시킨다. 어플리케이션은 종료 메소드를 사용하여, 현재 서비스 또는 컴포넌트를 재생하기 위하여 실행되는 플레이어의 동작을 종료시킨다.
단계(S614)에서 실행된 플레이어에 의해 사용되었던 리소스를 반환한다. 플레이어의 동작이 종료되는 경우에 플레이어의 실행에 사용되었던 리소스는 반환된다. 그러므로 타 플레이어는 반환된 리소스를 사용할 수 있게 된다.
한편, 상기에서는 본 발명을 특정의 바람직한 실시 예에 관련하여 도시하고 설명하였지만, 이하의 특허청구범위에 의해 마련되는 본 발명의 정신이나 분야를 이탈하지 않는 한도 내에서 본 발명이 다양하게 개조 및 변화될 수 있다는 것을 당 업계에서 통상의 지식을 가진 자는 용이하게 알 수 있다.
이상에서 설명한 바와 같이, 본 발명은 플레이어가 사용할 리소스를 어플리케이션이 설정하는 데 있어서, 플레이어가 특정 리소스에 관한 프록시 정보가 포함된 인터페이스를 구현하는, 리소스 설정 메소드가 포함된 리소스 조작 인터페이스를 구현하도록 한다. 그리고 특정 플레이어를 설정하기 위하여 선택 메소드가 포함된 서비스 콘텍스트 조작 인터페이스를 구현하도록 한다. 특정 리소스를 사용하여 서비스 또는 컴포넌트를 재생하는 특정 플레이어를 어플리케이션이 설정할 수 있으므로 시스템 리소스에 대한 세밀한 제어가 가능하다.
또한, 어떠한 특정 리소스가 설정되었는지를 통지하기 위하여 리소스 조작 인터페이스는 특정 리소스에 관한 프록시 정보를 통지하도록 한다. 이로 인하여 플레이어가 사용할 수 있는 리소스가 복수인 경우에도 효율적으로 사용할 수 있다.

Claims (8)

  1. 삭제
  2. 특정 서비스를 제공하기 위하여 요구되는 모든 특정 리소스를 예약(Reserve)하는 단계;
    상기 예약된 특정 리소스를 사용하여 미디어 신호를 재생하기 위한 플레이어(Player)를 생성하는 단계;
    상기 생성한 플레이어가 리소스 조작 인터페이스(Interface)를 구현(Implementation)하도록 함으로써, 상기 플레이어가 특정 리소스(Resource)를 사용할 수 있도록 설정하는 단계; 및
    상기 특정 리소스를 사용할 특정 플레이어를 서비스 콘텍스트 인터페이스를 구현하여 설정하는 단계;를 포함하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법.
  3. 특정 서비스를 제공하기 위하여 요구되는 모든 리소스 중에서 일부의 특정 리소스를 예약(Reserve)하는 단계;
    상기 예약된 리소스 및 상기 예약된 리소스 이외에 상기 특정 서비스를 제공하기 위해 요구되는 리소스를 사용하여 미디어 신호를 재생하기 위한 플레이어(Player)를 생성하는 단계;
    상기 생성한 플레이어가 리소스 조작 인터페이스(Interface)를 구현(Implementation)하도록 함으로써, 상기 플레이어가 특정 리소스(Resource)를 사용할 수 있도록 설정하는 단계; 및
    상기 특정 리소스를 사용할 특정 플레이어를 서비스 콘텍스트 인터페이스를 구현하여 설정하는 단계;를 포함하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법.
  4. 삭제
  5. 제 2항 또는 제3항에 있어서, 상기 리소스 조작 인터페이스는;
    상기 특정 리소스에 관한 프록시(Proxy) 정보가 포함된 인터페이스를 구현하는 리소스 설정 메소드(Method)가 포함되는 것을 특징으로 하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법.
  6. 제 2항 또는 제3항에 있어서, 상기 리소스 조작 인터페이스는;
    상기 특정 리소스에 관한 프록시 정보를 통지하도록 하는 리소스 통지 메소드가 포함되는 것을 특징으로 하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법.
  7. 제 2항 또는 제3항에 있어서, 상기 서비스 콘텍스트 인터페이스는;
    상기 특정 플레이어에 관한 정보가 포함된 인터페이스를 구현하는 선택 메소드가 포함되는 것을 특징으로 하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법.
  8. 제 7항에 있어서, 상기 특정 플레이어에 관한 정보는;
    복수의 특정 플레이어에 관한 정보인 것을 특징으로 하는 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어 설정방법.
KR1020060013650A 2006-02-13 2006-02-13 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법 KR100760087B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060013650A KR100760087B1 (ko) 2006-02-13 2006-02-13 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법
EP07290179A EP1819155B1 (en) 2006-02-13 2007-02-13 Apparatus for playing media and method of setting resources thereof
CN2007101097165A CN101068321B (zh) 2006-02-13 2007-02-13 播放媒体的装置及设置其资源的方法
US11/705,455 US7720937B2 (en) 2006-02-13 2007-02-13 Apparatus for playing media and method of setting the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060013650A KR100760087B1 (ko) 2006-02-13 2006-02-13 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법

Publications (2)

Publication Number Publication Date
KR20070081606A KR20070081606A (ko) 2007-08-17
KR100760087B1 true KR100760087B1 (ko) 2007-09-18

Family

ID=38369742

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060013650A KR100760087B1 (ko) 2006-02-13 2006-02-13 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법

Country Status (2)

Country Link
US (1) US7720937B2 (ko)
KR (1) KR100760087B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140068009A1 (en) * 2012-09-06 2014-03-06 Opentv, Inc. Playing of multiple media streams in a single-player software environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2301935A1 (en) 1999-03-23 2000-09-23 General Instrument Corporation Streaming media control and synchronization application program interface (api) for a digital television receiver
KR20050016194A (ko) * 2003-08-06 2005-02-21 마쯔시다덴기산교 가부시키가이샤 서비스 실행 장치
JP2005073239A (ja) 2003-08-06 2005-03-17 Matsushita Electric Ind Co Ltd サービス実行装置
KR20050052927A (ko) * 2003-12-01 2005-06-07 삼성전자주식회사 재생 장치, 재생 방법 및 상기 재생 방법을 수행하는프로그램이 기록된 컴퓨터 판독가능한 기록매체

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181713B1 (en) * 1997-10-27 2001-01-30 Sun Microsystems, Inc. Selectable depacketizer architecture
US8391677B2 (en) * 2004-01-09 2013-03-05 Panasonic Corporation Recording medium, reproduction device, program, reproduction method
US20080008456A1 (en) * 2005-07-28 2008-01-10 Buttars David B Method and apparatus for time/date and/or session-limited temporary storage and playback of proprietary and non-proprietary media content utilizing re-writeable non-volatile memory.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2301935A1 (en) 1999-03-23 2000-09-23 General Instrument Corporation Streaming media control and synchronization application program interface (api) for a digital television receiver
KR20050016194A (ko) * 2003-08-06 2005-02-21 마쯔시다덴기산교 가부시키가이샤 서비스 실행 장치
JP2005073239A (ja) 2003-08-06 2005-03-17 Matsushita Electric Ind Co Ltd サービス実行装置
KR20050052927A (ko) * 2003-12-01 2005-06-07 삼성전자주식회사 재생 장치, 재생 방법 및 상기 재생 방법을 수행하는프로그램이 기록된 컴퓨터 판독가능한 기록매체

Also Published As

Publication number Publication date
KR20070081606A (ko) 2007-08-17
US7720937B2 (en) 2010-05-18
US20070191972A1 (en) 2007-08-16

Similar Documents

Publication Publication Date Title
US10171875B2 (en) Method for providing previous watch list of contents provided by different sources, and display device which performs same
JP6490635B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP5765480B2 (ja) 受信装置、受信方法、連動アプリケーション制御システム、および、制御方法
JP5725392B2 (ja) 受信装置、受信方法、連動アプリケーション制御システム、および、制御方法
US8019984B2 (en) Method for controlling autostart of data application and video playback apparatus thereof
KR100782646B1 (ko) 미디어 플레이어의 리소스 설정방법
US20100020234A1 (en) Closed captioning preferences
US20090055881A1 (en) Digital broadcast receiver
KR100760087B1 (ko) 서비스 또는 컴포넌트의 재생을 위한 미디어 플레이어설정방법
EP3148205A1 (en) Reception apparatus, reception method, transmission apparatus, and transmission method
JPH10191221A (ja) ディジタル放送受信装置およびその番組予約制御方式
KR100960896B1 (ko) 콘텐츠 데이터를 업컨버트하는 장치 및 방법
EP1819155B1 (en) Apparatus for playing media and method of setting resources thereof
JP2008516506A (ja) 対話型アプリケーション共用方法及び装置
KR100607972B1 (ko) 방송 수신기에서의 사용자 입력 이벤트 처리 방법 및 장치
KR20090043795A (ko) 영상표시기기 및 그 제어방법

Legal Events

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

Payment date: 20120827

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130823

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140822

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150824

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160824

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170814

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180814

Year of fee payment: 12