KR101231009B1 - Network video server and video control method thereof - Google Patents
Network video server and video control method thereof Download PDFInfo
- Publication number
- KR101231009B1 KR101231009B1 KR1020110035252A KR20110035252A KR101231009B1 KR 101231009 B1 KR101231009 B1 KR 101231009B1 KR 1020110035252 A KR1020110035252 A KR 1020110035252A KR 20110035252 A KR20110035252 A KR 20110035252A KR 101231009 B1 KR101231009 B1 KR 101231009B1
- Authority
- KR
- South Korea
- Prior art keywords
- streaming data
- video
- processor
- decoding unit
- streaming
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
Abstract
네트워크 비디오 서버 및 이의 비디오 제어 방법은 네트워크 비디오 서버와 연결된 복수의 네트워크 카메라들로부터 각각 전송된 복수의 스트리밍 데이터 세트들을 수신한다. 각각의 스트리밍 데이터 세트는 제 1 이미지 해상도를 갖는 제 1 스트리밍 데이터 조각, 및 제 1 이미지 해상도 보다 더 낮은 제 2 이미지 해상도를 갖는 제 2 스트리밍 데이터 조각을 가진다. 네트워크 비디오 서버는 풀-스크린 모드 동안 네트워크 카메라들 중 하나로부터의 제 1 스트리밍 데이터 조각을 비디오 데이터 프레임으로 디코딩하여 비디오 데이터 프레임을 출력하고, 분할-스크린 모드 동안은 모든 네트워크 카메라들로부터의 디코딩된 제 2 스트리밍 데이터 조각들을 비디오 데이터 프레임으로 결합하여 비디오 데이터 프레임을 출력한다. 따라서, 풀-스크린 모드 및 분할-스크린 모드 동안 비디오 프레임들의 선명도 및 매끄러움을 확보할 수 있다.The network video server and its video control method receive a plurality of streaming data sets respectively transmitted from a plurality of network cameras connected with the network video server. Each streaming data set has a first streaming data piece having a first image resolution, and a second streaming data piece having a second image resolution lower than the first image resolution. The network video server decodes the first streaming data fragment from one of the network cameras into a video data frame during full-screen mode and outputs the video data frame, and decoded first from all network cameras during split-screen mode. Two pieces of streaming data are combined into video data frames to output video data frames. Thus, it is possible to ensure the sharpness and smoothness of video frames during the full-screen mode and the split-screen mode.
Description
본 발명은 네트워크 비디오 서버 및 이의 비디오 제어 방법에 관한 것으로서, 더욱 상세하게는 풀-스크린 모드 및 분할-스크린 모드 하에서 선명하고 매끄러운(smooth) 프레임들을 출력하는 네트워크 비디오 서버 및 비디오 제어 방법에 관한 것이다.The present invention relates to a network video server and a video control method thereof, and more particularly, to a network video server and a video control method for outputting clear and smooth frames in full-screen mode and split-screen mode.
강도로부터 보호하기 위하여, 대부분의 거주지 및 사업장 등은 강도 방지 보안 시스템이 설치되어 있다. 이들 중, 박람회장 및 박물관들은 부가적으로 녹화, 재생 및 모니터링을 위한 자체 감시 시스템을 구비하고 있다.In order to protect from robbery, most residences and workplaces are equipped with an anti-burglar security system. Of these, the fairgrounds and museums additionally have their own surveillance systems for recording, playback and monitoring.
통상적인 감시 시스템은 복수의 카메라와 비디오 서버를 포함한다. 각 카메라는 케이블을 통해 비디오 서버에 연결되어 촬영된 비디오 데이터를 녹화를 위해 비디오 서버로 전송하여 녹화한다. 감시 시스템의 카메라, 및 비디오 서버는 기술 개발 및 인터넷 발달에 의해 신장되어 각각 웹 카메라와 디지털 네트워크 비디오 서버로 진화되어 왔다. 각각의 웹 카메라에 의해 촬영된 비디오 데이터는 스트리밍 데이터로 변환되고, 스트리밍 데이터는 디지털 네트워크 비디오 서버로 전송되어 저장된다. 재생 기능을 수행할 때, 디지털 네트워크 비디오 서버는 저장된 스트리밍 데이터를 비디오 데이터로 디코딩하고, 그 후 비디오 데이터를 디스플레이 장치로 출력하여 비디오 데이터를 재생한다.Typical surveillance systems include a plurality of cameras and video servers. Each camera is connected to a video server via a cable and the recorded video data is transferred to the video server for recording. Surveillance systems cameras and video servers have been evolved by technology development and Internet development, and have evolved into web cameras and digital network video servers, respectively. Video data captured by each web camera is converted into streaming data, and the streaming data is transmitted to and stored in a digital network video server. When performing the playback function, the digital network video server decodes the stored streaming data into video data, and then outputs the video data to the display device to play the video data.
재생되는 동안 프레임의 선명도를 확보하기 위하여, 네트워크 비디오 서버는 D1 해상도와 같은 고해상도를 갖는 스트리밍 데이터를 출력하는 모드로 설정될 수 있다. 그러나, 고해상도를 갖는 스트리밍 데이터는 처리해야 할 데이터 양이 확실히 매우 크며, 이에 따라 특히 실시간 비디오 데이터를 재생하는 경우 스트리밍 데이터를 디코딩 시 네트워크 비디오 서버의 성능이 상당히 저하된다. 더욱 안 좋은 것은 네트워크 비디오 서버가 스트리밍 데이터를 불완전한 비디오 데이터로 디코딩하여, 디스플레이 장치상에서 불연속 프레임과 심각한 프레임 래그(lag)을 야기할 가능성이 있다.In order to ensure the sharpness of the frame during reproduction, the network video server may be set to a mode for outputting streaming data having a high resolution such as D1 resolution. However, streaming data with high resolution has a very large amount of data to be processed, which significantly reduces the performance of the network video server when decoding streaming data, especially when playing back real-time video data. Worse yet, there is a possibility that the network video server decodes the streaming data into incomplete video data, causing discontinuous frames and severe frame lags on the display device.
한편, 재생 중에 비디오 프레임들을 매끄럽게 재생하기 위하여, 네트워크 비디오 서버는 CIF 해상도와 같은 저해상도 스트리밍 데이터를 출력하는 모드로 설정될 수 있다. 스크린상에 연속적이며 중단되지 않는 프레임들이 디스플레이될 수는 있지만, 이러한 비디오 프레임들은 스트리밍 데이터의 저해상도로 인해 흐리고 선명하지 못할 수도 있다.
On the other hand, in order to smoothly reproduce video frames during playback, the network video server may be set to a mode that outputs low resolution streaming data such as CIF resolution. While continuous and uninterrupted frames may be displayed on the screen, these video frames may be blurred and unclear due to the low resolution of the streaming data.
본 발명의 제 1 목적은 풀-스크린 모드 및 분할-스크린 모드 하에서 선명하고 매끄러운 프레임들을 출력하는 비디오 서버의 비디오 제어 방법을 제공하는 것이다.It is a first object of the present invention to provide a video control method of a video server that outputs clear and smooth frames under full-screen mode and split-screen mode.
본 발명의 제 2 목적은 프로세서, 복수의 비디오 전송 포트틀, 저장 유닛, 디코딩 유닛, 출력 포트 및 사용자 인터페이스를 포함하는 네트워크 비디오 서버를 제공하는 것이다.It is a second object of the present invention to provide a network video server comprising a processor, a plurality of video transmission ports, a storage unit, a decoding unit, an output port and a user interface.
상술한 목적을 달성하기 위하여, 비디오 제어 방법은 복수의 스트리밍 데이터 세트들을 수신한다. 각각의 스트리밍 데이터 세트는 제 1 스트리밍 데이터 조각(streaming data piece) 및 제 2 스트리밍 데이터 조각을 가진다. 각각의 제 1 스트리밍 데이터 조각은 제 1 이미지 해상도를 가지고, 각각의 제 2 스트리밍 데이터 조각은 제 2 이미지 해상도를 가지며, 제 1 이미지 해상도가 제 2 이미지 해상도보다 높다. 비디오 제어 방법은 풀-스크린 모드 및 분할-스크린 모드를 가진다.In order to achieve the above object, the video control method receives a plurality of streaming data sets. Each streaming data set has a first streaming data piece and a second streaming data piece. Each first streaming data piece has a first image resolution, each second streaming data piece has a second image resolution, and the first image resolution is higher than the second image resolution. The video control method has a full-screen mode and a split-screen mode.
풀-스크린 모드는 스트리밍 데이터 세트들 중 하나의 세트로부터의 제 1 스트리밍 데이터 조각을 비디오 데이터 프레임으로 디코딩하고, 풀-스크린 모드 동안 비디오 데이터 프레임을 출력한다.The full-screen mode decodes the first streaming data fragment from one of the streaming data sets into a video data frame and outputs the video data frame during the full-screen mode.
분할-스크린 모드는 각각의 스트리밍 데이터 세트로부터의 제 2 스트리밍 데이터 조각을 비디오 데이터 조각으로 디코딩하고, 디코딩된 비디오 데이터 조각들을 비디오 데이터 프레임으로 결합하고, 분할-스크린 모드 동안 비디오 데이터 프레임을 출력한다.The split-screen mode decodes a second streaming data piece from each streaming data set into a video data piece, combines the decoded video data pieces into a video data frame, and outputs a video data frame during the split-screen mode.
비디오 전송 포트들은 프로세서에 연결되며, 스트리밍 데이터 세트들을 수신한다.Video transport ports are coupled to the processor and receive streaming data sets.
본 발명에 따른 네트워크 비디오 서버는 프로세서, 복수의 비디오 전송 포트틀, 저장 유닛, 디코딩 유닛, 출력 포트 및 사용자 인터페이스를 포함한다.The network video server according to the invention comprises a processor, a plurality of video transmission ports, a storage unit, a decoding unit, an output port and a user interface.
저장 유닛은 프로세서에 연결되며, 프로세서에 의해 제어되어 비디오 전송 포트들에 의해 수신된 스트리밍 데이터 세트들을 저장 유닛에 저장한다.The storage unit is coupled to the processor and is controlled by the processor to store the streaming data sets received by the video transmission ports in the storage unit.
디코딩 유닛은 프로세서에 연결되어 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들 중 어느 하나를 비디오 데이터 프레임으로 디코딩하고, 비디오 데이터 프레임을 출력한다. The decoding unit is coupled to the processor to decode either one of the first streaming data pieces and the second streaming data pieces of streaming data sets into a video data frame, and outputs the video data frame.
출력 포트는 디코딩 유닛에 연결되며 디코딩된 비디오 데이터를 출력한다.The output port is connected to the decoding unit and outputs decoded video data.
사용자 인터페이스는 동작 명령(operation command)을 수신하고, 동작 명령을 프로세서로 전송하여 프로세서로 하여금 네트워크 비디오 서버를 제어하도록 하여 네트워크 비디오 서버가 동작 명령에 따라 동작하도록 한다.The user interface receives an operation command and sends an operation command to the processor to cause the processor to control the network video server so that the network video server operates according to the operation command.
프로세서는 사용자 인터페이스로부터 출력된 동작 명령에 따라 대응하는 비디오 전송 포트로부터 스트리밍 데이터 세트들 중 사전 설정된 하나의 세트의 제 1 스트리밍 데이터 조각을 수신하고, 제 1 스트리밍 데이터 조각을 디코딩 유닛으로 전송하여 디코딩 유닛이 제 1 스트리밍 데이터 조각을 비디오 데이터 프레임으로 디코딩하도록 하고, 풀-스크린 모드 동안 비디오 데이터 프레임을 출력한다.The processor receives the first streaming data fragment of a preset one of the streaming data sets from the corresponding video transmission port according to the operation command output from the user interface, and transmits the first streaming data fragment to the decoding unit to decode the decoding unit. Decode the first piece of streaming data into a video data frame and output the video data frame during full-screen mode.
프로세서는 사용자 인터페이스로부터 출력된 동작 명령에 따라 대응하는 비디오 전송 포트로부터 각각의 스트리밍 데이터 세트의 제 2 스트리밍 데이터 조각을 수신하고, 스트리밍 데이터 세트들의 각 세트의 제 2 스트리밍 데이터 조각을 디코딩 유닛으로 전송하여 디코딩 유닛이 각각의 스트리밍 데이터 세트의 제 2 스트리밍 데이터 조각을 비디오 데이터 조각으로 디코딩하도록 하고, 비디오 데이터 조각들을 비디오 데이터 프레임으로 결합하여 분할-스크린 모드 동안 비디오 데이터 프레임을 출력한다.The processor receives a second streaming data piece of each streaming data set from a corresponding video transmission port according to an operation command output from the user interface, and transmits the second streaming data piece of each set of streaming data sets to a decoding unit. The decoding unit causes the second streaming data piece of each streaming data set to be decoded into the video data piece, and combines the video data pieces into the video data frame to output the video data frame during the split-screen mode.
비디오 프레임들이 분할-스크린 모드에서 디스플레이되는 경우 비디오 프레임들의 매끄러움(smoothness)을 확보하기 위하여, 네트워크 비디오 서버는 저해상도를 갖는 제 2 스트리밍 데이터를 간단히 디코딩하여 네트워크 비디오 서버의 오버헤드를 줄인다. 비디오 프레임들이 풀-스크린 모드에서 디스플레이되는 경우 비디오 프레임들의 선명도를 확보하기 위하여, 네트워크 비디오 서버는 대신에 고해상도를 갖는 제 1 스트리밍 데이터를 디코딩하여 고해상력(higher definition)을 갖는 비디오 프레임들을 출력한다. 따라서, 풀-스크린 모드 및 분할-스크린 모드 동안 선명하고 매끄러운 비디오 프레임들을 고려하여 네트워크 비디오 서버의 성능은 균형을 이룰 수 있다.In order to ensure the smoothness of video frames when video frames are displayed in split-screen mode, the network video server simply decodes the second streaming data of low resolution to reduce the overhead of the network video server. In order to ensure the sharpness of the video frames when the video frames are displayed in full-screen mode, the network video server instead decodes the first streaming data having a high resolution and outputs the video frames having a higher definition. Thus, the performance of the network video server can be balanced taking into account clear and smooth video frames during the full-screen mode and the split-screen mode.
본 발명에 따르면, 풀-스크린 모드 및 분할-스크린 모드 하에서 선명하고 매끄러운 프레임들을 출력하는 네트워크 비디오 서버, 및 네트워크 비디오 서버의 비디오 제어 방법이 제공된다.According to the present invention, there is provided a network video server for outputting clear and smooth frames under full-screen mode and split-screen mode, and a video control method of the network video server.
본 발명의 다른 목적들, 이점들 및 신규한 특징들은 첨부된 도면을 참조하여 다음의 상세한 설명으로부터 더욱 자명하게 될 것이다.Other objects, advantages and novel features of the present invention will become more apparent from the following detailed description with reference to the accompanying drawings.
도 1은 네트워크 감시 시스템에 적용되는 본 발명에 따른 네트워크 비디오 서버의 개략도이다.
도 2는 도 1의 네트워크 비디오 서버의 기능 블록도 이다.1 is a schematic diagram of a network video server according to the present invention applied to a network surveillance system.
2 is a functional block diagram of the network video server of FIG.
도 1을 참조하면, 본 발명에 따른 네트워크 비디오 서버(20)는 네트워크 감시 환경에 적용되며, 네트워크(30)를 통해 복수의 네트워크 카메라(10)에 연결되고, 네트워크 카메라들(10)로부터 복수의 스트리밍 데이터 세트들을 각각 수신한다. 각각의 스트리밍 데이터 세트는 각 네트워크 카메라(10)로부터 출력된 제 1 스트리밍 데이터 조각 및 제 2 스트리밍 데이터 조각을 가진다. 각각의 스트리밍 데이터 세트의 제 1 스트리밍 데이터 조각 및 제 2 스트리밍 데이터 조각은 각각 제 1 이미지 해상도 및 제 2 이미지 해상도를 가지며, 제 1 이미지 해상도는 제 2 이미지 해상도보다 더 높다. 예를 들어, 제 1 이미지 해상도는 D1 해상도 또는 720x480 픽셀, 2M 해상도 또는 1600x1200 픽셀, 1.3M 해상도 또는 1280x1024 픽셀을 따르고, 제 2 이미지 해상도는 CIF (Common Intermediate Format) 해상도 또는 360x240 픽셀을 따른다.Referring to FIG. 1, a
도 2를 참조하면, 네트워크 비디오 서버(20)는 프로세서(21), 복수의 비디오 전송 포트들(22), 저장 유닛(23), 디코딩 유닛(24), 출력 포트(25) 및 사용자 인터페이스(26)를 가진다.Referring to FIG. 2, the
프로세서(21)는 비디오 제어 프로세스를 실행한다. 비디오 전송 포트들(22)은 프로세서(21)에 연결되고, 네트워크(30)을 통해 네트워크 카메라들(10)에 각각 연결되어 네트워크 카메라들(10)로부터 스트리밍 데이터 세트들을 각각 수신하도록 구성된다. 저장 유닛(23)은 프로세서(21)에 연결되며, 프로세서(21)에 의해 제어되어 비디오 전송 포트들(22)로부터 각각 수신된 스트리밍 데이터 세트들을 저장 유닛(23)에 저장한다. 디코딩 유닛(24)은 프로세서(21)에 연결되어 제 1 스트리밍 데이터 조각들 또는 제 2 스트리밍 데이터 조각들을 비디오 데이터 조각으로 디코딩하고, 비디오 데이터 조각을 출력한다. 출력 포트(25)는 디코딩 유닛(24)에 연결되며, 디스플레이 장치(40)와 연결되어 디코딩 유닛(24)에 의해 처리된 비디오 데이터 조각을 디스플레이 장치(40)로 전송하도록 구성된다. 사용자 인터페이스(26)는 네트워크 비디오 서버(20)를 동작시키기 위한 동작 명령을 수신하고, 동작 명령을 프로세서(21)로 전송하여 프로세서(21)로 하여금 네트워크 비디오 서버(20)를 제어하도록 하여 네트워크 비디오 서버(20)가 동작 명령에 따라 동작하도록 기능한다. 예를 들어, 사용자들은 사용자 인터페이스(26)의 동작을 통해 네트워크 비디오 서버(20)를 실시간 모드 또는 재생 모드로 설정할 수 있다. 실시간 모드 동안, 프로세서(21)는 비디오 전송 포트들(22)로부터 스트리밍 데이터 세트들을 수신하고, 제 1 스트리밍 데이터 조각들 또는 제 2 스트리밍 데이터 조각들을 디코딩 유닛(24)으로 전송하고, 디코딩 유닛(24)을 제어하여 제 1 스트리밍 데이터 조각들 또는 제 2 스트리밍 데이터 조각들을 비디오 데이터로 디코딩하고 비디오 데이터를 출력하도록 한다. 재생 모드 동안, 프로세서(21)는 저장 유닛(23)에 저장된 제 1 스트리밍 데이터 조각들 또는 제 2 스트리밍 데이터 조각들을 검색하여 디코딩 유닛(24)으로 전송하고, 디코딩 유닛(24)을 제어하여 제 1 스트리밍 데이터 조각들 또는 제 2 스트리밍 데이터 조각들을 비디오 데이터로 디코딩하고 비디오 데이터를 출력한다.
프로세서(21)에 의해 실행되는 비디오 제어 프로세스는 네트워크 비디오 서버(20)가 실시간 모드 또는 재생 모드에 있을 때 적용될 수 있으며, 사용자 인터페이스(26)의 동작을 통해 선택되는 풀-스크린 모드 및 분할-스크린 모드를 가진다. 풀-스크린 모드가 선택되는 경우, 네트워크 카메라(10)는 사용자 인터페이스(26)의 동작을 통해 추가로 선택된다. 프로세서(21)는 네트워크 비디오 서버(20)가 실시간 모드에 있는 경우 선택된 네트워크 카메라(10)에 의해 출력된 제 1 스트리밍 데이터 조각을 대응하는 비디오 전송 포트(22)로부터 수신하거나, 또는 네트워크 비디오 서버(20)가 재생 모드에 있는 경우 선택된 네트워크 카메라(10)와 관련된 제 1 스트리밍 데이터 조각을 저장 유닛(23)에서 검색한다. 프로세서(21)는 수신 또는 검색된 제 1 스트리밍 데이터 조각을 디코딩 유닛(24)으로 전송하여, 디코딩 유닛(24)으로 하여금 제 1 스트리밍 데이터 조각을 풀-스크린 모드 용으로 디스플레이될 비디오 데이터 프레임으로 디코딩하고 비디오 데이터 프레임을 출력 포트(25)로 전송하도록 한다. 분할-스크린 모드가 선택되는 경우, 모든 네트워크 카메라들(10)이 자동으로 선택된다. 프로세서(21)는 네트워크 비디오 서버(20)가 실시간 모드에 있는 경우 각 네트워크 카메라(10)에 의해 출력된 제 2 스트리밍 데이터 조각을 대응하는 비디오 전송 포트(22)로부터 수신하거나, 또는 네트워크 비디오 서버(20)가 재생 모드에 있는 경우 네트워크 카메라(10)와 관련된 제 2 스트리밍 데이터 조각을 저장 유닛(23)에서 검색한다. 프로세서(21)는 수신 또는 검색된 제 2 스트리밍 데이터를 디코딩 유닛(24)으로 추가로 전송하여, 디코딩 유닛(24)으로 하여금 제 2 스트리밍 데이터 조각을 비디오 데이터 조각으로 디코딩하고, 모든 네트워크 카메라들(10)의 비디오 데이터 조각들을 분할-스크린 모드 용으로 디스플레이될 비디오 데이터 프레임으로 결합하여, 비디오 데이터 프레임을 출력 포트(25)로 전송하도록 한다. 분할-스크린 모드 동안, 각각의 비디오 데이터 프레임은 네트워크 카메라들(10)의 개수와 동일한 개수의 복수의 서브-윈도우들(sub-windows)로 분할될 수 있다. 예를 들어, 16개의 네트워크 카메라들(10)이 있는 경우, 각각의 비디오 데이터 프레임은 16개의 서브-윈도우들을 가진다. The video control process executed by the
프로세서(21)는 물리적으로 멀티-스레드(multi-thread) 접근법에 의해 구현될 수 있다. 예를 들어, 4 개의 네트워크 카메라들(10)이 있다고 가정해 본다. 각 네트워크 카메라(10)가 한번에 제 1 스트리밍 데이터 조각 및 제 2 스트리밍 데이터 조각을 동시에 출력할 때, 네트워크 카메라들(10)의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 동시에 수신하여 제 1 및 제 2 스트리밍 데이터 조각들을 저장 유닛(23)에 저장하기 위하여 프로세서(21)와 비디오 전송 포트들(22) 사이에는 8 개의 스레드들이 요구된다. 또한, 프로세서(21)로부터 디코딩 유닛(24)으로 제 1 및 제 2 스트리밍 데이터 조각들을 전송하기 위하여 프로세서(21)와 디코딩 유닛(24) 사이에는 8개의 스레드들이 요구되며, 저장 유닛(23)으로부터 제 1 및 제 2 스트리밍 유닛 데이터를 검색하기 위하여 프로세서(21)와 저장 유닛(23) 사이에는 적어도 하나의 스레드가 요구된다.
네트워크 비디오 서버(20)가 실시간 모드 및 분할-스크린 모드에 있는 경우, 프로세서(21)는 프로세서(21)와 비디오 전송 포트들(22) 사이에 스레드들 중 4 개를 채택하여, 비디오 전송 포트들(22)로부터 수신된 제 2 스트리밍 데이터 조각들을 4 개의 스레드들을 통해 디코딩 유닛(24)으로 전송한다. 네트워크 비디오 서버(20)가 실시간 모드 및 풀-스크린 모드에 있는 경우, 프로세서(21)는 프로세서(21)와 비디오 전송 포트들(22) 사이에 스레드들 중 하나를 채택하여 대응하는 비디오 전송 포트(22)로부터 수신된 제 2 스트리밍 데이터 조각들을 스레드를 통해 디코딩 유닛(24)으로 전송한다. 네트워크 비디오 서버(20)가 재생 모드, 및 분할-스크린 모드 또는 풀-스크린 모드에 있는 경우 프로세서(21)의 동작은, 프로세서(21)가 요청된 스트리밍 데이터를 검색하기 위하여 프로세서(21)와 저장 유닛(23) 사이의 스레드를 여전히 사용할 필요가 있는 것을 제외하고는, 기본적으로 네트워크 비디오 서버(20)가 실시간 모드, 및 분할-스크린 모드 또는 풀-스크린 모드에 있는 경우와 유사하다. 네트워크 비디오 서버(20)의 실시간 모드 및 재생 모드는 동시에 존재하지 않으므로, 대응하는 스트리밍 데이터를 프로세서(21)로부터 디코딩 유닛(24)으로 전송하기 위해서는 프로세서(21)와 디코딩 유닛(24) 사이에 스레드들 중 4개만이 요구된다. 따라서, 프로그램 코딩은 단순화될 수 있고, 네트워크 비디오 서버(20)의 전체적인 동작 성능이 향상되도록 메모리가 더욱 절약될 수 있다.When the
요컨대, 본 발명은 각 네트워크 카메라(10)로부터 한 번에 D1, 2M 또는 1.3M 해상도와 같은 고해상도를 갖는 스트리밍 데이터 조각 및 CIP 해상도와 같은 저해상도를 갖는 스트리밍 데이터 조각을 동시에 수신한다. 네트워크 비디오 서버(20)가 분할-스크린 모드에 있는 동안 사용자들이 실시간 모드 또는 재생 모드에서 네트워크 카메라(10)에 의해 촬영된 분할-스크린 디스플레이를 보는 경우, 네트워크 비디오 서버(20)는 각 네트워크 카메라(10)로부터의 제 2 스트리밍 데이터를 디코딩하고 디코딩된 모든 제 2 스트리밍 데이터를 결합하여 비디오 데이터 프레임을 형성하고 출력함으로써, 네트워크 비디오 서버(20)의 오버헤드(overhead)를 줄이고, 비디오 데이터 프레임을 디스플레이할 때 매끄러움을 확보할 수 있다. 네트워크 비디오 서버(20)가 풀-스크린 모드에 있는 동안 사용자들이 실시간 모드 또는 재생 모드에서 네트워크 카메라들(10) 중 하나에 의해 촬영된 풀-스크린 디스플레이를 보는 경우, 네트워크 비디오 서버(20)는 네트워크 카메라(10)로부터의 제 1 스트리밍 데이터를 디코딩하여 비디오 데이터 프레임을 형성함으로써 출력된 프레임의 선명도를 확보할 수 있다. 따라서, 본 발명은 실제 감시 조건에 맞춘 희망하는 해상도 및 성능을 제공하여 풀-스크린 모드 및 분할-스크린 모드에서 선명하고 매끄러운 비디오 데이터 프레임들을 출력할 수 있다. In short, the present invention simultaneously receives from each network camera 10 a piece of streaming data having a high resolution such as D1, 2M or 1.3M resolution and a piece of streaming data having a low resolution such as CIP resolution. While the
본 발명의 구성 및 기능과 함께 본 발명의 여러 특징들 및 이점들이 앞에서 명확히 설명이 되었지만, 개시된 내용은 단지 예시적일 뿐이다. 세부 사항들은 변형될 수 있으며, 특히 본 발명의 기본 원리 내에서 구성 요소들의 형상, 크기, 배치 사항은 첨부된 특허청구범위를 표현한 용어의 폭넓고 일반적인 의미에 의해 나타나는 정도까지 변형될 수 있다.While the various features and advantages of the present invention, together with the configuration and function of the present invention, have been described clearly above, the disclosed subject matter is merely illustrative. The details can be modified, and in particular within the basic principles of the invention the shape, size and arrangement of the components can be modified to the extent indicated by the broad and general meaning of the terminology expressed in the appended claims.
10: 카메라
20: 네트워크 비디오 서버
30: 네트워크10: camera
20: network video server
30: network
Claims (8)
사전 설정되어 수신되는 스트리밍 데이터 세트 및 이전에 수신된 스트리밍 데이터 세트 중 하나의 세트의 제 1 스트리밍 데이터 조각을 선택적으로 추출하여 비디오 데이터 프레임으로 디코딩하고, 상기 비디오 데이터 프레임을 출력하며, 이전에 수신된 상기 스트리밍 데이터 세트는 상기 비디오 서버에 추가로 저장되어 있는, 풀-스크린 모드; 및
사전 설정되어 수신되는 각각의 스트리밍 데이터 세트 및 이전에 수신된 각각의 스트리밍 데이터 세트 중 하나의 제 2 스트리밍 데이터 조각을 추출하여 비디오 데이터 조각으로 디코딩하고, 디코딩된 비디오 데이터 조각들을 비디오 데이터 프레임으로 결합하고, 상기 비디오 데이터 프레임을 출력하며, 이전에 수신된 각각의 스트리밍 데이터 세트는 상기 비디오 서버에 추가로 저장되어 있는, 분할-스크린 모드를 포함하는, 비디오 서버의 비디오 제어 방법. A video control method of a video server for receiving a plurality of streaming data sets, each streaming data set having a first streaming data piece having a first image resolution and a second streaming data piece having a second image resolution, In the video control method of the video server, the first image resolution is higher than the second image resolution,
Selectively extract a first streaming data fragment of one of a preset and received streaming data set and a previously received streaming data set to decode it into a video data frame, output the video data frame, and receive the previously received The streaming data set is further stored in the video server; And
Extract a second streaming data piece of each of the preset received and each received streaming data set and each received streaming data set, decode it into video data pieces, combine the decoded video data pieces into a video data frame, and And a split-screen mode for outputting the video data frames, wherein each previously received set of streaming data is further stored in the video server.
프로세서;
상기 프로세서에 연결되어 상기 스트리밍 데이터 세트들을 수신하는 복수의 비디오 전송 포트들;
상기 프로세서와 연결되어 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들 중 어느 하나를 상기 비디오 데이터 프레임으로 디코딩하여 상기 비디오 데이터 프레임을 출력하는 디코딩 유닛;
상기 디코딩 유닛과 연결되어 디코딩된 비디오 데이터 프레임을 출력하는 출력 포트; 및
동작 명령을 수신하고, 상기 동작 명령을 상기 프로세서로 전송하여 상기 프로세서로 하여금 상기 네트워크 비디오 서버를 제어하여 상기 네트워크 비디오 서버가 상기 동작 명령에 따라 동작하도록 하는 사용자 인터페이스를 포함하며,
상기 풀-스크린 모드 동안, 상기 프로세서는 상기 사용자 인터페이스로부터 출력된 상기 동작 명령에 따라 대응하는 비디오 전송 포트로부터 상기 스트리밍 데이터 세트들 중 사전 설정된 하나의 세트의 제 1 스트리밍 데이터 조각을 수신하고, 상기 제 1 스트리밍 데이터 조각을 상기 디코딩 유닛으로 전송하여 상기 디코딩 유닛으로 하여금 상기 제 1 스트리밍 데이터 조각을 상기 비디오 데이터 프레임으로 디코딩하도록 하며, 상기 비디오 데이터 프레임을 출력하고,
상기 분할-스크린 모드 동안, 상기 프로세서는 상기 사용자 인터페이스로부터 출력된 상기 동작 명령에 따라 대응하는 비디오 전송 포트로부터 각각의 스트리밍 데이터 세트의 제 2 스트리밍 데이터 조각을 수신하고, 상기 스트리밍 데이터 세트들 중 각각의 세트의 제 2 스트리밍 데이터 조각을 상기 디코딩 유닛으로 전송하여 상기 디코딩 유닛으로 하여금 각각의 스트리밍 데이터 세트의 제 2 스트리밍 데이터 조각을 상기 비디오 데이터 조각으로 디코딩하도록 하며, 비디오 데이터 조각들을 상기 비디오 데이터 프레임으로 결합하여 상기 비디오 데이터 프레임을 출력하는, 네트워크 비디오 서버.A network video server executing the video control method according to claim 1,
A processor;
A plurality of video transmission ports coupled to the processor to receive the streaming data sets;
A decoding unit coupled to the processor to decode any one of the first streaming data pieces and the second streaming data pieces of the streaming data sets into the video data frame and output the video data frame;
An output port connected to the decoding unit to output a decoded video data frame; And
A user interface for receiving an operation command and transmitting the operation command to the processor to cause the processor to control the network video server so that the network video server operates according to the operation command,
During the full-screen mode, the processor receives a first set of streaming data pieces of one of the streaming data sets from a corresponding video transmission port according to the operation command output from the user interface, and the first Send one streaming data fragment to the decoding unit to cause the decoding unit to decode the first streaming data fragment into the video data frame, output the video data frame,
During the split-screen mode, the processor receives a second streaming data piece of each streaming data set from a corresponding video transmission port in accordance with the operation command output from the user interface, and each of the streaming data sets Send the second streaming data piece of the set to the decoding unit to cause the decoding unit to decode the second streaming data piece of each streaming data set into the video data piece, and combine video data pieces into the video data frame. And output the video data frame.
상기 프로세서와 연결되고, 상기 프로세서에 의해 제어되어 상기 비디오 전송 포트들에 의해 수신된 상기 스트리밍 데이터 세트들을 저장하는 저장 유닛을 더 포함하며,
상기 풀-스크린 모드 동안, 상기 프로세서는 대응하는 비디오 전송 포트로부터 상기 스트리밍 데이터 세트들 중 사전 설정된 세트의 제 1 스트리밍 데이터 조각을 수신하거나 또는 상기 사용자 인터페이스로부터 출력된 상기 동작 명령에 따라 상기 저장 유닛으로부터 사전 설정된 상기 스트리밍 데이터 세트의 제 1 스트리밍 데이터 조각을 검색하고, 상기 제 1 스트리밍 데이터 조각을 상기 디코딩 유닛으로 전송하여 상기 디코딩 유닛으로 하여금 상기 제 1 스트리밍 데이터 조각을 상기 비디오 데이터 프레임으로 디코딩하도록 하며, 상기 비디오 데이터 프레임을 출력하고,
분할-스크린 모드 동안, 상기 프로세서는 상기 사용자 인터페이스로부터 출력된 상기 동작 명령에 따라 상기 저장 유닛 또는 대응하는 상기 비디오 전송 포트로부터 상기 스트리밍 데이터 세트들 중 각각의 세트의 제 2 스트리밍 데이터 조각을 검색 또는 수신하고, 각각의 스트리밍 데이터 세트의 제 2 스트리밍 데이터 조각을 상기 디코딩 유닛으로 전송하여 상기 디코딩 유닛으로 하여금 각각의 스트리밍 데이터 세트의 제 2 스트리밍 데이터 조각을 상기 비디오 데이터 조각으로 디코딩하도록 하며, 비디오 데이터 조각들을 상기 비디오 프레임으로 결합하여 상기 비디오 데이터 프레임을 출력하는, 네트워크 비디오 서버.The method of claim 3, wherein
A storage unit coupled to the processor, the storage unit controlled by the processor to store the streaming data sets received by the video transmission ports,
During the full-screen mode, the processor receives a first set of streaming data pieces of the streaming data sets from a corresponding video transmission port or from the storage unit in accordance with the operation command output from the user interface. Retrieve a first streaming data piece of the preset streaming data set, and send the first streaming data piece to the decoding unit to cause the decoding unit to decode the first streaming data piece into the video data frame, Output the video data frame,
During the split-screen mode, the processor retrieves or receives a second streaming data piece of each of the streaming data sets from the storage unit or corresponding video transmission port in accordance with the operation command output from the user interface. And send a second streaming data piece of each streaming data set to the decoding unit to cause the decoding unit to decode a second streaming data piece of each streaming data set into the video data piece. And combine the video frames to output the video data frames.
상기 프로세서와 상기 비디오 전송 포트들 사이에서 실행되고, 상기 비디오 전송 포트들 개수의 2 배이며, 상기 비디오 전송 포트들로부터 각각 수신된 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 상기 프로세서로 각각 전송하는 복수의 제 1 스레드들; 및
상기 프로세서와 상기 디코딩 유닛 사이에서 실행되고, 상기 비디오 전송 포트들 개수의 2 배이며, 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 상기 프로세서로부터 상기 디코딩 유닛으로 각각 전송하는 복수의 제 2 스레드들을 더 포함하는, 네트워크 비디오 서버. The method of claim 3, wherein
First streaming data fragments and second streaming data fragments of the streaming data sets, each running between the processor and the video transmission ports, twice the number of the video transmission ports and received from the video transmission ports, respectively. A plurality of first threads for respectively transmitting the data to the processor; And
Executed between the processor and the decoding unit, doubling the number of video transmission ports, and transmitting the first streaming data pieces and the second streaming data pieces of the streaming data sets from the processor to the decoding unit, respectively. Further comprising a plurality of second threads.
상기 프로세서와 상기 비디오 전송 포트들 사이에서 실행되고, 상기 비디오 전송 포트들 개수의 2 배이며, 상기 비디오 전송 포트들로부터 각각 수신된 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 상기 프로세서로 각각 전송하는 복수의 제 1 스레드들; 및
상기 프로세서와 상기 디코딩 유닛 사이에서 실행되고, 상기 비디오 전송 포트들 개수와 동일한 개수이며, 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들 중 하나를 상기 프로세서로부터 상기 디코딩 유닛으로 각각 전송하는 복수의 제 2 스레드들을 더 포함하는, 네트워크 비디오 서버.The method of claim 4, wherein
First streaming data fragments and second streaming data fragments of the streaming data sets, each running between the processor and the video transmission ports, twice the number of the video transmission ports and received from the video transmission ports, respectively. A plurality of first threads for respectively transmitting the data to the processor; And
A one of the first streaming data pieces and the second streaming data pieces of the streaming data sets from the processor to the decoding unit, which is executed between the processor and the decoding unit and is equal to the number of the video transmission ports. And further comprising a plurality of second threads, each transmitting.
상기 프로세서와 상기 전송 포트들 사이에서 실행되며, 상기 비디오 전송 포트들 개수의 2 배이고, 상기 비디오 전송 포트들로부터 각각 수신된 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 각각 상기 프로세서로 전송하는 복수의 제 1 스레드들, 및 상기 프로세서와 상기 전송 포트들 사이에서 실행되며 저장 유닛으로부터 상기 스트리밍 데이터 세트들을 검색하는 제 3 스레드; 및
상기 프로세서와 상기 디코딩 유닛 사이에서 실행되며, 상기 비디오 전송 포트들 개수의 2 배이고, 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 각각 상기 프로세서로부터 상기 디코딩 유닛으로 전송하는 복수의 제 2 스레드들을 더 포함하는, 네트워크 비디오 서버.The method of claim 5, wherein
Running between the processor and the transmission ports, twice the number of the video transmission ports, respectively, the first streaming data fragments and the second streaming data fragments of the streaming data sets received from the video transmission ports, respectively. A plurality of first threads transmitting to the processor, and a third thread running between the processor and the transmission ports and retrieving the streaming data sets from a storage unit; And
A plurality of executions between the processor and the decoding unit, twice the number of the video transmission ports, and transmitting first streaming data fragments and second streaming data fragments of the streaming data sets from the processor to the decoding unit, respectively. Further comprising second threads of the network video server.
상기 프로세서와 비디오 전송 포트들 사이에서 실행되며, 상기 비디오 전송 포트들 개수의 2 배이고, 상기 비디오 전송 포트들로부터 각각 수신된 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들을 상기 전송 포트들로 각각 전송하는 복수의 제 1 스레드들, 및 상기 프로세서와 상기 비디오 전송 포트들 사이에서 실행되며 상기 저장 유닛으로부터 상기 스트리밍 데이터 세트들을 검색하는 제 3 스레드; 및
상기 프로세서와 상기 디코딩 유닛 사이에서 실행되며, 상기 비디오 전송 포트들 개수와 동일한 개수이고, 상기 스트리밍 데이터 세트들의 제 1 스트리밍 데이터 조각들 및 제 2 스트리밍 데이터 조각들 중 하나를 상기 프로세서로부터 상기 디코딩 유닛으로 각각 전송하는 복수의 제 2 스레드들을 포함하는, 네트워크 비디오 서버.The method according to claim 6,
The first streaming data fragments and the second streaming data fragments of the streaming data sets received from the video transmission ports, each being twice the number of the video transmission ports, running between the processor and the video transmission ports. A plurality of first threads each transmitting to transport ports, and a third thread running between the processor and the video transmission ports and retrieving the streaming data sets from the storage unit; And
A one of the first streaming data pieces and the second streaming data pieces of the streaming data sets from the processor to the decoding unit, which is executed between the processor and the decoding unit and is equal in number to the video transmission ports. And a plurality of second threads, each transmitting.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110035252A KR101231009B1 (en) | 2011-04-15 | 2011-04-15 | Network video server and video control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110035252A KR101231009B1 (en) | 2011-04-15 | 2011-04-15 | Network video server and video control method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120117476A KR20120117476A (en) | 2012-10-24 |
KR101231009B1 true KR101231009B1 (en) | 2013-02-07 |
Family
ID=47285429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110035252A KR101231009B1 (en) | 2011-04-15 | 2011-04-15 | Network video server and video control method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101231009B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566788A (en) * | 2017-08-15 | 2018-01-09 | 深圳市天视通电子科技有限公司 | Port and the mapping method and system of Network Personal Video Recorder passage based on interchanger |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003324728A (en) * | 2002-05-01 | 2003-11-14 | Canon Inc | Imaging apparatus |
JP2006093839A (en) | 2004-09-21 | 2006-04-06 | Mitsubishi Electric Corp | Monitoring terminal unit and monitoring system |
KR101077777B1 (en) | 2010-04-26 | 2011-10-28 | 주식회사 프로브 | Network camera system, method for processing video data thereof and method for managing thereof |
-
2011
- 2011-04-15 KR KR1020110035252A patent/KR101231009B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003324728A (en) * | 2002-05-01 | 2003-11-14 | Canon Inc | Imaging apparatus |
JP2006093839A (en) | 2004-09-21 | 2006-04-06 | Mitsubishi Electric Corp | Monitoring terminal unit and monitoring system |
KR101077777B1 (en) | 2010-04-26 | 2011-10-28 | 주식회사 프로브 | Network camera system, method for processing video data thereof and method for managing thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20120117476A (en) | 2012-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6753902B2 (en) | Storage management of data streamed from video source devices | |
KR102324326B1 (en) | Streaming multiple encodings encoded using different encoding parameters | |
US11700419B2 (en) | Re-encoding predicted picture frames in live video stream applications | |
CN108965883A (en) | The system and method that video content is encoded using virtual intra frame | |
EP2555517A1 (en) | Network video server and video control method thereof | |
US20200304551A1 (en) | Immersive Media Metrics For Display Information | |
KR20150086723A (en) | Image Recoding System | |
CN112714320B (en) | Decoding method, decoding device and computer readable storage medium | |
CN111866457B (en) | Monitoring image processing method, electronic device, storage medium and system | |
CN106231225A (en) | A kind of network hard disk video recorder data processing method and system | |
US20140308017A1 (en) | Imaging device, video recording device, video display device, video monitoring device, video monitoring system, and video monitoring method | |
KR101680545B1 (en) | Method and apparatus for providing panorama moving picture generation service | |
US20120254933A1 (en) | Network video server and video control method thereof | |
CN114567801A (en) | Method and system for sharing snapshots extracted from video transmission | |
US8854435B2 (en) | Viewpoint navigation | |
KR101231009B1 (en) | Network video server and video control method thereof | |
US20230025664A1 (en) | Data processing method and apparatus for immersive media, and computer-readable storage medium | |
KR20140117889A (en) | Client apparatus, server apparatus, multimedia redirection system and the method thereof | |
CN110798700B (en) | Video processing method, video processing device, storage medium and electronic equipment | |
US11638044B1 (en) | Preparation of warm inputs for digital content streaming | |
US20160269758A1 (en) | Drawing operation replay in memory | |
CN102638645B (en) | Web camera system, video recording and playing main machine and image control method of video recording and playing main machine | |
CN114339426A (en) | Live video encoding and decoding forwarding system | |
KR20230013461A (en) | Video storing apparatus, video monitoring apparatus and method performed in the same | |
Li et al. | Design and realization of embedded network video surveillance system based on the DM365 |
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: 20151209 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170227 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180105 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190117 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20200115 Year of fee payment: 8 |