KR102192584B1 - 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템 - Google Patents

무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템 Download PDF

Info

Publication number
KR102192584B1
KR102192584B1 KR1020190044347A KR20190044347A KR102192584B1 KR 102192584 B1 KR102192584 B1 KR 102192584B1 KR 1020190044347 A KR1020190044347 A KR 1020190044347A KR 20190044347 A KR20190044347 A KR 20190044347A KR 102192584 B1 KR102192584 B1 KR 102192584B1
Authority
KR
South Korea
Prior art keywords
encoder
image
encoders
time
encoding
Prior art date
Application number
KR1020190044347A
Other languages
English (en)
Other versions
KR20200121596A (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 KR1020190044347A priority Critical patent/KR102192584B1/ko
Priority to PCT/KR2019/004613 priority patent/WO2020213752A1/ko
Publication of KR20200121596A publication Critical patent/KR20200121596A/ko
Application granted granted Critical
Publication of KR102192584B1 publication Critical patent/KR102192584B1/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/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
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • 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/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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23113Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
    • 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/2368Multiplexing of audio and 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
    • H04N21/2385Channel allocation; Bandwidth allocation
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2404Monitoring of server processing errors or hardware failure
    • 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/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템에 관한 것이다. 본 발명에 따르면, 영상을 엔코딩 처리하는 엔코딩 다중화 시스템에 있어서, 동일 채널의 영상을 이중 송출하는 방송 장치로부터 수신된 영상을 엔코딩하여 프레임 단위로 실시간 전송하되, 설정 시점에 영상의 엔코딩을 동시에 시작하고, 동일 시간에 동일 프레임을 전송하도록 각 프레임에 타임 스탬프를 부여하고 영상을 동일 방식으로 엔코딩하여 실시간 전송하는 제1 및 제2 엔코더, 및 상기 제1 및 제2 엔코더로부터 영상을 수신하여 메모리에 각각 저장하며, 상기 제1 및 제2 엔코더 중 우선 순위에 있는 제1 엔코더의 영상을 상기 메모리에 버퍼링하면서 재생기로 실시간 스트리밍 전송하는 동시에, 제2 엔코더의 영상을 메모리에서 삭제시키는 스트리밍 서버를 포함하는 엔코딩 다중화 시스템을 제공한다.
본 발명에 따르면, 동일 채널의 영상에 대해 두 개의 엔코더를 지원하는 엔코더 이중화 구조를 기반으로 해당 채널의 라이브 영상을 끊김 없이 스트리밍 서비스할 수 있다.

Description

무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템{High Available Multi Encoder system for non-stop live video transmission}
본 발명은 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템에 관한 것으로서, 보다 상세하게는 엔코더의 이중화를 이용하여 라이브 영상을 끊김 없이 재생기로 제공할 수 있는 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템에 관한 것이다.
일반적으로 영상, 음악 등의 미디어 컨텐츠는 인터넷을 통하여 복수의 사용자 단말에 의해 액세스되어 이용되고 있다.
최근 들어 통신 환경의 발달, 콘텐츠의 다양화, 다양한 영상 서비스의 등장, 서비스 연령층의 세분화 등으로 인해 라이브 방송 스트리밍 서비스의 수요 역시 점차 증가하는 추세이다.
일반적으로 재생기 등의 사용자 단말은 스트리밍 서버에 접속하여 원하는 채널의 영상을 실시간 스트리밍 서비스 받는다. 스트리밍 서버는 엔코더로부터 해당 채널에 대한 엔코딩된 영상을 전달받아 재생기로 전달한다.
그런데, 통신 오류나 접속 장애, 장비 고장 등으로 인하여 엔코더와 스트리밍 서버 간 접속이 중단된 경우 재생기는 더이상 영상을 전송받을 수 없게 된다. 따라서, 고장 및 오류에 강건하면서 영상을 끊김 없이 스트리밍할 수 있는 새로운 시스템이 요구된다.
본 발명의 배경이 되는 기술은 한국공개특허 제2016-00135461호(2016.11.28 공개)에 개시되어 있다.
본 발명은 엔코더를 이중화하여 라이브 영상을 끊김 없이 스트리밍 서비스할 수 있는 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템을 제공하는데 목적이 있다.
본 발명은, 영상을 엔코딩 처리하는 엔코딩 다중화 시스템에 있어서, 동일 채널의 영상을 이중 송출하는 방송 장치로부터 수신된 영상을 엔코딩하여 프레임 단위로 실시간 전송하되, 설정 시점에 영상의 엔코딩을 동시에 시작하고, 동일 시간에 동일 프레임을 전송하도록 각 프레임에 타임 스탬프를 부여하고 영상을 동일 방식으로 엔코딩하여 실시간 전송하는 제1 및 제2 엔코더, 및 상기 제1 및 제2 엔코더로부터 영상을 수신하여 메모리에 각각 저장하며, 상기 제1 및 제2 엔코더 중 우선 순위에 있는 제1 엔코더의 영상을 상기 메모리에 버퍼링하면서 재생기로 실시간 스트리밍 전송하는 동시에, 제2 엔코더의 영상을 메모리에서 삭제시키는 스트리밍 서버를 포함하는 엔코딩 다중화 시스템을 제공한다.
또한, 상기 스트리밍 서버는, 상기 제1 엔코더의 접속이 중단되면, 중단 시점에 대응된 해당 프레임부터 상기 제2 엔코더의 영상을 메모리에 버퍼링하면서 상기 재생기로 실시간 스트리밍 전송할 수 있다.
또한, 상기 스트리밍 서버는, 상기 제1 엔코더의 접속이 중단되면, 중단 시점에 대응된 해당 프레임과 동일 타임 스탬프를 가진 타겟 프레임을 상기 제2 엔코더의 영상에서 추출하여, 추출한 타겟 프레임부터 버퍼링하면서 실시간 스트리밍 전송할 수 있다.
또한, 상기 제1 엔코더의 접속이 재개되어 상기 메모리에 상기 제1 엔코더의 영상이 입력되기 시작하면, 상기 제2 엔코더의 영상에 대한 스트리밍 상태를 유지하면서 상기 제1 엔코더의 영상을 상기 메모리에서 삭제시킬 수 있다.
또한, 상기 제1 및 제2 엔코더는, 시간과 코덱 규칙이 상호 동기화되어 동작하며, 상기 동기화된 시간을 기반으로 상기 설정 시점에 영상의 엔코딩을 동시에 시작하고, 상기 동기화된 코덱 규칙을 기반으로 영상을 동일 방식으로 엔코딩하여 실시간 전송할 수 있다.
또한, 상기 코덱 규칙은, 상기 영상의 엔코딩에 필요한 비디오와 오디오의 코덱 규칙이며, 상기 비디오의 경우 키 프레임(key frame) 간격, B 프레임 사용 유무, 비트 레이트(bit rate), 해상도 중 적어도 하나의 규칙을 포함하고, 상기 오디오의 경우 샘플링 레이트(sampling rate), 비트 레이트 중 적어도 하나의 규칙을 포함할 수 있다.
또한, 상기 제1 및 제2 엔코더 중 어느 하나는 마스터 엔코더이고, 나머지는 슬레이브 엔코더이며, 상기 마스터 엔코더는, 사용자로부터 상기 코덱 규칙에 관한 정보를 설정받으면, 상기 코덱 규칙을 상기 슬레이브 엔코더로 제공하여 엔코더 간 코덱 규칙을 동기화할 수 있다.
또한, 상기 제1 및 제2 엔코더 중 어느 하나는 마스터 엔코더이고, 나머지는 슬레이브 엔코더이며, 상기 마스터 엔코더는, 사용자로부터 상기 영상에 대한 엔코딩 시작 명령을 입력받으면, 엔코딩 시작 시점을 설정하여 상기 슬레이브 엔코더로 제공하며, 상기 마스터 엔코더 및 슬레이브 엔코더는, 시간 서버에 의해 동기화된 시간을 이용하여 상기 엔코딩 시작 시점이 도래하는 즉시 상기 영상에 대한 엔코딩 동작을 동시에 개시할 수 있다.
또한, 상기 스트리밍 서버는, 상기 제1 및 제2 엔코더 중 상기 스트리밍 서버와 네트워크 접속이 우선적으로 이루어진 엔코더에게 상기 우선 순위를 초기 부여하며, 네트워크 접속 상태에 따라 상기 우선 순위를 변동시킬 수 있다.
본 발명에 따르면, 동일 채널의 영상에 대해 두 개의 엔코더를 지원하는 엔코더 이중화 구조를 기반으로 해당 채널의 라이브 영상을 끊김 없이 스트리밍 서비스할 수 있다.
또한, 본 발명은 제1 및 제2 엔코더 중 우선 순위를 가진 제1 엔코더의 영상을 우선 선택하여 스트리밍하되, 제1 엔코더의 접속이 중단되면 제2 엔코더의 영상을 중단 프레임부터 연결하여 전송할 수 있어, 재생기에서 해당 채널의 영상을 끊김 없이 안정적으로 스트리밍받을 수 있다.
더욱이, 본 발명은 두 엔코더 사이에 시간과 코덱 설정이 모두 동기화되어 있어, 제1 엔코더의 영상을 스트리밍하는 중에 접속 중단으로 인해 제2 엔코더의 영상으로 절환 송출하더라도, 중단된 해당 시점의 프레임부터 자연스럽게 연결된 라이브 영상을 스트리밍할 수 있다.
도 1은 본 발명의 실시예에 따른 엔코더 다중화 시스템을 나타낸 도면이다.
도 2는 도 1에 도시된 스트리밍 서버의 구성을 나타낸 도면이다.
도 3은 도 1을 복수 채널의 영상에 대해 확장한 개념을 설명한 도면이다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
본 발명은 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템으로, 동일 채널의 영상에 대해 두 개의 엔코더를 지원하는 이중화 엔코더 구조를 기반으로 해당 채널의 라이브 영상을 재생기로 끊김 없이 스트리밍할 수 있다.
본 발명의 실시예에서 스트리밍 서버는 상호 동기화된 제1 및 제2 엔코더로부터 해당 채널의 영상을 수신하면 우선 순위에 있는 제1 엔코더의 영상을 우선적으로 선택하여 재생기로 스트리밍하되, 제1 엔코더의 접속이 중단되면 중단 시점의 프레임부터 제2 엔코더의 영상을 즉시 이어 전송함으로써 생방송 영상을 끊김 없이 안정적으로 스트리밍 서비스할 수 있다.
도 1은 본 발명의 실시예에 따른 엔코더 다중화 시스템을 나타낸 도면이다.
도 1에 나타낸 것과 같이, 본 발명의 실시예에 따른 엔코더 다중화 시스템은 제1 엔코더(100), 제2 엔코더(200) 및 스트리밍 서버(300)를 포함하며, 동일 채널의 영상에 대하여 두 개의 엔코더를 포함하는 이중화된 엔코딩 구조를 기반으로 영상을 엔코딩하여 재생기(400)로 스트리밍 전송한다.
제1 및 제2 엔코더(100,200)는 방송 장치(10)와 스트리밍 서버(300) 사이에 위치하며, 방송 장치(10) 및 스트리밍 서버(300)와 네트워크 연결된다.
방송 장치(10)는 카메라(11)을 이용하여 획득한 소정 채널의 영상을 분배기(12)를 통해 분배하여 이중화 송출한다. 여기서, 방송 장치(10)에서 송출하는 영상은 생방송 영상(라이브 영상)에 해당될 수도 있지만, 미리 저장되거나 녹화된 영상에 해당될 수도 있다. 이하의 본 발명의 실시예는 생방송 영상을 대표 예시로 하여 설명한다.
방송 장치(10)는 복수 채널의 영상을 서비스하는 방송국 장비, 방송국 서버 등에 해당할 수 있다. 여기서 영상을 촬영하는 카메라(11)는 방송 장치(10)에 포함될 수도 있지만 방송 장치(10)의 외부에 연결될 수도 있다.
도 1의 경우 설명의 편의를 위해 복수 채널 중에서 100번 채널(CH 100)의 영상을 이중화하여 송출하는 모습을 예시하고 있다.
제1 및 제2 엔코더(100,200)는 동일 채널(도 1의 경우 100번 채널)의 영상을 이중 송출하는 방송 장치(10)로부터 해당 영상을 수신하고, 수신한 영상을 각각 엔코딩하여 프레임 단위로 실시간 전송한다.
제1 및 제2 엔코더(100,200)는 설정 시점에 영상의 엔코딩을 동시에 시작한다. 또한, 제1 및 제2 엔코더(100,200)는 동일 시간에 동일 프레임을 전송하도록 각 프레임에 타임 스탬프를 부여하며, 영상을 동일 방식으로 엔코딩하여 실시간 전송한다.
여기서, 제1 및 제2 엔코더(100,200)는 시간과 코덱 규칙이 상호 동기화되어 동작하며, 동기화된 시간을 기반으로 설정 시점에 영상의 엔코딩을 동시에 시작하며, 동기화된 코덱 규칙을 기반으로 영상을 동일 방식으로 엔코딩한다.
구체적으로, 제1 및 제2 엔코더(100,200)는 시간 서버(예를 들어, NTP(Network Time Protocol) 서버)에 의해 상호 시간 동기화되어 있어, 설정 시점(엔코딩 시작 시점)이 도래하면 수신한 영상에 대한 엔코딩 동작을 동시에 개시한다.
구체적인 실시예는 다음과 같다. 본 발명의 실시예에서 제1 및 제2 엔코더(100,200) 중 어느 하나는 마스터 엔코더, 나머지는 슬레이브 엔코더에 해당한다.
만일, 제1 엔코더(100)가 마스터 엔코더라 가정하면, 제1 엔코더(100)(마스터 엔코더)는 사용자로부터 영상에 대한 엔코딩 시작 명령을 입력받으면 엔코딩 시작 시점을 설정하고, 이를 제2 엔코더(200)(슬레이브 엔코더)에 전달하여 공유한다. 여기서 사용자는 관리자에 해당할 수 있다.
그러면, 제1 및 제2 엔코더(100,200)는 동기화된 시간을 기초로 엔코딩 시작 시점이 도래하는 즉시, 영상에 대한 엔코딩 동작을 동시에 개시한다.
즉, 사용자가 엔코딩 시작을 명령하면, 마스터 엔코더는 슬레이브 엔코더에게 밀리 세컨드(milli second) 또는 마이크로 세컨드(micro secone) 단위의 정확한 시작 시간을 전달하게 되며, 두 엔코더는 같은 시간에 엔코딩을 시작하게 된다. 예를 들어, 사용자가 시작 버튼을 누른 시각으로부터 5초 후에 두 엔코더(100,200)에서 동시에 엔코딩 동작을 시작한다.
그리고, 제1 및 제2 엔코더(100,200)는 동일 시간에 동일 프레임을 전송하도록, 각 프레임에 대해 기 약속된 순서나 넘버로 동기화된 타임 스탬프를 부여할 수 있다. 이에 따라, 동일한 타임 스탬프가 부여된 프레임 끼리 같은 시간에 전송될 수 있다. 이러한 동작 역시 상호 간의 시간 동기화를 전제로 할 수 있다.
여기서, 일반적으로 영상 데이터는 오디오 및 비디오를 포함하므로, 오디오와 비디오의 각 프레임에 대해서도 동기화된 타임 스탬프 값을 생성할 수 있다. 동기화된 타임 스탬프를 이용하기 때문에, 오디오와 비디오 간에도 같은 시간 프레임에 같은 타임 스탬프를 생성하여 동기화시킬 수 있다.
그리고, 제1 및 제2 엔코더(100,200)는 시간 동기화 이외에도 코덱 규칙의 동기화가 이루어진다. 여기서, 코덱 규칙은 영상의 엔코딩에 필요한 비디오와 오디오의 코덱 규칙을 나타낸다.
비디오의 코덱 규칙은 키 프레임(key frame) 간격, B 프레임 사용 유무, 비트 레이트(bit rate), 해상도 중 적어도 하나의 규칙을 포함할 수 있다. 오디오의 경우, 코덱 규칙은 샘플링 레이트(sampling rate), 비트 레이트 중 적어도 하나의 규칙을 포함할 수 있다.
코덱 규칙의 동기화 역시, 엔코딩 시작 지점의 동기화와 마찬가지로, 마스터와 슬레이브 엔코더 간의 정보 공유를 기반으로 이루질 수 있다.
제1 엔코더(100)가 마스터 엔코더라 가정하면, 제1 엔코더(100)(마스터 엔코더)는 사용자로부터 코덱 규칙에 관한 정보를 설정받으면, 코덱 규칙을 슬레이브 엔코더로 전달하여 공유함으로써, 두 엔코더 간 코덱 규칙을 동기화한다. 여기서 사용자는 관리자에 해당할 수 있다.
이와 같이, 제1 및 제2 엔코더(100,200)는 시간과 코덱 규칙이 상호 동기화되어 동작하며, 방송 장치(10)로부터 수신한 영상에 대한 엔코딩을 동시에 개시하고 영상을 동일한 방식으로 엔코딩하여 스트리밍 서버(300)로 실시간 전송한다.
본 발명의 실시예에서 각 엔코더(100,200)의 엔코딩 동작은 패킷화 동작을 포함할 수 있다. 패킷화는 한 개의 엔코딩된 프레임을 일정한 크기로 나누는 작업이다. 예를 들어 64000 bytes의 영상 프레임은 100개의 640 bytes로 분할될 수 있으며, 이때 패킷의 순서를 기록할 수 있다.
두 엔코더의 엔코딩 시작 시간이 동일하기 때문에, 시작 순서값을 0부터 카운팅하도록 하면, 기록된 순서는 항상 값을 가지게 된다. 두 엔코더는 서로의 엔코딩된 프레임 바이트(frame byte) 사이즈를 공유함으로써, 패킷화를 진행할 때 같은 시간에 엔코딩된 프레임에 대하여 생성 패킷의 개수가 일치하도록 한다.
스트리밍 서버(300)는 제1 및 제2 엔코더(100,200)로부터 동일 주소의 영상을 수신하여 메모리(320)에 각각 저장하며, 제1 및 제2 엔코더 중 우선 순위에 있는 제1 엔코더의 영상을 메모리(320)에 버퍼링하면서 재생기(400)로 실시간 스트리밍 전송하는 동시에, 제2 엔코더(200)의 영상을 메모리에서 삭제한다. 여기서, 버퍼링은 스트리밍 서버에서 통상적으로 이루어지는 데이터의 완충 전송 동작을 의미한다.
스트리밍 서버(300)는 제1 및 제2 엔코더(100,200) 중 스트리밍 서버(300)와 네트워크 접속이 우선적으로 이루어진 엔코더에게 우선 순위를 초기 부여한다.
또한, 스트리밍 서버(300)는 네트워크 접속 상태에 따라 우선 순위를 변동시킬 수 있다. 예를 들어, 제1 및 제2 엔코더(100,200)가 초기에 모두 접속한 경우, 먼저 접속된 것으로 확인된 제1 엔코더(100)에게 우선 순위를 부여한다. 이후에, 제1 엔코더(100)의 접속 끊김(접속 중단)이 발생하면, 현재 접속을 유지 중인 제2 엔코더(200)에게 우선 순위를 부여한다. 여기서, 이후에 다시 제1 엔코더(100)의 접속이 재개된다 하더라도, 제2 엔코더(200)의 접속이 유지 중인 상태이므로 제2 엔코더(200)의 우선 순위는 유지된다.
스트리밍 서버(300)는 두 엔코더(100,200)의 접속 시점을 비교하여, 먼저 접속된 엔코더에게 우선 순위를 부여한다. 이하에서는 먼저 접속된 엔코더를 제1 엔코더(100)인 것으로 가정하여 설명한다.
이 경우, 스트리밍 서버(300)는 두 엔코더(100,200) 중 먼저 접속한 제1 엔코더(100)의 영상을 선택하여 재생기(400)로 제공하며, 이와 동시에 제2 엔코더(200)의 영상을 메모리(320)로부터 실시간 삭제한다. 즉, 스트리밍 서버(300)는 제2 엔코더(200)와의 접속을 유지한 상태에서 데이터만 드롭(drop)한다. 물론, 이러한 동작에 따르면, 한정된 메모리 자원을 효율적으로 사용할 수 있도록 한다.
여기서, 스트리밍 서버(300)는 제1 엔코더(100)의 접속이 중단되면, 중단 시점에 대응된 해당 프레임부터 제2 엔코더(200)의 영상을 메모리(320)에 버퍼링하면서 재생기(400)로 실시간 스트리밍 전송한다.
제1 엔코더(100)의 접속이 중단되면, 제2 엔코더(200)의 영상만 메모리(320)에 입력되게 된다. 이 경우. 스트리밍 서버(300)는 중단 시점에 대응된 해당 프레임과 동일 타임 스탬프를 가진 프레임 즉, 타겟 프레임을 제2 엔코더(200)의 영상에서 추출하여, 추출한 타겟 프레임부터 버퍼링하면서 실시간 스트리밍 전송한다.
예를 들어, 제1 엔코더(100)의 접속 종료 시에, 제1 엔코더(100)의 버퍼링 데이터에서 종료 시점과 동일한 시간에 해당한 I 프레임을 제2 엔코더(200)의 영상에서 추출하여 교체하는 것을 통하여 제2 엔코더(200)의 데이터를 클라이언트로 송출하게 된다.
물론, 이후에 제1 엔코더(100)의 접속이 재개되어, 메모리(320)에 제1 엔코더(100)의 영상이 입력되기 시작하면, 제2 엔코더(200)의 영상에 대한 스트리밍 상태를 유지하면서 제1 엔코더(100)의 영상을 메모리(320)에서 삭제시킨다. 즉, 스트리밍 서버(300)는 제1 엔코더(100)와의 접속을 유지한 상태에서 데이터만 드롭(drop)하여 버린다.
이와 같이, 본 발명의 실시예는 제1 및 제2 엔코더(100,200) 사이에 시간 및 코덱 설정이 모두 동기화되어 있어, 제1 엔코더(100)의 영상을 스트리밍하는 중에 제1 엔코더(100)의 접속 중단으로 인해 제2 엔코더(200)의 영상으로 절환 송출하더라도, 중단된 해당 시점의 프레임부터 자연스럽게 연결된 생방송 영상을 스트리밍할 수 있다.
이는 곧, 중단된 시점보다 과거 시점의 영상 또는 미래 시점의 영상이 부자연스럽게 연결되는 현상을 방지할 수 있음을 의미한다.
이와 같이, 본 발명의 실시예는 제1 및 제2 엔코더 중 우선 순위를 가진 어느 하나의 엔코더의 영상을 우선 선택하여 재생기(400)로 스트리밍하되, 네트워크 접속 상태에 따라 우선 순위를 실시간 절환시킬 수 있어, 하나의 엔코더에서 오류가 발생하더라도 다른 하나의 엔코더를 이용함으로써 오류에 적응적으로 대처할 수 있다.
도 2는 도 1에 도시된 스트리밍 서버의 구성을 나타낸 도면이다. 스트리밍 서버(300)는 수신부(310), 메모리(320), 설정부(330), 송신부(340)를 포함한다.
수신부(310)는 제1 및 제2 엔코더(100,200)로부터 영상을 수신하여 메모리(320)에 전달하며, 메모리(320)는 전달받은 영상을 저장한다.
설정부(330)는 제1 및 제2 엔코더(100,200) 중 스트리밍 서버(300)와의 네트워크 접속이 우선적으로 이루어진 엔코더에게 우선 순위를 초기 부여한다. 또한, 설정부(330)는 네트워크 접속 상태에 따라 우선 순위를 변동시킬 수 있다.
송신부(340)는 메모리(320) 및 설정부(330)를 제어하며, 제1 및 제2 엔코더(100,200) 중 우선 순위에 있는 제1 엔코더의 영상을 메모리(320)에 버퍼링하면서 재생기(400)로 실시간 스트리밍 전송하는 동시에, 제2 엔코더(200)의 영상을 메모리에서 삭제시킨다.
도 3은 도 1을 복수 채널의 영상에 대해 확장한 개념을 설명한 도면이다.
도 3에 나타낸 것과 같이, 본 발명의 실시예는 복수의 채널의 영상에 대해 개별적으로 엔코더 이중화를 구현하고 이를 기반으로 스트리밍 서비스를 제공할 수 있다.
도 3의 경우, 1번 채널부터 N번 채널까지의 영상을 예시하고 있으며, 방송 장치(10)는 개별 분배기를 이용하여 각 채널의 영상을 이중화 전송할 수 있다. 또한, 제1 및 제2 엔코더(100,200)는 N개 세트로 구성되며, 자신에게 할당된 채널의 영상을 엔코딩하여 전송한다.
스트리밍 서버(300)는 1번 채널부터 N번 채널을 포함한 다수 채널의 영상을 유저에게 제공할 수 있으며, 유저가 선택한 채널의 영상을 재생기(400)로 제공할 수 있다. 재생기(400)는 스마트폰, PDA, 데스크탑, 패드(PAD), 노트북 등 통상의 사용자 단말기를 의미할 수 있다.
이상과 같은 본 발명에 따르면, 동일 채널의 영상에 대해 두 개의 엔코더를 지원하는 엔코더 이중화 구조를 기반으로 해당 채널의 라이브 영상을 끊김 없이 스트리밍 서비스할 수 있다.
또한, 본 발명은 제1 및 제2 엔코더 중 우선 순위를 가진 제1 엔코더의 영상을 우선 선택하여 스트리밍하되, 제1 엔코더의 접속이 중단되면 제2 엔코더의 영상을 중단 프레임부터 연결하여 전송할 수 있어, 재생기에서 해당 채널의 영상을 끊김 없이 안정적으로 스트리밍받을 수 있다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
100: 제1 엔코더 200: 제2 엔코더
300: 스트리밍 서버 400: 재생기

Claims (9)

  1. 영상을 엔코딩 처리하는 엔코더 다중화 시스템에 있어서,
    동일 채널의 영상을 이중 송출하는 방송 장치로부터 수신된 영상을 엔코딩하여 프레임 단위로 실시간 전송하되, 설정 시점에 영상의 엔코딩을 동시에 시작하고, 동일 시간에 동일 프레임을 전송하도록 각 프레임에 타임 스탬프를 부여하고 영상을 동일 방식으로 엔코딩하여 실시간 전송하는 제1 및 제2 엔코더; 및
    상기 제1 및 제2 엔코더로부터 영상을 수신하여 메모리에 각각 저장하며, 상기 제1 및 제2 엔코더 중 우선 순위에 있는 제1 엔코더의 영상을 상기 메모리에 버퍼링하면서 재생기로 실시간 스트리밍 전송하는 동시에, 제2 엔코더의 영상을 메모리에서 삭제시키는 스트리밍 서버를 포함하며,
    상기 제1 및 제2 엔코더는,
    시간과 코덱 규칙이 상호 동기화되어 동작하며, 상기 동기화된 시간을 기반으로 상기 설정 시점에 영상의 엔코딩을 동시에 시작하고, 상기 동기화된 코덱 규칙을 기반으로 영상을 동일 방식으로 엔코딩하여 실시간 전송하며,
    상기 스트리밍 서버는,
    상기 제1 엔코더의 접속이 중단되면, 중단 시점에 대응된 해당 프레임부터 상기 제2 엔코더의 영상을 메모리에 버퍼링하면서 상기 재생기로 실시간 스트리밍 전송하되, 중단 시점에 대응된 해당 프레임과 동일 타임 스탬프를 가진 타겟 프레임을 상기 제2 엔코더의 영상에서 추출하여, 추출한 타겟 프레임부터 버퍼링하면서 실시간 스트리밍 전송하는 엔코더 다중화 시스템.
  2. 삭제
  3. 삭제
  4. 청구항 1에 있어서,
    상기 제1 엔코더의 접속이 재개되어 상기 메모리에 상기 제1 엔코더의 영상이 입력되기 시작하면, 상기 제2 엔코더의 영상에 대한 스트리밍 상태를 유지하면서 상기 제1 엔코더의 영상을 상기 메모리에서 삭제시키는 엔코더 다중화 시스템.
  5. 삭제
  6. 청구항 1에 있어서,
    상기 코덱 규칙은,
    상기 영상의 엔코딩에 필요한 비디오와 오디오의 코덱 규칙이며,
    상기 비디오의 경우 키 프레임(key frame) 간격, B 프레임 사용 유무, 비트 레이트(bit rate), 해상도 중 적어도 하나의 규칙을 포함하고, 상기 오디오의 경우 샘플링 레이트(sampling rate), 비트 레이트 중 적어도 하나의 규칙을 포함하는 엔코더 다중화 시스템.
  7. 청구항 1에 있어서,
    상기 제1 및 제2 엔코더 중 어느 하나는 마스터 엔코더이고, 나머지는 슬레이브 엔코더이며,
    상기 마스터 엔코더는,
    사용자로부터 상기 코덱 규칙에 관한 정보를 설정받으면, 상기 코덱 규칙을 상기 슬레이브 엔코더로 제공하여 엔코더 간 코덱 규칙을 동기화하는 엔코더 다중화 시스템.
  8. 청구항 1에 있어서,
    상기 제1 및 제2 엔코더 중 어느 하나는 마스터 엔코더이고, 나머지는 슬레이브 엔코더이며,
    상기 마스터 엔코더는,
    사용자로부터 상기 영상에 대한 엔코딩 시작 명령을 입력받으면, 엔코딩 시작 시점을 설정하여 상기 슬레이브 엔코더로 제공하며,
    상기 마스터 엔코더 및 슬레이브 엔코더는,
    시간 서버에 의해 동기화된 시간을 이용하여 상기 엔코딩 시작 시점이 도래하는 즉시 상기 영상에 대한 엔코딩 동작을 동시에 개시하는 엔코더 다중화 시스템.
  9. 청구항 1에 있어서,
    상기 스트리밍 서버는,
    상기 제1 및 제2 엔코더 중 상기 스트리밍 서버와 네트워크 접속이 우선적으로 이루어진 엔코더에게 상기 우선 순위를 초기 부여하며,
    네트워크 접속 상태에 따라 상기 우선 순위를 변동시키는 엔코더 다중화 시스템.
KR1020190044347A 2019-04-16 2019-04-16 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템 KR102192584B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190044347A KR102192584B1 (ko) 2019-04-16 2019-04-16 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템
PCT/KR2019/004613 WO2020213752A1 (ko) 2019-04-16 2019-04-17 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190044347A KR102192584B1 (ko) 2019-04-16 2019-04-16 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템

Publications (2)

Publication Number Publication Date
KR20200121596A KR20200121596A (ko) 2020-10-26
KR102192584B1 true KR102192584B1 (ko) 2020-12-17

Family

ID=72837380

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190044347A KR102192584B1 (ko) 2019-04-16 2019-04-16 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템

Country Status (2)

Country Link
KR (1) KR102192584B1 (ko)
WO (1) WO2020213752A1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002125203A (ja) * 2000-10-12 2002-04-26 Mitsubishi Electric Corp メディア符号器及びメディア復号器
JP2011217137A (ja) * 2010-03-31 2011-10-27 Fujitsu Ltd 符号化装置、符号化システム及び信号伝送方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003163912A (ja) * 2001-11-26 2003-06-06 Oki Electric Ind Co Ltd ビデオサーバシステム
KR100458957B1 (ko) * 2001-12-21 2004-12-03 에스케이 텔레콤주식회사 Vod 서비스 시스템에서의 res 이중화 방법 및 그를이용한 vod 서비스 시스템
KR100759216B1 (ko) * 2005-10-31 2007-09-14 에스케이 텔레콤주식회사 방송 컨텐츠 축적 시스템 및 방법
KR101840005B1 (ko) * 2016-02-26 2018-03-19 김승모 중단없는 스트리밍 서비스를 제공하는 스트리밍 영상제공 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002125203A (ja) * 2000-10-12 2002-04-26 Mitsubishi Electric Corp メディア符号器及びメディア復号器
JP2011217137A (ja) * 2010-03-31 2011-10-27 Fujitsu Ltd 符号化装置、符号化システム及び信号伝送方法

Also Published As

Publication number Publication date
WO2020213752A1 (ko) 2020-10-22
KR20200121596A (ko) 2020-10-26

Similar Documents

Publication Publication Date Title
US10856029B2 (en) Providing low and high quality streams
US5761416A (en) Method and apparatus for distributing network bandwidth on a video server for transmission of bit streams across multiple network interfaces connected to a single internet protocol (IP) network
CN103237191B (zh) 在视频会议中同步推送音视频的方法
CN102883134B (zh) 用于视频会议***的屏幕共享及控制方法
US7483421B2 (en) Routing data
JP2024519363A (ja) ゲームデータの処理方法、装置、コンピュータ機器、及びコンピュータプログラム
US7139807B2 (en) Media role management in a video conferencing network
JP5338394B2 (ja) 映像配信システム、映像配信方法、映像配信装置及び映像配信プログラム
US20090106288A1 (en) Method and system for supporting media data of various coding formats
WO2002093808A2 (en) Method and system for transmitting multicast data signals
JP2010538539A (ja) 相互接続ネットワークにおける関連データストリームの同期
WO2007131296A1 (en) Redundant media packet streams
US9521366B2 (en) Method and apparatus for playing conference signal, video conference terminal, and mobile device
JP2003338830A (ja) メディア送信方法、メディア受信方法、メディア送信装置及びメディア受信装置
WO2007079672A1 (fr) Systeme de reception et d'affichage d'emissions tv reseau, et procede associe
KR102090070B1 (ko) 스트리밍 서버, 클라이언트 단말 및 이를 이용한 av 라이브 스트리밍 시스템
KR20110040687A (ko) 네트워크 기기, 정보 처리 장치, 스트림 전환 방법, 정보 처리 방법, 프로그램 및 콘텐츠 배신 시스템
US11057450B2 (en) Systems, methods, and devices for seamless switching between multiple source streams
KR102192584B1 (ko) 무정지 생방송 영상 송출을 위한 엔코더 다중화 시스템
JP2009171294A (ja) 映像配信システム、映像中継装置、及び映像中継方法
Baltas et al. Ultra low delay switching for networked music performance
WO2018171567A1 (zh) 播放媒体流的方法、服务器及终端
WO2012046090A1 (en) System and method for error detection and data replacement in broadcast services
KR102268167B1 (ko) 영상 제공 시스템
WO2007141241A1 (en) Method for sharing control and device as well as system comprising said device

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right