KR20150028948A - 비디오 스트림 전송장치 및 전송방법 - Google Patents

비디오 스트림 전송장치 및 전송방법 Download PDF

Info

Publication number
KR20150028948A
KR20150028948A KR20140096814A KR20140096814A KR20150028948A KR 20150028948 A KR20150028948 A KR 20150028948A KR 20140096814 A KR20140096814 A KR 20140096814A KR 20140096814 A KR20140096814 A KR 20140096814A KR 20150028948 A KR20150028948 A KR 20150028948A
Authority
KR
South Korea
Prior art keywords
packet
slice
transmission
retransmission
deadline
Prior art date
Application number
KR20140096814A
Other languages
English (en)
Other versions
KR101598441B1 (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 엘지디스플레이 주식회사
Publication of KR20150028948A publication Critical patent/KR20150028948A/ko
Application granted granted Critical
Publication of KR101598441B1 publication Critical patent/KR101598441B1/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/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
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • 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/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • 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/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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
    • 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/233Processing of audio elementary streams
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6583Acknowledgement

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명은 비디오 스트림에 포함된 프레임을 적어도 하나 이상의 슬라이스로 구분하는 슬라이스 생성부; 및 상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송하는 전송부를 포함하고, 상기 전송부는, 상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고 상기 패킷의 전송이 성공하면 다음 패킷을 전송하는 패킷 전송부; 및 상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷이 반복하여 전송되도록 제어하는 헤더 보호부를 포함하는 것을 특징으로 하는 비디오 스트림 전송 장치를 제공한다.

Description

비디오 스트림 전송장치 및 전송방법{Apparatus for transmission of encoded video stream and Method for the same}
본 발명은 비디오 스트림 전송장치 및 전송방법에 관한 것이다.
디지털 비디오를 재생하기 위해서는 일련된 스틸 이미지 또는 프레임을 일정한 비율로 디스플레이 해야 한다. 일정한 비율이랑 단위 시간 당 프레임의 수로 정의되는 fps 단위로 정의된다.
부드러운 비디오 재생을 위해서, 프레임은 일정한 제한이 따르는데, 구체적으로 네트워크 상의 딜레이 및 재생 상의 딜레이는 연속적인 프레임 사이에서 허용된 일정 시간 이하로 통제되어야 한다.
H.264 코덱은 높은 효율의 코딩 표준이다. 종래 비디오 압축기술과 같이, H.264는 비디오 시퀀스를 재건하기 위해 예측 방법을 사용한다. 이러한 예측 방법은 프레임 안에서 픽셀들 사이의 유사성에 따른 공간적 리던던시 및 인접한 프레임 안에서 픽셀들 사이의 유사성에 따른 템퍼럴 리던던시에 기인한다.
프레임은 매크로블록(macroblocks; MBs)의 집합으로 구분된다. 각각의 매크로블록은 인트라-코디드 또는 인터-코디드로 나뉠 수 있다. 인트라-코디드 매크로블록은 현재 프레임 정보를 통해 재건될 수 있다. 인터-코디드 매크로블록은 이전 프레임 정보 만으로 재건되거나, 이전 프레임 및 미래 프래임 정보를 통해 재건될 수 있다.
프레임은 다양한 형태의 매크로블록의 조합으로 구성될 수 있고, 예측을 위해 만들어진 레퍼런스의 형태에 따라 이름 지어질 수 있다. 예를 들어, 프레임은 B-프레임, P-프레임, 및 I-프레임으로 이름 지어질 수 있다.
인코디드 비디오는 일련의 픽처 그룹(group of pictures; GOP)을 포함한다. 픽처 그룹은 I-프레임, P-프레임, 및 B-프레임으로 명시된 픽처의 조합이다.
도 1은 종래 기술에 따른 비디오 스트림 전송장치에 있어서 픽처 그룹의 프레임 순서를 나타낸다. 도 1에서 화살표는 인접한 프레임으로부터 예측된 매크로블록의 소스를 나타낸다.
도 1에서 알 수 있듯이, I-프레임 및 P-프레임 만이 레퍼런스 프레임으로 이용된다. 그런데, 종래기술에 따른 비디오 압축에 따르면 프레임 간의 이러한 상호의존 때문에, 패킷 손실이 발생하는 경우 프레임을 통해 에러가 전파될 수 있는 문제가 있다.
종래 기술에 따른 H.264를 이용한 HD 비디오 프레임은 복수의 슬라이스로 나누어질 수 있다. 슬라이스는 슬라이스에 포함된 매크로블록의 종류에 따라 구분될 수 있다.
도 2는 종래 기술에 따른 H.264 비트스트림 신텍스의 체계적 구조를 나타내는 도면이다.
도 2에서도 알 수 있듯이, H.264는 실질적인 압축 비디오 정보를 포함하는 비디오 코딩 레이어(Video Coding Layer; VCL) 및 압축 데이터 및 패킷 기반 네트워크에 적합한 형태의 추가적 데이터를 포함하는 네트워크 앱스트랙션 레이어(Newtwork Abstraction Layer; NAL)를 포함한다.
네트워크 앱스트랙션 레이어는 일련의 NAL 유닛을 포함한다. NAL 유닛은 H.264에 의해 디코드될 수 있는 최소 유닛이다. 세가지 보통의 NAL 유닛은 시퀀스 파라미터 셋(Sequence Parameter Set; SPS), 픽처 파라미터 셋(Picture Parameter Sets; PPSs), 및 슬라이스(slices)이다.
SPS는 프로파일 및 코디드 비디오의 레벨과 같은 전체 비디오에 공통된 파라미터를 포함한다. 따라서, SPS 정보가 포함된 패킷이 유실되면 전체 비디오가 디코디드될 수 없다. PPS는 프레임 순서에 적용되는 파라미터를 포함한다. 따라서, 프레임 순서에 관한 PPS가 유실되면, 이러한 프레임은 디코디드 될 수 없다. 슬라이스는 프레임을 구성하기 위한 메인 유닛이고, 프레임은 적어도 하나의 슬라이스를 포함한다.
각각의 슬라이스는 매크로블록을 포함하는 비디오 데이터 다음에 슬라이스 헤더를 포함한다. 슬라이스 헤더는 슬라이스 안의 모든 매크로블록의 정보를 포함한다. 따라서, 슬라이스 헤더가 유실되면, 슬라이스 데이터가 수신되더라도 전체 슬라이스는 디코디드될 수 없다.
도 3A 및 도 3B는 종래기술에 따른 비디오 스트림 전송장치에 있어서 프레임의 패킷이 유실되는 경우의 문제를 나타내는 도면이다. 특히, 도 3A는 전송된 프레임의 원본이고, 도 3B는 일부 패킷이 유실된 채 수신된 프레임을 나타낸다.
도 3B에서 알 수 있듯이, 슬라이스 5번은 마지막 두 개의 패킷이 유실되었으나 슬라이스 헤더가 수신되었는 바 대부분의 슬라이스가 디코디드되었다. 그러나, 슬라이스 4번은 슬라이스 헤더가 유실되어 전체 슬라이스를 렌더링할 수 없다.
이와 같이, 종래 기술에 따른 비디오 압축에서 슬라이스 헤더가 유실되면 슬라이스 전체를 유실한 것과 같은 문제가 발생된다.
본 발명은 상술한 바와 같은 문제점을 해결하고자 고안된 것으로, 본 발명은 슬라이스 헤더를 우선 전송하는 비디오 스트림 전송장치 및 전송방법을 제공한다.
또한, 본 발명은 채널 상황을 측정하여, 재전송 제한을 적절하게 변경하는 비디오 스트림 전송장치 및 전송방법을 제공한다.
또한, 본 발명은 MAC 및 피지컬 레이어 파라미터를 이용하여 패킷 도착 시간을 측정하여, 이를 플레이 아웃 데드라인과 비교하여, 패킷의 드랍 여부를 결정하는 비디오 스트림 전송장치 및 전송방법을 제공한다.
본 발명은 상술한 바와 같은 목적을 달성하기 위해서, 비디오 스트림에 포함된 프레임을 적어도 하나 이상의 슬라이스로 구분하는 슬라이스 생성부; 및 상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송하는 전송부를 포함하고, 상기 전송부는, 상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고 상기 패킷의 전송이 성공하면 다음 패킷을 전송하는 패킷 전송부; 상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷이 반복하여 전송되도록 제어하는 헤더 보호부를 포함하는 것을 특징으로 하는 비디오 스트림 전송 장치를 제공한다.
또한 본 발명은 상술한 바와 같은 목적을 달성하기 위해서, 적어도 하나 이상의 슬라이스를 포함하는 프레임을 전송하는 비디오 스트림 전송방법에 있어서, 상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송하는 제1 단계; 및 상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고, 상기 패킷의 전송이 성공하면 다음 패킷을 전송하는 제2 단계를 포함하고, 상기 제2 단계는 상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷을 반복하여 전송하는 것을 특징으로 하는 비디오 스트림 전송방법을 제공한다.
본 발명에 따르면, 다음과 같은 효과를 얻을 수 있다.
본 발명은 슬라이스 헤더를 우선 전송하여 슬라으스 헤더의 전송률을 향상시킬 수 있는 비디오 스트림 전송장치 및 전송방법을 제공한다.
본 발명은 실시간으로 재전송 횟수를 조정하는 것을 제외하고 MAC 레이어 동작에 어떠한 수정도 필요하지 않으므로 기존 802.11 네트워크에 폭넓게 적용할 수 있는 효과가 있다.
본 발명은 또한, 비디오 스트림 전송에서 서비스 품질(Quality of Service; QoS)를 향상시킬 수 있는 효과가 있다.
도 1은 종래 기술에 따른 비디오 스트림 전송장치에 있어서 픽처 그룹의 프레임 순서를 나타낸다.
도 2는 종래 기술에 따른 H.264 비트스트림 신텍스의 체계적 구조를 나타내는 도면이다.
도 3a 및 도 3b는 종래기술에 따른 비디오 스트림 전송장치에 있어서 프레임의 패킷이 유실되는 경우의 문제를 나타내는 도면이다.
도 4는 본 발명에 따른 비디오 스트림 전송장치에 있어서 슬라이스를 리얼타임 프로토콜 패킷으로 파티션하는 것과 이에 상응하는 패킷 중요도의 차이를 나타내는 도면이다.
도 5는 본 발명에 따른 비디오 스트림 전송장치에 있어서 GOP 시퀀스에서 전송 및 재생 순서를 나타내는 도면이다.
도 6은 본 발명에 따른 비디오 스트림 전송장치에 있어서 슬라이스 보호를 위한 전송 스캠을 나타내는 도면이다.
도 7은 본 발명에 따른 비디오 스트림 전송장치에 있어서 슬라이스 보호를 위한 구조를 나타내는 도면이다.
도 8은 본 발명에 따른 비디오 스트림 전송장치의 일 실시예를 나타내는 도면이다.
도 9는 본 발명에 따른 비디오 스트림 전송장치에 포함된 전송부의 일 실시예를 나타내는 도면이다.
도 10은 본 발명에 따른 비디오 스트림 전송방법의 일 실시예를 나타내는 도면이다.
이하에서는 본 발명에 따른 비디오 스트림 전송장치 및 전송방법에 대하여 도면을 참조하여 상세하게 설명한다. 본 발명에 따른 비디오 스트림 전송장치 및 전송방법은 IEEE802.11 의 H.264 표준에 적용될 수 있으나 반드시 이에 한정되는 것은 아니다.
IEEE 802.11 분산 조정 함수(distributed coordination function; DCF)은 무선 네트워크의 엑세스 컨트롤인 MAC 프로토콜의 중요 메커니즘이다. 802.11 네트워크에서, 스테이션은 활동성을 위해 무선 매체를 모니터링한다. 스테이션은 타임 슬롯의 간격으로 매체를 모니터링한다. 매체가 TDIFS 로 정의된 기간에 휴지상태로 검출되면, 스테이션은 전송을 승인한다. 802.11 DCF의 주요한 시간 간격은 다음의 표 1과 같이 요약된다.
Figure pat00001
충돌을 피하기 위해, 지수 백오프(exponential backoff) 메커니즘은 경쟁 윈도우(contention window; CW)에서 선택되는 백오프 타임 슬롯(BO)으로 불리우기도 하는 랜덤 타임 슬롯을 채용한다.
경쟁 윈도우는 타임 슬롯 단위로 나누어지고 연속되는 충돌 마다 두 배씩 증가하는 미리 정해진 타임 인터벌이다. 경쟁 윈도우가 미리 설정된 최대값에 도달할 때, 경쟁 윈도우는 성공적인 전송이 발생하거나 패킷이 재전송 제한에 도달할 경우까지 그 값을 유지한다.
802.11 무선 네트워크에서 동작하는 모든 스테이션은 성공(success), 충돌(collision), 백오프(backoff), 및 연기(deferred)의 상태들을 포함한다. 상기 표 1의 기간을 포함하는 이러한 상태들은 링크 레이어 패킷의 엔드-투-엔드 딜레이에 영향을 주는 파라미터들의 세트를 공식화하기 위해 사용될 수 있다.
Figure pat00002
표 2는 모든 패킷 길이가 동일하다는 가정에서, 각 상태에서 시간 계산을 제공한다. 이러한 가정 하에서, 전송 시작부터 ACK를 수신할 것으로 예상되는 시간까지 패킷이 사용할 시간은 성공 및 충돌 시간과 동일하다.
물리적으로 ACK를 수신하는 것(성공)과 ACK를 수신하지 못하는 것(충돌) 사이에 구별이 이루어지며, 이러한 구별은 전체 패킷 딜레이를 예측하는데 사용되는 모델로 취급된다.
연기된 시간의 계산은 전송 중에 얼마나 오래 다른 스테이션이 매체를 붙잡고 있는지에 기반한다. 패킷의 길이가 갖다는 가정 하에 있기 때문에, 이 시간 간격은 다른 스테이션이 전송을 시작할 때 및 ACK를 수신할 것으로 예상하는 때를 의미한다. 그러므로 이 간격은 성공 및 충돌 시간에 사용되는 기간과 동일하다. CWr 은 r번째 재시도에서 경쟁윈도우의 값이다.
본 발명에 따른 비디오 스트림 전송장치 및 전송방법은 패킷 딜레이를 모니터링하고, 비트스트림 콘텐츠를 관찰하는 것으로 실행될 수 있다. 본 발명의 핵심적 부분은 802.11 무선 네트워크의 행동을 면밀하게 관할하는 것이다. 상기 행동은 MAC 계층으로부터 기인하는 패킷 딜레이를 측정할 수 있게 한다.
H.264의 비트스트림의 리얼타임 파싱은 패킷 중요도를 즉석에서(on the fly) 검출할 수 있도록 한다. 이러한 정보를 바탕으로, 열악한 네트워크 컨디션에서의 스페셜 패킷에 대한 MAC 재전송 제한은 비트스트림의 중요도에 따라 증가될 필요가 있다. 게다가, 일부 패킷은 해당 프레임 전송 데드라인을 지나 전송될 수도 있는 불필요한 전송을 피하기 위해 폐기될 수 있다.
802.11 무선 네트워크를 고려하기 위한 중요한 측정법은 성공(success), 충돌(collision), 백오프(backoff), 및 연기(deferred) 와 같은 네 가지 중요 단계에 기초한다.
각각의 단계는 전체 패킷 딜레이에 기여하는 특정한 딜레이 요소를 대표한다. 각각의 단계에 얼마나 긴 패킷이 있는지에 따른 러닝 평균은 예측의 목적에 따라 결정된다. 패킷 딜레이는 오직 성공적으로 수신된 패킷으로부터 측정될 수 있고, 드롭된 패킷의 딜레이는 알려지지 않는다는 것을 숙지하는 것은 중요한 일이다.
전송된 시간부터 성공을 알게된 시간까지의 토탈 딜레이는 세가지 메인 요소에 영향을 받는다. 첫째, 패킷을 전송할 때 일어난 충돌(Collisions)의 숫자. 둘째, 각각의 재전송 시도에서 백오프(Backoff) 슬롯 선택. 셋째, 얼마나 많은 스테이션(station)이 지연(deferred) 되었는지.
첫번째 두 요소는 충돌 숫자와 백오프 시간에 관련된 평균 딜레이를 결정하는데 사용된다. 마지막 요소는 얼마나 오래 다른 스테이션(station)이 미디엄(medium)을 붙잡고(seize) 있는지와 관련된 평균 딜레이를 얻는데 사용된다.
이러한 측정법은 다음과 같이 정의된다.
nc 는 비디오를 보낸 프라이머리 스테이션(the primary station)에서 발생한 충돌 숫자이고, BOr 은 재전송 시도 r을 위해 선택된 백오프 슬롯이고, ntx 는 프라이머리 스테이션이 ACK를 성공적으로 받기 전 다른 스테이션을 통한 전송 숫자일 때, 전체 패킷 딜레이(Tpkt delay)는 다음 수학식 1에 의해 정의된다.
Figure pat00003
상기 수학식 1의 요소는 802.11 MAC 레이어 동작의 4가지 주요 동작을 커버한다. 상기 4가지 주요 동작을 이하 상세하게 설명한다.
TBOr 은 r 번째 재전송과 관련된 백오프 딜레이를 의미한다. 다시 말하면, TBOr 는 BOrtslot 과 같다. 이때, BOr 은 다음과 같고, 상수 a는 표준에 따라 결정된다. 예를 들어, 802.11a 에서 a=16 이고, 802.11b 에서 b=32 이다.
Figure pat00004
Tbusy 는 다른 스테이션에 의해 매체(medium)가 소비한 시간을 의미한다. 이는 또한, 프라이머리 스테이션이 연기(deferral)한 것을 의미하거나, 상기 식에서 ntx 및 nc 의 사용을 각각 설명하는 충돌(collision)이 발생한 것을 의미할 수 있다.
일 실시예에 있어서, Tbusy 는 다음 과 같이 정의될 수 있다.
Figure pat00005
이때, Tframe, TSIFS, 및 TACK 는 상기 표 1에서 기술하고 있는 MAC 과 관련된 딜레이를 의미한다. Tsuccess 는 성공적인 패킷의 전송에 관련된 시간이고, 이는 Tbusy 와 동등하다. TDIFS는 MAC 과 관련된 기간으로, 다시 말해 각 전송 후에 재전송 시작 전 매체가 갖는 휴지기에 대한 기간이다.
한편, 상기 수학식 1은 이하의 수학식 2로 더욱 단순화할 수 있다.
Figure pat00006
디폴트 MAC 레이어 프로토콜에 있어서, 패킷은 최대 6번의 재전송을 수용할 수 있다(첫번째 전송을 포함하면 총 7번의 전송). 그러므로, 각각의 재전송 시도는 평균 딜레이를 갖는다. 평균 딜레이는 802.11 네트워크 동작을 수행하기 위해 거쳐야하는 과정과 관련된 딜레이다. 이러한 딜레이는 매 시도 당 평균 백오프 원도우 크기인 E[BOr] 및 다른 스테이션이 매체에 접속하기 위한 전송의 평균 숫자인 E[ntxr] 을 모니터링하는 것으로부터 얻어질 수 있다.
뿐만 아니라, 패킷의 전송이 성공하면, nc(nc=r) 값을 재전송의 최대값(디폴트에서 R=6)인 R 값 이하로 줄일 수 있다. 예측된 패킷 딜레이 E[Tpkt delay] 는 재전송된 숫자에 기초하여 다음 수학식 3과 같이 표현할 수 있다.
Figure pat00007
이때, tslot 은 타임 슬롯 간격을 의미하고(상기 표 2 참조), Tcollision 은 Tbusy 와 같다. 상기 수학식 3은 BOr, (E[BOr]), ntx, (E[ntx]) 의 평균값들에 기초한, 재전송 시도값 r에 따른 예상된 패킷 딜레이를 제공한다.
그러므로, 재전송 시도값 r에 따라 수학식 3에 의하여 예측된 값의 어레이가 생성된다.
본 발명에 따른 비디오 스트림 전송장치 및 전송방법은 프레임 크기 및 패킷의 중요도 차이를 고려할 수 있다. 그러나, 전처리 과정 없이는 프레임 크기 및 패킷의 중요도 차이를 이용할 수 없으므로, 이를 H.264 콘텐츠의 스트림에서 동적으로 추출해야 한다.
그러므로, 본 발명에 따른 비디오 스트림 전송장치 및 전송방법은 패킷 딜레이를 모니터링하기 위해 러닝 평균을 행하는 것과 패킷 데드라인을 경정하기 위해 프레임 크기의 평균을 추출하는 것과 같이 H.264 비트스트림을 실시간으로 처리한다.
도 3에서 알 수 있듯이, 개별 패킷의 중요도에는 차이가 있다. 슬라이스 헤더는 디코더에 있어서 가장 중요한 정보를 포함한다. 슬라이스 헤더가 유실되면, 디코더는 슬라이스를 재건할 수 없다. H.264에 의한 코딩의 가변 길이 사용은 이전 패킷의 전송을 성공적으로 하는 것 만큼이나 슬라이스 각각의 패킷도 중요하게 한다. 그러므로, 슬라이스에 포함된 패킷 중 어느 패킷이 유실되면, 모든 후속 패킷은 사용될 수 없는 정보를 전송하지 않도록 제거되어야 한다.
도 4는 본 발명에 따른 비디오 스트림 전송장치에 있어서 슬라이스를 리얼타임 프로토콜 패킷으로 파티션하는 것과 이에 상응하는 패킷 중요도의 차이를 나타내는 도면이다.
도 4에서 알 수 있듯이, 슬라이스 헤더를 포함하는 패킷의 중요도는 다른 패킷의 중요도에 비해 높다. 슬라이스 헤더가 유실되면 전체 슬라이스를 재건할 수 없기 때문에, 후속 패킷이 전송되더라도 후속 패킷에 포함된 정보는 사용될 수 없기 때문이다.
도 5는 본 발명에 따른 비디오 스트림 전송장치에 있어서 GOP 시퀀스에서 전송 및 재생 순서를 나타내는 도면이다.
도 5에서 알 수 있듯이, GOP 레벨에서 프레임은 디스플레이 순서와 다른 순서인 디코딩 순서에 따라 전송된다. 이는 모든 레퍼런스 프레임이 이에 상응하는 인터-프리딕티드 프레임 이전에 디코디드될 수 있도록 한다. 그러므로, 프레임 레벨에서도 역시, 정보는 중요도 순서로 정렬된다.
본 발명에 따른 비디오 스트림 전송장치 및 전송방법에 있어서, 스트림 비디오의 패킷 각각의 중요도를 추출하는 것이 중요하다. 중요도에 따라서 패킷의 순위를 매기는 전처리 기술은 비디오 스트리밍 중 재전송 제한을 결정하는데 사용될 수 있다. 그러나, 미리 인코딩된 H.264 비디오의 에러 전파 특성은 패킷 레벨에서 사용 가능하지 않다. 따라서, H.264 코덱의 NAL 유닛 구조가 보호 알고리즘을 개발하기 위해 사용된다. 보호 알고리즘은 비디오 콘텐츠의 특성을 모르더라도 부드러운 비디오 재생을 가능하게 한다.
본 발명은 도 4 에 따른 패킷 중요도를 고려하여, 압축 비디오의 슬라이스 레벨에서의 보호를 제공한다. 이러한 보호를 위해 프레임 데드라인인 Dframe 은 다음 수학식 4와 같이 정의된다.
Figure pat00008
이때, Tinit 는 리시버에서 비디오가 플레이되기 전에 발생되는 초기 스타트업 딜레이를 의미하고, nframe 은 현재 프레임의 프레임번호를 의미하고, λ는 프레임 주기 또는 재생되는 프레임 사이의 인터벌을 의미한다. 한편, Tinit 은 지터 타임으로 인용되기도 하며, 지터 버퍼로 인용될 수 있다.
그러나, 큰 초기 시작 시간은 더 많은 용량의 버퍼를 요구하며, 리얼 타임의 특성을 상쇄시킬 수 있다.
비디오를 인코드하기 위해 복수의 슬라이스가 사용될 때, 슬라이스의 데드라인은 다음 수학식 5와 같이 정의될 수 있다.
Figure pat00009
Nslice 는 프레임 당 슬라이스의 개수이다. 슬라이스 각각의 상대적인 중요성이 알려지지 않았기 때문에, 프레임 주기는 프레임에 포함된 모든 슬라이스에 균등하게 분배된다.
도 6은 본 발명에 따른 비디오 스트림 전송장치에 있어서 슬라이스 보호를 위한 전송 스캠을 나타내는 도면이다.
도 6에서 알 수 있듯이, 본 발명은 다음과 같은 특성으로 슬라이스를 보호한다.
1. 슬라이스 헤더를 포함하는 패킷은 다음 수학식 6을 만족하는 범위에서 반복하여 전송된다.
Figure pat00010
이때, tslice 는 슬라이스 전송이 시작된 시간을 나타낸다. Tslc - hdr delay 는 수학식 1로부터 얻어지며, 슬라이스 헤더를 포함하는 패킷의 딜레이를 나타낸다. nover 는 패킷이 재전송 제한을 초과한 횟수를 나타낸다.
본 발명에 따른 슬라이스 보호 알고리즘은 슬라이스 헤더를 포함하는 패킷이 재전송 제한 횟수를 초과하더라도 동일한 패킷을 전송하도록 한다.
MAC 레이어 동작은 들어오는 패킷을 새로운 것으로 간주하고, CW = CWmin = a2r-1 의 조건으로 전송을 시작한다. 덧붙여, UDP(User Datagram Protocol) 의 경우에서와 같이, 상위 레이어로의 MAC 재전송 타임아웃 알림은 무시될 수도 있다. 이러한 추가적 기회는 본질적으로 H.264 의 슬라이스 헤더를 포함하는 패킷의 높은 보호율을 제공한다. 나아가, 추가된 보호는 MAC 레이어의 DCF 동작의 어떠한 변형 없이도 제공될 수 있다.
2. 슬라이스 헤더를 포함하는 헤더 패킷의 추가적인 전송은 슬라이스의 예상 최종 패킷의 재전송 제한을 1(예를 들어)로 줄임으로 보상된다. 슬라이스 당 패킷의 수를 미리 알 수 없음을 감안할 때, 예측은 동적으로 취득한 통계 정보에 의해 수행되어야 한다.
3. 슬라이스 헤더가 성공적으로 전송될 때까지 상기 1, 2 스텝을 반복한다. 스텝 2에 있어서, 패킷은 슬라이스 끝에서 반대 순서로 통과된다.
4. 슬라이스의 나머지 패킷은 새롭게 계산된 슬라이스 패킷 당 데드라인에 따라 전송된다. 만약 슬라이스 헤더가 성공적으로 전송되고 상기 수학식 6의 조건을 만족했다면, 슬라이스 데드라인 전까지 남은 시간인 tremaining 은 다음 수학식 7로 나타낼 수 있다.
Figure pat00011
상기 수학식을 이용하여 이하 수학식 8에 의해서 패킷 데드라인 당 남은 시간을 계산할 수 있다.
Figure pat00012
이때, npkt 은 슬라이스에 있는 패킷의 개수이다. 슬라이스 헤더 뒤에 따라오는 패킷의 재전송 제한은 다음 수학식 9와 같이 선택된다.
Figure pat00013
E[Tdelayr ] 은 상기 수학식 3에서 정의되며, r번째 재전송에 대한 평균 딜레이를 나타낸다.
5. 수학식 3에서 정의된 바와 같이 E[Tpkt delay] 는 현재 전송 중인 패킷의 예측된 딜레이이다. 만약 E[Tpkt delay] 가 tremaining 보다 크면, 데드라인 위반이 발생하고, 패킷은 슬라이스의 후속 패킷과 함께 드롭된다.
도 6과 같은 슬라이스 보호 전송을 위해서는 몇 가지 중요한 사항이 고려되어야 한다. 정확한 슬라이스 당 패킷의 숫자가 알려져있지 않기 때문에, 이를 예측해야만 한다. 이러한 예측은 스트리밍하는 동안 슬라이스 타입(IDR, I, P and B)에 따른 패킷의 평균 숫자를 저장하고, 현재 전송 중인 슬라이스를 위한 추정치로 평균 숫자를 사용하는 것으로 이루어질 수 있다.
4 스텝에서 슬라이스 마지막의 패킷은 패킷 데드라인에 대한 계산에 고려되지 않으므로 무시한다. 이것으로 인해 슬라이스 헤더를 포함하는 슬라이스 시작에 있는 패킷에 대한 시간을 벌 수 있지만, 동시에 마지막 패킷이 전송에 성공하도록 하는 것도 가능하다. 패킷 당 평균 딜레이는 재전송 조정에 고려되기 때문이다.
게다가, tremaining 은 지속적으로 다음 수학식 10에 의해 계산되어진다.
Figure pat00014
이때, t 는 현재 시간이고, Dslice 는 수학식 5에서 계산된 슬라이스 데드라인이다.
결과적으로, 재전송 제한을 낮은 값으로 세팅하고, 백오프 딜레이와 관련된 대기 시간을 줄이는 것으로 인하여 슬라이스 헤더의 전송은 훌륭하게 튜닝될 수 있다.
도 7은 본 발명에 따른 비디오 스트림 전송장치에 있어서 슬라이스 보호를 위한 구조를 나타내는 도면이다.
도 7에서 알 수 있듯이, 본 발명에 따른 비디오 스트림 전송장치 및 전송방법 의 구현은 네트워크 및 링크 레이어 사이의 인터페이스에 형성될 수 있다. 재시도 할당 모듈은 네트워크 인터페이스 카드(NIC)로부터 DCF 파라미터를 수집하고, H.264 비트스트림을 파싱하는 슬라이스 사이즈 카운터로부터 슬라이스 정보를 수집하고, GOP 길이 카운터로부터 GOP 정보를 수집하는 시스템에 포함된다. 재시도 할당 모듈은 상응하는 패킷 당 재전송 제한을 세팅하기 위한 데드라인 계산을 적용한다. NIC에 포함된 두개의 블록은 전송된 패킷 및 전송된 패킷에 할당된 최대 재전송 제한(Maximum Retry Limit; MRL)을 나타낸다.
<실시예>
이하, 본 발명에 따른 비디오 스트림 전송장치의 일 실시예에 대하여 설명한다.
도 8은 본 발명에 따른 비디오 스트림 전송장치의 일 실시예를 나타내는 도면이다.
도 8에서 알 수 있듯이, 본 발명에 따른 비디오 스트림 전송장치는 슬라이스 생성부, 전송부, 패킷 데드라인 연산부, 및 재전송 횟수 연산부를 포함한다.
슬라이스 생성부는 비디오 스트림에 포함된 프레임을 적어도 하나 이상의 슬라이스로 구분한다. 프레임은 복수의 슬라이스를 포함하고, 슬라이스는 복수의 매크로블록을 포함한다.
슬라이스는 슬라이스 헤더 및 슬라이스 데이터로 구분될 수 있고, 슬라이스 헤더는 슬라이스에 포함된 모든 매트로블록에 공통인 정보를 포함한다. 따라서, 슬라이스 헤더가 유실되면, 슬라이스 데이터가 수신되더라도 슬라이스 전체가 디코드될 수 없다.
슬라이스는 종류에 따라 I슬라이스, P슬라이스, B슬라이스,SP슬라이스, 및 SI슬라이스로 구분될 수 있다.
전송부는 상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송한다.
일 실시예에 있어서, 상기 슬라이스 데드라인은 슬라이스의 종류에 따라 다르게 설정될 수 있다.
도 9는 본 발명에 따른 비디오 스트림 전송장치에 포함된 전송부의 일 실시예를 나타내는 도면이다.
도 9에서 알 수 있듯이, 본 발명에 따른 비디오 스트림 전송장치의 전송부는 패킷 전송부, 헤더 보호부, 및 에크 수신부를 포함한다.
패킷 전송부는 상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고 상기 패킷의 전송이 성공하면 다음 패킷을 전송한다. 일 실시예에 있어서, 상기 재전송 제한 횟수는 6번 일 수 있고, 이 경우 패킷 전송부는 하나의 패킷 당 처음으로 패킷을 전송한 1회를 포함하며 총 7회의 전송을 수행할 수 있다.
헤더 보호부는 상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷이 반복하여 전송되도록 제어한다.
일 실시예에 있어서, 헤더 보호부는 재전송 제한 횟수에 도달한 헤더 패킷의 전송이 실패한 경우, 재전송 제한 횟수를 0으로 리셋할 수 있다. 패킷 전송부는 재전송 제한 횟수가 리셋된 헤더 패킷에 대해 전송을 재게한다.
에크 수신부는 상기 패킷의 전송 성공 여부를 판단하는 ACK 신호를 수신한다.
패킷 데드라인 연산부는 상기 슬라이스의 전송 중에 미전송된 잔여 패킷의 패킷 당 전송 제한시간인 패킷 데드라인을 동적으로 산출하되, 상기 패킷 데드라인은 잔여시간을 재전송 변수로 나누어 산출한다.
이때, 상기 잔여시간은 상기 슬라이스 데드라인에서 상기 헤더 패킷을 전송하는데 소요된 시간을 차감한 값이고, 상기 재전송 변수는 상기 패킷의 재전송 횟수를 이용하여 산출된 값이다.
일 실시예에 있어서, 상기 패킷 데드라인(Dpkt)은 이하의 수학식에 의해 산출될 수 있다.
Figure pat00015
이때, Dslice 는 상기 슬라이스 데드라인이고, tremaining 은 상기 잔여시간이고, npkt 은 상기 슬라이스에 포함된 패킷의 개수이고, nover 는 상기 재전송 제한 횟수가 초과된 횟수이다.
재전송 횟수 연산부는 상기 패킷 전송 중 발생된 재전송 횟수를 이용하여 예측된 예상 패킷 딜레이 E[Tpkt delayr] 가 패킷 당 전송 제한시간인 패킷 데드라인 이하가 되는 조건을 만족하도록 상기 재전송 제한 횟수를 동적으로 재설정한다.
일 실시예에 있어서, 상기 예상 패킷 딜레이는 이하의 수학식에 의해 산출될 수 있다.
Figure pat00016
이때, Tsuccess 는 성공적인 패킷의 전송에 소요된 시간이고, E[BOr] 는 매 시도 당 평균 백오프 원도우 크기이고, E[ntxr]는 다른 스테이션이 매체에 접속하기 위한 전송의 평균 숫자이고, tslot 은 타임 슬롯 간격이고, r은 재전송 시도 횟수이고, Tcollision 은 충돌에의해 소요된 시간이고, TDIFS는 전송 후 재전송 시작 전 매체가 갖는 휴지기에 대한 시간이고, Tbusy 는 다른 스테이션에 의해 매체(medium)가 소비한 시간이다.
이하, 본 발명에 따른 비디오 스트림 전송방법의 일 실시예에 대하여 설명한다.
비디오 스트림 전송방법은 우선, 상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송한다.
다음, 상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고, 상기 패킷의 전송이 성공하면 다음 패킷을 전송한다. 이때, 상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷을 반복하여 전송한다.
이를 구체적으로 설명하기 위해 도 10을 참조하면 다음과 같다.
도 10은 본 발명에 따른 비디오 스트림 전송방법의 일 실시예를 나타내는 도면이다.
도 10에서 알 수 있듯이, 우선, 상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되, 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송한다(S1100).
다음, 패킷 전송이 성공했는지 여부를 판단하여(S1210), 패킷 전송이 성공하면 다음 패킷을 전송한다(S1300). 만약 패킷 전송이 실패하면, 재전송 횟수를 1회 증가시다(S1220).
다음, 재전송 제한 횟수를 초과했는지 여부를 판단한다(S1230). 재전송 제한 횟수를 초과하지 않은 경우 패킷을 재전송한다(S1100). 재전송 제한 횟수를 초과한 경우 상기 패킷이 슬라이스 헤더를 포함하는 헤더 패킷인지 여부를 판단한다(S1240).
상기 패킷이 헤더 패킷인 경우, 재전송 횟수를 리셋하고(S1250) 헤더 패킷을 재전송한다(S1100). 상기 패킷이 헤더 패킷이 아닌 경우, 해당 패킷을 드롭하고 다음 패킷을 전송한다(S1300).
본 발명에 따른 비디오 스트림 전송방법은 상기 슬라이스의 전송 중에 미전송된 잔여 패킷의 패킷 당 전송 제한시간인 패킷 데드라인을 동적으로 산출하되, 상기 패킷 데드라인은 잔여시간을 재전송 변수로 나누어 산출하는 단계를 더 포함할 수 있다. 이때, 상기 잔여시간은 상기 슬라이스 데드라인에서 상기 헤더 패킷을 전송하는데 소요된 시간을 차감한 값이고, 상기 재전송 변수는 상기 패킷의 재전송 횟수를 이용하여 산출된 값이다.
일 실시예에 있어서, 상기 패킷 데드라인(Dpkt)은 이하의 수학식에 의해 산출될 수 있다.
Figure pat00017
이때, Dslice 는 상기 슬라이스 데드라인이고, tremaining 은 상기 잔여시간이고, npkt 은 상기 슬라이스에 포함된 패킷의 개수이고, nover 는 상기 재전송 제한 횟수가 초과된 횟수이다.
또한, 본 발명에 따른 비디오 스트림 전송방법은 상기 패킷 전송 중 발생된 재전송 횟수를 이용하여 예측된 예상 패킷 딜레이 E[Tpkt delayr] 가 패킷 당 전송 제한시간인 패킷 데드라인 이하가 되는 조건을 만족하도록 상기 재전송 제한 횟수를 동적으로 재설정하는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 상기 예상 패킷 딜레이는 이하의 수학식에 의해 산출될 수 있다.
Figure pat00018
이때, Tsuccess 는 성공적인 패킷의 전송에 소요된 시간이고, E[BOr] 는 매 시도 당 평균 백오프 원도우 크기이고, E[ntxr]는 다른 스테이션이 매체에 접속하기 위한 전송의 평균 숫자이고, tslot 은 타임 슬롯 간격이고, r은 재전송 시도 횟수이고, Tcollision 은 충돌에의해 소요된 시간이고, TDIFS는 전송 후 재전송 시작 전 매체가 갖는 휴지기에 대한 시간이고, Tbusy 는 다른 스테이션에 의해 매체(medium)가 소비한 시간이다.
본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 구성을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해하여야 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 - 비디오 스트림 전송장치
200 - 슬라이스 생성부
300 - 전송부
310 - 패킷 전송부
320 - 헤더 보호부
330 - 에크 수신부
400 - 패킷 데드라인 연산부
500 - 재전송 횟수 연산부

Claims (10)

  1. 비디오 스트림에 포함된 프레임을 적어도 하나 이상의 슬라이스로 구분하는 슬라이스 생성부; 및
    상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송하는 전송부를 포함하고,
    상기 전송부는,
    상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고 상기 패킷의 전송이 성공하면 다음 패킷을 전송하는 패킷 전송부; 및
    상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷이 반복하여 전송되도록 제어하는 헤더 보호부를 포함하는 것을 특징으로 하는 비디오 스트림 전송 장치.
  2. 제1항에 있어서,
    상기 슬라이스의 전송 중에 미전송된 잔여 패킷의 패킷 당 전송 제한시간인 패킷 데드라인을 동적으로 산출하되, 상기 패킷 데드라인은 잔여시간을 재전송 변수로 나누어 산출하는 패킷 데드라인 연산부를 포함하고,
    상기 잔여시간은 상기 슬라이스 데드라인에서 상기 헤더 패킷을 전송하는데 소요된 시간을 차감한 값이고,
    상기 재전송 변수는 상기 패킷의 재전송 횟수를 이용하여 산출된 값인 것을 특징으로 하는 비디오 스트림 전송장치.
  3. 제2항에 있어서,
    상기 패킷 데드라인(Dpkt)은 이하의 수학식에 의해 산출되고,
    Figure pat00019

    이때, Dslice 는 상기 슬라이스 데드라인이고, tremaining 은 상기 잔여시간이고, npkt 은 상기 슬라이스에 포함된 패킷의 개수이고, nover 는 상기 재전송 제한 횟수가 초과된 횟수인 것을 특징으로 하는 비디오 스트림 전송장치.
  4. 제1항에 있어서,
    상기 패킷 전송 중 발생된 재전송 횟수를 이용하여 예측된 예상 패킷 딜레이 E[Tpkt delayr] 가 패킷 당 전송 제한시간인 패킷 데드라인 이하가 되는 조건을 만족하도록 상기 재전송 제한 횟수를 동적으로 재설정하는 재전송 횟수 연산부를 포함하는 것을 특징으로 하는 비디오 스트림 전송장치.
  5. 제4항에 있어서,
    상기 예상 패킷 딜레이는 이하의 수학식에 의해 산출되고,
    Figure pat00020

    이때, Tsuccess 는 성공적인 패킷의 전송에 소요된 시간이고, E[BOr] 는 매 시도 당 평균 백오프 원도우 크기이고, E[ntxr]는 다른 스테이션이 매체에 접속하기 위한 전송의 평균 숫자이고, tslot 은 타임 슬롯 간격이고, r은 재전송 시도 횟수이고, Tcollision 은 충돌에의해 소요된 시간이고, TDIFS는 전송 후 재전송 시작 전 매체가 갖는 휴지기에 대한 시간이고, Tbusy 는 다른 스테이션에 의해 매체(medium)가 소비한 시간인 것을 특징으로 하는 비디오 스트림 전송장치.
  6. 제1항에 있어서,
    상기 슬라이스 데드라인은 슬라이스의 종류에 따라 다르게 설정되는 것을 특징으로 하는 비디오 스트림 전송장치.
  7. 제1항에 있어서,
    상기 전송부는 상기 패킷의 전송 성공 여부를 판단하는 에크 수신부를 포함하는 것을 특징으로 하는 비디오 스트림 전송장치.
  8. 적어도 하나 이상의 슬라이스를 포함하는 프레임을 전송하는 비디오 스트림 전송방법에 있어서,
    상기 슬라이스가 전송되어야 하는 제한 시간인 슬라이스 데드라인 안에 상기 슬라이스를 패킷 단위로 전송하되 상기 패킷 중 상기 슬라이스를 재건하기 위해 필요한 정보를 포함하는 슬라이스 헤더가 포함된 헤더 패킷을 우선하여 전송하는 제1 단계; 및
    상기 패킷의 전송이 실패하면 미리 정해진 재전송 제한 횟수 이내에서 상기 패킷을 재전송하고, 상기 패킷의 전송이 성공하면 다음 패킷을 전송하는 제2 단계를 포함하고,
    상기 제2 단계는 상기 헤더 패킷의 재전송 횟수가 상기 재전송 제한 횟수를 초과하더라도 상기 슬라이스 데드라인 안에서 상기 헤더 패킷을 반복하여 전송하는 것을 특징으로 하는 비디오 스트림 전송방법.
  9. 제8항에 있어서,
    상기 슬라이스의 전송 중에 미전송된 잔여 패킷의 패킷 당 전송 제한시간인 패킷 데드라인을 동적으로 산출하되, 상기 패킷 데드라인은 잔여시간을 재전송 변수로 나누어 산출하는 단계를 더 포함하고,
    상기 잔여시간은 상기 슬라이스 데드라인에서 상기 헤더 패킷을 전송하는데 소요된 시간을 차감한 값이고,
    상기 재전송 변수는 상기 패킷의 재전송 횟수를 이용하여 산출된 값인 것을 특징으로 하는 비디오 스트림 전송방법.
  10. 제9항에 있어서,
    상기 패킷 전송 중 발생된 재전송 횟수를 이용하여 예측된 예상 패킷 딜레이 E[Tpkt delayr] 가 패킷 당 전송 제한시간인 패킷 데드라인 이하가 되는 조건을 만족하도록 상기 재전송 제한 횟수를 동적으로 재설정하는 단계를 더 포함하는 것을 특징으로 하는 비디오 스트림 전송방법.
KR1020140096814A 2013-09-06 2014-07-29 비디오 스트림 전송장치 및 전송방법 KR101598441B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/020,013 US9231993B2 (en) 2013-09-06 2013-09-06 Apparatus for transmitting encoded video stream and method for transmitting the same
US14/020,013 2013-09-06

Publications (2)

Publication Number Publication Date
KR20150028948A true KR20150028948A (ko) 2015-03-17
KR101598441B1 KR101598441B1 (ko) 2016-03-02

Family

ID=52625571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140096814A KR101598441B1 (ko) 2013-09-06 2014-07-29 비디오 스트림 전송장치 및 전송방법

Country Status (3)

Country Link
US (1) US9231993B2 (ko)
KR (1) KR101598441B1 (ko)
CN (1) CN104427405B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6300114B2 (ja) * 2014-08-06 2018-03-28 パナソニックIpマネジメント株式会社 送信方法、受信方法、送信装置及び受信装置
EP3073680B1 (en) * 2015-03-23 2017-12-06 Alcatel Lucent Methods, queueing system, network element and network system for queueing and processing of packets
US20170149674A1 (en) * 2015-11-23 2017-05-25 Qualcomm Incorporated Setting a lifetime limit of a data packet to minimize congestion and contention
CN107135216B (zh) * 2017-05-03 2020-12-04 深圳市小溪流科技有限公司 一种加强弱网环境流媒体传输方法
US10917497B2 (en) * 2019-03-27 2021-02-09 Wangsu Science & Technology Co., Ltd. Method, system, device and server for determining transmission quality of node

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010052823A (ko) * 1999-04-13 2001-06-25 이데이 노부유끼 영상 처리 장치 및 방법 및 매체
US20060262718A1 (en) * 2002-09-10 2006-11-23 Koninklijke Philips Electrontcs N.V. Real-time retry limit-a system and method to maximize throughput and minimize packet loss of wireless local area networks
US20090193484A1 (en) * 2008-01-03 2009-07-30 Nec Laboratories America, Inc. Adaptive scheduling of streaming video over wireless networks

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108713A (en) * 1997-02-11 2000-08-22 Xaqti Corporation Media access control architectures and network management systems
US6661422B1 (en) * 1998-11-09 2003-12-09 Broadcom Corporation Video and graphics system with MPEG specific data transfer commands
US6608630B1 (en) * 1998-11-09 2003-08-19 Broadcom Corporation Graphics display system with line buffer control scheme
US7446774B1 (en) * 1998-11-09 2008-11-04 Broadcom Corporation Video and graphics system with an integrated system bridge controller
US6636222B1 (en) * 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
US7031259B1 (en) * 2000-05-26 2006-04-18 Bigband Networks, Inc. Method and system for scheduling a transmission of compressible and non-compressible packets
AU2001284663A1 (en) * 2000-07-21 2002-02-18 Aperto Networks, Inc. Integrated, self-optimizing, multi-parameter/multi-variable point-to-multipoint communication system (ii)
US7969997B1 (en) * 2005-11-04 2011-06-28 The Board Of Trustees Of The Leland Stanford Junior University Video communications in a peer-to-peer network
FR2908576A1 (fr) * 2006-11-14 2008-05-16 Canon Kk Procede,dispositif et application logicielle d'ordonnancement d'une transmission de paquets d'un flux de donnees
US20090103635A1 (en) * 2007-10-17 2009-04-23 Peshala Vishvajith Pahalawatta System and method of unequal error protection with hybrid arq/fec for video streaming over wireless local area networks
US8730930B2 (en) * 2011-05-31 2014-05-20 Broadcom Corporation Polling using B-ACK for occasional back-channel traffic in VoWIFI applications
GB2498992B (en) * 2012-02-02 2015-08-26 Canon Kk Method and system for transmitting video frame data to reduce slice error rate
JP6361866B2 (ja) * 2013-05-09 2018-07-25 サン パテント トラスト 画像処理方法および画像処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010052823A (ko) * 1999-04-13 2001-06-25 이데이 노부유끼 영상 처리 장치 및 방법 및 매체
US20060262718A1 (en) * 2002-09-10 2006-11-23 Koninklijke Philips Electrontcs N.V. Real-time retry limit-a system and method to maximize throughput and minimize packet loss of wireless local area networks
US20090193484A1 (en) * 2008-01-03 2009-07-30 Nec Laboratories America, Inc. Adaptive scheduling of streaming video over wireless networks

Also Published As

Publication number Publication date
US20150071284A1 (en) 2015-03-12
CN104427405A (zh) 2015-03-18
CN104427405B (zh) 2018-01-09
KR101598441B1 (ko) 2016-03-02
US9231993B2 (en) 2016-01-05

Similar Documents

Publication Publication Date Title
KR101598441B1 (ko) 비디오 스트림 전송장치 및 전송방법
Kurdoglu et al. Real-time bandwidth prediction and rate adaptation for video calls over cellular networks
US9521685B2 (en) Circuit arrangement and method of determining a priority of packet scheduling
KR100657314B1 (ko) 멀티미디어 스트리밍 송신 장치 및 방법
Lie et al. Evalvid-RA: trace driven simulation of rate adaptive MPEG-4 VBR video
Chen et al. Cross-layer packet retry limit adaptation for video transport over wireless LANs
US8566662B2 (en) Transmission apparatus, receiving apparatus, and method
US9380351B2 (en) Apparatus for transmitting encoded video stream and method for transmitting the same
US9565482B1 (en) Adaptive profile switching system and method for media streaming over IP networks
JP2001274861A (ja) データ伝送方法および装置
KR20150052826A (ko) 통신 네트워크에서 강화된 체감 품질을 위해 클라이언트 측 비디오 버퍼 점유율을 사용하기 위한 방법 및 시스템
TW201304480A (zh) 用於串流媒體的動態無線通道選擇與協定控制方法
US20170094294A1 (en) Video encoding and decoding with back channel message management
US10230651B2 (en) Effective intra-frame refresh in multimedia communications over packet networks
CN106162199B (zh) 带反向信道消息管理的视频处理的方法和系统
JP2010016813A5 (ko)
KR102118678B1 (ko) 부호화된 비디오 스트림 전송 장치 및 방법
CN107566795A (zh) 一种提高实时画面流畅度的方法、装置及系统
US8904024B2 (en) System and method for low delay fast update for video streaming
CN113473185B (zh) 基于视频流关键帧突发特性的可用带宽探测方法及装置
Wang et al. Priority and delay aware packet management framework for real-time video transport over 802.11 e WLANs
US20230082211A1 (en) Methods and devices for controlling a transmission of a video stream
JP2015050591A (ja) 情報処理装置、情報処理方法およびプログラム
Wei et al. Prioritized retransmission for error protection of video streaming over WLANs
Yao et al. Video streaming transmission: performance modelling over wireless local area networks under saturation condition

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: 20190114

Year of fee payment: 4