KR100494432B1 - 비디오서버와 클라이언트간 패킷데이터 처리방법 - Google Patents

비디오서버와 클라이언트간 패킷데이터 처리방법 Download PDF

Info

Publication number
KR100494432B1
KR100494432B1 KR10-2002-0084028A KR20020084028A KR100494432B1 KR 100494432 B1 KR100494432 B1 KR 100494432B1 KR 20020084028 A KR20020084028 A KR 20020084028A KR 100494432 B1 KR100494432 B1 KR 100494432B1
Authority
KR
South Korea
Prior art keywords
packet
video
pointer
server
frame
Prior art date
Application number
KR10-2002-0084028A
Other languages
English (en)
Other versions
KR20040058377A (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 KR10-2002-0084028A priority Critical patent/KR100494432B1/ko
Priority to US10/746,479 priority patent/US20040168204A1/en
Publication of KR20040058377A publication Critical patent/KR20040058377A/ko
Application granted granted Critical
Publication of KR100494432B1 publication Critical patent/KR100494432B1/ko

Links

Classifications

    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 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
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions

Abstract

본 발명은 비디오서버와 클라이언트간 패킷데이터 처리방법에 관한 것으로서, 더 상세하게는 실시간 동영상압축 방식을 사용하는 비디오서버의 경우 속도가 다른 다수의 클라이언트에 대한 전송 방식에 관한 것이다.
본 발명은 카메라, 영상 획득기, 동영상 압축기, 스트림 서버, 네트워크 인터페이스로 구성된 동영상압축 비디오서버와, 상기 비디오서버에 경로가 각각 다르게 연결된 다수의 클라이언트간에 패킷데이터를 처리하는 방법에 있어서;
상기 스트림 서버는 동영상 압축기로부터 읽어 들인 압축영상 데이터를 네트워크 인터페이스로 전달하기 전에 패킷 단위로 구성하여 스트림 서버에 구비된 패킷버퍼에 모아두고, 상기 패킷버퍼는 전송해야 할 패킷의 위치를 가리키는 포인터와, 상기 포인터가 가르키는 위치의 패킷 정보가 복사되어 전송되는 네트워크 인터페이스의 소켓 버퍼를 할당함을 특징으로 한다.

Description

비디오서버와 클라이언트간 패킷데이터 처리방법 {Packet data processing method among video server and clients}
본 발명은 비디오서버와 클라이언트간 패킷데이터 처리방법에 관한 것으로서, 더 상세하게는 실시간 동영상압축 방식을 사용하는 비디오서버의 경우 속도가 다른 다수의 클라이언트에 대한 전송 방식에 관한 것이다.
인터넷의 발전과 더불어 각 가정에서도 빠른 속도의 인터넷 사용이 가능해져서, 인터넷 TV, 영화 등은 물론 교통 상황을 동영상으로 볼 수 있게 되었다.
또한 유치원이나 보육원에서의 아이들의 상황도 인터넷을 통해 동영상으로 확인할 수 있다.
이것이 가능해진 것은 동영상서버가 인터넷에 설치되고 사용자들이 클라이언트(컴퓨터)를 통해 접속하여 동영상서버의 영상 데이터를 받을 수 있기 때문이다.
동영상서버의 형태는 녹화된 동영상 데이터를 미리 압축/저장하여 클라이언트의 요구에 따라 전송하는 형태와, 실시간으로 압축하여 전송하는 형태로 구분된다.
동영상 데이터를 미리 압축하여 전송할 경우 각 클라이언트와의 전송속도를 몇 개의 카테코리로 나눈 다음 그에 해당하는 비트스트림을 따로 저장하여 클라이언트의 사용자가 선택할 수 있도록 한다.
이때는 주로 동영상압축 방식을 사용하여 압축율을 높인다.
그러나 실시간 동영상압축 비디오서버의 경우 보통 압축 시간이 상대적으로 적게 걸리는 정지영상 압축 방식을 취하며 이 경우 각 클라이언트와의 네트워크 속도에 따라 프레임을 건너뛰는 방식으로 전송을 하는게 보편적인 방법이다.
본 발명은 상기한 실시간 동영상압축 방식을 사용하는 비디오서버의 경우 속도가 다른 다수의 클라이언트에 대한 전송 방식에 관한 것이다.
도 1은 일반적인 비디오서버와 클라이언트와의 관계를 간단하게 그린 것이다.
도시한 바와 같이, 비디오서버(101)에는 일반적으로 다수의 클라이언트(103a,103b,…,103n)가 네트워크(102)로 접속되어 비디오서버(101)로부터 비디오 데이터를 받게 된다.
이 때 각 클라이언트와 비디오서버와의 연결은 별도로 이루어지고 각각의 경로는 다르게 된다.
이렇게 개별적으로 구성된 네트워크(102) 경로의 차이에 의해 각각의 전송속도는 다르게 된다.
또한 비디오서버(101)로부터 받은 비디오 데이터에 대해 일반적으로 클라이언트(103a,103b,…,103n)는 응답 신호(데이터를 잘 받았고 다른 데이터를 받을 준비가 되어 있음을 클라이언트쪽에서 비디오서버쪽으로 알리는 메시지)를 발생하게 되는데 클라이언트의 상태 및 처리 속도에 따라 반응시간(비디오서버로부터 데이터가 전송되고 클라이언트로부터 응답신호가 오기까지의 시간)이 다르게 된다.
이렇게 각각의 클라이언트(103a,103b,…,103n)와 그 경로의 차이에 의해 비디오서버(101)와 클라이언트간의 전송속도에는 차이가 발생한다.
위와 같이 비디오서버(101)와 각각의 클라이언트(103a,103b,…,103n) 간의 전송속도가 다른 경우에 도 2와 같이 정지영상 압축 방식을 취하는 비디오서버(101)에서는 보통 초당 30프레임의 영상 중에 일부를 제외하여 전송한다.
이것은 정지영상 압축 방식상의 특징을 이용한 것으로 정지영상의 경우, 한 프레임당 비트량은 프레임에 따라 크게 달라지지 않으며 한 프레임을 뺄 경우 그만큼의 비트량의 감소를 볼 수 있다.
즉 프레임수와 비트량은 정비례관계에 있기 때문에 프레임수를 제어하는 것으로 네트워크(102) 속도에 대응한다.
네트워크(102) 속도가 빠른 클라이언트1(103a)의 경우 1,2,3,4,5,6,7,…으로 모든 프레임을 전송할 수 있으며, 네트워크(102) 속도가 느린 클라이언트2(103b)의 경우 1,4,7,…등으로 프레임을 건너뛰어 전송하게 된다.
도 2와 같은 정지영상 압축방식에 의한 비디오서버의 경우, 각각의 프레임이 독립적으로 압축되고, 이 프레임을 도 3의 동영상압축 방식으로 보면 모든 프레임을 인트라 프레임이라고 볼 수 있다.
그러나, 도 3에서와 같이 동영상압축 방식을 취하고 하나의 비디오 압축기를 사용하는 비디오서버(101)의 경우, 각각의 클라이언트(103a,103b,…,103n)에게 서로 다른 프레임을 전송하는 것은 압축 방식의 차이에 의해 불가능하다.
즉, 상기 클라이언트1(103a)에게는 1,2,3,4,5,6,… 프레임을 전송하고, 상기 클라이언트2(103b)에게는 1,3,5,… 프레임을 전송할 수 없다.
이것은 동영상압축 방식이 프레임간 압축을 하기 때문인데 이것은 현재의 프레임은 그 프레임의 압축 데이터만으로 디코딩할 수 있는 것이 아니라 바로 이전 디코딩된 프레임이 있어야 가능하기 때문이다.
즉 1,2,3,4,5,6,7,…프레임순으로 압축을 하였다면 디코더에서는 3프레임을 디코딩하기 위해 디코딩된 2프레임이 있어야 하는 것이다.
따라서 2프레임을 빼고 전송한 것을 제대로 디코딩할 수 없는 것이다.
실시간 동영상압축 방식에서도 모든 프레임을 프레임간 압축 방식을 취하는 것이 아니라 중간 중간에 에러 보정 및 기타의 이유로 정지영상 압축 방식을 취한다.
이러한 프레임을 인트라 프레임(intra frame,I)이라고 하고 그렇지 않은 프레임을 인터 프레임(inter frame,P)이라고 한다.
상기 인트라 프레임(I)은 현재의 프레임만으로 압축이 되고, 인터 프레임(P)은 이전 프레임과 연관성을 가지고 압축이 된다.
인트라 프레임(I)은 그 프레임만으로 디코딩되는 것으로, 동영상압축 방식의 비디오서버(101)에서는 이러한 인트라 프레임(I)을 중간 중간에 넣음으로 속도가 느린 클라이언트에는 인트라 프레임을 따라 점프하는 방식으로 전송한다.
그러나, 인트라 프레임(I)은 인터 프레임(P)에 비해 데이터량이 많다.
즉 인트라 프레임(I)의 비트량은 인터 프레임(P)의 비트량보다 수배에서 수십배에 달할 정도로 상대적으로 많다.
이러한 인트라 프레임(I)을 중간 중간에 느린 클라이언트가 있을 것을 예상하여 넣는다는 것은 네트워크(102)의 속도에 사실상 더 좋지 않은 영향을 준다.
그렇다고 이런 인트라 프레임(I)이 없으면 느린 클라이언트에서는 인터 프레임(P)을 따라 디코딩을 하다보면 띄엄 띄엄 압축된 영상을 받게 되는 문제점이 있었다.
본 발명은 상술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 속도가 느린 클라이언트를 위해 인트라 프레임의 생성을 제한하여 네트워크의 속도를 향상시킬 수 있으면서도 영상의 압축 품질에 영향을 주지 않아 네트워크 자원을 효율적으로 사용하게 하는 비디오서버와 클라이언트간 패킷데이터 처리방법을 제공하는데 있다.
상술한 목적을 달성하기 위해 본 발명은 카메라, 영상 획득기, 동영상 압축기, 스트림 서버, 네트워크 인터페이스로 구성된 동영상압축 비디오서버와, 상기 비디오서버에 경로가 각각 다르게 연결된 다수의 클라이언트간에 패킷데이터를 처리하는 방법에 있어서;
상기 스트림 서버는 동영상 압축기로부터 읽어 들인 압축영상 데이터를 네트워크 인터페이스로 전달하기 전에 패킷 단위로 구성하여 스트림 서버에 구비된 패킷버퍼에 모아두고, 상기 패킷버퍼는 전송해야 할 패킷의 위치를 가리키는 포인터와, 상기 포인터가 가르키는 위치의 패킷 정보가 복사되어 전송되는 네트워크 인터페이스의 소켓 버퍼를 할당함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법을 제공하고자 한다.
이하 본 발명의 실시예에 대하여 첨부된 도면을 참고로 그 구성 및 작용을 설명하기로 한다.
도 4는 본 발명에 따른 비디오서버의 구성도로서, 카메라(201), 영상 획득기(202), 동영상 압축기(203), 스트림 서버(204), 네트워크 인터페이스(205)로 구성된다.
본 발명은 상기 스트림 서버에 관한 것으로 도 6에 그 구성이 도시되어 있다.
도시한 바와 같이, 스트림 서버(204)는 동영상 압축기(203)의 압축기 버퍼(203a)로부터 읽어 들인 압축 영상 데이터를 네트워크 인터페이스(205)로 전달하기 전에 패킷단위로 구성하고, 이때 생성되는 패킷은 프레임단위로 만들어진다.
또한, 도 5에서와 같이 하나의 프레임 데이터를 하나 또는 여러개의 패킷으로 전송할 수 있지만, 프레임의 마지막 데이터에서는 현재 형성되고 있는 패킷을 완료하는 방식을 취하도록 하여 프레임단위로 패킷이 관리될 수 있도록 한다.
상기 패킷은 도 6에서와 같이 패킷 버퍼(204a,204b,…,204n)에 저장되고, 각각의 클라이언트를 위해서, 상기 패킷 버퍼에서 전송해야 할 패킷의 위치를 가리키는 포인터와 상기 네트워크 인터페이스(205)의 소켓 버퍼(205a,205b,…,205n)를 할당한다.
즉 각각의 포인터가 가르키는 위치의 패킷의 정보는 네트워크 인터페이스의 소켓 버퍼로 복사되어 전송되고, 이때 패킷 포인터의 진행속도는 각각의 클라이언트로의 전송속도에 비례한다.
상기 패킷 버퍼(204a,204b,…,204n)는 순환버퍼가 되어 포인터가 임의의 갯수(n)만큼 증가된 후에 포인터는 첫번째 패킷 버퍼(204a)의 위치로 되돌아온다.
가장 빠른 포인터의 속도에 따라 새로 생성된 패킷의 데이터로 패킷 버퍼의 내용은 갱신되는데, 이것이 느린 포인터를 앞질러 느린 클라이언트쪽에 데이터 오류를 발생시키는 원인이 된다.
이를 방지하기 위해 갱신하는 포인터가 다가오기 전에 느린 포인터를 다른 패킷의 위치로 점프하여야 하고, 이때 점프하는 위치가 인트라 프레임의 시작 패킷이 된다.
앞의 위치에 상기 인트라 프레임의 시작 패킷이 없다면 강제로 인트라 프레임을 생성한다.
그리고 이러한 패킷이 생성되는 동안 느린 클라이언트를 위한 포인터는 멈추고 전송은 중지된다.
여기서 느린 포인터가 점프를 하기 전의 패킷은 프레임의 마지막 패킷이 되어야 한다.
도 7은 클라이언트의 패킷 포인터의 증가(갱신) 및 그 위치 이동 그리고 인트라 프레임의 생성에 관한 순서도이다.
인트라 프레임을 불필요하게 많이 생성하게 되면 네트워크에 부하가 많이 걸리는 바, 인트라 프레임을 에러를 보정하는 정도로 최소화하여 네트워크의 부하를 줄여야 한다.
본 발명은 이를 위해 프레임의 마지막 패킷을 전송하면서 각각의 클라이언트의 포인터를 증가(갱신)할 때마다 도 7과 같은 판단을 하게 한다.
먼저 스트림 서버(204)는 현재의 패킷이 프레임의 마지막 패킷인가 판단을 하여(S702), 프레임의 마지막 패킷이면 프레임의 마지막 패킷이 가장 빠른 포인터와 거리가 충분한가를 판단한다(S704).
거리가 충분하면, 가장 빠른 포인터가 느린 포인터를 앞질러 느린 클라이언트쪽에 데이터 오류를 발생시킬 염려가 없으므로 포인터를 갱신한다(S706).
거리가 충분하지 않으면, 가장 빠른 포인터가 느린 포인터를 앞질러 느린 클라이언트쪽에 데이터 오류를 발생시킬 염려가 있으므로, 앞의 위치에 인트라 프레임의 시작 패킷이 있는가 없는가를 판단하여(S710), 인트라 프레임의 시작 패킷이 있으면, 상기 인트라 프레임의 시작 패킷으로 포인터를 이동(점프)한다(S712).
인트라 프레임이 없으면, 스트림 서버(204)는 동영상 압축기(203)에 인트라 프레임의 생성을 요구하고, 이에 의해 동영상 압축기는 인트라 프레임을 생성한다(S714).
상기 현재의 패킷이 프레임의 마지막 패킷인가를 판단하는 단계(S702)에서, 마지막 패킷이 아니면 포인터를 갱신한다(S708).
이와 같이 하여, 인트라 프레임의 불필요한 생성을 방지한다.
상기한 인트라 프레임의 생성은 클라이언트간의 속도의 차이가 크지 않은 경우 적게 일어나게 되는데 속도의 차이가 큰 경우 그리고 보다 많은 클라이언트를 한 비디오서버가 지원하는 경우, 클라이언트의 속도에 따라 분류하여 그룹을 정하고 각 그룹에 한개의 동영상 압축기를 사용한다면 보다 효율적으로 인트라 프레임을 생성하게 된다.
즉, 한 그룹내에 있는 클라이언트의 속도는 비슷하기 때문에 그만큼 인트라 프레임의 생성이 줄게 되고, 더 나아가 복수개의 동영상 압축기가 있는 환경에서 각 그룹을 하나의 동영상 압축기가 있는 하나의 비디오서버로 생각하여 상술한 방법을 그대로 적용할 수가 있다.
동영상압축 방식의 비디오서버는 정지영상 압축방식의 비디오서버보다 높은 압축률을 가지고, 이것은 네트워크의 부하를 줄여 그 사용효율을 높여주게 된다.
그러나, 동영상압축 방식의 경우 부득이 서로 속도가 다른 클라이언트를 위해 인트라 프레임을 넣어주어야 하는데, 상기 인트라 프레임은 데이터량이 많아 그 생성에 있어 극히 제한적으로 생성하여야 한다.
본 발명에 따르면 속도가 느린 클라이언트를 위해 인트라 프레임을 생성을 제한하여 네트워크 자원을 효율적으로 사용할 수 있다.
도 1은 비디오서버와 클라이언트와의 관계를 나타낸 개략도이다.
도 2는 정지영상 압축 프레임 열을 나타내는 도면이다.
도 3은 동영상압축 프레임 열을 나타내는 도면이다.
도 4는 본 발명에 적용되는 비디오서버의 구성도이다.
도 5는 본 발명에 따른 패킷의 구성도이다.
도 6은 도 4에 나타낸 스트림 서버의 상세 구성도이다.
도 7은 본 발명에 따른 패킷 포인터의 관리 및 인트라 프레임의 생성방법을 나타내는 순서도이다.
<도면의 주요부분에 대한 부호의 설명>
101 : 비디오서버 102 : 네트워크
103a,103b,…,103n : 클라이언트
201 : 카메라 202 : 영상 획득기
203 : 동영상 압축기 203a : 압축기 버퍼
204 : 스트림 서버 204a,204b,…,204n : 패킷 버퍼
205 : 네트워크 인터페이스 205a,205b,…,205n : 소켓 버퍼
I : 인트라 프레임 P : 인터 프레임

Claims (6)

  1. 카메라, 영상 획득기, 동영상 압축기, 스트림 서버, 네트워크 인터페이스로 구성된 동영상압축 비디오서버와, 상기 비디오서버에 경로가 각각 다르게 연결된 다수의 클라이언트간에 패킷데이터를 처리하는 방법에 있어서;
    상기 스트림 서버는 동영상 압축기로부터 읽어 들인 압축영상 데이터를 네트워크 인터페이스로 전달하기 전에 패킷 단위로 구성하여 스트림 서버에 구비된 패킷버퍼에 모아두고, 상기 패킷버퍼는 전송해야 할 패킷의 위치를 가리키는 포인터와, 상기 포인터가 가르키는 위치의 패킷 정보가 복사되어 전송되는 네트워크 인터페이스의 소켓 버퍼를 할당함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법.
  2. 청구항 1에 있어서, 상기 각 클라이언트의 속도에 따라 동영상 압축기의 수 만큼 그룹을 형성함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법.
  3. 청구항 1에 있어서, 상기 패킷을 프레임 단위로 형성하고 프레임 단위의 데이터를 적어도 하나 혹은 다수의 패킷으로 구성하되, 마지막 프레임 데이터에서는 패킷 형성이 완료되도록 함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법.
  4. 청구항 1에 있어서, 상기 포인터 할당시 한 프레임의 마지막 패킷을 소켓 버퍼로 복사한 시점에서 포인터를 갱신함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법.
  5. 청구항 1에 있어서, 상기 포인터 할당시 클라이언트의 속도에 따라 현재의 포인터와 가장 빠른 포인터와의 거리를 확인하여 거리가 멀지 않으면 최근 인트라 프레임의 시작 패킷으로 포인터를 이동하여 포인터를 갱신함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법.
  6. 청구항 1 또는 청구항 5에 있어서, 상기 최근 인트라 프레임의 시작 패킷이 없는 경우, 스트림 서버에서 동영상 압축기로 인트라 프라임의 생성을 요구하여 인트라 프레임을 생성함을 특징으로 하는 비디오서버와 클라이언트간 패킷데이터 처리방법.
KR10-2002-0084028A 2002-12-26 2002-12-26 비디오서버와 클라이언트간 패킷데이터 처리방법 KR100494432B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2002-0084028A KR100494432B1 (ko) 2002-12-26 2002-12-26 비디오서버와 클라이언트간 패킷데이터 처리방법
US10/746,479 US20040168204A1 (en) 2002-12-26 2003-12-24 Method of processing packet data between video server and clients

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0084028A KR100494432B1 (ko) 2002-12-26 2002-12-26 비디오서버와 클라이언트간 패킷데이터 처리방법

Publications (2)

Publication Number Publication Date
KR20040058377A KR20040058377A (ko) 2004-07-05
KR100494432B1 true KR100494432B1 (ko) 2005-06-10

Family

ID=32866857

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0084028A KR100494432B1 (ko) 2002-12-26 2002-12-26 비디오서버와 클라이언트간 패킷데이터 처리방법

Country Status (2)

Country Link
US (1) US20040168204A1 (ko)
KR (1) KR100494432B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101136564B1 (ko) 2011-10-24 2012-04-19 이기택 Ssd를 사용한 vod 서비스 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006127510A2 (en) * 2005-05-21 2006-11-30 Kula Media Group Media distribution over a network
US8863208B2 (en) * 2012-06-18 2014-10-14 Micropower Technologies, Inc. Synchronizing the storing of streaming video
US11146991B2 (en) * 2017-06-29 2021-10-12 Sony Corporation Communication system and transmission apparatus

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058721B1 (en) * 1995-07-14 2006-06-06 Broadband Royalty Corporation Dynamic quality adjustment based on changing streaming constraints
US6138147A (en) * 1995-07-14 2000-10-24 Oracle Corporation Method and apparatus for implementing seamless playback of continuous media feeds
JP3653569B2 (ja) * 1997-01-30 2005-05-25 マイクロソフト コーポレーション ビデオをオン・デマンドでレンダリングするvcrに似た機能
US6859496B1 (en) * 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
US6289012B1 (en) * 1998-08-03 2001-09-11 Instanton Corporation High concurrency data download apparatus and method
US6526097B1 (en) * 1999-02-03 2003-02-25 Sarnoff Corporation Frame-level rate control for plug-in video codecs
DE60121930T2 (de) * 2000-04-08 2007-07-26 Sun Microsystems, Inc., Santa Clara Methode zum streamen einer einzelnen medienspur zu mehreren clients
US20020131496A1 (en) * 2001-01-18 2002-09-19 Vinod Vasudevan System and method for adjusting bit rate and cost of delivery of digital data
US6925501B2 (en) * 2001-04-17 2005-08-02 General Instrument Corporation Multi-rate transcoder for digital streams
KR100484148B1 (ko) * 2002-07-27 2005-04-18 삼성전자주식회사 개선된 비트율 제어 방법과 그 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101136564B1 (ko) 2011-10-24 2012-04-19 이기택 Ssd를 사용한 vod 서비스 방법

Also Published As

Publication number Publication date
US20040168204A1 (en) 2004-08-26
KR20040058377A (ko) 2004-07-05

Similar Documents

Publication Publication Date Title
CN111135569B (zh) 云游戏处理方法、装置、存储介质与电子设备
US7721117B2 (en) Stream control failover utilizing an attribute-dependent protection mechanism
KR102048898B1 (ko) 다중 경로 환경에서의 적응적 스트리밍 시스템 및 방법
JP4808925B2 (ja) 固定および移動システムにおいてサーバに多重記述符号化メディアストリームを配布する方法
US9015335B1 (en) Server side stream switching
US7975060B2 (en) Adaptive video delivery
US9497035B2 (en) Method, device, and system for playing media based on P2P
US7970935B2 (en) Network system, information processor, and information processing program recording medium
US20060184688A1 (en) System and Method for Parallel Indirect Streaming of Stored Media from Multiple Sources
US8370649B2 (en) Stream control failover utilizing an attribute-dependent protection mechanism
WO2020067592A1 (ko) 컨텐츠 인지 신경망을 이용하여 실시간으로 적응형 비디오를 전송하는 방법 및 장치
US20040034870A1 (en) Data streaming system and method
JP2009111605A (ja) 動画像データ送信方法、通信装置、及びプログラム
US9338204B2 (en) Prioritized side channel delivery for download and store media
CN112866746A (zh) 一种多路串流云游戏控制方法、装置、设备及存储介质
KR20220031120A (ko) 비디오 플레이백에서 예측-기반 드롭된 프레임 처리 로직
US9001701B1 (en) Priority assignment and signaling of scalable video in a switch based system
KR101438737B1 (ko) 멀티플 캐시 네트워크에서의 적응적 비디오 스트리밍 시스템 및 방법
JP2010028378A (ja) 通信装置及び通信方法
Yao et al. Video streaming adaptation strategy for multiview navigation over DASH
US20020147827A1 (en) Method, system and computer program product for streaming of data
JPWO2004040908A1 (ja) ストリーム・サーバ
KR100494432B1 (ko) 비디오서버와 클라이언트간 패킷데이터 처리방법
CN110708569A (zh) 一种视频处理方法、装置、电子设备及存储介质
Wang et al. TwinStar: A Practical Multi-path Transmission Framework for Ultra-Low Latency Video Delivery

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
FPAY Annual fee payment

Payment date: 20120601

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee