KR20000074498A - 중간 데이터 기반의 비디오/오디오 스트리밍 방법 - Google Patents

중간 데이터 기반의 비디오/오디오 스트리밍 방법 Download PDF

Info

Publication number
KR20000074498A
KR20000074498A KR1019990018489A KR19990018489A KR20000074498A KR 20000074498 A KR20000074498 A KR 20000074498A KR 1019990018489 A KR1019990018489 A KR 1019990018489A KR 19990018489 A KR19990018489 A KR 19990018489A KR 20000074498 A KR20000074498 A KR 20000074498A
Authority
KR
South Korea
Prior art keywords
video
data
packet
audio
intermediate data
Prior art date
Application number
KR1019990018489A
Other languages
English (en)
Other versions
KR100336280B1 (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 KR1019990018489A priority Critical patent/KR100336280B1/ko
Priority to US09/574,703 priority patent/US6873625B1/en
Publication of KR20000074498A publication Critical patent/KR20000074498A/ko
Application granted granted Critical
Publication of KR100336280B1 publication Critical patent/KR100336280B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 비디오/오디오 데이터 전송시 서버(Server)에서는 중간 데이터 (intermediate data) 형태로 전송하고 이를 수신하는 클라이언트(Client)에서는 바로 비디오/오디오 데이터를 처리할 수 있도록 함으로써, 비디오/오디오 데이터 전송에 용이함을 제공하고 클라이언트 시스템 구조를 단순화시키도록 한 중간 데이터 기반의 비디오/오디오 스트리밍 방법에 관한 것으로서, 이러한 본 발명은, 서버에서 클라이언트로 비디오/오디오 파일을 전송하는 경우, 전송할 압축된 비디오/오디오 파일을 변환하여 중간 데이터로 변환하고, 이를 패킷에 복사하여 클라이언트로 전송해주고, 클라이언트에서 네트워크를 통해 전송되는 비디오/오디오 파일을 처리하는 경우, 수신된 패킷을 분석하고 그 분석한 패킷에 복사된 비디오 중간 데이터를 원래의 비디오 데이터로 복원한 후 출력하고, 수신 패킷이 PCM 패킷인 경우 아날로그 음성 데이터로 변환하여 출력해줌으로써, 클라이언트에서는 실시간적으로 비디오/오디오 데이터를 처리할 수 있다.

Description

중간 데이터 기반의 비디오/오디오 스트리밍 방법{Method for video/audio streaming based on intermediate data}
본 발명은 네트워크를 통한 비디오/오디오 데이터 전송에 관한 것으로, 특히 비디오/오디오 데이터 전송시 서버(Server)에서는 중간 데이터 (intermediate data) 형태로 전송하고 이를 수신하는 클라이언트(Client)에서는 별도의 압축 해제 장치 없이도 바로 비디오/오디오 데이터를 처리할 수 있도록 함으로써, 비디오/오디오 데이터 전송에 용이함을 제공하고 클라이언트 시스템 구조를 단순화시키도록 한 중간 데이터 기반의 비디오/오디오 스트리밍 방법에 관한 것이다.
일반적으로, 네트워크를 통한 비디오(동영상 및 정지영상) 데이터의 전송은 네트워크의 제한된 데이터 전송 속도와 전송되는 데이터량을 고려하여, 전송측에서는 다양한 압축 방법으로 전송할 비디오 데이터를 압축하여 전송한다. 이 경우 전송되는 데이터량이 현저히 줄어들게 되나, 수신측에서는 별도의 압축된 비디오 데이터를 수신하는 장치와 압축 비디오 데이터를 해제시키는 압축 해제 장치를 구비해야만 전송된 비디오 데이터를 수신하여 처리할 수 있다.
첨부한 도면 도1은 종래 비디오/오디오 데이터 처리장치 개략 구성도로서, 이는 하나의 컴퓨터에서 비디오 파일(JPEG, MPEG-1, MPEG-2, H.261, H.263 등등)을 열고, 이를 실행시키는 과정을 보인 것이다.
이에 도시된 바와 같이, 데이터 저장부(1)는 비디오 파일을 저장하며, 디코더(2)는 비디오 디코더와 오디오 디코더로 이루어져 상기 데이터 저장부(1)에 저장된 비디오 파일을 열어 비디오 신호와 오디오 신호로 분리하고, 각각의 디코더(Decoder)를 이용하여 비디오 신호와 오디오 신호를 디코딩(Decoding)한다. 즉, 비디오 디코더로는 분리한 비디오 신호를 디코딩하게 되며, 오디오 디코더로는 분리한 오디오 신호를 디코딩하게 된다.
그리고 비디오 출력부(3)는 상기 디코더(2)에서 디코딩된 비디오 신호를 출력해주게 되며, 오디오 출력부(4)는 상기 디코더(2)에서 디코딩된 오디오 신호를 외부로 출력해준다.
도2는 종래 네트워크를 통한 비디오/오디오 송신 및 수신 장치 개략 구성도로서, 이는 일반적인 VOD(Video On Demand : 주문형 비디오)에서 많이 쓰이는 방식이다.
도시된 바와 같이, 크게 서버(10)와 클라이언트(20)로 대별되며, 서버(10)는 데이터 저장부(11)에 다수의 비디오 파일을 저장하며, 클라이언트(20)로부터 임의의 비디오 파일 요구가 있을 경우 해당 비디오 파일을 인출하여 클라이언트(20)로 전송해주는 역할을 한다.
그리고 클라이언트(20)는 상기 서버(10)로부터 제공되는 비디오 데이터를 버퍼(21)에 임시로 저장하고, 디코더(22)에서는 그 버퍼(21)에 저장된 데이터를 순차 읽어들여 비디오 신호와 오디오 신호로 분리한다. 그런 후 내부의 비디오 디코더로 분리한 비디오 데이터를 디코딩하여 비디오 출력부(23)에 전달해 줌으로써, 비디오 출력이 이루어지도록 한다. 또한 디코더(22)는 내부의 오디오 디코더로 분리한 오디오 데이터를 디코딩하여 오디오 출력부(24)에 전달해 줌으로써, 오디오 출력이 이루어지도록 한다.
그러나 이러한 기존의 미디어 파일 스트리밍(Streaming) 방법은, 서버에서는 압축된 비디오 파일 자체를 전송하고, 클라이언트에서 그 압축된 비디오 파일을 압축 해제하여 처리한다. 즉, 클라이언트가 특정 비디오 파일을 요청하면 서버는 그 파일 자체를 읽어 전송해준다. 여기서 서버는 파일을 전송할때 단순히 저장장치에서 압축된 파일을 읽고 그대로 네트워크에 전송한다.
이로 인해 클라이언트에서는 각각의 압축 방법으로 압축된 압축 파일을 해제하고 이를 디코딩하는 장치가 별도로 부가되어야만 압축 파일을 복원할 수 있으므로, 클라이언트 네트워크 컴퓨터의 구성이 복잡해지는 단점이 있다.
또한, 클라이언트측에서는 압축 파일을 전송받게 되므로 고속의 중앙처리장치도 필요하게 되어 하드웨어의 구현이 복잡해지고, 경제적인 측면에서도 제품의 가격을 상승시키는 단점이 있었다.
따라서 본 발명은 상기와 같은 종래 기술의 제반 문제점을 해결하기 위해서 제안된 것으로서,
본 발명의 목적은, 비디오/오디오 데이터 전송시 서버(Server)에서는 중간 데이터(intermediate data) 형태로 전송하고 이를 수신하는 클라이언트(Client)에서는 별도의 압축 해제 장치 없이도 바로 비디오/오디오 데이터를 처리할 수 있도록 함으로써, 비디오/오디오 데이터 전송에 용이함을 제공하고 클라이언트 시스템 구조를 단순화시키도록 한 중간 데이터 기반의 비디오/오디오 스트리밍 방법을 제공하는 데 있다.
상기와 같은 목적을 달성하기 위한 본 발명은,
서버와 클라이언트가 네트워크를 통해 비디오/오디오 데이터를 스트리밍하는 방법에 있어서,
상기 서버에서 상기 클라이언트로 비디오/오디오 파일을 전송하는 경우, 전송할 압축된 비디오/오디오 데이터를 변환하여 중간 데이터로 변환하고, 이를 패킷에 복사하여 상기 클라이언트로 전송해주는 비디오/오디오 송신 과정과;
상기 클라이언트에서 상기 네트워크를 통해 전송되는 비디오/오디오 파일을 처리하는 경우, 수신된 패킷을 분석하고 그 분석한 결과 비디오 패킷일 경우 패킷에 복사된 비디오 중간 데이터를 원래의 비디오 데이터로 복원한 후 출력하고, 수신 패킷이 PCM 패킷인 경우 아날로그 음성 데이터로 변환하여 출력해주는 비디오/오디오 수신 과정으로 이루어짐을 특징으로 한다.
상기에서 비디오/오디오 송신 과정은,
상기 서버에서 상기 클라이언트로 비디오/오디오 파일을 전송하는 경우, 상기 서버는 압축된 비디오/오디오 데이터를 변환하여 중간 데이터로 변환시키는 제1단계와; 상기 변환한 중간 데이터를 전송할 패킷의 헤더를 생성하는 제2단계와; 상기 패킷에 중간 데이터의 헤더를 생성하는 제3단계와; 상기 변환한 중간 데이터를 소정 크기로 패킷에 복사하는 제4단계와; 상기 중간 데이터가 복사된 패킷을 네트워크로 전송해주는 제5단계로 이루어짐을 특징으로 한다.
또한, 상기 클라이언트는, 상기 네트워크를 통해 수신되는 패킷의 헤더를 분석하는 제1단계와; 상기 수신한 패킷이 DC 패킷일 경우 비디오 중간 데이터를 역 이산 코사인 변환하는 제2단계와; 상기 수신한 패킷이 YUV 패킷일 경우 서브 샘플링된 데이터를 복원하는 제3단계와; 상기 복원한 데이터를 RGB로 변환하는 제4단계와; 상기 변환된 RGB신호를 스케일링하는 제5단계와; 상기 스케일링된 비디오 신호를 화면에 출력해주는 제6단계와; 상기 수신 패킷이 PCM 패킷일 경우 수신 PCM 데이터를 아날로그 음성 신호로 변환하는 제7단계와; 상기 변환한 아날로그 음성 신호를 스피커로 출력해주는 제8단계로 이루어짐을 특징으로 한다.
도1은 종래 비디오/오디오 데이터 처리장치 개략구성도,
도2는 종래 네트워크를 통한 비디오/오디오 데이터 송신 및 수신 장치 개략구성도,
도3은 본 발명에서 제안하는 중간 데이터 기반의 비디오/오디오 스트리밍 방법을 적용한 네트워크 시스템 구성도,
도4는 본 발명에 의한 중간 데이터 기반의 비디오/오디오 스트리밍시 서버측의 패킷 생성 및 전송 과정을 보인 흐름도,
도5는 본 발명에 의한 중간 데이터 기반의 비디오/오디오 스트리밍시 클라이언트측의 패킷 해석 과정을 보인 흐름도,
도6은 본 발명에서 블록 기반 비디오 변환시 중간 데이터 전송 과정을 설명하기 위한 설명도,
도7은 본 발명에서 제안하는 중간 데이터 패킷의 프로토콜 구조도.
<도면의 주요 부분에 대한 부호의 설명>
30 : 서버 31 : 데이터 저장부
32 : 중간데이터 생성기 40 : 클라이언트
41 : 중앙처리장치 42 : 비디오 출력부
43 : 오디오 출력부
이하, 상기와 같은 기술적 사상에 따른 본 발명의 바람직한 실시예를 첨부한 도면에 의거 상세히 설명하면 다음과 같다.
첨부한 도면 도3은 본 발명이 적용되는 네트워크 시스템의 개략 구성도이다.
이는 크게 서버(30)와, 클라이언트(40)로 대별 되며, 상기 서버(30)는 데이터 저장부(31)에서 압축된 비디오/오디오 파일을 저장하며, 중간 데이터 생성기(32)에서는, 상기 데이터 저장부(31)에 저장된 압축된 비디오/오디오 파일을 변환하여 중간 데이터 형태로 네트워크에 전송한다.
여기서 본 발명이 적용되는 서버(30)와 기존의 서버(도2의 10)와의 가장 큰 차이점은, 기존의 서버(10)는 클라이언트(20)로부터 데이터의 요구가 있으면 해당 비디오 파일을 압축된 형태로 네트워크를 통해 클라이언트(20)로 전송해주지만, 본 발명에서의 서버(30)는 압축된 비디오/오디오 파일을 변환하여 중간 데이터 형태로 네트워크에 전송하여 클라이언트에 제공해준다는 점이다.
또한, 클라이언트(40)는 중앙처리장치(41)에서 네트워크를 통해 전송되는 중간 데이터를 포함하는 패킷을 수신하여 실시간 처리하게 되고, 처리한 비디오 신호는 비디오 출력부(42)에 전달해주어 비디오 출력이 이루어지도록 하며, 처리한 오디오 신호는 오디오 출력부(43)에 전달해주어 오디오 출력이 이루어지도록 한다.
즉, 중앙처리장치(41)는 네트워크를 통해 전송되는 패킷 데이터가 중간 데이터 형태로 전송되기 때문에, 실시간적으로 수신된 중간 데이터를 처리할 수 있다.
다시 말해, 클라이언트에서는 중간 데이터의 형태에 따라서 수신 비디오 패킷을 처리하면 되므로, 클라이언트 시스템의 하드웨어 구조를 단순화할 수 있는 것이다.
도4는 본 발명에 의한 중간 데이터 기반의 비디오/오디오 스트리밍시 서버측의 패킷 생성 및 전송 과정을 보인 흐름도이다.
도시된 바와 같이, 상기 서버에서 상기 클라이언트로 비디오/오디오 파일을 전송하는 경우, 상기 서버는 압축된 비디오/오디오 데이터를 변환하여 중간 데이터로 변환시키는 제1단계(S11)와; 상기 변환한 중간 데이터를 전송할 패킷의 헤더를 생성하는 제2단계(S12)와; 상기 패킷에 중간 데이터의 헤더를 생성하는 제3단계(S13)와; 상기 변환한 중간 데이터를 소정 크기로 패킷에 복사하는 제4단계(S14)와; 상기 중간 데이터가 복사된 패킷을 네트워크로 전송해주는 제5단계(S15); 모든 중간 데이터의 네트워크 전송 여부를 확인하여, 네트워크 전송이 종료되었으면, 비디오/오디오 파일 전송 과정을 종료하고, 네트워크로 전송할 비디오/오디오 파일이 더 존재하는 경우에는 전술한 패킷 헤더 생성 단계(S12)로 리턴하는 제6단계(S16)로 이루어진다.
이와 같이 이루어지는 본 발명에 의한 서버측에서 클라이언트측으로 비디오/오디오 파일을 전송하는 방법은, 먼저 단계 S11에서 클라이언트측에서 임의의 비디오 파일 전송이 요구되면, 서버의 중간 데이터 생성기는 데이터 저장부에 저장된 해당 비디오 파일을 읽어들인다.
그런 후 도6과 같은 변환 과정을 통해 중간 데이터를 생성한다.
즉, 데이터 저장부(31)에는 임의의 코딩 과정에 의해 압축된 비디오 파일이 저장되어 있다. 상기 압축된 비디오 파일은 도6(a)와 같은 압축된 비디오 데이터이며, 이를 허프만 변환 방법으로 가변 길이 복호화한다. 여기서 허프만 변환 방법에 의해 압축된 비디오 데이터를 가변길이 복호화한 경우 가변 길이 복호화된 데이터 형태는 도6b와 같은 형태가 된다. 다음으로 상기 가변 길이 복호화된 비디오 데이터를 역양자화한다. 여기서 상기와 같이 역양자화를 수행하면 블록 기반의 비디오 데이터 처리 알고리즘에서는 8*8의 블록이 생성되며, 이 값은 YUV값을 주파수 범위로 변환시킨 값으로써 이산 코사인(Discrete Cosine)값(이하, DC 데이터라 칭한다)이 된다. 따라서 본 발명에서는 상기와 같은 DC 데이터를 중간 데이터의 한 예로 설정한다.
한편, 상기와 같은 DC 데이터를 역 이산 코사인 변환(IDCT)을 하면 도6d와 같은 형태의 YUV값으로 변환된다. 본 발명에서는 상기와 같은 YUV 데이터를 중간 데이터의 다른 예로 설정한다.
즉, 본 발명에서는 비디오인 경우 역 양자화 후의 데이터인 DC 데이터와 역 이산 코사인 변환후의 YUV 데이터를 중간 데이터로 설정한다.
그리고 주지한 바와 같은 변환 과정에 의해 얻어지는 중간 데이터(DC 데이터 및 YUV 데이터)를 순서대로 클라이언트측에 따로 따로 전송해준다.
여기서 DC 데이터를 패킷화하여 먼저 전송하고, 다음으로 YUV 데이터를 패킷화하여 전송하게 되는데, 상기 DC 데이터의 패킷화 및 전송과정과 YUV 데이터의 패킷화 및 전송 과정은 동일하므로, 이하에서는 하나의 중간 데이터를 패킷화하고 이를 클라이언트측으로 전송해주는 과정만을 설명한다.
아울러 PCM 데이터인 경우에도 중간 데이터 형태로 변환을 하여 클라이언트측으로 전송해준다.
서버(30)내의 중간 데이터 생성기(32)는 상기와 같이 중간 데이터를 생성한 후, 그 생성한 중간 데이터를 전송할 패킷의 헤더를 생성한다(S12). 다음으로, 상기 생성한 패킷에 중간 데이터를 복사할 중간 데이터 헤더를 생성하고(S13), 패킷의 소정 위치에 이서넷 MTU 크기(1500바이트) 보다 작게 중간 데이터를 패킷에 복사한다(S14). 여기서 중간 데이터가 복사되는 패킷에는 상기 중간 데이터로 변환한 PCM 패킷도 함께 복사된 패킷이다(물론, 전송할 비디오 데이터가 정지 화상일 경우 PCM 데이터의 전송은 없다). 그런 다음 패킷을 네트워크로 전송하고(S15), 모든 중간 데이터의 전송 여부를 확인한다(S16). 이 확인 결과 디코딩한 중간 데이터의 전송이 완료되지 않은 경우에는 전술한 패킷 헤더 생성 단계(S12)로 리턴을 한다.
첨부한 도면 도5는 본 발명에 의한 중간 데이터 기반의 비디오/오디오 스트리밍시 클라이언트측의 패킷 해석 및 출력 과정을 보인 흐름도이다.
도시된 바와 같이, 상기 네트워크를 통해 수신되는 패킷의 헤더를 분석하는 제1단계(S21 ~ S22)와; 상기 수신한 패킷이 DC 패킷일 경우 비디오 중간 데이터를 역 이산 코사인 변환하는 제2단계(S23 ~ S24)와; 상기 수신한 패킷이 YUV 패킷이거나 상기 IDCT변환후의 데이터인 경우 서브 샘플링된 데이터를 복원하는 제3단계(S25 ~ S26)와; 상기 복원한 데이터를 RGB로 변환하는 제4단계(S27)와; 상기 변환된 RGB신호를 스케일링하는 제5단계(S28)와; 상기 스케일링된 비디오 신호를 화면에 출력해주는 제6단계(S29)와; 상기 수신 패킷이 PCM 패킷일 경우 수신 PCM 중간 데이터를 아날로그 음성 신호로 변환하는 제7단계(S30 ~ S31)와; 상기 변환한 아날로그 음성 신호를 스피커로 출력해주는 제8단계(S32)로 이루어진다.
이와 같이 이루어지는 본 발명에 의한 클라이언트에서의 수신 패킷 해석 및 출력 과정은 다음과 같다.
먼저, 단계 S21에서 서버에서 송신한 패킷을 네트워크를 통해 수신한다. 그런 다음 단계 S22에서 그 수신한 패킷의 헤더를 분석한다. 이 분석 결과 수신된 비디오 패킷이 역 양자화 이후의 중간 데이터인 DC 데이터인 경우에는 역 이산 코사인 변환(IDCT)을 수행하여 수신된 DC 패킷을 YUV 데이터로 변환한다(S24). 그런 후 서브 샘플링된 데이터를 원래의 비디오 데이터를 변환하고, 그 변환한 비디오 데이터를 RGB 신호로 변환한다(S26 ~ S27). 이후 스케일링 과정을 수행하고(S28), 스케일링된 RGB 신호를 화면에 디스플레이 시킨다(S29).
또한. 상기 수신 패킷이 YUV 패킷인 경우에는(S251), 서브 샘플링된 비디오 데이터를 원래의 비디오 데이터로 복원한다(S26). 그런 후 복원된 비디오 데이터를 RGB 신호로 변환하고, 이를 스케일링한다(S27 ~ S28). 이후 스케일링된 RGB 신호를 화면에 디스플레이 한다(S29).
다음으로, 수신 패킷이 PCM 패킷일 경우에는(S30), 상기 PCM 중간 데이터를 아날로그 음성 데이터로 변환을 하고(S31), 이후 변환한 아날로그 음성 신호를 스피커로 출력하게 된다(S32).
여기서 네트워크를 통해 중간 데이터를 전송할 때는 효과적으로 전송하고, 클라이언트의 부담을 줄이기 위해서는 특별한 전송 규약이 필요하다. 이러한 전송 규약은 네트워크 전송과정에서 패킷의 손실 가능성도 있기 때문에 손실에 의한 피해를 최소화하기 위함이다.
이러한 중간 데이터 전송을 위한 프로토콜은 도7과 같다.
도7a는 전송되는 패킷의 구조를 보인 것으로서, 이는 전단에 소정 크기의 패킷 헤더가 있고, 그 다음으로 설정된 크기내의 패킷 데이터(DC 데이터, YUV 데이터, PCM 데이터)가 실리는 구조이다.
도7b 상기 패킷 헤더를 좀 더 상세하게 보인 구조로서, 도시된 바와 같이, 헤더 길이는 20바이트이며, 패킷 데이터가 YUV 데이터인지(0*A0), 음성 데이터인지(0*A1), DC 데이터인지(0*A2)를 나타내는 비트가 8비트로 할당되며, 패킷 번호가 3바이트 할당된다. 아울러 명령 ID에서 지시하는 데이터를 제어하기 위한 필드가 12바이트 할당되고, 예약을 위한 필드가 4바이트 할당된다.
이상에서 상술한 바와 같이 본 발명은, 네트워크를 통해 비디오/오디오 파일을 전송하는 경우 중간 데이터 형태로 비디오/오디오 데이터를 전송하므로써, 클라이언트에서는 단순히 네트워크에서 패킷을 받고 실시간적으로 이를 처리할 수 있으므로, 기존과 같이 압축 파일을 저장하기 위한 버퍼와 압축 파일을 디코딩하기 위한 디코더 및 고속의 중앙처리장치가 불필요하게 되어 전체적인 하드웨어 구성을 간소화시킬 수 있는 이점이 있다.
또한, 상기와 같이 클라이언트에서는 중간 데이터를 수신하여 이를 처리하면 되므로, 네트워크 카드, 비디오 카드, 오디오 카드, 제어장치, 최소한의 메모리만 가지고 클라이언트를 구축할 수 있어 하드웨어 구성의 단순화로 클라이언트 구축 비용을 절감할 수 있는 효과가 있다.
또한, 클라이언트는 네트워크로 들어오는 데이터만 처리하는 기능을 수행하고, 대부분 데이터 제어 기능을 서버가 가지고 있기 때문에 서버가 클라이언트를 용이하게 통제할 수 있는 이점도 있다.
또한, 클라이언트는 서비스를 원하는 대상이 YUV 기반의 압축 데이터이면, 클라이언트의 업그레이드 없이 서비스 이용이 가능한 효과가 있다. 즉, 새로운 압축 포맷이 개발되어도 서버에 적합한 디코딩을 위한 소프트웨어만 설치하면 클라이언트에서는 실시간적으로 수신 및 처리할 수 있다. 이러한 이유로 시스템 관리 및 유지, 성능 향상에 있어 매우 융통성있고 경제적인 이점이 있다.

Claims (4)

  1. 서버와 클라이언트가 네트워크를 통해 비디오/오디오 데이터를 스트리밍하는 방법에 있어서,
    상기 서버에서 상기 클라이언트로 비디오/오디오 파일을 전송하는 경우, 전송할 압축된 비디오/오디오 데이터를 변환하여 중간 데이터로 변환하고, 이를 패킷에 복사하여 상기 클라이언트로 전송해주는 비디오/오디오 송신 과정과;
    상기 클라이언트에서 상기 네트워크를 통해 전송되는 비디오/오디오 파일을 처리하는 경우, 수신된 패킷을 분석하고 그 분석한 패킷이 비디오 패킷일 경우 비디오 중간 데이터를 원래의 비디오 데이터로 복원한 후 출력하고, 수신 패킷이 PCM 중간 데이터 패킷인 경우 아날로그 음성 데이터로 변환하여 출력해주는 비디오/오디오 수신 과정을 포함하여 이루어짐을 특징으로 하는 중간 데이터 기반의 비디오/오디오 스트리밍 방법.
  2. 제1항에 있어서, 상기 비디오/오디오 송신 과정은,
    상기 서버에서 상기 클라이언트로 비디오/오디오 파일을 전송하는 경우, 상기 서버는 압축된 비디오/오디오 파일을 변환하여 중간 데이터로 변환시키는 제1단계와; 상기 변환한 중간 데이터를 전송할 패킷의 헤더를 생성하는 제2단계와; 상기 패킷에 중간 데이터의 헤더를 생성하는 제3단계와; 상기 변환한 중간 데이터를 소정 크기로 패킷에 복사하는 제4단계와; 상기 중간 데이터가 복사된 패킷을 네트워크로 전송해주는 제5단계로 이루어짐을 특징으로 하는 중간 데이터 기반의 비디오/오디오 스트리밍 방법.
  3. 제1항 또는 제2항에 있어서, 상기 중간 데이터는,
    비디오 데이터인 경우 압축된 비디오 데이터를 가변길이 복호화하고, 그 가변길이 복호화된 비디오 데이터를 주파수 범위로 변환시켜 역 양자화한 이산 코사인(Discrete Cosine)값(DC 데이터)과; 상기 DC 데이터를 역 이산 코사인 변환(IDCT)을 하여 YUV값으로 변환한 YUV 데이터이고, 오디오 데이터인 경우 PCM 중간 데이터인 것을 특징으로 하는 중간 데이터 기반의 비디오/오디오 스트리밍 방법.
  4. 제1항에 있어서, 상기 클라이언트는,
    상기 네트워크를 통해 수신되는 패킷의 헤더를 분석하는 제1단계와; 상기 수신한 패킷이 DC 패킷일 경우 비디오 중간 데이터를 역 이산 코사인 변환하는 제2단계와; 상기 수신한 패킷이 YUV 패킷일 경우 서브 샘플링된 데이터를 복원하는 제3단계와; 상기 복원한 데이터를 RGB로 변환하는 제4단계와; 상기 변환된 RGB신호를 스케일링하는 제5단계와; 상기 스케일링된 비디오 신호를 화면에 출력해주는 제6단계와; 상기 수신 패킷이 PCM 패킷일 경우 수신 PCM 중간 데이터를 아날로그 음성 신호로 변환하는 제7단계와; 상기 변환한 아날로그 음성 신호를 스피커로 출력해주는 제8단계로 이루어짐을 특징으로 하는 중간 데이터 기반의 비디오/오디오 스트리밍 방법.
KR1019990018489A 1999-05-21 1999-05-21 중간 데이터 기반의 비디오/오디오 스트리밍 방법 KR100336280B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019990018489A KR100336280B1 (ko) 1999-05-21 1999-05-21 중간 데이터 기반의 비디오/오디오 스트리밍 방법
US09/574,703 US6873625B1 (en) 1999-05-21 2000-05-18 Intermediate data based video/audio streaming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990018489A KR100336280B1 (ko) 1999-05-21 1999-05-21 중간 데이터 기반의 비디오/오디오 스트리밍 방법

Publications (2)

Publication Number Publication Date
KR20000074498A true KR20000074498A (ko) 2000-12-15
KR100336280B1 KR100336280B1 (ko) 2002-05-13

Family

ID=36462488

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990018489A KR100336280B1 (ko) 1999-05-21 1999-05-21 중간 데이터 기반의 비디오/오디오 스트리밍 방법

Country Status (2)

Country Link
US (1) US6873625B1 (ko)
KR (1) KR100336280B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020017406A (ko) * 2000-08-30 2002-03-07 서평원 클라이언트 서버 시스템에서 송수신 데이터의 압축 및복원방법

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8165155B2 (en) * 2004-07-01 2012-04-24 Broadcom Corporation Method and system for a thin client and blade architecture
US20040218624A1 (en) * 2003-05-01 2004-11-04 Genesis Microchip Inc. Packet based closed loop video display interface with periodic status checks
US8059673B2 (en) * 2003-05-01 2011-11-15 Genesis Microchip Inc. Dynamic resource re-allocation in a packet based video display interface
US20040221315A1 (en) * 2003-05-01 2004-11-04 Genesis Microchip Inc. Video interface arranged to provide pixel data independent of a link character clock
US8068485B2 (en) * 2003-05-01 2011-11-29 Genesis Microchip Inc. Multimedia interface
US7733915B2 (en) * 2003-05-01 2010-06-08 Genesis Microchip Inc. Minimizing buffer requirements in a digital video system
US8204076B2 (en) * 2003-05-01 2012-06-19 Genesis Microchip Inc. Compact packet based multimedia interface
US20040221312A1 (en) * 2003-05-01 2004-11-04 Genesis Microchip Inc. Techniques for reducing multimedia data packet overhead
US7405719B2 (en) * 2003-05-01 2008-07-29 Genesis Microchip Inc. Using packet transfer for driving LCD panel driver electronics
US20040218599A1 (en) * 2003-05-01 2004-11-04 Genesis Microchip Inc. Packet based video display interface and methods of use thereof
US7620062B2 (en) * 2003-05-01 2009-11-17 Genesis Microchips Inc. Method of real time optimizing multimedia packet transmission rate
US7839860B2 (en) * 2003-05-01 2010-11-23 Genesis Microchip Inc. Packet based video display interface
US7800623B2 (en) * 2003-09-18 2010-09-21 Genesis Microchip Inc. Bypassing pixel clock generation and CRTC circuits in a graphics controller chip
US7634090B2 (en) * 2003-09-26 2009-12-15 Genesis Microchip Inc. Packet based high definition high-bandwidth digital content protection
US7613300B2 (en) * 2003-09-26 2009-11-03 Genesis Microchip Inc. Content-protected digital link over a single signal line
KR100602954B1 (ko) * 2004-09-22 2006-07-24 주식회사 아이큐브 미디어 게이트웨이
US20070038578A1 (en) * 2005-08-10 2007-02-15 Huizhuo Liu Method and system for digital content distribution
US20070083608A1 (en) * 2005-09-19 2007-04-12 Baxter Robert A Delivering a data stream with instructions for playback
US20090094658A1 (en) * 2007-10-09 2009-04-09 Genesis Microchip Inc. Methods and systems for driving multiple displays
US20090219932A1 (en) * 2008-02-04 2009-09-03 Stmicroelectronics, Inc. Multi-stream data transport and methods of use
US20100183004A1 (en) * 2009-01-16 2010-07-22 Stmicroelectronics, Inc. System and method for dual mode communication between devices in a network
US8429440B2 (en) * 2009-05-13 2013-04-23 Stmicroelectronics, Inc. Flat panel display driver method and system
US8156238B2 (en) * 2009-05-13 2012-04-10 Stmicroelectronics, Inc. Wireless multimedia transport method and apparatus
US8860888B2 (en) * 2009-05-13 2014-10-14 Stmicroelectronics, Inc. Method and apparatus for power saving during video blanking periods
US8760461B2 (en) 2009-05-13 2014-06-24 Stmicroelectronics, Inc. Device, system, and method for wide gamut color space support
US8582452B2 (en) 2009-05-18 2013-11-12 Stmicroelectronics, Inc. Data link configuration by a receiver in the absence of link training data
US8291207B2 (en) * 2009-05-18 2012-10-16 Stmicroelectronics, Inc. Frequency and symbol locking using signal generated clock frequency and symbol identification
US8370554B2 (en) * 2009-05-18 2013-02-05 Stmicroelectronics, Inc. Operation of video source and sink with hot plug detection not asserted
US8468285B2 (en) * 2009-05-18 2013-06-18 Stmicroelectronics, Inc. Operation of video source and sink with toggled hot plug detection
US8671234B2 (en) 2010-05-27 2014-03-11 Stmicroelectronics, Inc. Level shifting cable adaptor and chip system for use with dual-mode multi-media device
BR122015017252B1 (pt) * 2010-11-26 2019-10-08 Nec Corporation Método de decodificação de vídeo e dispositivo de decodificação de vídeo
US9357215B2 (en) 2013-02-12 2016-05-31 Michael Boden Audio output distribution
US10015228B2 (en) 2015-10-28 2018-07-03 Dell Products L.P. Remote desktop protocol client for a standards-based web browser
US10051033B2 (en) * 2015-10-30 2018-08-14 Dell Products L.P. Providing audio data for a remote desktop protocol in a standards-based web browser
US10057376B2 (en) 2015-10-30 2018-08-21 Dell Products L.P. Remote desktop protocol client with virtual channel support implemented in a standards-based web browser

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541852A (en) * 1994-04-14 1996-07-30 Motorola, Inc. Device, method and system for variable bit-rate packet video communications
KR100250509B1 (ko) * 1994-05-25 2000-04-01 슈즈이 다께오 가변 전송속도 데이터 전송장치
KR0166935B1 (ko) * 1994-11-23 1999-03-20 구자홍 엠펙2 트랜스포트 디코더 장치
US5666487A (en) * 1995-06-28 1997-09-09 Bell Atlantic Network Services, Inc. Network providing signals of different formats to a user by multplexing compressed broadband data with data of a different format into MPEG encoded data stream
US6072771A (en) * 1997-09-26 2000-06-06 International Business Machines Corporation Detection of errors in table data
US6351474B1 (en) * 1998-01-14 2002-02-26 Skystream Networks Inc. Network distributed remultiplexer for video program bearing transport streams
US6385771B1 (en) * 1998-04-27 2002-05-07 Diva Systems Corporation Generating constant timecast information sub-streams using variable timecast information streams

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020017406A (ko) * 2000-08-30 2002-03-07 서평원 클라이언트 서버 시스템에서 송수신 데이터의 압축 및복원방법

Also Published As

Publication number Publication date
KR100336280B1 (ko) 2002-05-13
US6873625B1 (en) 2005-03-29

Similar Documents

Publication Publication Date Title
KR20000074498A (ko) 중간 데이터 기반의 비디오/오디오 스트리밍 방법
US9749713B2 (en) Budget encoding
US6925501B2 (en) Multi-rate transcoder for digital streams
JP2986039B2 (ja) 多重チャネル画像圧縮システム用の統計的マルチプレクサ
US7085320B2 (en) Multiple format video compression
US7380015B1 (en) Apparatus and method for compression-transmitting and decoding picture information and storage medium stored its control programs
US20050123058A1 (en) System and method for generating multiple synchronized encoded representations of media data
EP2088782A1 (en) A method and a device for transcoding video
JPH09107547A (ja) 既圧縮動画データ量削減装置および既圧縮動画データ量削減システムならびに既圧縮動画データ量削減方法
JPH08508378A (ja) トランスコーダ
US20040073953A1 (en) Audio/video apparatus for use with a cable television network
US6583807B2 (en) Videoconference system for wireless network machines and its implementation method
US7212974B2 (en) System and method for compressing and encoding data
JP2008193248A (ja) 画像符号化装置および画像復号化装置
JP2009528751A (ja) 差分符号化
KR20040069445A (ko) 낮은 메모리 대역폭을 갖는 동영상 압축 장치와 그 방법
KR100349058B1 (ko) 영상압축복원장치
KR20020070721A (ko) 동영상 전송장치
KR100706427B1 (ko) 다단계 이미지 수신 기능을 가지는 무선통신 단말기 및 그방법과 콘텐츠 전송 장치에서의 다단계 이미지 송신 방법
JPH0974556A (ja) 画像再生装置
KR101470404B1 (ko) N 스크린 서비스를 위한 트랜스코딩 방법 및 장치
KR0174443B1 (ko) 적응적인 벡터 양자화를 이용한 정지영상 부호화 방법 및 장치
KR100323752B1 (ko) 정지 영상 전송 방법 및 영상 전송 단말기
JP2022515946A (ja) 並列フォレンジックマーキング装置及び方法
JP2004349820A (ja) 画像符号化装置及び画像符号化方法、ストリーミング装置、並びにコンピュータ・プログラム

Legal Events

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

Payment date: 20090423

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee