KR101894889B1 - Method and apparatus for providing video on demand service - Google Patents
Method and apparatus for providing video on demand service Download PDFInfo
- Publication number
- KR101894889B1 KR101894889B1 KR1020170044962A KR20170044962A KR101894889B1 KR 101894889 B1 KR101894889 B1 KR 101894889B1 KR 1020170044962 A KR1020170044962 A KR 1020170044962A KR 20170044962 A KR20170044962 A KR 20170044962A KR 101894889 B1 KR101894889 B1 KR 101894889B1
- Authority
- KR
- South Korea
- Prior art keywords
- nal
- unit
- nal unit
- packet
- value
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
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/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
- H04N21/2225—Local VOD servers
-
- 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/236—Assembling 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/23605—Creation or processing of packetized elementary streams [PES]
-
- 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/236—Assembling 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/23614—Multiplexing of additional data and video streams
-
- 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/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은, VoD 서비스 제공 기술과 관련된 것으로, 더욱 상세하게는 VoD 서비스에 최적화된 데이터가 전송되도록 하는, 새로운 VoD 서비스 전송 효율화 방안에 관한 것이다. BACKGROUND OF THE
최근 디지털 방송을 통한 주문형 비디오(Video On Demand, VoD) 서비스를 이용하는 사용자가 증가하고 있다. 이러한 VOD 서비스는, 컨텐츠 제공서버로부터 실시간으로 스트리밍 되는 공중파 방송과 달리 미리 컨텐츠를 저장해 두었다가 사용자의 주문 시 컨텐츠를 제공하는 방식으로 운영된다.2. Description of the Related Art Recently, users are increasingly using Video On Demand (VoD) services through digital broadcasting. Unlike the over-the-air broadcasting streamed in real time from the contents providing server, the VOD service stores the contents in advance and operates in such a manner that the contents are provided at the time of user's ordering.
이러한 기존 VoD 서비스 제공 방식은, 공중파 방송 서비스를 목적으로 생성된 컨텐츠, 또는 영화관에서 상영 중/예정/완료된 컨텐츠, 인터넷을 통해 전파된 컨텐츠 등을 포함하는 영상컨텐츠 그대로를 저장하였다가 전송하게 되므로, VoD 서비스를 제공하는데 불필요한 정보들까지 포함된 영상컨텐츠가 전송될 수 밖에 없어 전송 효율성이 감소하는 한계점이 존재한다. The existing VoD service providing method stores and transmits video content as it is, including content created for the purpose of over-the-air broadcasting service, content being screened / scheduled / completed in a movie theater, content transmitted through the Internet, There is a limitation in that transmission efficiency is reduced because video contents including unnecessary information for providing VoD service can not be transmitted.
예를 들어, 공중파 방송 서비스 제공을 위해 데이터가 존재하지 않는 비어있는 널패킷(NULL packet) 및 형식을 맞추기 위한 의미 없는 필러데이터(Filler Data)가 삽입된 영상컨텐츠가 실시간으로 스트리밍되어 전송된 경우, 기존 VoD 서비스 제공 방식에서는 영상컨텐츠 그대로를 저장하였다가 사용자의 주문 시 제공하게 되므로 불필요한 널패킷(NULL packet) 및 필러데이터(Filler Data)까지 전송하여 자원을 낭비하며 전송 효율성을 감소시키게 된다. For example, in the case where empty NULL packets in which no data exists for providing over-the-air broadcasting service and image contents in which meaningless filler data for matching the format are inserted are streamed in real time, In the existing VoD service providing method, since the image contents are stored and provided at the time of the user's order, unnecessary null packet and filler data are transmitted to wastes resources and reduces transmission efficiency.
이에, 본 발명에서는, VoD 서비스에 최적화된 VoD컨텐츠가 제공되도록 영상컨텐츠에 포함된 불필요한 정보들(예: 필러데이터(Filler Data), 널패킷(NULL packet))을 제거하여 전송하는 방안을 제안하고자 한다. Accordingly, the present invention proposes a method of eliminating unnecessary information (e.g., filler data, null packet) included in image contents so as to provide VoD contents optimized for the VoD service do.
본 발명은 상기한 사정을 감안하여 창출된 것으로서, 본 발명에서 도달하고자 하는 목적은, 상세하게는 VoD 서비스에 최적화된 데이터가 전송되도록 하는, 새로운 VOD 서비스 전송 효율화 방안을 제공하기 위한 것이다.SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a new VOD service transmission efficiency scheme, in which optimized data is transmitted to a VoD service.
상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 VoD서비스제공장치는, VoD 서비스 제공을 위한 프로그램이 다중화되어 적어도 하나의 TS패킷으로 재구성되면, 상기 TS패킷 별로 전송되는 데이터의 구분을 위한 제1 특정필드를 확인한 결과를 기반으로 널패킷(Null Packet)을 검출하는 패킷관리부; 상기 TS패킷 중 상기 널패킷을 제거한 나머지 TS패킷이 인코딩되어 적어도 하나의 NAL유닛(NAL Unit)을 갖도록 재구성되면, 상기 NAL유닛의 타입을 구분하기 위한 제2 특정필드를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출하는 유닛관리부를 포함하는 것을 특징으로 한다.According to a first aspect of the present invention, there is provided an apparatus for providing a VoD service, the apparatus comprising: means for dividing data transmitted by TS packets, when a program for providing a VoD service is multiplexed and reconstructed into at least one TS packet; A packet managing unit for detecting a null packet based on a result of checking a specific field; If the remaining TS packets after the removal of the null packet of the TS packets are encoded and reconstructed to have at least one NAL unit, a second specific field for identifying the type of the NAL unit, And a unit management unit for detecting Filler Data.
상기 TS패킷은 TS헤더 및 TS페이로드를 포함하며, 상기 제1 특정필드는, 상기 TS헤더 내 적어도 하나의 필드 중 상기 TS페이로드를 통해 전송되는 데이터의 구분을 위한 식별자를 표시하는 필드인 것을 특징으로 한다.The TS packet includes a TS header and a TS payload, and the first specific field is a field for displaying an identifier for distinguishing data transmitted through the TS payload among at least one field in the TS header .
상기 패킷관리부는, 상기 제1 특정필드의 식별자의 값과 기 설정된 TS특정값을 비교한 결과를 기반으로 상기 TS페이로드를 통해 전송되는 데이터가 존재하지 않는 상기 널패킷(Null Packet)을 검출하여 제거하는 것을 특징으로 한다.The packet management unit detects the null packet in which there is no data to be transmitted through the TS payload based on a result of comparing the value of the identifier of the first specific field with a TS specified value And removing it.
상기 NAL유닛(NAL Unit)은 NAL헤더 및 NAL페이로드를 포함하며, 상기 제2 특정필드는, 상기 NAL헤더 내 적어도 하나의 필드 중 해당 NAL유닛의 타입을 구분하기 위한 식별자를 표시하는 필드인 것을 특징으로 한다.The NAL unit includes a NAL header and a NAL payload, and the second specific field is a field for displaying an identifier for identifying a type of the corresponding NAL unit among at least one field in the NAL header .
상기 유닛관리부는, 상기 제2 특정필드의 식별자의 값이 제1 NAL특정값을 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI(Supplemental enhancement information) 타입을 갖는 것으로 판단하는 것을 특징으로 한다.The unit management unit may further include a supplemental enhancement information (SEI) type corresponding to supplementary supplementary information if the first NAL unit has a value of an identifier of the second specific field having a first NAL specific value, Is determined to have the same value.
상기 유닛관리부는, 상기 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 상기 필터데이터와 관련된 값과 일치하면, 상기 제1 NAL유닛이 상기 필러데이터인 것으로 판단하여 제거하는 것을 특징으로 한다.Wherein the unit management unit judges that the first NAL unit is the filler data and removes it if the value of the identifier of the first NAL payload associated with the first NAL unit coincides with the value associated with the filter data do.
상기 유닛관리부는, 상기 제2 특정필드의 식별자의 값이 제2 NAL특정값을 갖는 제2 NAL유닛이 존재하는 경우, 상기 제2 NAL유닛이 상기 필러데이터인 것으로 판단하여 제거하는 것을 특징으로 한다.The unit management unit may determine that the second NAL unit is the filler data and remove the second NAL unit when the value of the identifier of the second specific field is the second NAL unit value .
상기 목적을 달성하기 위한 본 발명의 제 2 관점에 따른 VoD서비스제공장치의 동작방법은, VoD 서비스 제공을 위한 프로그램이 다중화되어 적어도 하나의 TS패킷으로 재구성되면, 상기 TS패킷 별로 전송되는 데이터의 구분을 위한 제1 특정필드를 확인한 결과를 기반으로 널패킷(Null Packet)을 검출하는 패킷관리단계; 및 상기 TS패킷 중 상기 널패킷을 제거한 나머지 TS패킷이 인코딩되어 적어도 하나의 NAL유닛(NAL Unit)을 갖도록 재구성되면, 상기 NAL유닛의 타입을 구분하기 위한 제2 특정필드를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출하는 유닛관리단계를 포함하는 것을 특징으로 한다.According to a second aspect of the present invention, there is provided a method of operating a VoD service providing apparatus, the method comprising: when a program for providing a VoD service is multiplexed and reconstructed into at least one TS packet, A packet management step of detecting a null packet based on a result of checking a first specific field for the NACK packet; And a second specific field for identifying a type of the NAL unit when the remaining TS packet from which the null packet is removed is encoded and has at least one NAL unit, And a unit managing step of detecting data (filler data).
상기 TS패킷은 TS헤더 및 TS페이로드를 포함하며, 상기 제1 특정필드는, 상기 TS헤더 내 적어도 하나의 필드 중 상기 TS페이로드를 통해 전송되는 데이터의 구분을 위한 식별자를 표시하는 필드인 것을 특징으로 한다.The TS packet includes a TS header and a TS payload, and the first specific field is a field for displaying an identifier for distinguishing data transmitted through the TS payload among at least one field in the TS header .
상기 패킷관리단계는, 상기 제1 특정필드의 식별자의 값과 기 설정된 TS특정값을 비교한 결과를 기반으로 상기 TS페이로드를 통해 전송되는 데이터가 존재하지 않는 상기 널패킷(Null Packet)을 검출하여 제거하는 것을 특징으로 한다.The packet management step detects the null packet in which there is no data to be transmitted through the TS payload based on a result of comparing the value of the identifier of the first specific field with a predetermined TS specific value And then removed.
상기 NAL유닛(NAL Unit)은 NAL헤더 및 NAL페이로드를 포함하며, 상기 제2 특정필드는, 상기 NAL헤더 내 적어도 하나의 필드 중 해당 NAL유닛의 타입을 구분하기 위한 식별자를 표시하는 필드인 것을 특징으로 한다.The NAL unit includes a NAL header and a NAL payload, and the second specific field is a field for displaying an identifier for identifying a type of the corresponding NAL unit among at least one field in the NAL header .
상기 유닛관리단계는, 상기 제2 특정필드의 식별자의 값이 제1 NAL특정값을 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI(Supplemental enhancement information) 타입을 갖는 것으로 판단하는 것을 특징으로 한다.Wherein the unit management step comprises: when the first NAL unit having the value of the identifier of the second specific field has a first NAL specific value, the first NAL unit may perform supplemental enhancement information (SEI) corresponding to the supplementary supplementary information, Type is determined.
상기 유닛관리단계는, 상기 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 상기 필터데이터와 관련된 값과 일치하면, 상기 제1 NAL유닛이 상기 필러데이터인 것으로 판단하여 제거하는 것을 특징으로 한다.The unit managing step determines that the first NAL unit is the filler data and removes it if the value of the identifier of the first NAL payload associated with the first NAL unit matches the value associated with the filter data .
상기 유닛관리단계는, 상기 제2 특정필드의 식별자의 값이 제2 NAL특정값을 갖는 제2 NAL유닛이 존재하는 경우, 상기 제2 NAL유닛이 상기 필러데이터인 것으로 판단하여 제거하는 것을 특징으로 한다.Wherein the unit managing step determines that the second NAL unit is the filler data and removes the second NAL unit if the identifier of the second specific field has a second NAL specific value do.
이에, 본 발명의 VoD서비스제공장치 및 그 동작 방법에 따르면, VoD 서비스에 최적화된 데이터가 전송되도록 하는, 새로운 VoD 서비스 전송 효율화 방안을 제안함으로써, 불필요한 자원낭비 방지 및 부하감소를 통해 보다 신속하게 데이터를 제공할 수 있어 전반적인 VoD 서비스의 성능을 향상시키는 효과를 도출할 수 있다. Therefore, according to the VoD service providing apparatus and the operation method thereof of the present invention, a new VoD service transmission efficiency scheme that allows data optimized for the VoD service to be transmitted is proposed, thereby preventing unnecessary resource waste and reducing load, It is possible to obtain an effect of improving the performance of the overall VoD service.
도 1은 본 발명의 VoD서비스제공장치가 적용될 통신 환경을 보여주는 예시도이다.
도 2는 본 발명의 실시예에 따른 VoD서비스제공장치의 구성을 보여주는 블록도이다.
도 3은 본 발명의 실시예에 따른 영상컨텐츠의 프로그램 다중화 및 TS패킷의 구조를 나타내는 예시 도면이다.
도 4는 본 발명의 실시예에 따른 NAL(Network Abstraction Layer)로 재구성되었을 때 NAL유닛의 구성을 나타내는 예시 도면이다.
도 5는 본 발명의 실시예에 따른 VoD서비스제공장치의 동작 방법을 보여주는 동작 흐름도이다.1 is an exemplary diagram illustrating a communication environment to which the VoD service providing apparatus of the present invention is applied.
2 is a block diagram illustrating a configuration of a VoD service providing apparatus according to an embodiment of the present invention.
3 is an exemplary diagram illustrating a program multiplexing of image contents and a TS packet structure according to an embodiment of the present invention.
4 is an exemplary diagram showing a configuration of a NAL unit when reconfigured into a Network Abstraction Layer (NAL) according to an embodiment of the present invention.
5 is a flowchart illustrating an operation method of a VoD service providing apparatus according to an embodiment of the present invention.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It is noted that the technical terms used herein are used only to describe specific embodiments and are not intended to limit the invention. It is also to be understood that the technical terms used herein are to be interpreted in a sense generally understood by a person skilled in the art to which the present invention belongs, Should not be construed to mean, or be interpreted in an excessively reduced sense. Further, when a technical term used herein is an erroneous technical term that does not accurately express the spirit of the present invention, it should be understood that technical terms that can be understood by a person skilled in the art are replaced. In addition, the general terms used in the present invention should be interpreted according to a predefined or prior context, and should not be construed as being excessively reduced.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 명세서의 실시예에 대하여 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals refer to like or similar elements throughout the several views, and redundant description thereof will be omitted. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대하여 설명한다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
도 1은 본 발명의 VoD서비스제공장치가 적용될 통신 환경을 보여주고 있다.FIG. 1 shows a communication environment to which the VoD service providing apparatus of the present invention is applied.
도 1에 도시된 바와 같이, 본 발명이 적용될 통신 환경은, VoD서비스제공장치(100), 사용자단말(200) 및 컨텐츠 제공서버(300)를 포함하는 구성을 가질 수 있다.As shown in FIG. 1, the communication environment to which the present invention is applied may have a configuration including a VoD
VoD서비스제공장치(100)는, VoD 서비스 제공을 위해 미리 영상컨텐츠를 저장해 두었다가 사용자의 주문 시 VoD컨텐츠를 전송하는 장치로서, 특히 본 발명에서 제공하고자 하는 서비스 즉, VoD 서비스에 최적화된 데이터가 전송되도록 영상컨텐츠에 포함된 불필요한 정보들을 제거하여 VoD컨텐츠를 생성 및 전송하는, VoD 서비스 전송 효율화 방안이 실현되도록 하는 장치이다. The VoD
여기서, 영상컨텐츠는, 공중파 방송 서비스를 목적으로 생성된 컨텐츠, 영화관에서 상영 중/예정/완료된 컨텐츠, 인터넷을 통해 전파된 컨텐츠 등을 포함하며, 데이터가 존재하지 않는 비어있는 널패킷(NULL packet), 형식을 맞추기 위해 의미 없이 삽입되는 필러데이터(Filler Data) 등과 같은 VoD 서비스 제공에 불필요한 정보들이 포함되게 된다. Here, the image contents include contents generated for the over-the-air broadcasting service, contents being displayed / scheduled / completed in the movie theaters, contents transmitted through the Internet, and the like, and empty NULL packets, , Filler data inserted without meaning to match the format, and the like.
본 발명의 실시예에서는 VoD 서비스 제공에 불필요한 정보들이 널패킷(NULL packet) 및 필러데이터(Filler Data)인 것으로 언급하였으나, 이에 한정되지 않으며, 운영자의 설정에 따라 VoD 서비스 제공과 무관한 다른 정보들을 더 포함될 수도 있음은 물론이다. In the embodiment of the present invention, it is described that unnecessary information for VoD service is NULL packet and filler data. However, the present invention is not limited to this, and other information that is not related to VoD service provision Of course, be included.
이하에서는 설명의 편의를 위해, VoD 서비스 제공에 불필요한 정보가 널패킷(NULL packet) 및 필러데이터(Filler Data)인 것으로 언급하여 설명하도록 하겠다. Hereinafter, for convenience of description, it will be described that unnecessary information for VoD service provision is null packet and filler data.
즉, VoD서비스제공장치(100)는, 컨텐츠 제공서버(300)로부터 영상컨텐츠가 수신되면, 영상컨텐츠에 포함된 널패킷(NULL packet) 및 필러데이터(Filler Data)를 제거하여 VoD 서비스에 최적화된 VoD컨텐츠를 생성한 후 사용자단말(200)로 전송하게 되는 데, 보다 구체적인 내용은 후술하도록 하겠다.That is, when the video content is received from the
사용자단말(200)은, VoD 서비스 제공과 관련되는 네트워크를 통해 VoD컨텐츠를 제공받는다.The
컨텐츠 제공서버(300)는, VoD 서비스가 제공될 수 있도록 컨텐츠 공급자로부터 영상컨텐츠를 수신한 후 이를 VoD서비스제공장치(100)로 제공한다.The
이하에서는, 도 2를 참조하여 본 발명의 실시예에 따른 VoD서비스제공장치의 구성을 구체적으로 설명하겠다.Hereinafter, a configuration of a VoD service providing apparatus according to an embodiment of the present invention will be described in detail with reference to FIG.
도 2에 도시된 바와 같이, 본 발명에 따른 VoD서비스제공장치(100)는, VoD 서비스 제공을 위한 프로그램이 다중화되어 적어도 하나의 TS패킷으로 재구성되면, TS패킷 별로 전송되는 데이터의 구분을 위한 제1 특정필드를 확인한 결과를 기반으로 널패킷(Null Packet)을 검출하는 패킷관리부(110), 및 TS패킷 중 널패킷을 제거한 나머지 TS패킷이 인코딩되어 적어도 하나의 NAL유닛(NAL Unit)으로 재구성되면, NAL유닛의 타입을 구분하기 위한 제2 특정필드를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출하는 유닛관리부(120)를 포함하는 것을 특징으로 한다. 2, when a program for providing a VoD service is multiplexed and reconfigured into at least one TS packet, the
여기서, VoD 서비스 제공을 위한 프로그램은, 컨텐츠 제공서버(300)로부터 VoD 서비스 제공을 위해 수신되는 영상컨텐츠를 구성하는 적어도 하나의 비디오 데이터, 오디오, 데이터 등일 수 있다.Here, the program for providing the VoD service may be at least one video data, audio, data, etc. constituting the video content received for providing the VoD service from the
이에, VoD서비스제공장치(100)는, VoD 서비스에 최적화된 데이터가 전송되도록 영상컨텐츠로부터 널패킷(Null Packet) 및 필러데이터(Filler Data)를 제거하여 VoD컨텐츠를 생성 및 제공함으로써, 새로운 VOD 서비스 전송 효율화 방안을 실현할 수 있게 되는 데, 이하에서는 이를 위한 VoD서비스제공장치(100) 내 각 구성에 대해 구체적으로 설명하기로 한다.Accordingly, the VoD
이러한 본 발명의 VoD서비스제공장치(100)는, 상기 구성 이외에 컨텐츠 제공서버(300)과 연동하여 영상컨텐츠를 수신하거나 사용자단말(200)로 VoD컨텐츠를 제공하는 구성(예: 전송부, 통신부 등)을 더 포함하는 것이 바람직할 것이나, 설명의 편의를 위해 주요 특징 구성만 언급하여 설명하도록 하겠다.The VoD
패킷관리부(110)는, 영상컨텐츠에 포함된 널패킷(Null Packet)을 제거하는 기능을 수행한다. The
보다 구체적으로 패킷관리부(110)는, 컨텐츠 제공서버(300)로부터 VoD 서비스 제공을 위한 영상컨텐츠가 수신되면, 영상컨텐츠의 프로그램을 다중화하여 적어도 하나의 TS패킷으로 재구성한다.More specifically, when the video content for VoD service is received from the
이와 관련하여, 도 3에는 영상컨텐츠의 프로그램을 다중화하는 일례가 도시되어 있다.In this regard, FIG. 3 shows an example of multiplexing a program of image contents.
도 3의 (a)에 도시된 바와 같이, 패킷관리부(110)는, 영상컨텐츠를 구성하는 비디오, 오디오, 데이터 등을 포함하는 프로그램의 각 기본 스트림(ES)을 패킷타이져(111)를 통해 PES 스트림으로 패킷화한 후 각 PES 스트림이 TS Mux(112)를 통해 적어도 하나의 TS패킷을 포함하는 TS 스트림으로 재구성되도록 한다.3 (a), the
여기서, TS패킷은, TS 스트림을 구성하는 최소 단위로서, 도 3의 (b)에 도시된 바와 같이, TS헤더(410) 및 TS페이로드(420)를 포함한다.Here, the TS packet includes a TS header 410 and a TS payload 420, as shown in FIG. 3 (b), as a minimum unit constituting the TS stream.
TS헤더(410)는, TS 스트림을 구성하는 프로그램의 정보, 프로그램의 시간 정보 및 제어정보 등을 표시하기 위한 적어도 하나의 필드(F11-F19)를 포함한다. 특히, TS헤더(410)의 PID필드(F15)에는 TS페이로드(420)를 통해 전송되는 데이터의 구분을 위한 식별자가 표시된다.The TS header 410 includes at least one field F11-F19 for displaying information of a program constituting the TS stream, time information of the program, control information, and the like. In particular, the PID field F15 of the TS header 410 displays an identifier for distinguishing data transmitted through the TS payload 420. [
즉, PID필드(F15)에 표시되는 식별자의 값(value)에 따라 TS페이로드(420)를 통해 전송되는 데이터가 구분되는 데, 널패킷(Null Packet)인 경우에는 식별자의 값이 표 1과 같이 기 설정된 TS특정값인 "0x1FFF"를 갖게 된다.That is, data transmitted through the TS payload 420 is distinguished according to the value of an identifier displayed in the PID field F15. In the case of a null packet, Quot; 0x1FFF "which is a predetermined TS specified value.
이에, 패킷관리부(110)는, PID필드(F15)를 TS패킷 별로 전송되는 데이터의 구분을 위한 제1 특정필드로 확인할 수 있게 된다.Accordingly, the
결국, 전술에 따라 영상컨텐츠가 적어도 하나의 TS패킷을 포함하는 TS 스트림으로 재구성되면, 패킷관리부(110)는, TS패킷 별로 전송되는 데이터의 구분을 위한 제1 특정필드인 PID필드(F15)를 확인한 결과를 기반으로 널패킷(Null Packet)을 검출할 수 있게 된다.As a result, when the image content is reconstructed into a TS stream including at least one TS packet according to the above-described procedure, the
즉, 패킷관리부(110)는, TS패킷 별 PID필드(F15)의 식별자의 값과 기 설정된 TS특정값(0x1FFF)를 비교한 결과를 기반으로 TS페이로드(420)를 통해 전송되는 데이터가 존재하지 않는 널패킷(Null Packet)을 검출한다.That is, if the data transmitted through the TS payload 420 is present based on the result of comparing the value of the identifier of the PID field F15 for each TS packet with the predetermined TS specified value (0x1FFF) (Null Packets) that are not transmitted.
비교 결과 PID필드(F15)의 식별자의 값이 기 설정된 TS특정값(0x1FFF)과 일치하면, 패킷관리부(110)는, 해당 TS패킷이 TS페이로드(420)를 통해 전송되는 데이터가 존재하지 않는 널패킷(Null Packet)인 것으로 판단한다.If the value of the identifier of the PID field F15 matches the predetermined TS specified value 0x1FFF as a result of the comparison, the
한편, 비교 결과 PID필드(F15)의 식별자의 값이 기 설정된 TS특정값(0x1FFF)과 일치하지 않으면, 패킷관리부(110)는, 기 설정된 TS특정값(0x1FFF)을 제외한 표 1의 나머지 값(0x0000-0x1FFE) 중 어느 하나인 것이므로, TS페이로드(420)를 통해 전송되는 데이터가 존재하는 것으로 판단한다.On the other hand, if the value of the identifier of the PID field F15 does not coincide with the predetermined TS specified value (0x1FFF), the
전술에 따라 널패킷(Null Packet)이 검출되면, 패킷관리부(110)는, TS 스트림 중 널패킷(Null Packet)을 제거한 나머지 TS패킷을 유닛관리부(120)로 전송한다.When a null packet is detected in accordance with the above-described procedure, the
유닛관리부(120)는, 널패킷(Null Packet)이 제거된 나머지 TS패킷으로부터 필러데이터(Filler Data)를 제거하여 VoD컨텐츠를 생성한다.The
보다 구체적으로 유닛관리부(120)는, 패킷관리부(110)로부터 TS 스트림 중 널패킷(Null Packet)이 제거된 나머지 TS패킷이 수신되면, 네트워크 전송을 위해 나머지 TS패킷을 인코딩하여 적어도 하나의 NAL유닛(NAL Unit)을 갖도록 재구성한다. More specifically, when the remaining TS packets whose Null Packets have been removed from the TS stream are received from the
이와 관련하여, 도 4에는 NAL(Network Abstraction Layer)로 재구성을 수행한 일례가 도시되어 있다.In this regard, FIG. 4 shows an example of reconfiguration in the Network Abstraction Layer (NAL).
도 4의 (a)에 도시된 바와 같이, 유닛관리부(120)는, TS 스트림 중 널패킷(Null Packet)이 제거된 나머지 TS패킷을 네트워크 전송을 위해 적어도 하나의 NAL 패킷을 포함하는 NAL 스트림으로 재구성한다.As shown in FIG. 4A, the
여기서, NAL 패킷은, NAL 스트림을 구성하는 최소 단위로서, NAL유닛(NAL Unit) 및 RBSP(Raw Byte Sequence Payload)를 포함하며, 도 4의 (b)에 도시된 바와 같이, NAL헤더(510) 및 RBSP가 위치하는 NAL페이로드(520)로 표현될 수 있다. Herein, the NAL packet includes a NAL unit (NAL Unit) and a Raw Byte Sequence Payload (RBSP) as a minimum unit constituting the NAL stream, and includes a
이러한 NAL헤더(510)는, 데이터 복호화를 위해 필요한 정보를 표시하기 위한 적어도 하나의 필드(F21-F34)를 포함한다. 특히, NAL헤더(510)의 타입필드(F23)에는 해당 NAL유닛의 타입(type)을 구분하기 위한 식별자가 표시된다. 즉, 타입필드(F23)에 표시되는 식별자의 값(value)에 따라 해당 NAL유닛의 타입이 표 2와 같이 SPS 타입, PPS 타입, SEI 타입, 슬라이스 타입, 필러데이터 타입 등으로 결정된다.The
이에, 유닛관리부(120)는, 타입필드(F23)를 해당 NAL유닛의 타입을 구분하기 위한 제2 특정필드로 확인할 수 있게 된다. Accordingly, the
결국, 전술에 따라 TS 스트림 중 널패킷(Null Packet)이 제거된 나머지 TS패킷이 NAL 스트림으로 재구성되면, 유닛관리부(120)는, NAL유닛의 타입을 구분하기 위한 제2 특정필드인 NAL헤더(510) 내 타입필드(F23)를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출할 수 있게 된다.As a result, when the remaining TS packets having null packets removed from the TS stream are reconstructed into a NAL stream in accordance with the above-described procedure, the
즉, 유닛관리부(120)는, 타입필드(F23)의 식별자의 값 중 필러데이터(Filler Data)의 기능과 관련되는 기 설정된 NAL특정값을 확인한다. 여기서, 기 설정된 NAL특정값이라 함은, 해당 NAL유닛의 NAL페이로드에 필러데이터(Filler Data)가 삽입되어 있음을 확인할 수 있는 값으로, 해당 NAL유닛의 타입이 표 2에서 언급한 SEI 타입으로 구분되도록 하는 "6" 및 필러데이터 타입으로 구분되도록 하는"12"가 이러한 NAL특정값에 해당될 수 있다.That is, the
이하에서는, 먼저 제2 특정필드인 타입필드(F23)의 NAL특정값이 SEI 타입으로 구분되도록 하는 "6"인 경우일 때 필러데이터(Filler Data)를 검출 및 제거하는 과정에 대하여 보다 구체적으로 설명하도록 하겠다.Hereinafter, the process of detecting and removing filler data (Filler Data) when the NAL specific value of the type field F23, which is the second specific field, is "6 " I will.
유닛관리부(120)는, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제1 NAL특정값(6)을 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI 타입인 것으로 판단한다.The
여기서, SEI 타입의 경우, 비디오 부호화의 타이밍 등과 같은 보충적인 부가정보를 제공하게 되므로, 영상컨텐츠에 필러데이터(Filler Data)가 삽입되었다는 것을 부가정보로서 알릴 수 있다.Here, in the case of the SEI type, supplemental additional information such as the timing of video coding is provided, so that it can be notified as additional information that the filler data is inserted in the image content.
이를 위해 표 3에 도시된 바와 같이, 제1 NAL유닛과 관련된 제1 NAL페이로드인 SEI 페이로드에 실려 보내지는 보충적인 부가정보를 구분하기 위한 NAL페이로드의 식별자의 값이 사전에 결정되어 있을 것이다.To this end, as shown in Table 3, the value of the identifier of the NAL payload for distinguishing the supplementary supplementary information to be carried on the SEI payload, which is the first NAL payload associated with the first NAL unit, will be.
이에, 유닛관리부(120)는, 제1 NAL유닛이 SEI 타입으로 결정되면, 제1 NAL유닛과 관련된 제1 NAL페이로드, 즉 SEI 페이로드에 실려 보내지는 보충적인 부가정보를 구분하기 위한 NAL페이로드의 식별자의 값을 확인하여 필러데이터(Filler Data)가 삽입되었는지의 여부를 판단할 수 있게 된다. Accordingly, when the first NAL unit is determined to be the SEI type, the
예를 들어, NAL페이로드의 식별자의 값 중 영상컨텐츠에 필러데이터(Filler Data)가 삽입되도록 하기 위해 제1 NAL페이로드의 식별자 "3"을 이용하였으며 제1 NAL페이로드의 사이즈가 "5"인 것으로 가정하면, 유닛관리부(120)는, 제1 NAL페이로드의 식별자 "3"을 필터데이터와 관련된 값으로 미리 인지하게 된다. 이후, 유닛관리부(120)는, 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 필터데이터와 관련된 값(3)과 일치하면, 제1 NAL페이로드에 필러데이터가 삽입된 것으로 판단하고 표 4와 같이 제1 NAL페이로드의 사이즈만큼 "0xFF 바이트"를 제거하여 VoD컨텐츠를 생성한다.For example, the identifier "3" of the first NAL payload is used to insert the filler data into the image content among the identifiers of the NAL payload, and the size of the first NAL payload is "5 & , The
결국, 유닛관리부(120)는, 적어도 하나의 NAL유닛 중 제2 특정필드, 즉 NAL헤더(510) 내 타입필드(F23)의 식별자의 값이 제1 NAL특정값(6)을 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI 타입을 갖는 것으로 판단한 후 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 필터데이터와 관련된 값(예: 3)과 일치하면, 제1 NAL페이로드에 필러데이터가 삽입된 것으로 판단하여 제1 NAL페이로드의 사이즈(예: 5)만큼 "0xFF 바이트"를 제거하여 VoD컨텐츠를 생성한다.As a result, the
다음으로 제2 특정필드인 타입필드(F23)의 NAL특정값이 필러데이터 타입으로 구분되도록 하는"12"인 경우일 때 필러데이터(Filler Data)를 검출 및 제거하는 과정에 대하여 보다 구체적으로 설명하도록 하겠다.Next, the process of detecting and removing the filler data when the NAL specific value of the type field F23, which is the second specific field, is "12 " would.
유닛관리부(120)는, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제2 NAL특정값(12)을 갖는 제2 NAL유닛이 존재하는 경우, 제2 NAL유닛이 필러데이터 타입인 것으로 판단한다.The
이처럼 제2 NAL유닛의 타입 자체가 필러데이터를 나타내는 경우에는 유닛관리부(120)는, 제2 NAL유닛과 관련된 제2 NAL페이로드에 필러데이터가 삽입된 것으로 판단하여 표 5와 같이 제2 NAL페이로드에 포함되는 RBSP(Raw Byte Sequence Payload)의 사이즈만큼 "0xFF 바이트"를 제거하여 VoD컨텐츠를 생성한다.If the type of the second NAL unit itself indicates filler data, the
이하에서는 도 5를 참조하여 본 발명의 VoD서비스제공장치에서 영상컨텐츠에 포함된 불필요한 정보들을 제거하여 VoD컨텐츠를 생성 및 전송하는 과정을 보다 구체적으로 설명하도록 하겠다. 이하에서는 설명의 편의를 위해, 전술의 도 1 내지 도 4에서 언급한 참조번호를 언급하여 설명하도록 하겠다. Hereinafter, a process of generating and transmitting VoD content by removing unnecessary information included in image content in the VoD service providing apparatus of the present invention will be described in more detail with reference to FIG. Hereinafter, for convenience of explanation, reference will be made to the above-mentioned reference numerals in FIGS. 1 to 4.
도 5에 도시된 바와 같이, 본 발명의 VoD서비스제공장치(100)는, 컨텐츠 제공서버(300)로부터 VoD 서비스 제공을 위한 영상컨텐츠가 수신되면, 영상컨텐츠의 프로그램을 다중화하여 적어도 하나의 TS패킷으로 재구성한다(S100, S101).5, when the video content for providing a VoD service is received from the
보다 구체적으로, VoD서비스제공장치(100)는, 도 3의 (a)와 같이 영상컨텐츠를 구성하는 비디오, 오디오, 데이터 등을 포함하는 프로그램의 각 기본 스트림(ES)을 패킷타이져(111)를 통해 PES 스트림으로 패킷화한 후 각 PES 스트림이 TS Mux(112)를 통해 적어도 하나의 TS패킷을 포함하는 TS 스트림으로 재구성되도록 한다.More specifically, the VoD
여기서, TS패킷은, TS 스트림을 구성하는 최소 단위로서, 도 3의 (b)에 도시된 바와 같이, TS헤더(410) 및 RBSP가 위치하는 TS페이로드(420)로 표현될 수 있다.Here, the TS packet may be expressed as a TS payload 420 in which the TS header 410 and the RBSP are located, as shown in FIG. 3 (b), as a minimum unit constituting the TS stream.
TS헤더(410)는, TS 스트림을 구성하는 프로그램의 정보, 프로그램의 시간 정보 및 제어정보 등을 표시하기 위한 적어도 하나의 필드(F11-F19)를 포함한다. 특히, TS헤더(410)의 PID필드(F15)에는 TS페이로드(420)를 통해 전송되는 데이터의 구분을 위한 식별자가 표시된다.The TS header 410 includes at least one field F11-F19 for displaying information of a program constituting the TS stream, time information of the program, control information, and the like. In particular, the PID field F15 of the TS header 410 displays an identifier for distinguishing data transmitted through the TS payload 420. [
즉, PID필드(F15)에 표시되는 식별자의 값(value)에 따라 TS페이로드(420)를 통해 전송되는 데이터가 구분되는 데, 널패킷(Null Packet)인 경우에는 식별자의 값이 앞서 언급한 표 1과 같이 기 설정된 TS특정값인 "0x1FFF"를 갖게 된다. That is, the data transmitted through the TS payload 420 is distinguished according to the value of the identifier displayed in the PID field F15. When the value is an Null packet, Quot; 0x1FFF ", which is a preset TS specific value, as shown in Table 1.
이에, VoD서비스제공장치(100)는, PID필드(F15)를 TS패킷 별로 전송되는 데이터의 구분을 위한 제1 특정필드로 확인할 수 있게 된다(S102). 이후, VoD서비스제공장치(100)는, TS패킷 별 제1 특정필드인 PID필드(F15)의 식별자의 값과 기 설정된 TS특정값(0x1FFF)를 비교한 결과를 기반으로 TS페이로드(420)를 통해 전송되는 데이터가 존재하지 않는 널패킷(Null Packet)을 검출한다(S103, S104).Accordingly, the VoD
즉, S103 단계의 판단결과, PID필드(F15)의 식별자의 값이 기 설정된 TS특정값(0x1FFF)과 일치하면, VoD서비스제공장치(100)는, 해당 TS패킷이 TS페이로드(420)를 통해 전송되는 데이터가 존재하지 않는 널패킷(Null Packet)인 것으로 판단한다.That is, if it is determined in step S103 that the value of the identifier of the PID field F15 matches the predetermined TS specified value (0x1FFF), the VoD
한편, S103 단계의 판단결과, PID필드(F15)의 식별자의 값이 기 설정된 TS특정값(0x1FFF)과 일치하지 않으면, VoD서비스제공장치(100)는, 기 설정된 TS특정값(0x1FFF)을 제외한 표 1의 나머지 값(0x0000-0x1FFE) 중 어느 하나인 것이므로, TS페이로드(420)를 통해 전송되는 데이터가 존재하는 것으로 판단한다.On the other hand, if it is determined in step S103 that the value of the identifier of the PID field F15 does not match the predetermined TS specified value (0x1FFF), the VoD
전술에 따라 널패킷(Null Packet)이 검출되면, VoD서비스제공장치(100)는, TS 스트림 중 널패킷(Null Packet)을 제거한 나머지 TS패킷을 인코딩하여 적어도 하나의 NAL유닛(NAL Unit)을 갖는 NAL 스트림으로 재구성한다(S105). When a Null Packet is detected in accordance with the above-described procedure, the VoD
보다 구체적으로, VoD서비스제공장치(100)는, 도 4의 (a)와 같이 TS 스트림 중 널패킷(Null Packet)이 제거된 나머지 TS패킷을 네트워크 전송을 위해 적어도 하나의 NAL 패킷을 포함하는 NAL 스트림으로 재구성한다.More specifically, the VoD
여기서, NAL 패킷은, NAL 스트림을 구성하는 최소 단위로서, NAL유닛(NAL Unit) 및 RBSP(Raw Byte Sequence Payload)를 포함하며, 도 4의 (b)에 도시된 바와 같이, NAL헤더(510) 및 NAL페이로드(520)로 표현될 수 있다. Herein, the NAL packet includes a NAL unit (NAL Unit) and a Raw Byte Sequence Payload (RBSP) as a minimum unit constituting the NAL stream, and includes a
이러한 NAL헤더(510)는, 데이터 복호화를 위해 필요한 정보를 표시하기 위한 적어도 하나의 필드(F21-F34)를 포함한다. 특히, NAL헤더(510)의 타입필드(F23)에는 해당 NAL유닛의 타입(type)을 구분하기 위한 식별자가 표시된다. 즉, 타입필드(F23)에 표시되는 식별자의 값(value)에 따라 해당 NAL유닛의 타입이 표 2와 같이 SPS 타입, PPS 타입, SEI 타입, 슬라이스 타입, 필러데이터 타입 등으로 결정된다.The
이에, VoD서비스제공장치(100)는, 타입필드(F23)를 해당 NAL유닛의 타입을 구분하기 위한 제2 특정필드로 확인할 수 있게 된다(S106). 이후, VoD서비스제공장치(100)는, NAL유닛의 타입을 구분하기 위한 제2 특정필드인 NAL헤더(510) 내 타입필드(F23)를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출한다.Accordingly, the VoD
즉, VoD서비스제공장치(100)는, 타입필드(F23)의 식별자의 값 중 필러데이터(Filler Data)의 기능과 관련되는 기 설정된 NAL특정값을 확인한다. 여기서, 기 설정된 NAL특정값이라 함은, 해당 NAL유닛의 NAL페이로드에 필러데이터(Filler Data)가 삽입되어 있음을 확인할 수 있는 값으로, 해당 NAL유닛의 타입이 표 2에서 언급한 SEI 타입으로 구분되도록 하는 "6" 및 필러데이터 타입으로 구분되도록 하는"12"가 이러한 NAL특정값에 해당될 수 있다.That is, the VoD
이에, VoD서비스제공장치(100)는, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제1 NAL특정값(6)을 갖는 제1 NAL유닛이 존재하는 지의 여부를 판단한다(S107).Accordingly, the VoD
S107 단계의 판단결과, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제1 NAL특정값(6)을 갖는 제1 NAL유닛이 존재하면, VoD서비스제공장치(100)는, 제1 NAL유닛의 타입을 보충적인 부가정보를 표시하는 SEI 타입으로 결정한다.As a result of the determination in step S107, if there is a first NAL unit in which the value of the identifier of the type field F23, which is the second specific field, has the first
여기서, SEI 타입의 경우, 비디오 부호화의 타이밍 등과 같은 보충적인 부가정보를 제공하게 되므로, 영상컨텐츠에 필러데이터(Filler Data)가 삽입되었다는 것을 부가정보로서 알릴 수 있다.Here, in the case of the SEI type, supplemental additional information such as the timing of video coding is provided, so that it can be notified as additional information that the filler data is inserted in the image content.
이를 위해 표 3에 도시된 바와 같이, 제1 NAL유닛과 관련된 제1 NAL페이로드인 SEI 페이로드에 실려 보내지는 보충적인 부가정보를 구분하기 위한 NAL페이로드의 식별자의 값이 사전에 결정되어 있을 것이다.To this end, as shown in Table 3, the value of the identifier of the NAL payload for distinguishing the supplementary supplementary information to be carried on the SEI payload, which is the first NAL payload associated with the first NAL unit, will be.
이에, VoD서비스제공장치(100)는, 제1 NAL유닛이 SEI 타입으로 결정되면, 제1 NAL유닛과 관련된 제1 NAL페이로드, 즉 SEI 페이로드에 실려 보내지는 보충적인 부가정보를 구분하기 위한 NAL페이로드의 식별자의 값을 확인하여 필러데이터(Filler Data)가 삽입되었는지의 여부를 판단할 수 있게 된다. When the first NAL unit is determined to be the SEI type, the VoD
예를 들어, NAL페이로드의 식별자의 값 중 영상컨텐츠에 필러데이터(Filler Data)가 삽입되도록 하기 위해 제1 NAL페이로드의 식별자 "3"을 이용하였으며 제1 NAL페이로드의 사이즈가 "5"인 것으로 가정하면, VoD서비스제공장치(100)는, 제1 NAL페이로드의 식별자 "3"을 필터데이터와 관련된 값으로 미리 인지하게 된다. 이후, VoD서비스제공장치(100)는, 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 필터데이터와 관련된 값(3)과 일치하면, 제1 NAL페이로드에 필러데이터가 삽입된 것으로 판단하고 표 4와 같이 제1 NAL페이로드의 사이즈만큼 "0xFF 바이트"를 제거하여 VoD컨텐츠를 생성한다.For example, the identifier "3" of the first NAL payload is used to insert the filler data into the image content among the identifiers of the NAL payload, and the size of the first NAL payload is "5 & , The VoD
결국, VoD서비스제공장치(100)는, 적어도 하나의 NAL유닛 중 제2 특정필드, 즉 NAL헤더(510) 내 타입필드(F23)의 식별자의 값이 제1 NAL특정값(6)을 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI 타입을 갖는 것으로 판단한 후 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 필터데이터와 관련된 값(예: 3)과 일치하면, 제1 NAL페이로드에 필러데이터가 삽입된 것으로 판단하여 제1 NAL페이로드의 사이즈(예: 5)만큼 "0xFF 바이트"를 제거하여 VoD컨텐츠를 생성한다(S108-S114).As a result, the VoD
한편, S107 단계의 판단결과, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제1 NAL특정값(6)을 갖는 제1 NAL유닛이 존재하지 않으면, VoD서비스제공장치(100)는, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제2 NAL특정값(12)을 갖는 제2 NAL유닛이 존재하는 지의 여부를 판단한다(S111).On the other hand, if it is determined in step S107 that the first NAL unit having the identifier value of the type field F23, which is the second specific field, has the first
S111 단계의 판단결과, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제2 NAL특정값(12)을 갖는 제2 NAL유닛이 존재하면, VoD서비스제공장치(100)는, 제2 NAL유닛이 필러데이터 타입인 것으로 판단한다.As a result of the determination in step S111, if there is a second NAL unit in which the value of the identifier of the type field F23, which is the second specific field, has the second NAL specification value 12, the VoD
이처럼 제2 NAL유닛의 타입 자체가 필러데이터를 나타내는 경우에 VoD서비스제공장치(100)는, 제2 NAL유닛과 관련된 제2 NAL페이로드에 필러데이터가 삽입된 것으로 판단하여 표 5와 같이 제2 NAL페이로드에 포함되는 RBSP(Raw Byte Sequence Payload)의 사이즈만큼 "0xFF 바이트"를 제거하여 VoD컨텐츠를 생성한다(S112-S114).When the type of the second NAL unit itself indicates filler data, the VoD
한편, S111 단계의 판단결과, 제2 특정필드인 타입필드(F23)의 식별자의 값이 제2 NAL특정값(12)을 갖는 제2 NAL유닛이 존재하지 않으면, VoD서비스제공장치(100)는, 영상컨텐츠에 불필요한 정보인 널패킷(NULL packet) 및 필러데이터(Filler Data) 등이 존재하지 않는 것으로 판단하여 불필요한 정보를 제거하는 과정을 생략하고 VoD컨텐츠를 생성한다. On the other hand, if it is determined in step S111 that the second NAL unit having the identifier value of the type field F23, which is the second specific field, has the second NAL specification value 12, the VoD
이상에서 설명한 바와 같이, 본 발명의 VoD서비스제공장치 및 그 동작 방법에 따르면, VoD 서비스에 최적화된 데이터가 전송되도록 하는, 새로운 VoD 서비스 전송 효율화 방안을 제안함으로써, 불필요한 자원낭비 방지 및 부하감소를 통해 보다 신속하게 데이터를 제공할 수 있어 전반적인 VoD 서비스의 성능을 향상시킬 수 있다.As described above, according to the VoD service providing apparatus and the operation method of the present invention, it is possible to prevent unnecessary resource waste and reduce the load by proposing a new VoD service transmission efficiency scheme in which data optimized for the VoD service is transmitted. It is possible to provide data more quickly and improve the performance of the overall VoD service.
본 발명의 일 실시예에 따른 VoD서비스제공장치 및 그 동작 방법은, 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 의사 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The apparatus and method for providing a VoD service according to an embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be known to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
지금까지 본 발명을 바람직한 실시 예를 참조하여 상세히 설명하였지만, 본 발명이 상기한 실시 예에 한정되는 것은 아니며, 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 또는 수정이 가능한 범위까지 본 발명의 기술적 사상이 미친다 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.
본 발명의 VoD서비스제공장치 및 그 동작 방법에 따르면, VoD 서비스에 최적화된 데이터가 전송되도록 하는, 새로운 VoD 서비스 전송 효율화 방안을 제안함으로써, 불필요한 자원낭비 방지 및 부하감소를 통해 보다 신속하게 데이터를 제공할 수 있어 전반적인 VoD 서비스의 성능을 향상시킬 수 있다는 점에서, 기존 기술의 한계를 뛰어 넘음에 따라 관련 기술에 대한 이용만이 아닌 적용되는 장치의 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있는 발명이다.According to the VoD service providing apparatus and the operation method thereof of the present invention, a new VoD service transmission efficiency scheme for transmitting data optimized for the VoD service is proposed, so that data can be provided more quickly by preventing unnecessary resource waste and reducing load In order to improve the performance of the overall VoD service, it is possible to overcome the limitations of the existing technology, so that it is not only the use of the related technology but also the possibility of marketing or operating the applicable device, This is an invention that is industrially usable because it is possible.
100 : VoD서비스제공장치
110 : 패킷관리부 120 : 유닛관리부
200 : 사용자단말
300 : 컨텐츠 제공서버100: VoD service providing device
110: Packet management unit 120:
200: user terminal
300: Content providing server
Claims (14)
상기 TS패킷 중 상기 널패킷을 제거한 나머지 TS패킷이 인코딩되어 적어도 하나의 NAL유닛(NAL Unit)을 갖도록 재구성되면, 상기 NAL유닛의 타입을 구분하기 위한 제2 특정필드를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출하는 유닛관리부를 포함하며;
상기 유닛관리부는,
제1 NAL특정값을 상기 제2 특정필드의 식별자의 값으로 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI(Supplemental enhancement information) 타입을 갖는 것으로 판단하고,
상기 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 상기 필러데이터와 관련된 값과 일치하면, 상기 제1 NAL유닛이 상기 필러데이터인 것으로 판단하여 상기 제1 NAL유닛을 제거하는 것을 특징으로 하는 VoD서비스제공장치.When a program for providing a VoD service is multiplexed and reconstructed into at least one TS packet, a first specific field for identifying the data for each TS packet is checked, and a value of an identifier of the first specific field and a predetermined TS specific value A packet management unit for detecting and removing a null packet in which there is no data transmitted through the TS payload in the TS packet based on the comparison result; And
If the remaining TS packets after the removal of the null packet of the TS packets are encoded and reconstructed to have at least one NAL unit, a second specific field for identifying the type of the NAL unit, And a unit management unit for detecting Filler Data;
The unit management unit,
When there is a first NAL unit having a first NAL specific value as an identifier of the second specific field, it is determined that the first NAL unit has a supplemental enhancement information (SEI) type corresponding to supplementary supplementary information ,
If the value of the identifier of the first NAL payload associated with the first NAL unit matches the value associated with the filler data, the first NAL unit determines that the filler data is the filler data and removes the first NAL unit To the VoD service providing apparatus.
상기 TS패킷은 TS헤더 및 TS페이로드를 포함하며,
상기 제1 특정필드는,
상기 TS헤더 내 적어도 하나의 필드 중 상기 TS페이로드를 통해 전송되는 데이터의 구분을 위한 식별자를 표시하는 필드인 것을 특징으로 하는 VoD서비스제공장치.The method according to claim 1,
The TS packet includes a TS header and a TS payload,
Wherein the first specific field comprises:
And a field for displaying an identifier for distinguishing data transmitted through the TS payload among at least one field in the TS header.
상기 NAL유닛(NAL Unit)은 NAL헤더 및 NAL페이로드를 포함하며,
상기 제2 특정필드는,
상기 NAL헤더 내 적어도 하나의 필드 중 해당 NAL유닛의 타입을 구분하기 위한 식별자를 표시하는 필드인 것을 특징으로 하는 VoD서비스제공장치.The method according to claim 1,
The NAL unit includes a NAL header and a NAL payload,
Wherein the second specific field comprises:
And an identifier for identifying a type of the corresponding NAL unit among at least one field in the NAL header.
상기 유닛관리부는,
제2 NAL특정값을 상기 제2 특정필드의 식별자의 값으로 갖는 제2 NAL유닛이 존재하는 경우, 상기 제2 NAL유닛이 상기 필러데이터인 것으로 판단하여 상기 제2 NAL유닛을 제거하는 것을 특징으로 하는 VoD서비스제공장치.The method according to claim 1,
The unit management unit,
And the second NAL unit judges that the second NAL unit is the filler data and removes the second NAL unit when there is a second NAL unit having a second NAL specific value as an identifier of the second specific field. The VoD service providing apparatus.
상기 TS패킷 중 상기 널패킷을 제거한 나머지 TS패킷이 인코딩되어 적어도 하나의 NAL유닛(NAL Unit)을 갖도록 재구성되면, 상기 NAL유닛의 타입을 구분하기 위한 제2 특정필드를 확인한 결과를 기반으로 필러데이터(Filler Data)를 검출하는 유닛관리단계를 포함하며;
상기 유닛관리단계는,
제1 NAL특정값을 상기 제2 특정필드의 식별자의 값으로 갖는 제1 NAL유닛이 존재하는 경우, 제1 NAL유닛이 보충적인 부가정보에 해당하는 SEI(Supplemental enhancement information) 타입을 갖는 것으로 판단하고,
상기 제1 NAL유닛과 관련된 제1 NAL페이로드의 식별자의 값이 상기 필러데이터와 관련된 값과 일치하면, 상기 제1 NAL유닛이 상기 필러데이터인 것으로 판단하여 상기 제1 NAL유닛을 제거하는 것을 특징으로 하는 VoD서비스제공장치의 동작방법.When a program for providing a VoD service is multiplexed and reconstructed into at least one TS packet, a first specific field for identifying the data for each TS packet is checked, and a value of an identifier of the first specific field and a predetermined TS specific value A packet management step of detecting and removing a null packet in which there is no data transmitted through the TS payload in the TS packet based on the comparison result; And
If the remaining TS packets after the removal of the null packet of the TS packets are encoded and reconstructed to have at least one NAL unit, a second specific field for identifying the type of the NAL unit, And a unit management step of detecting Filler Data;
The unit management step includes:
If there is a first NAL unit having a first NAL specific value as an identifier of the second specific field, the first NAL unit determines that the first NAL unit has a supplemental enhancement information (SEI) type corresponding to supplementary supplementary information ,
If the value of the identifier of the first NAL payload associated with the first NAL unit matches the value associated with the filler data, the first NAL unit determines that the filler data is the filler data and removes the first NAL unit The method comprising the steps of:
상기 TS패킷은 TS헤더 및 TS페이로드를 포함하며,
상기 제1 특정필드는,
상기 TS헤더 내 적어도 하나의 필드 중 상기 TS페이로드를 통해 전송되는 데이터의 구분을 위한 식별자를 표시하는 필드인 것을 특징으로 하는 VoD서비스제공장치의 동작방법.9. The method of claim 8,
The TS packet includes a TS header and a TS payload,
Wherein the first specific field comprises:
Wherein the field is a field for displaying an identifier for distinguishing data transmitted through the TS payload among at least one field in the TS header.
상기 NAL유닛(NAL Unit)은 NAL헤더 및 NAL페이로드를 포함하며,
상기 제2 특정필드는,
상기 NAL헤더 내 적어도 하나의 필드 중 해당 NAL유닛의 타입을 구분하기 위한 식별자를 표시하는 필드인 것을 특징으로 하는 VoD서비스제공장치의 동작방법.9. The method of claim 8,
The NAL unit includes a NAL header and a NAL payload,
Wherein the second specific field comprises:
And a field for displaying an identifier for identifying a type of the corresponding NAL unit among at least one field in the NAL header.
상기 유닛관리단계는,
상기 제2 특정필드의 식별자의 값이 제2 NAL특정값을 갖는 제2 NAL유닛이 존재하는 경우, 상기 제2 NAL유닛이 상기 필러데이터인 것으로 판단하여 제거하는 것을 특징으로 하는 VoD서비스제공장치의 동작방법.9. The method of claim 8,
The unit management step includes:
Wherein the second NAL unit judges that the second NAL unit is the filler data, and removes the second NAL unit if the second NAL unit has a value of the identifier of the second specific field, How it works.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020170044962A KR101894889B1 (en) | 2017-04-06 | 2017-04-06 | Method and apparatus for providing video on demand service |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020170044962A KR101894889B1 (en) | 2017-04-06 | 2017-04-06 | Method and apparatus for providing video on demand service |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR101894889B1 true KR101894889B1 (en) | 2018-09-04 |
Family
ID=63598234
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020170044962A Active KR101894889B1 (en) | 2017-04-06 | 2017-04-06 | Method and apparatus for providing video on demand service |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR101894889B1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021136096A1 (en) * | 2019-12-31 | 2021-07-08 | 中兴通讯股份有限公司 | Caption language identification method and apparatus, computer device, and computer-readable medium |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20060022696A (en) * | 2003-06-18 | 2006-03-10 | 톰슨 라이센싱 | Method and apparatus for processing null packet in digital media receiver |
| US7349386B1 (en) * | 2003-02-18 | 2008-03-25 | Cisco Technology, Inc. | Method and apparatus for transporting MPEG streams on IP networks including removing null packets |
| US20120300832A1 (en) * | 2004-02-27 | 2012-11-29 | Thomas Wiegand | Apparatus and method for coding an information signal into a data stream, converting the data stream and decoding the data stream |
-
2017
- 2017-04-06 KR KR1020170044962A patent/KR101894889B1/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7349386B1 (en) * | 2003-02-18 | 2008-03-25 | Cisco Technology, Inc. | Method and apparatus for transporting MPEG streams on IP networks including removing null packets |
| KR20060022696A (en) * | 2003-06-18 | 2006-03-10 | 톰슨 라이센싱 | Method and apparatus for processing null packet in digital media receiver |
| US20120300832A1 (en) * | 2004-02-27 | 2012-11-29 | Thomas Wiegand | Apparatus and method for coding an information signal into a data stream, converting the data stream and decoding the data stream |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2021136096A1 (en) * | 2019-12-31 | 2021-07-08 | 中兴通讯股份有限公司 | Caption language identification method and apparatus, computer device, and computer-readable medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6868802B2 (en) | Transmission method, reception method, transmission device and reception device | |
| KR102274513B1 (en) | Method and apparatus for streaming service providing scalability and view information | |
| EP4152730B1 (en) | Method for receiving media contents in a multimedia system | |
| JP6868838B2 (en) | Transmitter, receiver, transmitter and receiver | |
| JP6846653B2 (en) | Transmission method, reception method, transmission device and reception device | |
| JP7295293B2 (en) | Transmission method, reception method, transmission device and reception device | |
| JP7780747B2 (en) | Transmission method, reception method, transmission device, and reception device | |
| JP6846629B2 (en) | Transmission method, reception method, transmission device and reception device | |
| US10887242B2 (en) | Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal | |
| JP7307237B2 (en) | Receiving method, transmitting method, receiving device and transmitting device | |
| KR101894889B1 (en) | Method and apparatus for providing video on demand service | |
| JP2021122110A (en) | Transmission device, reception device, transmission method and reception method | |
| JP7257646B2 (en) | Transmission method, reception method, transmission device and reception device | |
| KR101907020B1 (en) | Signaling method for emergency alert via broadcast network in both transmitting and receiving side and apparatus thereof | |
| WO2016021153A1 (en) | Transmission method, reception method, transmission device, and reception device | |
| KR20090111253A (en) | Apparatus and method for scene composition of rich media content |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20170406 |
|
| PA0201 | Request for examination | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20180202 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20180824 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20180829 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20180830 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration | ||
| PR1001 | Payment of annual fee |
Payment date: 20210512 Start annual number: 4 End annual number: 4 |
|
| PR1001 | Payment of annual fee |
Payment date: 20220419 Start annual number: 5 End annual number: 5 |
|
| PR1001 | Payment of annual fee |
Payment date: 20230530 Start annual number: 6 End annual number: 6 |
|
| PR1001 | Payment of annual fee |
Payment date: 20250519 Start annual number: 8 End annual number: 8 |