KR20070092198A - Systems and methods for remotely controlling computer apllications - Google Patents
Systems and methods for remotely controlling computer apllications Download PDFInfo
- Publication number
- KR20070092198A KR20070092198A KR1020077005878A KR20077005878A KR20070092198A KR 20070092198 A KR20070092198 A KR 20070092198A KR 1020077005878 A KR1020077005878 A KR 1020077005878A KR 20077005878 A KR20077005878 A KR 20077005878A KR 20070092198 A KR20070092198 A KR 20070092198A
- Authority
- KR
- South Korea
- Prior art keywords
- application
- host computer
- remote
- audio
- video
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43615—Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Digital Computer Display Output (AREA)
Abstract
Description
본 출원은, 2004년 2월 27일에 제출한 미국 가출원 제60/548,726호의 우선권을 주장하는 2005년 2월 28일에 제출한 미국 실용신안 출원 제11/068612호의 일부계속출원이다. 여기에 참고로 포함된다. 또한, 본 출원은 2004년 8월 13일에 제출한 미국 가출원 제60/601,244호의 우선권 주장 출원이다.This application is a partial continuing application of US Utility Model Application No. 11/068612, filed February 28, 2005, which claims priority of US Provisional Application No. 60 / 548,726, filed February 27, 2004. This is incorporated by reference. This application is also a priority claim application of US Provisional Application No. 60 / 601,244, filed August 13, 2004.
본 발명은 컴퓨터 네트워크에 관한 것으로, 더욱 상세하게는 콘텐츠 스트리밍(content streaming)에 관한 것이다. TECHNICAL FIELD The present invention relates to computer networks and, more particularly, to content streaming.
현재, 원격 호스트에서 동작하는 컴퓨터 애플리케이션의 실행을 원격으로 제어하고 그 애플리케이션 출력을 제공할 수 있는 장치의 필요성이 요구되고 있다. 이러한 장치는 강인(robust)해야 하고 원격 호스트로부터 전송된 암호화된 데이터를 복호화할 수 있어야 한다. 일 예로, 원격으로 미디어 플레이어를 제어하여 상기 미디어 플레이어의 출력을 볼 수 있는 것을 포함한다.Currently, there is a need for a device that can remotely control the execution of a computer application running on a remote host and provide that application output. Such devices must be robust and able to decrypt encrypted data sent from remote hosts. For example, it may be possible to remotely control the media player to view the output of the media player.
이러한 애플리케이션은 컴퓨터 애플리케이션을 동작시키는데 필요한 처리 능력을 애플리케이션 실행을 제어하는 장치로부터 분리시키는 방법 및 시스템을 제공한다. 이는 상기 장치를 간단하고 저렴해지도록 한다.Such applications provide a method and system for separating the processing power needed to run a computer application from a device controlling application execution. This makes the device simple and inexpensive.
바람직한 실시예에서, 본 발명의 시스템 및 방법은 디지털 미디어 수신기(Digital Media Receiver : 이하 DMR) 장치가 원격 컴퓨터에서 호스트되는 임의의 컴퓨터 운영 체제 및 애플리케이션(즉, 마이크로소프트 윈도우, 애플 MacOS, 마아크로소프트 워드, 마이크로소프트 인터넷 익스플로어, PC 비디오 게임, 마이크로소프트 미디어 플레이어, 리얼 네트워크 미디어 플레이어 등)을 동작시키고, 제어하며 화면에 표시할 수 있도록 한다. 본 발명의 시스템 및 방법은 음성 및 비디오 스트림과 네트워크 제어 채널을 통해 병행(concurrent) 전송 및 호스트 컴퓨터의 제어을 제공한다. 실시간 오디오 및 비디오 스트림은 애플리케이션 인터페이스 미디어 스트림(Application Interface Media Stream: 이하 AIMS)으로 불려진다. AIMS는 컴퓨터 네트워크를 통하여 호스트 컴퓨터로부터 DMR으로 전송된다. 그런 다음, DMR은 AIMS를 수신하여 복호화하고 TV 장치로 디스플레이하기 위해 렌더링한다. 호스트 컴퓨터 애플리케이션은 사용자에 의해 제어되는 DMR 제어 장치의 이용에 의해서 제어된다. DMR 제어 장치에서 발생하는 명령은 컴퓨터 네트워크를 통하여 호스트 컴퓨터 애플리케이션으로 전송되고, 호스트 컴퓨터 애플리케이션은 상기 명령에 응답하여 순차적으로 애플리케이션 GUI, 비디오 스크린 이벤트 및 오디오 애플리케이션 인터페이스 출력(output)을 업데이트 및 제어한다.In a preferred embodiment, the system and method of the present invention is directed to any computer operating system and application in which a Digital Media Receiver (DMR) device is hosted on a remote computer (ie, Microsoft Windows, Apple MacOS, Microsoft). Word, Microsoft Internet Explorer, PC video games, Microsoft Media Player, Real Network Media Player, etc.) can be operated, controlled and displayed on the screen. The systems and methods of the present invention provide for concurrent transmission and control of the host computer via voice and video streams and network control channels. Real-time audio and video streams are called Application Interface Media Streams (AIMS). AIMS is sent from the host computer to the DMR via a computer network. The DMR then receives, decodes and renders the AIMS for display on the TV device. The host computer application is controlled by the use of a DMR control device controlled by the user. Commands originating in the DMR control device are transmitted to the host computer application via the computer network, which in turn updates and controls the application GUI, video screen events, and audio application interface outputs in response to the command.
다른 측면에서, 상기 애플리케이션의 시스템 및 방법은 또한 DMR 장치가 원격 컴퓨터상에호스트된 미디어 플레이어 애플리케이션을 동작시키고 제어하며 화면에 표시할 수 있도록 한다. 이때 원격 컴퓨터의 미디어 플레이어 애플리케이션은 다음 두 가지면에서 다른 애플리케이션과 다르다. (1) 원격 컴퓨터는 DMR이 복호화할 수 없는 미디어 포맷을 DMR이 복호화할 수 있는 미디어 포맷으로 변환시키는 컴포넌트를 포함해야 한다. (2) 미디어 플레이어 애플리케이션은 사용자가 선택한 비디오 파일이 TV 화면상에서 파일 선택을 수월하게 하는 GUI를 완전히 대체하도록 컨텍스트 스위칭(context switching)을 제공한다.In another aspect, the system and method of the application also allows the DMR device to operate, control, and display the hosted media player application on a remote computer. The remote player's media player application differs from other applications in two ways: (1) The remote computer must include a component that converts a media format that the DMR cannot decrypt into a media format that the DMR can decrypt. (2) The media player application provides context switching so that the video file selected by the user completely replaces the GUI that facilitates file selection on the TV screen.
바람직한 실시예의 일반적인 동작은 다음과 같다. 먼저, DMR과 호스트 컴퓨터 사이에 세션(session)이 설정된다. 그리고 나서, 동시에 호스트 컴퓨터의 비디오 및 오디오는 DMR로 전송되는 시간 슬라이스 스트림(time slices streams)으로 부호화되고, DMR은 사용자로부터 제어 메시지를 수신한다. 상기 제어 메시지는 부호화되어 호스트 컴퓨터로 전송되는데, 그 제어 메시지는 복호화되어 애플리케이션의 실행을 조정하기 위해 사용된다.The general operation of the preferred embodiment is as follows. First, a session is established between the DMR and the host computer. At the same time, the video and audio of the host computer are then encoded into time slices streams that are sent to the DMR, which receives the control message from the user. The control message is encoded and sent to a host computer, which control message is decoded and used to coordinate the execution of the application.
한편, 또 다른 측면에서, 원격으로 컴퓨터 애플리케이션을 제어하는 방법은, 호스트 컴퓨터상의 컴퓨터 애플리케이션을 동작시키는 단계; 미디어 채널 및 애플리케이션 제어 채널을 통하여 호스트 컴퓨터와 원격의 수신기간에 전자적 데이터 통신을 설정하는 단계; 미디어 채널을 통하여 호스트 컴퓨터에서 원격 수신기로 애플리케이션 출력(output)을 전송하는 단계; 원격 수신기에서 애플리케이션 출력(output)을 표시하는 단계; 및 호스트 컴퓨터에서 애플리케이션 채널을 통하여 상기 원격 수신기로부터 상기 표시된 출력에 관련된 명령을 수신하는 단계를 포함한다.On the other hand, in another aspect, a method of controlling a computer application remotely includes: operating a computer application on a host computer; Establishing electronic data communication between a host computer and a remote receiver via a media channel and an application control channel; Sending an application output from a host computer to a remote receiver via a media channel; Displaying an application output at the remote receiver; And receiving a command related to the displayed output from the remote receiver via an application channel at a host computer.
또한, 원격 호스트 컴퓨터에서 동작하는 컴퓨터 애플리케이션을 제어하고 표시하기 위한 수신기는, 수신기와 원격 호스트간에 하나 이상의 통신 채널을 설정하기 위한 데이터 관리 수단; 원격 호스트로부터 수신된 애플리케이션 출력 데이터를 복호화하기 위한 데이터 처리 수단; 수신기로부터 원격 호스트로의 제어 신호를 부호화하기 위한 데이터 제어 수단; 및 수신기의 사용자에 의한 제어 명령을 입력하기 위한 입력 수단을 포함한다.The receiver for controlling and displaying a computer application running on a remote host computer further comprises: data management means for establishing at least one communication channel between the receiver and the remote host; Data processing means for decrypting application output data received from the remote host; Data control means for encoding a control signal from a receiver to a remote host; And input means for inputting a control command by the user of the receiver.
본 출원에 설명된 실시예는 이어지는 바람직한 실시예의 설명 및 첨부된 도면을 참조함으로써 보다 정확하게 이해될 것이다.The embodiments described in this application will be more accurately understood by reference to the following description of the preferred embodiments and the accompanying drawings.
도 1은 컴퓨터 네트워크상에서 다수의 제어 및 미디어 스트림을 통하여 호스트 컴퓨터의 애플리케이션 인터페이스를 제어, 디스플레이, 송신 및 수신하는 시스템의 블록도이다.1 is a block diagram of a system for controlling, displaying, transmitting, and receiving an application interface of a host computer through a number of control and media streams over a computer network.
도 2는 컴퓨터 네트워크상에서 다수의 제어 및 미디어 스트림을 통하여 호스트 컴퓨터의 미디어 플레이어 애플리케이션 인터페이스 및 호스트 컴퓨터의 A/V 미디어 아카이브를 제어, 디스플레이, 전송 및 수신하는 시스템의 블록도이다.FIG. 2 is a block diagram of a system for controlling, displaying, transmitting and receiving a media player application interface of a host computer and an A / V media archive of a host computer through a number of control and media streams over a computer network.
도 1에 도시된 본 발명의 제 1 실시예에서, 디지털 미디어 수신기(90, Digital Media Receiver : DMR)(DMR은 네트워킹이 가능한 DVD 플레이어, DMR 기능을 지원하기 위해 특화된 소프트웨어를 구동하는 개인용 컴퓨터 등이 될 수 있다)는 호스트 컴퓨터(91)의 네트워크 인터페이스(310)에 연결되는 네트워크 인터페이스(260)를 포함한다. 네트워크 인터페이스(260, 310)는 각각TCP/IP(Transmission Control Protocol/Internet Protocol) 스택(stack)(100, 300)을 사용하는 “유선”(즉, IEEE 802.3 이더넷) 혹은 “무선”(즉, IEEE 802.11) 하드웨어 장치일 수 있다. 상기 스택은 소프트웨어 통신 서비스로서 제공될 수 있고, 호스트 컴퓨터(91)와 같은 네트워크 상의 TCP/IP 기반의 임의의 장치와 DMR 사이에서 최소한 표준 TCP/IP와 UDP/IP 패킷 교환 방식의 데이터 통신 채널을 제공해야 한다. 또한, 네트워크 인터페이스는 USB, IEEE 1394 등이 될 수 있다.In the first embodiment of the present invention shown in Fig. 1, a digital media receiver (DMR) 90 (DMR) is a DVD player capable of networking, a personal computer running software specialized to support the DMR function, or the like. And
세션 설정 및 제어 컴포넌트는 DMR(90)과 호스트 컴퓨터(91) 사이의 통신 세션 설정을 위해 사용된다. DMR의 세션 설정 및 제어 컴포넌트(250)는 UPnP 포럼에서 개시한 UPnP(Universal Plug and Play)를 사용할 수 있다. DMR에 있어서, 세션 설정 및 제어 컴포넌트는 아래의 내용을 필수적으로 제공한다.The session establishment and control component is used for establishing a communication session between the
1. DMR에 대한 IP 주소로서, 고정(static) IP 할당 또는 DHCP(Dynamic Host Control Protocol) 기반의 IP 할당을 사용.1. As an IP address for the DMR, use static IP assignment or Dynamic Host Control Protocol (DHCP) based IP assignment.
2. 네트워크 상에서 호환되는 호스트 컴퓨터를 발견하여 DMR에 연결하기 위한 방법.2. A method for finding a compatible host computer on the network and connecting to the DMR.
3. 상기 네트워크 상에서 호환되는 호스트 컴퓨터와 DMR 간에 TCP/IP 기반의 소켓(socket) 접속을 토대로 세션을 협상, 설정, 종료하기 위한 방법. 상기 소켓 접속은 TCP/IP 및 UDP/IP 기반 통신 채널이다. 상기 소켓 접속은 DMR과 호스트 컴퓨터 간에 실시간 비디오, 오디오 및 제어 메시지를 전송한다.3. A method for negotiating, establishing, and terminating a session based on a TCP / IP based socket connection between a compatible host computer and a DMR on the network. The socket connection is a TCP / IP and UDP / IP based communication channel. The socket connection transmits real time video, audio and control messages between the DMR and the host computer.
4. 또한, 적용 가능한 경우에, DRM(Digital Rights Management) 방침 및 보안 통신 채널을위해 암호화 복호화 키에 관해 협상한다. 그리고 나서, DMR(90)의 복호화(decryption) 컴포넌트(120)로 복호화 키를 전달한다. 바람직한 실시예에서 복잡도가 낮은(low complexity) 사설(proprietary) DRM 방침은 Light Weight DRM으로 알려진 호스트 컴퓨터와 DMR 사이에서 동작되는 것으로 의도되고, 복잡도가 높은(high complexity) 산업 표준에 기초한 DRM 플랫폼은 호스트 컴퓨터에서 종단될 것임을 분명히 한다. 대안으로, DTCP(Digital Transmission Cortent Protocol)와 같은 산업 표준은 DMR(90)과 호스트 컴퓨터(91) 사이에서 미디어의 불법 복제를 방지하기 위해 사용될 수 있다.4. Also, where applicable, negotiate cryptographic decryption keys for Digital Rights Management (DRM) policies and secure communication channels. The decryption key is then passed to the decryption component 120 of the
호스트 컴퓨터(91)에 있어서, 세션 설정 및 제어 컴포넌트(305)는 아래의 내용을 필수적으로 제공한다.In the
1. 네트워크 상에서 DMR 장치를 발견하여 연결하기 위한 방법1. A method for discovering and connecting DMR devices on a network
2. 네트워크 상에서 호스트 컴퓨터와 DMR 간에 TCP/IP 기반의 소켓(socket) 접속을 토대로세션을 협상, 설정, 종료하기 위한 방법. 상기 소켓 접속은 TCP/IP 및 UDP/IP 기반 통신 채널이다. 상기 소켓 접속은 DMR과 호스트 컴퓨터 간에 실시간 비디오, 오디오, 및 제어 메시지를 전송한다.2. A method for negotiating, configuring, and terminating a session based on a TCP / IP based socket connection between a host computer and a DMR on a network. The socket connection is a TCP / IP and UDP / IP based communication channel. The socket connection transmits real time video, audio, and control messages between the DMR and the host computer.
3. 또한, 적용 가능한 경우에, DRM(Digital Rights Management) 플랫폼 및 보안 통신 채널을 위해 암호키/복호화 키에 관해 협상한다. 그리고 나서, 호스트 컴퓨터(91)의 암호화 컴포넌트 (450)로 복호화 키를 전달한다.3. Also negotiate encryption key / decryption key for Digital Rights Management (DRM) platform and secure communication channel, if applicable. The decryption key is then passed to the
상기 암호화 및 복호화 키의 교환은 세션 제어 채널(20)을 통해 이루어진다. 일단 DMR과 호스트 컴퓨터 간에 세션이 설정되면, 미디어 스트림은 미디어 스트림 채널(22)을 통하여 호스트 컴퓨터(91)에서 DMR(90)으로 전송될 수 있고, 제어 메시 지는 애플리케이션 제어 채널(24)을 통하여 DMR(90)에서 호스트 컴퓨터(91)로 전송될 수 있다. The exchange of encryption and decryption keys is through the
호스트 컴퓨터에서 동작하는 애플리케이션(410, 이벤트 루프)은 모든 제어 이벤트를 관리하고 처리한다. 애플리케이션(410, 이벤트 루프)은 GUI 인터페이스 뿐만 아니라 모든 애플리케이션 서브-시스템에 직접적인 접근을 한다. 애플리케이션 사운드 컴포넌트(430)는 운영체제의 비프음과 같이 애플리케이션에 특유한 오디오, 또는 GUI 청각 도구로서 생성되는 오디오 표시기를 생성한다. 오디오 부호기(420)는 DMR 장치에서 사용되는 코덱에 호환되는 압축 코덱을 이용하여 오디오 스트림을 압축한다. 애플리케이션 윈도우(490, GUI)는 애플리케이션의 사용자 인터페이스를 구성하는 활성화 윈도우 또는 윈도우의 집합 및 대화 박스(dialog boxes)이다. 윈도우 비디오 부호기(480)는 호스트 컴퓨터(91)에서 애플리케이션 GUI 윈도우에 의해 점유되는 메모리 영역 내의 비디오 버퍼를 샘플링(sampling)하여 미가공(raw) 비디오 스트림을 생성한다. 그런 다음, 세션 설정 동안 협상된, DMR에 의해 지원되는 최적의 디스플레이 포맷(display format)으로 비디오의 해상도 및 주사 구조를 리샘플링(resampling)한다. 통상적인 비디오 해상도 포맷은 표준 화질 NTCS-TV의 비월 주사 또는 순차 주사 720 X 480 픽셀, 또는 720P, 1080i, 1080p HDTV 이다. 그런 다음, 미가공(raw) 비디오 프레임 레이트(rate)는 DMR 하드웨어가 지원하는 최적의 디스플레이 비율(display rate)로 리샘플링 된다. 이후, 미가공 비디오는 비디오 부호기(470)로 전달되고, 비디오 부호기(470)는 DMR 장치의 코덱에 호환되는 압축 코덱을 이용하여 비디오 스트림을 압축한다. 그 후, 오디오 및 비디오, 즉 두 개의 압축된 스트림은 A/V(Audio/Video) 미디어 컴포넌트(460)로 전송된다. 상기 A/V 미디어 컴포넌트(460)는 애플리케이션(410)에서 발생한 오디오 및 비디오 스트림간 시스템 시간 동기에 관한 정보를 유지한다. 또한, A/V 미디어 컴포넌트(460)는 RTP(Real-time Transfer Protocol) 세션동안 가용되는 비디오/오디오 스트림 포맷을 구성한다. 그 다음에, 암호화 컴포넌트(450)는 세션 설정 및 제어 컴포넌트(305)에 의해 세션이 설정되는 과정에서 협상된 암호화 키를 이용하여 A/V 미디어 패킷을 암호화한다.An application 410 (event loop) running on the host computer manages and handles all control events. The application 410 (event loop) has direct access to all application sub-systems as well as the GUI interface. The
RTP 스트리밍 엔진(440)은 RTP를 이용하여 A/V 데이터를 일정한 패킷 단위로 나누어 네트워크 인터페이스(310)를 통해 IP 네트워크 상의 DMR로 전달한다. 이때, TCP/IP 스택(300)은 패킷이 미디어 스트림 채널(22)로 전송될 때, 적절한 헤더를 패킷에 부가한다. 여기서 RTP는 HTTP(Hyper Text Transfer Protocol)로 대체될 수 있고, 또는, 임의의 패킷화된 스트리밍 미디어 포맷으로 대체될 수 있음을 분명히 한다.The
DMR은 네트워크 인터페이스(260)를 통하여 미디어 스트림을 수신하고 TCP/IP 스택(100)으로 패킷에서 페이로드(payload)를 추출하는 처리를 한다. A/V 지터 버퍼(110, Jitter Buffer)는 DMR로 전송되는 모든 실시간 미디어 패킷의 수신 상태 확인(receipt), 동기, 일련 순서를 관리한다. A/V 지터 버퍼는 패킷을 스트림 유형별(오디오 및 비디오)로 나누고 각 미디어 스트림의 수신 간격에 기초하여 최적의 지터 버퍼 길이를 관리한다. 복호화(decryption) 컴포넌트(120)는 세션 설정 동안 세션 설정 및 제어 컴포넌트(250)로 제공된 복호화 키를 사용하여, DMR로 전송된 모든 암호화된 미디어 패킷을 복호화한다. A/V 프레이머(130, Framer)는 A/V 지터 버퍼(110)로부터의 복호화된 오디오 및 비디오 패킷을 분리하고 하드웨어가 지원하는 미디어 스트림 포맷으로 상기 분리된 패킷을 캡슐화(encapsulate)한다. 그런 다음, 비디오 스트림은 비디오 복호기(decoder)(140)로 전달되고, 상기 비디오 복호기(140)는 A/V 프레이머(130)부터 비디오 프레임을 수신하여 미가공(raw) 비디오 스트림으로 복호화(decode)한다. 이후, 미가공(raw) 비디오 스트림은 NTSC/PAL 부호기(150)로 전달되고, NTSC/PAL 부호기(150)는 상기 미가공 비디오 스트림을 각 나라의 동작 방식에 따라 NTSC나 PAL 포맷으로 변환한다. 그리고 나서, 아날로그 NTSC/PAL 신호는 TV 비디오 출력 컴포넌트(160)로 전달되고, TV 비디오 출력 컴포넌트(160)는 NTSC/PAL 부호기(150)로부터 수신한 아날로그 비디오 신호를 증폭하여 복합, 비월 주사 컴포넌트, 또는 순차 주사 컴포넌트와 같은 표준 TV 출력 인터페이스로 전송한다.The DMR receives the media stream via the
오디오 스트림은 오디오 복호기(170)로 전달되고, 상기 오디오 복호기(170)는 A/V 프레이머(130)로부터 압축된 오디오 신호 채널(signal channel)을 수신하여 선형(linear) PCM 채널로 압축을 해제한다. 이후, 선형 PCM 채널은 5.1 D/A 변환기(180)로 전달되고, 5.1 D/A 변환기(180)는 오디오 복호기 컴포넌트(170)로부터의 선형 PCM 오디오 신호 채널을 아날로그 오디오 신호 채널로 변환한다. 오디오 출력 컴포넌트(190)는 아날로그 및 디지털 인터페이스 동작 모드를 제공한다. 아날로그 동작 모드는 5.1 D/A 변환기(180)로부터 하위 레벨(low level)의 오디오 아날로그 신호를 수신하여 표준 다중채널 RCA(Radio Corporation of America) 오디오 출력 인터페이스로 상기 오디오 신호를 전송하기 전에 전력 증폭한다. 디지털 동작 모드는 5.1 D/A 변환기(180)로부터 미가공(raw) 디지털 채널을 수신하여 광학(opticlal) 또는 전기적 S/PDIF(Sony/Philips Digital Interface Format)을 통해 출력한다.The audio stream is delivered to an
오디오 및 비디오 정보가 호스트 컴퓨터(91)에서 DMR(90)로 전송된 것과 같이, DMR(90)의 사용자는 호스트 컴퓨터(91)의 애플리케이션 실행을 제어할 수 있다. Control In 컴포넌트(230)는 임의의 제어 장치(즉, 키보드(231), 마우스(232), 조이스틱(233), 적외선 원격 제어장치(240))로 DMR(90)과 통신 가능하게 하는 물리적인 인터페이스다. 사용자는 DMR에 의해 디스플레이 되는 애플리케이션 인터페이스를 조정 및 네비게이트하기 위해 제어 장치를 사용할 뿐만 아니라, DMR을 통해 임의의 미디어 스트림(즉, 비디오, 오디오, 사진)의 재생을 제어 및 조정하기 위해 제어 장치를 사용한다. As audio and video information is transmitted from the
복호화(decode) 제어 컴포넌트(210)는 Control In 컴포넌트 (230)에 연결된 제어 장치(231,232,233,240)로부터 받은 전기적 제어 메시지를 데이터 제어 코드로 복호화한다. 예를 들어, 적외선 리모콘(240)의 버튼이 눌러지면, 전기적 신호가 Control In 컴포넌트(230) 내부에 발생하게 된다. 이 전기적 신호는 적외선 리모콘(240)에서 눌러진 물리적인 버튼에 대응한다. 이후, 복호화 제어 컴포넌트(210)는 이 전기적 신호를 눌러진 물리적 버튼에 상응하는 데이터 제어 코드로 매핑한다. 그런 다음에, 캡슐화 컴포넌트(200)는 이 복호화된 제어 메시지를 캡슐화한다. 여기서 임의의 제어 프로토콜이 상기 캡슐화 컴포넌트에서 사용될 수 있다. 통상적 으로, 상기 제어 프로토콜의 예로 RTSP(Real Time Streaming Protocol)와 HTTP를 들 수 있다. 캡슐화된 메시지는 네트워크 인터페이스(260)에서 TCP/IP 애플리케이션 제어 채널(24)를 경유하여 호스트 컴퓨터(91)로 전송된다. 호스트 컴퓨터(91)는 네트워크 인터페이스(310)를 통하여 패킷을 수신하고 TCP/IP 스택(300)에 의해 이 패킷을 처리한다. 그런 다음, DMR로부터의 제어 메시지를 복호화(decode)하는 복호기(400)로 상기 패킷의 페이로드(payload)를 전달하고 호스트 컴퓨터의 적절한 애플리케이션으로 상기 패킷의 페이로드를 전달한다. 또한, 여기서 사용되는 제어 프로토콜이 임의의 애플리케이션을 지원하기 위해 다른 제어 프로토콜로 변형될 수 있다는 점을 분명히 해 둔다. 예를 들면, 저메모리(low memory)에 복잡도가 낮은 제어 프로토콜은 호스팅 애플리케이션과 호환되는 DHWG(Digital Home Working Group)를 지원하기 위해 RTSP나 HTTP로 변경될 수 있다. 이후, 복호기(400)는 애플리케이션(이벤트 루프,410)으로 제어 메시지를 전달하고, 애플리케이션(이벤트 루프,410)은 모든 제어 이벤트를 관리하고 처리한다.
도 2는 본 발명의 제 2 실시예를 나타낸 도면으로, 미디어 플레이어를 가지는 호스트 컴퓨터가 이용된다. 본 실시예에서, 호스트 컴퓨터(92)는 제 1 실시예의 호스트 컴퓨터(91)에 비교하면 다수의 추가적인 컴포넌트를 가진다. 특히, 미디어 플레이어를 가지는 호스트 컴퓨터(92)는 미디어 위치 데이터베이스(570)를 포함한다. 상기 미디어 위치 데이터베이스(570)는 컴퓨터의 접근을 허용하는 모든 비디오, 오디오, 사진 파일의 타입(type), 포맷, 이름 및 컴퓨터가 어드레스할 수 있는 위치에 관한 정보를 포함한다. 미디어 위치 데이터베이스(570)는 A/V 아카이 브(archive, 520) 및 사진 아카이브(560)와 인터페이스한다. A/V 아카이브(520)는 컴퓨터 검색(retrieval)을 위해 비디오 및 오디오 파일이 물리적으로 저장되는 위치이고, 사진 아카이브(560)는 컴퓨터 검색(retrieval)을 위해 사진 파일이 물리적으로 저장되는 위치이다. A/V 아카이브(520) 및 사진 아카이브(560)는 호스트 컴퓨터(92)에 위치할 수 있으며, 또는, 호스트 컴퓨터(92)에 부착된 네트워크(IP, IEEE 1394, USB 등) 장치에 저장될 수 있다. 미디어 위치 데이터베이스(570)는 애플리케이션(410)과 통신하고, 이에 따라 데이터베이스의 콘텐츠는 DMR(90)로 전송될 수 있다. DMR의 사용자가 검색하고자 하는 파일을 선택하면, 상기 선택된 정보는 DMR(90)에서 애플리케이션(410)으로 전송된다. 이때, 상기 파일은 비디오 혹은 오디오, 또는 정지 사진, 즉 두 가지 상황이 가능하다. 만약 DMR(90)의 사용자가 오디오나 비디오 파일을 요청한다면, 애플리케이션(410)은 오디오 및 비디오 파일을 탐색 가능한(seekable) 패킷 단위의 미디어 스트림으로 변환하는 A/V 파서(Parser,510)로 접근한다. 상기 A/V 파서(510)는 시간 척도(time scale)를 변경하거나 또는 변경 없이, 재생, 일시정지, 정지, 앞으로 빨리감기, 되감기 및 탐색률(seekable rate) 등과 같은 일반적인 미디어 제어 명령을 지원한다. 이 명령들은 기본적인(primitive) 파일 검색 및 읽기 명령들을 통해 지원된다. A/V 파서(510)는 DMR에 의해 요청된 절대 시간(absolute time)에 상응하는 파일 내의 인덱스(index)를 찾자마자, 오디오 프레임 또는 시간 동기화된 오디오 및 비디오 프레임을 각 미디어 패킷의 절대 실시간(absolute real-time) 스탬프(stamp)와 함께 각각의 트랜스코더(transcoder) 컴포넌트로 보낸다. 절대 실시간(absolute real-time) 스탬프 는, 미디어가 시스템 내의 이후 프로세싱 컴포넌트에 의해 때 맞추어 리샘플링될 것을 요구하는 앞으로 빨리 감기 및 되감기 명령을 명시하기 위해 사용된다. Fig. 2 shows a second embodiment of the present invention in which a host computer having a media player is used. In the present embodiment, the host computer 92 has a number of additional components compared to the
오디오 트랜스코더(500)는 DMR(90)이 지원하는 포맷으로 저장되어 있지 않은 오디오 채널을 리포맷(reformat) 하기 위해 사용된다. 상기 리포맷은 우선 오디오 채널을 미가공(raw) 오디오로 압축 해제한 다음 DMR(90)이 지원하는 포맷으로 다시 압축함으로써 달성된다. DMR이 지원하는 오디오 압축 포맷은 세션 설정 동안 협상된다. 절대 실시간(absolute real-time) 스탬프 및 샘플링 주파수가 오리지널 샘플링 주파수와 상이하면, 오디오 패킷에 대해 시간 척도(time scale)의 변경이 수행된다. 시간 척도(time scale) 변경은 사용자의 선택에 따라 연속적으로(피치 스케일 변경 사용 또는 미사용) 또는 불연속적으로 진행될 수 있다.The
비디오 트랜스코더(530)는 DMR(90)이 지원하는 포맷으로 저장되어 있지 않은 비디오 채널을 리포맷 하기 위해 사용된다. 상기 리포맷은 우선 오디오 채널을 미가공 비디오로 압축 해제한 다음 DMR(90)이 지원하는 포맷으로 다시 압축함으로써 달성된다. DMR이 지원하는 비디오 압축 포맷은 세션 설정 동안 협상된다. 절대 실시간(absolute real-time) 스탬프와 샘플링 주파수가 오리지널 샘플링 주파수와 상이하면, 비디오 패킷에 대해 시간 척도(time scale)의 변경이 수행된다. 시간 척도(time scale) 변경은 사용자의 선택에 따라 연속적으로 또는 불연속적으로 진행될 수 있다. 선택된 파일이 오디오 파일인 경우, 비디오 채널과 비디오 트랜스코더(530)는 사용되지 않는다.The
사용자가 검색을 위한 디지털 사진을 선택한 경우, 사진 파서(550)는 사진을 미가공(raw) 비디오 스트림으로 변환한다. 사진 파서(550)는 먼저 사진을 미가공(raw) 정지 이미지(still image) 프레임으로 압축 해제한다. 그런 다음, 상기 정지 이미지 프레임은 DMR 장치(90)가 지원하고 세션 설정 동안 미리 협상된 비디오 해상도 및 주사 구조로 리샘플링 된다. 통상적인 비디오 해상도 포맷은 표준 화질 NTCS-TV를 위한 비월 주사 또는 순차 주사의 720 X 480 픽셀, 또는 720P, 1080i, 1080p HDTV 이다. 이후, 비디오 프레임은 DMR 하드웨어가 지원하는 프레임 레이트로 재생된다. 예를 들어, DMR이 NTSC 장치를 지원하는 지식에 의거하여, 최적의 NTSC 프레임 비율이 선택된다. 그런 다음, 미가공 비디오는 비디오 부호기(470)와 유사한 비디오 부호기(540)로 전달되고, 그 후, 미가공(raw) 비디오는 비디오 트랜스코더(530)로 전달된다.When the user selects a digital picture for retrieval,
그런 다음, 오디오 트랜스코더(500) 및 비디오 트랜스코더(530)의 출력은 A/V 미디어 컴포넌트(460)로 전달되어 처리된 후, 제 1 실시예에서 설명한 방법과 같이 DMR(90)로 전달된다. DMR(90)의 사용자가 호스트 컴퓨터(92)로부터 미디어 파일을 요청할 때, 컨텍스트(context)는 스위칭된다. 즉, 비디오는 사용자가 볼 수 있는 GUI로 완전하게 교체된다. 상기 선택된 파일의 재생(palyback)은 사용자의 요청에 의해 중단될 수 있으며, 컨텍스트는 어느 시점에서 뒤로 스위칭될 수 있다. The outputs of the
본 발명의 실시예는 본 발명의 다양한 형태의 설명으로 의도된 것이기 때문에, 상세한 설명에 기재되고 청구범위에 기재된 본 발명은 상기 실시예의 범위에 한정되지 않는다. 동등한 실시예는 본 발명의 범위 안에 있음은 물론이다. 물론, 도면 및 상세한 설명에 더하여 본 발명의 기술분야에서 통상의 지식이 가진 자라면 상술한 본 발명의 다양한 변형이 가능함은 당연하다. 이러한 변형 역시 첨부된 특허청구범위 내에 있음은 물론이다. Since the embodiments of the present invention are intended for the description of various forms of the present invention, the present invention described in the detailed description and described in the claims is not limited to the scope of the above embodiments. It is understood that equivalent embodiments are within the scope of the present invention. Of course, those skilled in the art, in addition to the drawings and detailed description, it is obvious that various modifications of the present invention described above are possible. Of course, such modifications are also within the scope of the appended claims.
Claims (18)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US60124404P | 2004-08-13 | 2004-08-13 | |
US60/601,244 | 2004-08-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070092198A true KR20070092198A (en) | 2007-09-12 |
Family
ID=35908228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020077005878A KR20070092198A (en) | 2004-08-13 | 2005-08-15 | Systems and methods for remotely controlling computer apllications |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP1810165A2 (en) |
JP (1) | JP2008510392A (en) |
KR (1) | KR20070092198A (en) |
AU (1) | AU2005272636A1 (en) |
CA (1) | CA2577087A1 (en) |
WO (1) | WO2006020968A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101251099B1 (en) * | 2012-07-03 | 2013-04-05 | 알서포트 주식회사 | Method for monitoring a process of remote access and system for monitoring a process of remote access |
KR101389214B1 (en) * | 2012-09-04 | 2014-04-24 | 주식회사 엘지씨엔에스 | Remote managing system and method |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070092198A (en) * | 2004-08-13 | 2007-09-12 | 씨엠웨어, 인코포레이션 | Systems and methods for remotely controlling computer apllications |
US7676823B2 (en) * | 2006-06-21 | 2010-03-09 | Alcatel-Lucent Usa Inc. | User interface methods and apparatus for roaming access to subscription services |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07128408A (en) * | 1993-11-04 | 1995-05-19 | Nec Corp | Eo probe |
JP3546662B2 (en) * | 1997-09-12 | 2004-07-28 | 日本ビクター株式会社 | Distributed home network |
AU2001238604A1 (en) * | 2000-02-22 | 2001-09-03 | Roy M. Mankovitz | Portable electronic audio-visual apparatus and method employing cellular networkarchitecture |
FI109854B (en) * | 2000-04-07 | 2002-10-15 | Domiras Oy | Production of service from a TCP / IP network server |
US20030009542A1 (en) * | 2001-06-14 | 2003-01-09 | Kasal Alpay O. | Digital entertainment solution |
JP3785107B2 (en) * | 2002-03-28 | 2006-06-14 | 株式会社東芝 | Moving picture and audio data recording / reproducing apparatus and reproducing method |
US7472270B2 (en) * | 2002-04-16 | 2008-12-30 | Microsoft Corporation | Secure transmission of digital content between a host and a peripheral by way of a digital rights management (DRM) system |
US7529846B2 (en) * | 2002-05-14 | 2009-05-05 | Thomson Licensing | Video receiver architecture for digital subscriber line networks |
DE60222890T2 (en) * | 2002-08-12 | 2008-02-07 | Alcatel Lucent | Methods and apparatus for implementing highly interactive entertainment services using media streaming technology that enables the provision of virtual reality services |
US7340531B2 (en) * | 2002-09-27 | 2008-03-04 | Intel Corporation | Apparatus and method for data transfer |
US7881658B2 (en) * | 2002-10-10 | 2011-02-01 | Znl Enterprises, Llc | Method and apparatus for entertainment and information services delivered via mobile telecommunication devices |
US20040086120A1 (en) * | 2002-11-06 | 2004-05-06 | Akins Glendon L. | Selecting and downloading content to a portable player |
JP2004193791A (en) * | 2002-12-09 | 2004-07-08 | Toshiba Corp | Av transmission apparatus, av reception apparatus, av communication system, av transmission program, and av reception program |
US20040133908A1 (en) * | 2003-01-03 | 2004-07-08 | Broadq, Llc | Digital media system and method therefor |
JP4127053B2 (en) * | 2003-01-10 | 2008-07-30 | ソニー株式会社 | Electronic device control system and electronic device control method |
US20050216949A1 (en) * | 2004-03-23 | 2005-09-29 | Ray Candelora | Systems and methods for a universal media server with integrated networking and telephony |
BRPI0511858B1 (en) * | 2004-06-07 | 2020-12-22 | Sling Media, Inc. | personal media transmitter and respective transmission system, methods of providing access to the audio / visual source at a remote location of the audio / visual source and media signal streaming to a remote subscriber location |
KR20070092198A (en) * | 2004-08-13 | 2007-09-12 | 씨엠웨어, 인코포레이션 | Systems and methods for remotely controlling computer apllications |
US20060048236A1 (en) * | 2004-09-01 | 2006-03-02 | Microsoft Corporation | Licensing the use of software to a particular user |
-
2005
- 2005-08-15 KR KR1020077005878A patent/KR20070092198A/en not_active Application Discontinuation
- 2005-08-15 AU AU2005272636A patent/AU2005272636A1/en not_active Abandoned
- 2005-08-15 WO PCT/US2005/028961 patent/WO2006020968A2/en active Search and Examination
- 2005-08-15 JP JP2007525872A patent/JP2008510392A/en active Pending
- 2005-08-15 CA CA002577087A patent/CA2577087A1/en not_active Abandoned
- 2005-08-15 EP EP05786709A patent/EP1810165A2/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101251099B1 (en) * | 2012-07-03 | 2013-04-05 | 알서포트 주식회사 | Method for monitoring a process of remote access and system for monitoring a process of remote access |
KR101389214B1 (en) * | 2012-09-04 | 2014-04-24 | 주식회사 엘지씨엔에스 | Remote managing system and method |
US9219656B2 (en) | 2012-09-04 | 2015-12-22 | Lg Cns Co., Ltd. | Remote managing system and method |
Also Published As
Publication number | Publication date |
---|---|
CA2577087A1 (en) | 2006-02-23 |
WO2006020968A2 (en) | 2006-02-23 |
EP1810165A2 (en) | 2007-07-25 |
JP2008510392A (en) | 2008-04-03 |
AU2005272636A1 (en) | 2006-02-23 |
WO2006020968A3 (en) | 2006-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060188096A1 (en) | Systems and methods for remotely controlling computer applications | |
TWI565310B (en) | Video streaming in a wireless communication system | |
JP4794440B2 (en) | Apparatus and method for handling high-speed changes in digital streaming format or source | |
US20090235170A1 (en) | Methods and apparatus for sharing either a computer display screen or a media file and selecting therebetween | |
WO2010140587A1 (en) | Gateway device, method, and system | |
TWI513315B (en) | Method, system, and tv with picture re-producing function | |
CN101778285B (en) | A kind of audio-video signal wireless transmitting system and method thereof | |
KR101821123B1 (en) | Method and apparatus for playing media stream on web-browser | |
EP2549680A2 (en) | Content output system and codec information sharing method in same system | |
WO2011043983A2 (en) | Systems and methods for media format transcoding | |
KR20140091021A (en) | Control method and device using same | |
EP1933529A1 (en) | Content distribution system by SIP(Session Initiation Protocol), content server side user terminal, content client side user terminal and authentication method | |
KR101821124B1 (en) | Method and apparatus for playing media stream on web-browser | |
KR20070092198A (en) | Systems and methods for remotely controlling computer apllications | |
EP2661877B1 (en) | System and method for video distribution over internet protocol networks | |
JP2011010196A (en) | Communication control apparatus and communication control method | |
JP5265860B2 (en) | Receiver | |
WO2017020607A1 (en) | Rdp data playback method, server and system | |
KR101871403B1 (en) | Media control device application executing method and system in media displaying device using presentation virtualization | |
JP5561278B2 (en) | Gateway apparatus and method and communication system | |
JP5337499B2 (en) | Data transmission apparatus and data transmission method | |
JP5494753B2 (en) | Receiver | |
JP2006148451A (en) | Transmission circuit, reception circuit and transmission/reception circuit of content data, and semiconductor device | |
JP2008270968A (en) | Image processing system, image processor, image processing method, and program | |
JP2019053350A (en) | Distribution apparatus, reproduction apparatus, distribution method, reproduction method, reproduction program and data structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |