KR102302755B1 - DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging - Google Patents
DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging Download PDFInfo
- Publication number
- KR102302755B1 KR102302755B1 KR1020190178750A KR20190178750A KR102302755B1 KR 102302755 B1 KR102302755 B1 KR 102302755B1 KR 1020190178750 A KR1020190178750 A KR 1020190178750A KR 20190178750 A KR20190178750 A KR 20190178750A KR 102302755 B1 KR102302755 B1 KR 102302755B1
- Authority
- KR
- South Korea
- Prior art keywords
- drm
- packaging
- nal
- parallel
- content
- Prior art date
Links
- 238000004806 packaging method and process Methods 0.000 title claims abstract description 238
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000011218 segmentation Effects 0.000 claims abstract description 5
- 238000000638 solvent extraction Methods 0.000 claims abstract description 3
- 238000004891 communication Methods 0.000 claims description 12
- 238000003780 insertion Methods 0.000 claims description 8
- 230000037431 insertion Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000012858 packaging process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012536 packaging technology Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
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/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
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- 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 or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- 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/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- 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
-
- 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/254—Management at additional data server, e.g. shopping server, rights management server
-
- 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/254—Management at additional data server, e.g. shopping server, rights management server
- H04N21/2541—Rights Management
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
본 발명은 영상 콘텐츠의 용량에 관계없이 DRM 패키징 소요 시간과 연산량을 감소시킬 수 있는 DRM 콘텐츠 병렬 패키징 장치 및 이를 포함하는 DRM 콘텐츠 병렬 패키징 시스템 및 DRM 콘텐츠 병렬 패키징 방법에 관한 것으로,
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 장치는,
복수개의 NAL 유닛(Network Abstraction Layer Unit)을 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할하는 NAL 분할 모듈; 상기 NAL 분할 모듈에 의해 분할된 복수개의 NAL 유닛 각각에 대해, CABAC 디코더를 이용하여 NAL 유닛을 디코딩하고, 디코딩을 통해 추출된 QTC 데이터 내에 DRM 메타 데이터를 패키징하고, DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 병렬 패키징 모듈;을 포함한다.The present invention relates to a DRM content parallel packaging apparatus capable of reducing the required time and computational amount for DRM packaging regardless of the capacity of video content, a DRM content parallel packaging system and a DRM content parallel packaging method including the same,
DRM content parallel packaging device according to an embodiment of the present invention,
a NAL segmentation module for segmenting video content including a plurality of NAL units (Network Abstraction Layer Unit) into individual NAL units; For each of the plurality of NAL units divided by the NAL partitioning module, the NAL unit is decoded using a CABAC decoder, the DRM metadata is packaged in the QTC data extracted through decoding, and the DRM metadata packaging is completed. a parallel packaging module that encodes
Description
본 발명은 영상 콘텐츠의 용량에 관계없이 DRM 패키징 소요 시간과 연산량을 감소시킬 수 있는 DRM 콘텐츠 병렬 패키징 장치 및 이를 포함하는 DRM 콘텐츠 병렬 패키징 시스템 및 DRM 콘텐츠 병렬 패키징 방법에 관한 것이다. The present invention relates to a DRM content parallel packaging apparatus capable of reducing the required time and computational amount for DRM packaging regardless of the capacity of video content, a DRM content parallel packaging system including the same, and a DRM content parallel packaging method.
최근 5G 기술의 상용화 및 유튜브와 같은 1인 미디어 등의 활성화와 저변 확대로 인해 이와 관련된 디지털 콘텐츠 유통과 배급 관련 플랫폼의 수요가 폭발적으로 증가하고 있고, 관련 산업군이 급성장하고 있다. Due to the recent commercialization of 5G technology and the activation and expansion of one-person media such as YouTube, the demand for related digital content distribution and distribution platforms is increasing explosively, and related industries are rapidly growing.
그러나, 디지털 콘텐츠 저작권에 대한 인식의 부족으로 인해 무분별한 디지털 콘텐츠의 불법복제와 무단 사용으로 인한 문제점이 크게 대두되기 시작했고, 이로 인해 디지털 저작권 관리(Digital Rights Management, DRM)에 대한 중요성이 대두되고 있다. However, due to the lack of awareness of digital content copyright, problems caused by indiscriminate illegal copying and unauthorized use of digital content have begun to emerge, and the importance of digital rights management (DRM) is emerging. .
DRM은 디지털 콘텐츠의 저작권을 보호하기 위한 기술 및 서비스 관리 체계와 기법을 총칭하는 용어로서 다양한 디바이스 환경에서 저작권 정보를 보호하기 위해 다수의 연구 개발과 상용화 서비스가 수행 중이다. 영상 콘텐츠에 대한 DRM 기술로는 크게 2가지로 나뉘고, 이는 영상에 대해 DRM 패키징을 수행하는 것과 복합 라이선스 기술을 통해 영상 콘텐츠 공급자와 사용자 간에 안전하고 효율적인 DRM 서비스를 제공한다. DRM is a generic term for technology and service management systems and techniques for protecting the copyright of digital content, and a number of R&D and commercialization services are being performed to protect copyright information in various device environments. DRM technology for video content is largely divided into two types, which provide a safe and efficient DRM service between video content providers and users through DRM packaging for video and complex licensing technology.
기존의 DRM 패키징 기술은 특정 콘텐츠의 저작권을 해당 콘텐츠 내에 삽입하여 콘텐츠의 불법복제와 무단 사용을 근절하는 것으로, H.264(최대 4K 60FPS)급 콘텐츠에 대해서만 수행이 가능했고, 세부 패키징 기법으로는 스크램블링(scrambling) 또는 대칭키/비대칭키 암호 알고리듬 등을 주로 사용하였다. The existing DRM packaging technology inserts the copyright of a specific content into the content to eradicate illegal copying and unauthorized use of the content. Scrambling or symmetric key/asymmetric key encryption algorithms were mainly used.
이로 인해 발생하는 문제점은 다음과 같다. The problems caused by this are as follows.
첫째, DRM 패키징 수행 속도와 연산량에 대한 문제이다. 대칭키/비대칭키 암호 알고리듬의 경우 최근 해당 알고리듬의 안전성을 문제로 비밀키(Secret Key)의 길이가 증가하면서, 암호화 또는 복호화 시 소요되는 속도와 연산량이 기하급수적으로 증가하는 추세이다. 실감형 콘텐츠의 경우 기존의 콘텐츠 대비 최대 8배까지 용량이 증가하기 때문에 암호 알고리듬을 적용할 경우 소요되는 시간과 연산량이 증가하고 이로 인해 관련 분야에서는 별도의 소프트웨어 또는 하드웨어를 새롭게 개발 및 구축하여야 하기 때문에 이를 해결하기 위해 소요되는 비용이 증가하게 된다.First, it is the problem of DRM packaging execution speed and computational amount. In the case of a symmetric key/asymmetric key encryption algorithm, as the length of the secret key increases recently due to the safety of the algorithm, the speed and amount of computation required for encryption or decryption are increasing exponentially. In the case of immersive content, the capacity is increased up to 8 times compared to the existing content, so when the encryption algorithm is applied, the time required and the amount of computation increase. The cost required to solve this will increase.
둘째, DRM 패키징에 소요되는 각종 키(key) 관리에 대한 문제이다. 스크램블링 또는 대칭키/비대칭키 암호 알고리듬을 DRM 패키징 시 사용할 경우 이를 관리하기 위한 키 관리 정책과 시스템이 필요하다. 특히, 대칭키 암호 알고리듬의 경우 특정 콘텐츠에 대한 인가된 사용자마다 비밀키가 존재하여야 하기 때문에 콘텐츠와 인가된 사용자가 늘어날 경우 이에 대한 키 역시 기하급수적으로 증가할 수밖에 없게 되고, 이에 대한 키 관리 시스템의 추가 소요와 함께 좀 더 복잡한 형태의 키 관리 정책이 도입되어야 하므로 이를 해결하기 위한 비용이 증가하게 된다. Second, it is a problem of managing various keys required for DRM packaging. When scrambling or symmetric/asymmetric key encryption algorithms are used in DRM packaging, a key management policy and system are required to manage them. In particular, in the case of a symmetric key encryption algorithm, since a secret key must exist for each authorized user for a specific content, when the number of content and authorized users increases, the corresponding key will inevitably increase exponentially. Since a more complex type of key management policy must be introduced along with additional requirements, the cost to solve it increases.
셋째, 실감형 콘텐츠 메타데이터에 대한 관리 문제이다. 기존의 콘텐츠는 양방향 인터랙션(Interaction) 서비스를 제공하지 않았기 때문에 영상 콘텐츠만 존재하였으나 실감형 콘텐츠의 경우 사람의 오감을 이용하여 실재감과 몰입감을 증대시키는 영상콘텐츠와 양방향 인터랙션이 가능한 메타데이터가 별도로 존재한다. Third, it is a management problem for immersive content metadata. Existing content did not provide a two-way interaction service, so only video content existed. .
기존의 DRM 패키징 기법은 이러한 메타데이터에 대한 관리 및 패키징이 불가능하기 때문에 이를 해결하기 위한 새로운 형태의 DRM 콘텐츠 패키징 기술의 개발이 필요한 실정이다.Since it is impossible to manage and package such metadata in the existing DRM packaging technique, it is necessary to develop a new type of DRM content packaging technology to solve this problem.
본 발명은 영상 콘텐츠의 용량에 관계없이 DRM 패키징 소요 시간과 연산량을 감소시킬 수 있는 DRM 콘텐츠 병렬 패키징 장치 및 이를 포함하는 DRM 콘텐츠 병렬 패키징 시스템 및 DRM 콘텐츠 병렬 패키징 방법을 제공하는 것을 목적으로 한다.An object of the present invention is to provide a DRM content parallel packaging apparatus capable of reducing the required time and computational amount for DRM packaging regardless of the capacity of video content, a DRM content parallel packaging system including the same, and a DRM content parallel packaging method.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 장치는,DRM content parallel packaging device according to an embodiment of the present invention,
복수개의 NAL 유닛(Network Abstraction Layer Unit)을 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할하는 NAL 분할 모듈; 상기 NAL 분할 모듈에 의해 분할된 복수개의 NAL 유닛 각각에 대해, CABAC 디코더를 이용하여 NAL 유닛을 디코딩하고, 디코딩을 통해 추출된 QTC 데이터 내에 DRM 메타 데이터를 패키징하고, DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 병렬 패키징 모듈;을 포함한다.a NAL segmentation module for segmenting video content including a plurality of NAL units (Network Abstraction Layer Unit) into individual NAL units; For each of the plurality of NAL units divided by the NAL partitioning module, the NAL unit is decoded using a CABAC decoder, the DRM metadata is packaged in the QTC data extracted through decoding, and the DRM metadata packaging is completed. a parallel packaging module that encodes
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 장치에 있어서, 상기 병렬 패키징 모듈은, 상기 분할된 복수개의 NAL 유닛 각각에 대해, 상기 DRM 메타 데이터를 패키징하는 복수개의 DRM 패키징 모듈이 병렬로 형성될 수 있다. 상기 DRM 패키징 모듈 각각은, CABAC 디코더를 이용하여 상기 NAL 유닛을 디코딩하는 디코딩 수단; 상기 디코딩 수단에 의한 디코딩 결과로 도출된 데이터들 중에서 QTC 데이터를 선택하고, 선택된 QTC 데이터의 비트스트림과 DRM 메타데이터의 비트스트림을 삽입 연산하여 DRM 패키징을 수행하는 패키징 수단; 및, CABAC 인코더를 이용하여 상기 DRM 패키징이 수행된 NAL 유닛을 인코딩하는 인코딩 수단을 포함할 수 있다.In the DRM content parallel packaging apparatus according to an embodiment of the present invention, in the parallel packaging module, for each of the plurality of divided NAL units, a plurality of DRM packaging modules for packaging the DRM metadata may be formed in parallel. have. Each of the DRM packaging modules includes: decoding means for decoding the NAL unit using a CABAC decoder; packaging means for selecting QTC data from among the data derived as a result of decoding by the decoding means and performing DRM packaging by inserting a bitstream of the selected QTC data and a bitstream of DRM metadata; and encoding means for encoding the NAL unit on which the DRM packaging is performed using a CABAC encoder.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 장치에 있어서, 상기 패키징 수단은, 상기 NAL 유닛의 영상 이미지를 구현하는 영상 프레임에 포함된 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC들 중 적어도 하나 이상의 QTC의 비트스트림과 DRM 메타데이터의 비트스트림에 대해 삽입 연산을 수행할 수 있다.In the DRM content parallel packaging apparatus according to an embodiment of the present invention, the packaging means includes at least among QTCs present in a Y channel expressing luminance among YCbCr channels included in a video frame implementing the video image of the NAL unit. Insertion operation may be performed on one or more bitstreams of QTC and bitstreams of DRM metadata.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 장치에 있어서, DRM 패키징이 완료된 복수개의 NAL 유닛을 일시 저장하는 공유 메모리; 상기 공유 메모리에 일시 저장된 복수개의 NAL 유닛을 정렬하는 NAL 정렬 모듈을 더 포함할 수 있다.In the DRM content parallel packaging apparatus according to an embodiment of the present invention, a shared memory for temporarily storing a plurality of NAL units in which DRM packaging is completed; It may further include a NAL sorting module for arranging a plurality of NAL units temporarily stored in the shared memory.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 관리 서버는,DRM content parallel packaging management server according to an embodiment of the present invention,
사용자 단말기와 유무선 통신을 수행하는 통신부; 복수개의 NAL 유닛을 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할하는 NAL 분할 모듈과, 상기 NAL 분할 모듈에 의해 분할된 복수개의 NAL 유닛 각각에 대해 CABAC 디코더를 이용하여 NAL 유닛을 디코딩하고 디코딩을 통해 추출된 QTC 데이터 내에 DRM 메타 데이터를 패키징하고 DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 병렬 패키징 모듈을 포함하는 병렬 패키징부;를 포함한다.a communication unit for performing wired/wireless communication with the user terminal; A NAL division module that divides video content composed of a plurality of NAL units into individual NAL units, and a CABAC decoder for each of the plurality of NAL units divided by the NAL division module to decode the NAL unit and perform decoding and a parallel packaging unit including a parallel packaging module that packages the DRM metadata in the QTC data extracted through it and encodes the NAL unit on which the DRM metadata packaging is completed.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 관리 서버에 있어서, 상기 병렬 패키징 모듈은, 상기 분할된 복수개의 NAL 유닛 각각에 대해, 상기 DRM 메타 데이터를 패키징하는 복수개의 DRM 패키징 모듈이 병렬로 형성될 수 있다. 상기 DRM 패키징 모듈 각각은, CABAC 디코더를 이용하여 상기 NAL 유닛을 디코딩하는 디코딩 수단; 상기 디코딩 수단에 의한 디코딩 결과로 도출된 데이터들 중에서 QTC 데이터를 선택하고, 선택된 QTC 데이터의 비트스트림과 DRM 메타데이터의 비트스트림을 삽입 연산하여 DRM 패키징을 수행하는 패키징 수단; 및, CABAC 인코더를 이용하여 상기 DRM 패키징이 수행된 NAL 유닛을 인코딩하는 인코딩 수단을 포함할 수 있다.In the DRM content parallel packaging management server according to an embodiment of the present invention, in the parallel packaging module, for each of the divided plurality of NAL units, a plurality of DRM packaging modules for packaging the DRM metadata are formed in parallel. can Each of the DRM packaging modules includes: decoding means for decoding the NAL unit using a CABAC decoder; packaging means for selecting QTC data from among the data derived as a result of decoding by the decoding means and performing DRM packaging by inserting a bitstream of the selected QTC data and a bitstream of DRM metadata; and encoding means for encoding the NAL unit on which the DRM packaging is performed using a CABAC encoder.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 관리 서버에 있어서, 상기 패키징 수단은, 상기 NAL 유닛의 영상 이미지를 구현하는 영상 프레임에 포함된 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC들 중 적어도 하나 이상의 QTC의 비트스트림과 DRM 메타데이터의 비트스트림에 대해 삽입 연산을 수행할 수 있다.In the DRM content parallel packaging management server according to an embodiment of the present invention, the packaging means includes: among QTCs present in a Y channel expressing luminance among YCbCr channels included in a video frame implementing the video image of the NAL unit. An insertion operation may be performed on at least one bitstream of QTC and a bitstream of DRM metadata.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 관리 서버에 있어서, 상기 병렬 패키징부는, DRM 패키징이 완료된 복수개의 NAL 유닛을 일시 저장하는 공유 메모리; 상기 공유 메모리에 일시 저장된 복수개의 NAL 유닛을 정렬하는 NAL 정렬 모듈을 더 포함할 수 있다.In the DRM content parallel packaging management server according to an embodiment of the present invention, the parallel packaging unit includes: a shared memory for temporarily storing a plurality of NAL units for which DRM packaging is completed; It may further include a NAL sorting module for arranging a plurality of NAL units temporarily stored in the shared memory.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법은,DRM content parallel packaging method according to an embodiment of the present invention,
컴퓨팅 장치에 의해 수행되며, 컴퓨팅 장치가, 복수개의 NAL 유닛 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할하는 단계; 분할된 복수개의 NAL 유닛 각각에 대해, CABAC 디코더를 이용하여 디코딩하는 단계; 분할된 복수개의 NAL 유닛 각각에 대해, 상기 디코딩을 통해 획득된 데이터 중에서 QTC 데이터 내에 DRM 메타 데이터를 패키징하는 단계; 분할된 복수개의 NAL 유닛 각각에 대해, CABAC 인코더를 이용하여 상기 DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 단계를 포함한다.It is performed by a computing device, the computing device dividing the image content including a plurality of NAL units into individual NAL units; decoding each of the plurality of divided NAL units using a CABAC decoder; For each of the plurality of divided NAL units, packaging DRM metadata in QTC data among the data obtained through the decoding; and encoding the NAL unit in which the DRM metadata packaging is completed by using a CABAC encoder for each of the plurality of divided NAL units.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법에 있어서, 상기 DRM 메타 데이터를 패키징하는 단계는, 상기 디코딩 단계에서 도출된 데이터들 중에서 QTC 데이터를 선택하고, 선택된 QTC 데이터의 비트스트림과 DRM 메타데이터의 비트스트림을 삽입 연산하여 DRM 패키징을 수행할 수 있다.In the DRM content parallel packaging method according to an embodiment of the present invention, the packaging of the DRM metadata includes selecting QTC data from among the data derived in the decoding step, and selecting a bitstream of the QTC data and DRM metadata. DRM packaging can be performed by inserting the bitstream of
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법에 있어서, 상기 DRM 메타 데이터를 패키징하는 단계는, 상기 NAL 유닛의 영상 이미지를 구현하는 영상 프레임에 포함된 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC들 중 적어도 하나 이상의 QTC의 비트스트림과 DRM 메타데이터의 비트스트림에 대해 삽입 연산을 수행하여 DRM 패키징할 수 있다.In the DRM content parallel packaging method according to an embodiment of the present invention, the packaging of the DRM metadata is present in a Y channel expressing luminance among YCbCr channels included in a video frame implementing the video image of the NAL unit. DRM packaging may be performed by performing an insertion operation on the bitstream of at least one QTC and the bitstream of DRM metadata among the QTCs used.
본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법에 있어서, DRM 패키징이 완료된 복수개의 NAL 유닛을 일시 저장하는 단계; 일시 저장된 복수개의 NAL 유닛을 정렬하는 단계;를 더 포함할 수 있다.In a DRM content parallel packaging method according to an embodiment of the present invention, the method comprising: temporarily storing a plurality of NAL units in which DRM packaging is completed; It may further include; arranging a plurality of temporarily stored NAL units.
기타 본 발명의 다양한 측면에 따른 구현예들의 구체적인 사항은 이하의 상세한 설명에 포함되어 있다.Other details of implementations according to various aspects of the invention are included in the detailed description below.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology may have the following effects. However, this does not mean that a specific embodiment should include all of the following effects or only the following effects, so the scope of the disclosed technology should not be construed as being limited thereby.
본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법 및 DRM 콘텐츠 병렬 패키징 시스템에 의하면, According to the DRM content parallel packaging method and DRM content parallel packaging system according to an embodiment of the present invention,
기존의 실감형 콘텐츠에 대한 DRM 패키징 수행시 콘텐츠의 용량에 비례하여 소요 시간과 연산량이 증가했던 것과는 달리, DRM 패키징 모듈을 적절한 수로 병렬 배치하여 병렬로 DRM 패키징을 수행함으로써 용량에 관계없이 소요시간과 연산량은 일정하게 할 수 있다.Unlike the existing DRM packaging for immersive content, which requires an increase in time and computation in proportion to the capacity of the content, DRM packaging is performed in parallel by arranging an appropriate number of DRM packaging modules in parallel to reduce the time required and reduce the time required regardless of capacity. The amount of calculation can be made constant.
따라서, 대용량 고화질의 영상 콘텐츠, 8K급 실감형 콘텐츠에 대해 효율적인 DRM 패키징을 수행할 수 있다.Therefore, efficient DRM packaging can be performed for large-capacity, high-definition video content and 8K-class immersive content.
도 1 및 도 2는 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 시스템이 도시된 블록도이다.
도 3은 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 관리 서버의 병렬 패키징부 구성이 도시된 블록도이다.
도 4는 HEVC 기반의 실감형 콘텐츠 비트 스트림(bit stream) 구조를 도시한 도면이다.
도 5는 병렬 패키징 모듈의 일 구성인 DRM 패키징 모듈의 구성이 도시된 블록도이다.
도 6은 QTC에서의 DRM 패키징 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 DRM 언패키징 과정이 도식적으로 도시된 도면이다.
도 8 내지 도 10은 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 시스템의 동작 과정이 도시된 순서도이다.
도 11은 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법이 도시된 순서도이다.
도 12 본 발명의 실시예에 따른, 컴퓨팅 장치를 나타내는 도면이다.1 and 2 are block diagrams illustrating a DRM content parallel packaging system according to an embodiment of the present invention.
3 is a block diagram illustrating a configuration of a parallel packaging unit of a DRM content parallel packaging management server according to an embodiment of the present invention.
4 is a diagram illustrating a structure of an HEVC-based immersive content bit stream.
5 is a block diagram illustrating a configuration of a DRM packaging module, which is a configuration of a parallel packaging module.
6 is a diagram for explaining a DRM packaging process in QTC.
7 is a diagram schematically illustrating a DRM unpackaging process according to an embodiment of the present invention.
8 to 10 are flowcharts illustrating an operation process of a DRM content parallel packaging system according to an embodiment of the present invention.
11 is a flowchart illustrating a DRM content parallel packaging method according to an embodiment of the present invention.
12 is a diagram illustrating a computing device according to an embodiment of the present invention.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예를 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can apply various transformations and can have various embodiments, specific embodiments are illustrated and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.
본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 발명에서, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 이하, 도면을 참조하여 본 발명의 실시예에 따른 DRM 콘텐츠 병렬 패키징 장치 및 이를 포함하는 DRM 콘텐츠 병렬 패키징 시스템 및 DRM 콘텐츠 병렬 패키징 방법을 설명한다.The terms used in the present invention are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present invention, terms such as 'comprising' or 'having' are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof. Hereinafter, a DRM content parallel packaging apparatus, a DRM content parallel packaging system including the same, and a DRM content parallel packaging method according to an embodiment of the present invention will be described with reference to the drawings.
도 1 및 도 2는 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 시스템이 도시된 블록도이다.1 and 2 are block diagrams illustrating a DRM content parallel packaging system according to an embodiment of the present invention.
도 1 및 도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 시스템은, 사용자 단말기(100)와 DRM 콘텐츠 병렬 패키징 관리 서버(200, 이하 DRM 병렬 패키징 서버라고도 함)를 포함한다. 도 1은 DRM 병렬 패키징 서버(200)가 자체적으로 복수개의 영상 콘텐츠를 DB화하여 저장한 경우를 도시하고 있으며, 도 2는 외부의 콘텐츠 제공자(Contents Provider, CP1 ~ CP3)가 별도로 DRM 병렬 패키징 서버(200)로 영상 콘텐츠를 제공하는 경우를 도시하고 있다.1 and 2, the DRM content parallel packaging system according to an embodiment of the present invention includes a
본 발명에서, DRM 패키징의 대상인 영상 콘텐츠는 특별히 한정되지는 않으나, 대용량 고화질의 영상 콘텐츠에 더욱 유용하게 활용될 수 있다. 바람직하게는, 영상 콘텐츠는 복수개의 NAL 유닛(Network Abstraction Layer Unit)을 포함한다. 대용량 고화질 영상 콘텐츠는, 예를 들어 가상현실 콘텐츠(VR 콘텐츠), 증강 현실 콘텐츠(AR 콘텐츠), 양방향 인터랙션 콘텐츠 등, HEVC(High Efficiency Video Codec) 기반의 4K 120FPS(Frame Per Second)급, 또는 8K 120FPS급 실감형 콘텐츠일 수 있다. 구체적으로, HEVC(H.264, H.265) 기반의 8K급 실감형콘텐츠일 수 있다. 물론, 120FPS급 콘텐츠 뿐만 아니라, 60 ~ 120FPS급 콘텐츠, 120 ~ 240FPS급 콘텐츠 등 여러 레벨의 콘텐츠에 제한 없이 적용될 수 있다. In the present invention, the video content to be subjected to DRM packaging is not particularly limited, but may be more usefully utilized for large-capacity, high-definition video content. Preferably, the video content includes a plurality of NAL units (Network Abstraction Layer Units). High-capacity high-definition video content, for example, virtual reality content (VR content), augmented reality content (AR content), interactive content, etc., HEVC (High Efficiency Video Codec)-based 4K 120FPS (Frame Per Second) level, or 8K It may be 120 FPS immersive content. Specifically, it may be an 8K-level immersive content based on HEVC (H.264, H.265). Of course, it can be applied to various levels of content, such as 60 to 120 FPS content, 120 to 240 FPS content, as well as 120 FPS content, without limitation.
사용자 단말기(100)는 사용자의 키 조작에 따라 유무선 통신망을 경유하여 DRM 병렬 패키징 서버(200)와 각종 데이터를 송수신할 수 있는 단말기를 말하는 것이며, 개인용 컴퓨터(PC: Personal Computer), 노트북, 개인휴대용 정보단말기(PDA: Personal Digital Assistant) 및 이동통신 단말기(Mobile Communication Terminal) 등 중 어느 하나일 수 있으며, 유무선 통신망을 경유하여 DRM 병렬 패키징 서버(200)에 접속하기 위한 웹 브라우저와 프로그램을 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하고 있는 단말기를 의미한다.The
사용자는 사용자 단말기(100)를 통해 DRM 병렬 패키징 서버(200)로 특정 영상 콘텐츠에 대한 전송 요청(다운로드 요청)을 할 수 있다.A user may make a transmission request (download request) for a specific video content to the DRM
DRM 병렬 패키징 서버(200)는 사용자 단말기(100)로부터 특정 영상 콘텐츠에 대한 전송 요청을 수신하면, 해당 영상 콘텐츠에 DRM 병렬 패키징(이하 “DRM 패키징”이라고도 함)하여 사용자 단말기(100)로 전송한다. 또는 DRM 병렬 패키징 서버(200)는 미리 복수개의 영상 콘텐츠를 DRM 패키징하여 저장할 수 있으며, DRM 병렬 패키징 서버(200)는 사용자 단말기(100)로부터 특정 영상 콘텐츠에 대한 전송 요청을 수신하면, 미리 DRM 패키징된 영상 콘텐츠 중에서 해당 영상 콘텐츠를 선택하여 사용자 단말기(100)로 전송할 수 있다.When the DRM
이를 위해 DRM 병렬 패키징 서버(200)는 통신부(210), 병렬 패키징부(220), 저장부(230), 제어부(미도시)를 포함할 수 있다.To this end, the DRM
통신부(210)는 유무선 통신망을 경유하여 사용자 단말기(100), 외부의 콘텐츠 제공자(CP1 ~ CP3)와 연동하는 기능을 수행하는 통신 수단으로서, 각종 데이터를 송수신하는 기능을 수행한다.The
저장부(230)는 DRM 병렬 패키징 서버(200)의 구동에 필요한 각종 데이터 및 프로그램을 저장한다. 실시예에 따라 저장부(230)는 DRM 패키징 처리되지 않은 복수개의 영상 콘텐츠나, 미리 DRM 패키징 처리된 복수개의 영상 콘텐츠를 저장할 수 있다. 또는 저장부(230)는 외부의 콘텐츠 제공자(CP1 ~ CP3)에 의해 미리 DRM 패키징 처리된 복수개의 영상 콘텐츠를 저장할 수 있다.The
병렬 패키징부(220)는 영상 콘텐츠에 대해 DRM 병렬 패키징 처리 작업을 수행한다. 병렬 패키징부(220)는 영상 콘텐츠를 복수개의 NAL 유닛으로 분할하고 개개의 NAL 유닛을 DRM 패키징 처리한다. 병렬 패키징부(220)는 사용자 단말기(100)의 전송 요청에 응하여 해당 영상 콘텐츠를 DRM 패키징 처리하거나, 또는 사용자 단말기(100)의 전송 요청과 무관하게 미리 복수개의 영상 콘텐츠를 DRM 패키징 처리하여 저장부(230)에 저장할 수 있다. The
제어부(미도시)는 DRM 병렬 패키징 서버(200)의 전반적인 기능을 제어한다.A control unit (not shown) controls the overall function of the DRM
도 3은 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 관리 서버의 병렬 패키징부(220) 구성이 도시된 블록도이다.3 is a block diagram illustrating the configuration of the
도 3에 도시된 바와 같이, 병렬 패키징부(220)는 NAL 분할 모듈(221), 병렬 패키징 모듈(222), 공유 메모리(223), NAL 정렬 모듈(224)을 포함할 수 있다. 상기의 모듈들(221 ~ 224)은 각각 소정의 기능을 수행하는 구성 요소로서, 하드웨어, 소프트웨어, 혹은 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 예를 들어, 상기 모듈들(221 ~ 224)은 프로그램 모듈을 의미할 수 있으며, 이는 프로세서(Processor)에 의해 실행되어 소정의 기능을 수행하는, 소프트웨어 구성요소들일 수 있다.As shown in FIG. 3 , the
한편, 상기의 모듈들(221 ~ 224)은 DRM 병렬 패키징 서버(200)의 병렬 패키징부(220)를 구성하는 구성 요소로 설명되지만, 반드시 DRM 병렬 패키징 서버(200)의 병렬 패키징부(220)로 기능하는 것이 아니라, 독자적인 장치로 구현될 수도 있다. 즉, 상기의 모듈들(221 ~ 224)의 기능이 구현된 독립적인 DRM 콘텐츠 병렬 패키징 장치로 구현될 수 있다.On the other hand, although the
NAL 유닛(Network Abstraction Layer Unit)이란, 네트워크(Network)에 독립적인 영상 레이어(Layer)를 의미하는 것으로, 영상 콘텐츠에 NAL 유닛이 존재하면 영상 전송이 되다가 특정 부분에 에러가 발생하여도 뒤에 따라오는 영상에 지장을 주지 않음을 의미한다.The NAL unit (Network Abstraction Layer Unit) means a video layer independent of the network. This means that it does not interfere with the video.
도 4는 HEVC 기반의 실감형 콘텐츠의 비트 스트림(bit stream) 구조를 도시한 도면이다. 도 4는 H.264급 영상 콘텐츠(이하, H.264)의 비트 스트림 구조이나 H.265급 영상 콘텐츠도 이와 유사한 구조를 가질 수 있다.4 is a diagram illustrating a bit stream structure of HEVC-based immersive content. 4 shows a bit stream structure of H.264-level video content (hereinafter, H.264), but H.265-level video content may also have a similar structure.
H.264급 영상 콘텐츠는 시작 단계부터 네트워크 전송을 목적으로 개발된 것으로, 영상 콘텐츠의 효율적인 전송을 위해 NAL 유닛을 포함하여 구성된다.H.264 video content was developed for the purpose of network transmission from the beginning, and it is configured including a NAL unit for efficient transmission of video content.
도 4를 참조하면, HEVC 기반의 실감형 콘텐츠 비트 스트림은 NAL 유닛과 RBSP(Raw Byte Sequence Payload)를 구비한다. RBSP에는 SPS, PPS 등의 정보를 알려주는 파라미터 셋과 VCL(Video Coding Layer)에 해당하는 Slice 데이터 RBSP가 포함될 수 있다. VCL은 실제 H.264 압축된 데이터를 나타내며, VCL 데이터는 NAL 유닛을 통해 외부와 인터페이스가 이루어지게 된다. H.264의 모든 데이터는 각각의 NAL 유닛으로 구성된다.Referring to FIG. 4 , an HEVC-based immersive content bit stream includes a NAL unit and a Raw Byte Sequence Payload (RBSP). The RBSP may include a parameter set indicating information such as SPS and PPS and a slice data RBSP corresponding to a video coding layer (VCL). VCL represents actual H.264 compressed data, and VCL data is interfaced with the outside through the NAL unit. All data of H.264 is composed of each NAL unit.
영상 콘텐츠(H.265 또는 H.264)는 NAL 유닛 구조를 가지고 있다. 영상 자체는 비트스트림 구조를 가지고 있으며, 비트스트림은 연속된 NAL 구조(NAL header와 RBSP)를 띄고 있다. H.265의 NAL 유닛은 64개의 NAL 유닛 종류를 가지고 있으며 실제 영상 정보를 가지고 있는 NAL 유닛은 0번부터 3번(32종의 NAL)이다. 이것을 VCL이라고 하며, 나머지 32번부터 63번까지의 NAL 유닛을 non-VCL이라고 한다. non-VCL은 보통 영상 재생, 해상도, 초당 프레임수, 영상의 시작 및 끝 등 영상 복호화에 필요한 각종 파라미터 정보를 가진다. 본 발명은 VCL에 해당하는 NAL 유닛(0번부터 31번)에 대한 DRM 패키징 과정을 병렬화한다. The video content (H.265 or H.264) has a NAL unit structure. The video itself has a bitstream structure, and the bitstream has a continuous NAL structure (NAL header and RBSP). The NAL unit of H.265 has 64 types of NAL units, and the NAL units having actual image information are
NAL 분할 모듈(221)은 NAL 유닛 파서(Parser)를 이용하여 복수개의 NAL 유닛을 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할한다. The
병렬 패키징 모듈(222)은 NAL 분할 모듈(221)에 의해 분할된 복수개의 NAL 유닛 각각에 대해, CABAC 디코더를 이용하여 NAL 유닛을 디코딩하고, 디코딩을 통해 추출된 QTC 데이터 내에 DRM 메타 데이터를 패키징하고, DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩한다.The
병렬 패키징 모듈(222)에는, 분할된 복수개의 NAL 유닛 각각에 대해 DRM 메타 데이터를 패키징하는 복수개의 DRM 패키징 모듈(222a ~ 222n)이 병렬로 형성된다. 병렬 패키징 모듈(222)은 사전 정의된 CPU 기반의 다중 스레드(Thread)를 활용하여 수행될 수 있다. 스레드는 CPU가 독립적으로 처리하는 하나의 작업 단위를 의미하는 것으로, 통상 코어 개수와 스레드 개수는 동일하며, 4코어 4스레드 CPU의 경우, 한번에 4개의 코어에서 4가지 작업(스레드)를 동시에 처리할 수 있다. 복수개의 DRM 패키징 모듈(222a ~ 222n)의 개수는 코어의 개수(스레드 개수)와 동일할 수 있다.In the
각각의 DRM 패키징 모듈(222a ~ 222n)은 분할된 복수개의 NAL 유닛 각각에 대해 DRM 메타 데이터를 패키징한다. DRM 패키징 모듈(222a ~ 222n)에 대해서는 도 5를 참조하여 후술한다.Each of the DRM packaging modules (222a to 222n) packages the DRM metadata for each of the plurality of divided NAL units. The
공유 메모리(223)는 DRM 패키징(디코딩, 패키징, 인코딩)이 완료된 복수개의 NAL 유닛을 일시 저장하고, NAL 정렬 모듈(224)은 공유 메모리(223)에 일시 저장된 복수개의 NAL 유닛을 정렬한다. The shared
H.264의 모든 데이터는 각각의 NAL 유닛으로 구성되며, 각각의 NAL 유닛은 고유의 일련번호를 가진다. NAL 정렬 모듈(224)은 NAL 유닛의 고유 일련번호를 이용하여 DRM 패키징이 완료된 복수개의 NAL 유닛을 정렬할 수 있다.All data of H.264 is composed of each NAL unit, and each NAL unit has a unique serial number. The
한편, NAL 유닛을 포함하는 모든 영상 콘텐츠가 고유 일련번호를 가지는 것은 아니다. 이 경우, NAL 정렬 모듈(224)은 정렬을 수행할 수 없게 된다. 이에, 본 발명의 일 실시예에서는 NAL 유닛의 소정 영역(예를 들어, 헤드 영역)에 순서 식별을 위한 플래그를 삽입한다. On the other hand, not all video content including the NAL unit has a unique serial number. In this case, the
플래그 삽입은 공유 메모리(223)에 저장되기 전이면 어느 단계에서 수행되어도 무방하다. 예를 들어, NAL 분할 모듈(221)이 영상 콘텐츠를 개개의 NAL 유닛으로 분할할 때, 또는 병렬 패키징 모듈(222)이 DRM 패키징을 수행할 때, 수행될 수 있다.The flag insertion may be performed at any stage before being stored in the shared
개별 NAL 유닛에 대한 각각의 DRM 패키징 모듈(222a ~ 222n)이 수행하는 DRM 패키징은 시간차가 존재한다. 따라서, 인코딩이 완료된 NAL 유닛의 순서는 원래의 영상 콘텐츠에 포함된 NAL 유닛의 순서와 다를 수 있다. DRM 패키징이 완료된 순으로 NAL 유닛을 정렬하면 원래의 영상 콘텐츠를 구현할 수 없으므로, DRM 패키징이 완료된 NAL 유닛을 일시 저장하고, 정렬하는 과정이 필요하다. There is a time difference between DRM packaging performed by each
도 5를 참조하여 DRM 패키징 모듈(222a ~ 222n)에 대해 설명한다. 도 5는 병렬 패키징 모듈(222)의 일 구성인 DRM 패키징 모듈(222a ~ 222n)의 구성이 도시된 블록도이다.The
도 5에 도시된 바와 같이, 각각의 DRM 패키징 모듈(222a ~ 222n)은, 디코딩 수단(2221), 패키징 수단(2222), 인코딩 수단(2223)을 포함할 수 있다. 상기 수단들(2221 ~ 2223)은 각각 소정의 기능을 수행하는 구성 요소로서, 하드웨어, 소프트웨어, 혹은 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 예를 들어, 상기 수단들(2221 ~ 2223)은 프로그램 모듈을 의미할 수 있으며, 이는 프로세서(Processor)에 의해 실행되어 소정의 기능을 수행하는, 소프트웨어 구성요소들일 수 있다.As shown in FIG. 5 , each of the
패키징 수단(2222)은 영상 이미지를 표현하는 채널 중 하나인 YCbCr 채널에 존재하는 QTC를 이용하여 DRM 패키징을 수행한다. 보다 구체적으로 패키징 수단(2222)은 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC 중 적어도 하나 이상의 QTC와 DRM 메타데이터의 비트스트림에 대해 XOR 연산을 수행하여 패키징한다. The packaging means 2222 performs DRM packaging by using QTC existing in a YCbCr channel, which is one of the channels expressing the video image. More specifically, the packaging means 2222 performs an XOR operation on at least one QTC among QTCs existing in a Y channel expressing luminance among YCbCr channels and a bitstream of DRM metadata for packaging.
즉, 패키징 수단(2222)은 여러 채널 중에서 YCbCr 채널을 선택하고, YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 있는 일부의 QTC를 선택하고, Y 채널 QTC의 적어도 하나의 비트스트림과 이와 대응하는 위치의 DRM 메타데이터 비트스트림에 대해 XOR 연산을 수행하여 DRM 패키징을 수행한다. That is, the packaging means 2222 selects a YCbCr channel from among several channels, selects some QTCs in a Y channel expressing luminance from among the YCbCr channels, and selects at least one bitstream of the Y channel QTC and a position corresponding thereto. DRM packaging is performed by performing an XOR operation on the DRM metadata bitstream.
Y 채널은 기본적인 흑백 영상에 대한 정보이고, Y 채널을 참조하여 Cb 채널과 Cr 채널이 생성된다. 이때 생성되는 방법에 따라 무손실 또는 손실압축을 통해 원본과 동일 화질 또는 원본과 비교해 상대적으로 저하된 화질의 컬러 영상이 생성된다. 본 발명에서는 YCbCr의 이러한 원리를 이용해 Y 채널에 대해서만 DRM 패키징을 수행한다. 즉, Y 채널에 대해서만 패키징을 수행시키면 이를 참조하여 생성되는 채널인 Cb 채널과 Cr 채널은 자동적으로 패키징이 되는 효과가 나타난다. 또한, YCbCr 중 Y 채널이 아닌 Cb, Cr 채널에 DRM 패키징을 수행할 경우 패키징 연산량과 소요 시간이 증대된다. 아울러 DRM 패키징은 영상의 왜곡을 증대시켜 인증되지 않은 불법 사용자가 영상을 볼 수 없도록 하는 기술이기 때문에 패키징된 영상의 결과에 대해 원본과 비교해 왜곡이 증대되는 것이 우수하다고 볼 수 있다. 따라서, 패키징 수단(2222)에 의한 DRM 패키징은 YCbCr 채널 중 Y 채널에 있는 QTC에 대해 수행되는 것이 바람직하다.The Y channel is information about a basic black-and-white image, and a Cb channel and a Cr channel are generated with reference to the Y channel. At this time, a color image with the same image quality as the original or with a relatively lower quality compared to the original is generated through lossless or lossy compression according to the method of generation. In the present invention, DRM packaging is performed only for the Y channel using this principle of YCbCr. That is, if packaging is performed on only the Y channel, the Cb channel and Cr channel, which are channels generated by referring to this, are automatically packaged. In addition, when DRM packaging is performed on the Cb and Cr channels instead of the Y channel among YCbCr, the amount of packaging operation and the required time are increased. In addition, since DRM packaging is a technology that prevents unauthorized users from viewing the image by increasing the distortion of the image, it can be seen that the increased distortion of the result of the packaged image compared to the original is excellent. Therefore, DRM packaging by the packaging means 2222 is preferably performed for QTC in the Y channel of the YCbCr channel.
인코딩 수단(2223)은 DRM 패키징이 수행된 영상 프레임을 인코딩하여 DRM 패키징된 NAL 유닛을 생성한다. 인코딩 수단(2223)은 주위의 상황에 따라 적응적으로 부호화를 수행하는 이진 산술 부호화 방식을 수행하는 CABAC 인코더일 수 있다.The encoding means 2223 encodes the video frame on which the DRM packaging has been performed to generate a DRM packaged NAL unit. The encoding means 2223 may be a CABAC encoder that performs a binary arithmetic encoding method that adaptively performs encoding according to surrounding conditions.
도 6은 QTC에서의 DRM 패키징 과정을 설명하기 위한 도면이다.6 is a diagram for explaining a DRM packaging process in QTC.
도 6은 DRM 패키징 과정 중 QTC 내에 선택되는 영역과 해당 영역에 DRM 메타데이터를 삽입하는 과정을 설명하는 것으로, 하나의 QTC는 해당 영상의 신호 주파수 분포에 따라 4개의 영역으로 나뉜다. 4개의 영역 LL(Low Low), LH(Low High), HL(High Low) 및 HH(High High)로 표기되고, 4개의 영역의 MSB(Most Significant Bit : 가장 큰 자릿수의 비트, 즉 가장 왼쪽 비트) 1비트 또는 그 이상의 비트를 선택하여 이에 대응되는 DRM 메타데이터 비트스트림(Bitstream)과 서로 XOR 연산하여 DRM 패키징을 수행한다. 물론, 이러한 XOR 연산은 반드시 MSB 1비트 및 이를 포함하는 2이상의 비트에 한정되는 것은 아니다. 예를 들어, LSB(Least Significant Bit : 가장 작은 자릿수의 비트, 즉 가장 오른쪽 비트) 1비트 및 그보다 큰 자리수의 비트 일부에 대해 수행될 수도 있다. 도 6에 예시된 DRM 패키징 과정은 픽셀 내 MSB 2비트와 DRM 메타데이터 비트스트림 2비트가 XOR 연산을 수행한 결과를 예시하고 있다.6 illustrates a process of inserting DRM metadata into a region selected within a QTC and a process of inserting DRM metadata into the region during the DRM packaging process. One QTC is divided into four regions according to the signal frequency distribution of the corresponding image. The four regions are denoted as LL (Low Low), LH (Low High), HL (High Low) and HH (High High), and the MSB (Most Significant Bit) of the four regions: the bit with the largest digit, that is, the leftmost bit )
한편, DRM 언패키징(Unpackaging) 과정은 DRM 패키징 과정을 역으로 수행하는 것으로 도 7에 도시된 바와 같다. DRM 패키징이 완료된 영상 콘텐츠(예를 들어, HEVC 영상 파일)를 다운로드 혹은 스트리밍을 받은 패킷에 대해 CABAC 디코딩 과정을 수행한 후 획득한 패키징된 QTC에 대해 패키징 시 수행한 영역의 선택 후, 합법적인 사용자(Legal Subscriber)가 소유한 DRM 메타데이터 비트스트림과 함께 XOR 연산을 수행하여 언패키징된 QTC를 획득한 후, HEVC 디코딩 과정으로 데이터를 전송하여 처리하게 한다. 이로 인해 실제 사용자가 다운로드 혹은 스트리밍 받은 영상 데이터를 실시간으로 언패키징을 수행하여 지연 시간없이 본래의 영상에 대한 시청이 가능하다.On the other hand, the DRM unpackaging process is as shown in FIG. 7 as a reverse of the DRM packaging process. After performing the CABAC decoding process on the downloaded or streaming video content (eg, HEVC video file) for which DRM packaging has been completed, select the area performed during packaging for the obtained packaged QTC, and then a legitimate user After obtaining unpackaged QTC by performing XOR operation with the DRM metadata bitstream owned by (Legal Subscriber), the data is transmitted and processed through the HEVC decoding process. Due to this, the actual user can unpackage the downloaded or streamed image data in real time, so that the original image can be viewed without delay.
다음으로, 도 8 내지 도 10을 참조하여 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 시스템의 동작 과정을 설명한다.Next, an operation process of the DRM content parallel packaging system according to an embodiment of the present invention will be described with reference to FIGS. 8 to 10 .
도 8 내지 도 10은 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 시스템의 동작 과정이 도시된 순서도이다.8 to 10 are flowcharts illustrating an operation process of a DRM content parallel packaging system according to an embodiment of the present invention.
도 8은 사용자 단말기(100)로부터의 영상 콘텐츠 전송 요??이 있는 경우, DRM 병렬 패키징 서버(200)가 실시간 스트리밍 방식으로 DRM 패키징된 영상 콘텐츠를 제공하는 시스템이다.8 is a system in which the DRM
먼저, 사용자는 사용자 단말기(100)를 통해 DRM 병렬 패키징 서버(200)로 특정 영상 콘텐츠 전송을 요청한다. (S110) DRM 병렬 패키징 서버(200)는 해당 영상 콘텐츠 제공자(CP)에게 영상 콘텐츠 제공을 요청하고 이를 수신한다. (S120, S130) DRM 병렬 패키징 서버(200)는 영상 콘텐츠를 DRM 패키징 처리(S140)하여 실시간으로 사용자 단말기(100)로 전송한다. (S150) 이 과정에서 DRM 병렬 패키징 서버(200)가 자체적으로 영상 콘텐츠를 저장하고 있는 경우, S120 ~ S130 단계는 생략될 수 있다.First, the user requests transmission of specific video content to the DRM
도 9 및 도 10은 사용자 단말기(100)로부터의 영상 콘텐츠 전송 요??이 있기 전에 미리 불특정 복수개의 영상 콘텐츠를 DRM 패키징하여 저장한 후, 사용자 단말기(100)를 통해 전송 요청이 있는 경우, 미리 DRM 패키징된 영상 콘텐츠를 전송하는 시스템으로, 도 9는 DRM 병렬 패키징 서버(200)에서 미리 DRM 패키징 처리하는 경우이고, 도 10은 영상 콘텐츠 제공자(CP)가 미리 DRM 패키징 처리하는 경우이다.9 and 10 show that a plurality of unspecified video contents are DRM-packaged and stored before there is a need for transmission of video contents from the
도 9를 참조하면, DRM 병렬 패키징 서버(200)가 영상 콘텐츠 제공자(CP)에게 영상 콘텐츠 제공을 요청하고 이를 수신한다. (S210, S220) DRM 병렬 패키징 서버(200)는 영상 콘텐츠를 DRM 패키징 처리하여 저장한다. (S230) 사용자 단말기(100)로부터의 영상 콘텐츠 전송 요청이 있는 경우(S240), DRM 병렬 패키징 서버(200)는 해당 영상 콘텐츠가 미리 DRM 패키징 처리된 경우, 해당 영상 콘텐츠를 사용자 단말기(100)로 전송한다. (S250) 만약, DRM 패키징 처리되지 않은 영상 콘텐츠가 요청된 경우, 도 8의 과정을 수행한다.Referring to FIG. 9 , the DRM
도 10을 참조하면, DRM 병렬 패키징 서버(200)로부터 영상 콘텐츠 제공이 요청(S310)되면 영상 콘텐츠 제공자(CP)는 자체적으로 해당 영상 콘텐츠를 DRM 패키징 처리(S320)하고, DRM 병렬 패키징 서버(200)로 전송한다. (S330) 사용자 단말기(100)로부터의 영상 콘텐츠 전송 요청이 있는 경우(S340), DRM 병렬 패키징 서버(200)는 해당 영상 콘텐츠를 사용자 단말기(100)로 전송한다. (S350)Referring to FIG. 10 , when a video content provision request is received from the DRM parallel packaging server 200 ( S310 ), the video content provider CP itself DRM packaging the video content ( S320 ), and the DRM
다음으로, 도 11을 참조하여 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법을 설명한다. 도 11은 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법이 도시된 순서도이다.Next, a DRM content parallel packaging method according to an embodiment of the present invention will be described with reference to FIG. 11 . 11 is a flowchart illustrating a DRM content parallel packaging method according to an embodiment of the present invention.
먼저, DRM 패키지를 수행할 영상 콘텐츠를 수신한다. (S10)First, video content to be DRM package is received. (S10)
영상 콘텐츠는 특별히 한정되지는 않으나, 대용량 고화질의 영상 콘텐츠에 더욱 유용하게 활용될 수 있다. 바람직하게는, 영상 콘텐츠는 복수개의 NAL 유닛(Network Abstraction Layer Unit)을 포함한다. 대용량 고화질 영상 콘텐츠는, 예를 들어 가상현실 콘텐츠(VR 콘텐츠), 증강 현실 콘텐츠(AR 콘텐츠), 양방향 인터랙션 콘텐츠 등, HEVC(High Efficiency Video Codec) 기반의 4K 120FPS(Frame Per Second)급, 또는 8K 120FPS급 실감형 콘텐츠일 수 있다. 구체적으로, HEVC(H.264, H.265) 기반의 8K급 실감형콘텐츠일 수 있다. 물론, 120FPS급 콘텐츠 뿐만 아니라, 60 ~ 120FPS급 콘텐츠, 120 ~ 240FPS급 콘텐츠 등 여러 레벨의 콘텐츠에 제한 없이 적용될 수 있다. The image content is not particularly limited, but may be more usefully used for large-capacity, high-definition image content. Preferably, the video content includes a plurality of NAL units (Network Abstraction Layer Units). High-capacity high-definition video content, for example, virtual reality content (VR content), augmented reality content (AR content), interactive content, etc., HEVC (High Efficiency Video Codec)-based 4K 120FPS (Frame Per Second) level, or 8K It may be 120 FPS immersive content. Specifically, it may be an 8K-level immersive content based on HEVC (H.264, H.265). Of course, it can be applied to various levels of content, such as 60 to 120 FPS content, 120 to 240 FPS content, as well as 120 FPS content, without limitation.
다음, 영상 콘텐츠를 개개의 NAL 유닛으로 분할한다. (S20)Next, the video content is divided into individual NAL units. (S20)
다음, 분할된 복수개의 NAL 유닛 각각에 대해, DRM 패키징을 수행한다. (S30)Next, for each of the plurality of divided NAL units, DRM packaging is performed. (S30)
구체적으로, 분할된 복수개의 NAL 유닛 각각에 대해 CABAC 디코더를 이용하여 디코딩을 수행한다. (S31) CABAC 디코더로 NAL 유닛을 디코딩하면, 각각의 영상 프레임에 대해 5가지의 데이터가 도출된다. 도출되는 데이터는 QTC, 일반 제어 데이터, 내부 예측 데이터, 필터 제어 데이터, 움직임 데이터이다.Specifically, decoding is performed using a CABAC decoder for each of a plurality of divided NAL units. (S31) If the NAL unit is decoded by the CABAC decoder, five pieces of data are derived for each image frame. The derived data are QTC, general control data, internal prediction data, filter control data, and motion data.
다음, QTC 데이터 내에 DRM 메타 데이터를 패키징한다. (S32)Next, the DRM metadata is packaged within the QTC data. (S32)
CABAC 디코더에 의한 디코딩 결과로 도출된 데이터들 중에서 QTC 데이터를 선택하고, QTC 데이터 내 일부 영역에 대해 DRM 메타데이터와 QTC 데이터를 XOR 연산 수행하여 DRM 패키징한다. QTC data is selected from the data derived as a result of decoding by the CABAC decoder, and DRM-packaged by performing an XOR operation on the DRM metadata and QTC data for a partial region of the QTC data.
DRM 메타 데이터 패키징 단계(S32)는 각각의 영상 프레임에 존재하는 여러 채널 중에서 YCbCr 채널을 선택하고, YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 있는 일부의 QTC를 선택하고, Y 채널 QTC의 적어도 하나의 비트스트림과 이와 대응하는 위치의 DRM 메타데이터 비트스트림에 대해 XOR 연산을 수행하여 DRM 패키징을 수행한다. The DRM metadata packaging step (S32) selects a YCbCr channel from among several channels present in each image frame, selects some QTCs in a Y channel expressing luminance from among the YCbCr channels, and selects at least one of the Y channel QTCs. DRM packaging is performed by performing XOR operation on the bitstream and the DRM metadata bitstream in the corresponding position.
다음, DRM 패키징이 수행된 영상 프레임을 CABAC 인코더로 인코딩하여 DRM 패키징된 NAL 유닛을 생성한다. (S33)Next, a DRM-packaged image frame is encoded with a CABAC encoder to generate a DRM-packaged NAL unit. (S33)
다음, DRM 패키징(디코딩, 패키징, 인코딩)이 완료된 복수개의 NAL 유닛을 일시 저장한다. (S40)Next, a plurality of NAL units on which DRM packaging (decoding, packaging, encoding) has been completed are temporarily stored. (S40)
다음, 일시 저장된 복수개의 NAL 유닛을 정렬한다. (S50)Next, a plurality of temporarily stored NAL units are arranged. (S50)
NAL 유닛의 고유 일련번호를 이용하여 DRM 패키징이 완료된 복수개의 NAL 유닛을 정렬한다. 또는 NAL 유닛의 소정 영역(예를 들어, 헤드 영역)에 순서 식별을 위한 플래그를 삽입하고, 삽입된 플래그를 이용하여 NAL 유닛을 정렬한다. 플래그 삽입은 S40 단계 전이면 어느 단계에서 수행되어도 무방하다. A plurality of NAL units for which DRM packaging has been completed are aligned using the unique serial number of the NAL unit. Alternatively, a flag for order identification is inserted in a predetermined area (eg, head area) of the NAL unit, and the NAL units are aligned using the inserted flag. The flag insertion may be performed in any step as long as it is before step S40.
상기와 같은, 본 발명의 일 실시예에 따른 DRM 콘텐츠 병렬 패키징 방법 및 DRM 콘텐츠 병렬 패키징 시스템에 의하면, 기존의 실감형 콘텐츠에 대한 DRM 패키징 수행시 콘텐츠의 용량에 비례하여 소요 시간과 연산량이 증가했던 것과는 달리, DRM 패키징 모듈을 적절한 수로 병렬 배치하여 병렬로 DRM 패키징을 수행함으로써 용량에 관계없이 소요시간과 연산량은 일정하게 할 수 있다. 따라서, 대용량 고화질의 영상 콘텐츠, 8K급 실감형 콘텐츠에 대해 효율적인 DRM 패키징을 수행할 수 있다.As described above, according to the DRM content parallel packaging method and the DRM content parallel packaging system according to an embodiment of the present invention, the time required and the amount of computation increased in proportion to the capacity of the content when performing DRM packaging for the existing immersive content. Contrary to this, by arranging an appropriate number of DRM packaging modules in parallel to perform DRM packaging in parallel, the time required and the amount of computation can be made constant regardless of the capacity. Therefore, efficient DRM packaging can be performed for large-capacity, high-definition video content and 8K-class immersive content.
도 12는 본 발명의 실시예에 따른, 컴퓨팅 장치를 나타내는 도면이다. 도 12의 컴퓨팅 장치(TN100)는 본 명세서에서 기술된 장치(예, DRM 병렬 패키징 장치, DRM 병렬 패키징 서버 등) 일 수 있다. 12 is a diagram illustrating a computing device according to an embodiment of the present invention. The computing device TN100 of FIG. 12 may be a device described herein (eg, a DRM parallel packaging device, a DRM parallel packaging server, etc.).
도 12의 실시예에서, 컴퓨팅 장치(TN100)는 적어도 하나의 프로세서(TN110), 송수신 장치(TN120), 및 메모리(TN130)를 포함할 수 있다. 또한, 컴퓨팅 장치(TN100)는 저장 장치(TN140), 입력 인터페이스 장치(TN150), 출력 인터페이스 장치(TN160) 등을 더 포함할 수 있다. 컴퓨팅 장치(TN100)에 포함된 구성 요소들은 버스(bus)(TN170)에 의해 연결되어 서로 통신을 수행할 수 있다.In the embodiment of FIG. 12 , the computing device TN100 may include at least one processor TN110 , a transceiver device TN120 , and a memory TN130 . Also, the computing device TN100 may further include a storage device TN140 , an input interface device TN150 , an output interface device TN160 , and the like. Components included in the computing device TN100 may be connected by a bus TN170 to communicate with each other.
프로세서(TN110)는 메모리(TN130) 및 저장 장치(TN140) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(TN110)는 중앙 처리 장치(CPU: central processing unit), 그래픽 처리 장치(GPU: graphics processing unit), 또는 본 발명의 실시예에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 프로세서(TN110)는 본 발명의 실시예와 관련하여 기술된 절차, 기능, 및 방법 등을 구현하도록 구성될 수 있다. 프로세서(TN110)는 컴퓨팅 장치(TN100)의 각 구성 요소를 제어할 수 있다.The processor TN110 may execute a program command stored in at least one of the memory TN130 and the storage device TN140. The processor TN110 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to an embodiment of the present invention are performed. The processor TN110 may be configured to implement procedures, functions, and methods described in connection with an embodiment of the present invention. The processor TN110 may control each component of the computing device TN100 .
메모리(TN130) 및 저장 장치(TN140) 각각은 프로세서(TN110)의 동작과 관련된 다양한 정보를 저장할 수 있다. 메모리(TN130) 및 저장 장치(TN140) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(TN130)는 읽기 전용 메모리(ROM: read only memory) 및 랜덤 액세스 메모리(RAM: random access memory) 중에서 적어도 하나로 구성될 수 있다. Each of the memory TN130 and the storage device TN140 may store various information related to the operation of the processor TN110 . Each of the memory TN130 and the storage device TN140 may be configured as at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory TN130 may include at least one of a read only memory (ROM) and a random access memory (RAM).
송수신 장치(TN120)는 유선 신호 또는 무선 신호를 송신 또는 수신할 수 있다. 송수신 장치(TN120)는 네트워크에 연결되어 통신을 수행할 수 있다. The transceiver TN120 may transmit or receive a wired signal or a wireless signal. The transceiver TN120 may be connected to a network to perform communication.
한편, 본 발명은 컴퓨터프로그램으로 구현될 수도 있다. 본 발명은 하드웨어와 결합되어, 본 발명에 따른 DRM 콘텐츠 병렬 패키징 방법을 실행시키기 위하여, 컴퓨터가 판독 가능한 기록매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.Meanwhile, the present invention may be implemented as a computer program. The present invention may be implemented as a computer program stored in a computer-readable recording medium in combination with hardware to execute the DRM content parallel packaging method according to the present invention.
본 발명의 실시예에 따른 방법들은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. The methods according to the embodiment of the present invention may be implemented in the form of a program readable by various computer means and recorded in a computer readable recording medium. Here, the recording medium may include a program command, a data file, a data structure, etc. alone or in combination.
기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. The program instructions recorded on the recording medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software.
예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. For example, the recording medium includes magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CDROM and DVD, and magneto-optical media such as floppy disks. optical media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어를 포함할 수 있다. Examples of program instructions may include not only machine language such as generated by a compiler, but also a high-level language that can be executed by a computer using an interpreter or the like.
이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Such hardware devices may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상, 본 발명의 일 실시예에 대하여 설명하였으나, 해당 기술 분야에서 통상의 지식을 가진 자라면 특허청구범위에 기재된 본 발명의 사상으로부터 벗어나지 않는 범위 내에서, 구성 요소의 부가, 변경, 삭제 또는 추가 등에 의해 본 발명을 다양하게 수정 및 변경시킬 수 있을 것이며, 이 또한 본 발명의 권리범위 내에 포함된다고 할 것이다.In the above, although an embodiment of the present invention has been described, those of ordinary skill in the art can add, change, delete or add components within the scope that does not depart from the spirit of the present invention described in the claims. It will be said that various modifications and changes of the present invention can be made by, and this is also included within the scope of the present invention.
100 : 사용자 단말기
200 : DRM 콘텐츠 병렬 패키징 관리 서버
210 : 통신부
220 : 병렬 패키징부
221 : NAL 분할 모듈
222 : 병렬 패키징 모듈
222a ~ 222n : DRM 패키징 모듈
2221 : 디코딩 수단
2222 : 패키징 수단
2223 : 인코딩 수단
223 : 공유 메모리
224 : NAL 정렬 모듈
CP1 ~ CP3 : 외부의 콘텐츠 제공자100: user terminal
200: DRM content parallel packaging management server
210: communication department
220: parallel packaging unit
221: NAL partition module
222: parallel packaging module
222a ~ 222n : DRM packaging module
2221: decoding means
2222: packaging means
2223: encoding means
223: shared memory
224: NAL alignment module
CP1 ~ CP3 : External Content Provider
Claims (12)
상기 NAL 분할 모듈에 의해 분할된 복수개의 NAL 유닛 각각에 대해, CABAC 디코더를 이용하여 NAL 유닛을 디코딩하고, 디코딩을 통해 추출된 QTC 데이터 내에 DRM 메타 데이터를 패키징하고, DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 병렬 패키징 모듈;을 포함하며,
상기 병렬 패키징 모듈은, 상기 분할된 복수개의 NAL 유닛 각각에 대해, 상기 DRM 메타 데이터를 패키징하는 복수개의 DRM 패키징 모듈이 병렬로 형성되며,
상기 DRM 패키징 모듈 각각은,
CABAC 디코더를 이용하여 상기 NAL 유닛을 디코딩하는 디코딩 수단;
상기 디코딩 수단에 의한 디코딩 결과로 도출된 데이터들 중에서 QTC 데이터를 선택하고, 선택된 QTC 데이터 내의 적어도 하나의 비트스트림과 이에 대응하는 DRM 메타데이터의 비트스트림을 삽입 연산하여 DRM 패키징을 수행하는 패키징 수단; 및,
CABAC 인코더를 이용하여 상기 DRM 패키징이 수행된 NAL 유닛을 인코딩하는 인코딩 수단을 포함하며,
상기 패키징 수단은,
상기 NAL 유닛의 영상 이미지를 구현하는 영상 프레임에 포함된 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC들 중 적어도 하나 이상의 QTC의 비트스트림과 이에 대응하는 DRM 메타데이터의 비트스트림에 대해 삽입 연산을 수행하여 DRM 패키징하는 DRM 콘텐츠 병렬 패키징 장치.
a NAL segmentation module for segmenting video content including a plurality of NAL units (Network Abstraction Layer Unit) into individual NAL units;
For each of the plurality of NAL units divided by the NAL partitioning module, the NAL unit is decoded using a CABAC decoder, the DRM metadata is packaged in the QTC data extracted through decoding, and the DRM metadata packaging is completed. A parallel packaging module that encodes
In the parallel packaging module, for each of the plurality of divided NAL units, a plurality of DRM packaging modules for packaging the DRM metadata are formed in parallel,
Each of the DRM packaging modules,
decoding means for decoding the NAL unit using a CABAC decoder;
packaging means for selecting QTC data from among the data derived as a result of decoding by the decoding means and performing DRM packaging by inserting at least one bitstream in the selected QTC data and a bitstream of DRM metadata corresponding thereto; and,
Encoding means for encoding the NAL unit on which the DRM packaging has been performed using a CABAC encoder,
The packaging means,
Insertion operation on the bitstream of at least one QTC among the QTCs present in the Y channel representing the luminance among the YCbCr channels included in the video frame implementing the video image of the NAL unit and the bitstream of DRM metadata corresponding thereto DRM content parallel packaging device that performs DRM packaging.
DRM 패키징이 완료된 복수개의 NAL 유닛을 일시 저장하는 공유 메모리;
상기 공유 메모리에 일시 저장된 복수개의 NAL 유닛을 정렬하는 NAL 정렬 모듈
을 더 포함하는 DRM 콘텐츠 병렬 패키징 장치.
The method according to claim 1,
a shared memory for temporarily storing a plurality of NAL units in which DRM packaging is completed;
NAL sorting module for sorting a plurality of NAL units temporarily stored in the shared memory
DRM content parallel packaging device further comprising a.
복수개의 NAL 유닛을 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할하는 NAL 분할 모듈과, 상기 NAL 분할 모듈에 의해 분할된 복수개의 NAL 유닛 각각에 대해 CABAC 디코더를 이용하여 NAL 유닛을 디코딩하고 디코딩을 통해 추출된 QTC 데이터 내에 DRM 메타 데이터를 패키징하고 DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 병렬 패키징 모듈을 포함하는 병렬 패키징부;를 포함하며,
상기 병렬 패키징 모듈은, 상기 분할된 복수개의 NAL 유닛 각각에 대해, 상기 DRM 메타 데이터를 패키징하는 복수개의 DRM 패키징 모듈이 병렬로 형성되며,
상기 DRM 패키징 모듈 각각은,
CABAC 디코더를 이용하여 상기 NAL 유닛을 디코딩하는 디코딩 수단;
상기 디코딩 수단에 의한 디코딩 결과로 도출된 데이터들 중에서 QTC 데이터를 선택하고, 선택된 QTC 데이터 내의 적어도 하나의 비트스트림과 이에 대응하는 DRM 메타데이터의 비트스트림을 삽입 연산하여 DRM 패키징을 수행하는 패키징 수단; 및,
CABAC 인코더를 이용하여 상기 DRM 패키징이 수행된 NAL 유닛을 인코딩하는 인코딩 수단을 포함하며,
상기 패키징 수단은,
상기 NAL 유닛의 영상 이미지를 구현하는 영상 프레임에 포함된 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC들 중 적어도 하나 이상의 QTC의 비트스트림과 이에 대응하는 DRM 메타데이터의 비트스트림에 대해 삽입 연산을 수행하여 DRM 패키징하는 DRM 콘텐츠 병렬 패키징 관리 서버.
a communication unit for performing wired/wireless communication with the user terminal;
A NAL division module that divides video content composed of a plurality of NAL units into individual NAL units, and a CABAC decoder for each of the plurality of NAL units divided by the NAL division module to decode the NAL unit and perform decoding A parallel packaging unit including a parallel packaging module that packages the DRM metadata in the QTC data extracted through and encodes the NAL unit in which the DRM metadata packaging is completed; includes;
In the parallel packaging module, for each of the plurality of divided NAL units, a plurality of DRM packaging modules for packaging the DRM metadata are formed in parallel,
Each of the DRM packaging modules,
decoding means for decoding the NAL unit using a CABAC decoder;
packaging means for selecting QTC data from among the data derived as a result of decoding by the decoding means and performing DRM packaging by inserting at least one bitstream in the selected QTC data and a bitstream of DRM metadata corresponding thereto; and,
Encoding means for encoding the NAL unit on which the DRM packaging has been performed using a CABAC encoder,
The packaging means,
Insertion operation on the bitstream of at least one QTC among the QTCs present in the Y channel representing the luminance among the YCbCr channels included in the video frame implementing the video image of the NAL unit and the bitstream of DRM metadata corresponding thereto DRM content parallel packaging management server to perform DRM packaging.
DRM 패키징이 완료된 복수개의 NAL 유닛을 일시 저장하는 공유 메모리;
상기 공유 메모리에 일시 저장된 복수개의 NAL 유닛을 정렬하는 NAL 정렬 모듈
을 더 포함하는 DRM 콘텐츠 병렬 패키징 관리 서버.
The method according to claim 5, The parallel packaging unit,
a shared memory for temporarily storing a plurality of NAL units in which DRM packaging is completed;
NAL sorting module for sorting a plurality of NAL units temporarily stored in the shared memory
DRM content parallel packaging management server further comprising.
복수개의 NAL 유닛 포함하여 구성된 영상 콘텐츠를 개개의 NAL 유닛으로 분할하는 단계;
분할된 복수개의 NAL 유닛 각각에 대해, CABAC 디코더를 이용하여 디코딩하는 단계;
분할된 복수개의 NAL 유닛 각각에 대해, 상기 디코딩을 통해 획득된 데이터 중에서 QTC 데이터 내에 DRM 메타 데이터를 패키징하는 단계;
분할된 복수개의 NAL 유닛 각각에 대해, CABAC 인코더를 이용하여 상기 DRM 메타 데이터 패키징이 완료된 NAL 유닛을 인코딩하는 단계를 포함하며,
상기 DRM 메타 데이터를 패키징하는 단계는,
상기 NAL 유닛의 영상 이미지를 구현하는 영상 프레임에 포함된 YCbCr 채널 중에서 휘도를 표현하는 Y 채널에 존재하는 QTC들 중 적어도 하나 이상의 QTC의 비트스트림과 이에 대응하는 DRM 메타데이터의 비트스트림에 대해 삽입 연산을 수행하여 DRM 패키징하는 DRM 콘텐츠 병렬 패키징 방법.
performed by a computing device, the computing device comprising:
dividing video content including a plurality of NAL units into individual NAL units;
decoding each of the plurality of divided NAL units using a CABAC decoder;
For each of the plurality of divided NAL units, packaging DRM metadata in QTC data among the data obtained through the decoding;
For each of the plurality of divided NAL units, encoding the NAL unit in which the DRM metadata packaging is completed using a CABAC encoder,
The step of packaging the DRM metadata includes:
Insertion operation on the bitstream of at least one QTC among the QTCs present in the Y channel representing the luminance among the YCbCr channels included in the video frame implementing the video image of the NAL unit and the bitstream of DRM metadata corresponding thereto A DRM content parallel packaging method that performs DRM packaging.
DRM 패키징이 완료된 복수개의 NAL 유닛을 일시 저장하는 단계;
일시 저장된 복수개의 NAL 유닛을 정렬하는 단계;
를 더 포함하는 DRM 콘텐츠 병렬 패키징 방법.10. The method of claim 9,
Temporarily storing a plurality of NAL units for which DRM packaging is completed;
aligning a plurality of temporarily stored NAL units;
DRM content parallel packaging method further comprising.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190178750A KR102302755B1 (en) | 2019-12-30 | 2019-12-30 | DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging |
JP2020573440A JP7245401B2 (en) | 2019-12-30 | 2019-12-31 | DRM content parallel packaging device, DRM content parallel packaging system including the same, and DRM content parallel packaging method |
PCT/KR2019/018770 WO2021137314A1 (en) | 2019-12-30 | 2019-12-31 | Parallel packaging device for drm content, parallel packaging system for drm content comprising same, and parallel packaging method for drm content |
PCT/KR2020/019439 WO2021137633A2 (en) | 2019-12-30 | 2020-12-30 | Drm content parallel packaging device, drm content parallel packaging system comprising same, and drm content parallel packaging method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190178750A KR102302755B1 (en) | 2019-12-30 | 2019-12-30 | DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210085572A KR20210085572A (en) | 2021-07-08 |
KR102302755B1 true KR102302755B1 (en) | 2021-09-16 |
Family
ID=76686599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190178750A KR102302755B1 (en) | 2019-12-30 | 2019-12-30 | DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP7245401B2 (en) |
KR (1) | KR102302755B1 (en) |
WO (1) | WO2021137314A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017122554A1 (en) * | 2016-01-15 | 2017-07-20 | ソニー株式会社 | Reception device, transmission device, and data processing method |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5568785A (en) * | 1978-11-18 | 1980-05-23 | Clarion Co Ltd | Cipher process system for composite color video signal |
US7406176B2 (en) * | 2003-04-01 | 2008-07-29 | Microsoft Corporation | Fully scalable encryption for scalable multimedia |
KR100814064B1 (en) | 2006-05-26 | 2008-03-14 | 에스케이 텔레콤주식회사 | Method and System for packaging DRM contents |
KR100817021B1 (en) * | 2006-06-21 | 2008-03-26 | 한국전자통신연구원 | Encoding and decoding apparatus having selective encryption function of H.264/AVC multimedia contents and its method |
JP5143502B2 (en) * | 2007-08-27 | 2013-02-13 | Necパーソナルコンピュータ株式会社 | Transcoder, transcoding method and transcoding program |
US9635355B2 (en) * | 2011-07-28 | 2017-04-25 | Qualcomm Incorporated | Multiview video coding |
EP2941891B1 (en) * | 2013-01-04 | 2020-09-16 | GE Video Compression, LLC | Efficient scalable coding concept |
KR20160102731A (en) * | 2015-02-23 | 2016-08-31 | 삼성전자주식회사 | Electronic device and method for providing DRM content thereof |
AU2015417837B2 (en) * | 2015-12-23 | 2019-07-18 | Huawei Technologies Co., Ltd. | Method and apparatus for transform coding with block-level transform selection and implicit signaling within hierarchical partitioning |
US10979729B2 (en) * | 2016-11-30 | 2021-04-13 | Qualcomm Incorporated | Systems and methods for signaling and constraining a high dynamic range (HDR) video system with dynamic metadata |
-
2019
- 2019-12-30 KR KR1020190178750A patent/KR102302755B1/en active IP Right Grant
- 2019-12-31 WO PCT/KR2019/018770 patent/WO2021137314A1/en active Application Filing
- 2019-12-31 JP JP2020573440A patent/JP7245401B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017122554A1 (en) * | 2016-01-15 | 2017-07-20 | ソニー株式会社 | Reception device, transmission device, and data processing method |
Also Published As
Publication number | Publication date |
---|---|
JP2022518988A (en) | 2022-03-18 |
WO2021137314A1 (en) | 2021-07-08 |
KR20210085572A (en) | 2021-07-08 |
JP7245401B2 (en) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7418533B2 (en) | System and method for protecting elementary bitstreams incorporating independently encoded tiles | |
WO2010044146A1 (en) | Encryption device and decoding device, and encryption method and decoding method | |
US9740886B2 (en) | Enhanced security for hardware decoder accelerator | |
US8472625B2 (en) | Method and system for protecting 3D video content | |
CN115398481A (en) | Apparatus and method for performing artificial intelligence encoding and artificial intelligence decoding on image | |
KR102302755B1 (en) | DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging | |
KR102186480B1 (en) | Apparatus for packaging DRM contents and system comprising it and method for packaging DRM contents | |
KR102477310B1 (en) | DRM contents parallel packaging device and system comprising it and method for DRM contents parallel packaging | |
WO2021137633A2 (en) | Drm content parallel packaging device, drm content parallel packaging system comprising same, and drm content parallel packaging method | |
KR20220082578A (en) | Forensic marking device and method with secret sharing technology applied | |
KR20220082633A (en) | Forensic marking device and method supporting DRM streaming technology | |
US12010362B2 (en) | Systems and methods for protecting elementary bitstreams incorporating independently encoded tiles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right |