KR20120068285A - Diversification transcoding method for video file - Google Patents
Diversification transcoding method for video file Download PDFInfo
- Publication number
- KR20120068285A KR20120068285A KR1020100129847A KR20100129847A KR20120068285A KR 20120068285 A KR20120068285 A KR 20120068285A KR 1020100129847 A KR1020100129847 A KR 1020100129847A KR 20100129847 A KR20100129847 A KR 20100129847A KR 20120068285 A KR20120068285 A KR 20120068285A
- Authority
- KR
- South Korea
- Prior art keywords
- fragment
- data
- video
- header
- transcoding
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 239000012634 fragment Substances 0.000 claims description 75
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 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/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 동영상 파일 처리 기술에 관한 것으로, 더욱 상세하게는 동영상 파일의 분산 트랜스코딩 방법에 관한 것이다. The present invention relates to a video file processing technique, and more particularly, to a distributed transcoding method of a video file.
네트워크를 통해 가입자의 단말로 동영상 서비스를 제공하는 영상통신 시스템은 네트워크 환경, 단말 규격 및 서비스 타입에 따라 다양한 형상의 동영상을 서비스하고 있다. A video communication system that provides a video service to a subscriber's terminal through a network serves various types of video according to a network environment, a terminal standard, and a service type.
최근 하나의 단말에서 다양한 동영상 서비스를 이용하고자 하거나, 서로 다른 네트워크 환경을 수용하는 서비스를 구상하는 등 서비스의 융합과 연동에 대한 요구가 증가함에 따라, 이들 다양한 네트워크/단말 환경의 가입자간에 동영상 서비스를 원활하게 제공하기 위한 방안이 준비되고 있는 실정이다. 이러한 연동 작업을 수행하기 위해 필요한 것이 동영상 파일의 포맷 및 표현 형태를 변형하는 처리 작업인 '트랜스코딩'이다.Recently, as the demand for the convergence and interworking of services is increasing, such as using various video services in one terminal or designing a service that accommodates different network environments, video services are provided between subscribers of these various network / terminal environments. In order to provide smoothly, the situation is being prepared. What is needed to perform this interworking work is 'transcoding', which is a processing task that transforms the format and expression of the video file.
네트워크와 개인 단말의 발전에 따라 대용량의 동영상을 서비스의 제공이 가능해짐에 따라 영상 통화, 영상 회의, 주문형 비디오, 화상 채팅 및 멀티미디어 메시징 등 다양한 형태의 영상통신 서비스가 개발되고 있는바, 이들 영상 통신 서비스는 네트워크나 가입자의 단말 등 기반 환경에 따라 서로 다른 특성을 갖는다.With the development of networks and personal terminals, various types of video communication services such as video call, video conferencing, video on demand, video chat, and multimedia messaging are being developed. The service has different characteristics according to the base environment such as the network or the subscriber's terminal.
즉, 네트워크 대역폭이 충분히 제공되는지에 따라, 혹은 단말의 정보처리능력 등에 따라 화면 크기나 프레임이 충분한 화질의 동영상을 제공하거나, 제한된 화질의 동영상을 제공하게 된다. That is, depending on whether the network bandwidth is sufficiently provided, or depending on the information processing capability of the terminal or the like, a video having a sufficient picture size or a frame or a video having a limited picture quality is provided.
이러한 영상통신 서비스 간의 연동이 필요한 경우에는 퍼스널 컴퓨터 기반의 고화질의 동영상 서비스가 무선의 단말 가입자에게 전달되어야 하는 등의 경우가 생기게 되는데, 그 중간 과정에서 원래의 동영상의 포맷 등을 최종 가입자 단말에서 수용할 수 있는 정도로 변형하는 트랜스코딩 작업이 필요하게 된다.When interworking between such video communication services is required, there is a case that a personal computer-based high quality video service must be delivered to a wireless terminal subscriber. In the interim process, the original video format is accepted by the final subscriber terminal. Transcoding is required to deform to the extent possible.
그러나 수많은 영상통신 서비스가 발전하고 이들 서비스에서 제공하는 동영상의 포맷이 다양해짐에 따라, 이들 영상통신 서비스들이 다른 영상통신 서비스와 연동하기 위해서는 네트워크나 단말 특성 등을 고려한 서로 다른 트랜스코딩 작업이 필요하다. 즉 동영상의 크기를 변환하는 기초적인 트랜스코딩에서부터, 동영상의 포맷을 변환하거나, 동영상 파일의 내용으로부터 요약 정보를 추출하거나 일부 미디어만을 추출하고 혹은 로고나 상업 정보 등 비정형화된 압축 객체를 추가하는 고난이도의 트랜스코딩이 요구되기도 한다.However, as many video communication services are developed and video formats provided by these services are diversified, different video encoding services need to be transcoded in consideration of network and terminal characteristics in order to interoperate with other video communication services. . From basic transcoding to convert the size of a video, to converting the format of a video, extracting summary information from the contents of a video file, extracting only some media, or adding unstructured compressed objects such as logos or commercial information. Transcoding may be required.
그러므로 하나의 영상통신 서비스가 다양한 연동 조건을 수용할 수 있는 많은 트랜스코딩 기능을 수행하기란 쉽지 않다. 또한 여러 영상통신 서비스에서 이러한 트랜스코딩 기능을 개별적으로 구축하는 것은 상당한 부하를 중복적으로 부담하게 되는 결과를 초래한다.Therefore, it is not easy for one video communication service to perform many transcoding functions that can accommodate various interworking conditions. In addition, deploying these transcoding functions individually in multiple video communications services results in a significant overhead load.
따라서 영상통화, 주문형 비디오, 영상회의 및 멀티미디어 메시징 등 다양한 영상통신 서비스에서 요구되는 트랜스코딩을 효과적으로 수행하기 위한 기술의 개발이 절실하게 요망되었다. Therefore, it is urgently needed to develop a technology for effectively performing transcoding required in various video communication services such as video call, video on demand, video conferencing and multimedia messaging.
본 발명은 동영상 파일에 대한 트랜스코딩을 분산 처리하여 동영상 트랜스코딩을 위한 부하를 줄임과 동시에 트랜스코딩 속도를 향상시킬 수 있는 동영상 파일의 분산 트랜스코딩 방법을 제공하는 것을 그 목적으로 한다. It is an object of the present invention to provide a distributed transcoding method of a video file that can improve transcoding speed while reducing the load for video transcoding by distributing transcoding for a video file.
상기한 목적을 달성하기 위한 본 발명에 따르는 동영상 파일의 분산 트랜스코딩 방법은, 트랜스코딩 서버 컴퓨터가, 동영상 파일의 오디오 데이터와 비디오 데이터를 다수의 조각으로 분할하는 단계: 상기 다수의 조각 중 일부를 결합하여 단편 데이터들을 구성하는 단계; 상기 단편 데이터들을 다수의 서브 컴퓨터로 전송하는 단계; 상기 다수의 서브 컴퓨터 각각이 단편 데이터를 트랜스코딩하여 트랜스코딩된 단편 데이터를 수신받아 조합하여 트랜스코딩된 동영상 파일을 생성하는 단계;를 구비함을 특징으로 한다. In the distributed transcoding method of a video file according to the present invention for achieving the above object, the transcoding server computer divides the audio data and the video data of the video file into a plurality of pieces: a part of the plurality of pieces Combining to construct fragment data; Transmitting the fragment data to a plurality of subcomputers; And each of the plurality of sub-computers transcodes the fragment data to receive the transcoded fragment data and combine them to generate a transcoded video file.
상기한 본 발명은 동영상 파일에 대한 트랜스코딩을 분산 처리하여 동영상 파일의 트랜스코딩을 위한 부하를 줄임과 동시에 트랜스코딩 속도를 향상시킬 수 있는 효과가 있다.The present invention described above has the effect of distributing the transcoding for the video file to reduce the load for transcoding the video file and at the same time improve the transcoding speed.
도 1은 본 발명의 바람직한 실시예에 따른 동영상 파일에 대한 트랜스코딩 시스템의 구성도.
도 2는 본 발명의 바람직한 실시예에 따른 동영상 파일에 대한 트랜스코딩방법의 절차도.
도 3은 본 발명의 바람직한 실시예에 따른 동영상 파일에 대한 조각 구성예를 도시한 도면.
도 4 및 도 5는 본 발명의 바람직한 실시예에 따른 동영상 파일에 대한 단편 데이터 구성예를 도시한 도면. 1 is a block diagram of a transcoding system for a video file according to a preferred embodiment of the present invention.
2 is a flow chart of a transcoding method for a video file according to a preferred embodiment of the present invention.
3 is a diagram showing an example of a fragment configuration for a video file according to a preferred embodiment of the present invention.
4 and 5 are diagrams showing an example of a fragment data configuration for a moving picture file according to a preferred embodiment of the present invention.
본 발명은 동영상 파일의 트랜스코딩을 분산처리함으로써, 동영상 파일의 트랜스코딩을 위한 부하를 줄임과 동시에 트랜스코딩 속도를 향상시킨다.
The present invention distributes the transcoding of the video file, thereby reducing the load for transcoding the video file and at the same time improving the transcoding speed.
<동영상 파일의 트랜스코딩 시스템의 구성> <Configuration of Transcoding System for Video Files>
이러한 본 발명에 따르는 동영상 파일에 대한 트랜스코딩 시스템의 구성을 도 1을 참조하여 설명한다. The configuration of a transcoding system for a video file according to the present invention will be described with reference to FIG. 1.
상기 동영상 파일에 대한 트랜스코딩 시스템은 트랜스코딩 서버 컴퓨터(100)와 다수의 서브 컴퓨터(1021~102N)로 구성된다. The transcoding system for the video file is composed of a
상기 트랜스코딩 서버 컴퓨터(100)와 다수의 서브 컴퓨터(1021~102N)는 네트워크를 통해 연결되어 데이터를 주고 받을 수 있으며 다수의 서브 컴퓨터(1021~102N)를 통해 동영상 파일을 분산 트랜스코딩한다. The
상기 트랜스코딩을 위해 상기 트랜스코딩 서버 컴퓨터(100)는 동영상 파일에 대해 오디오 및 비디오 조각을 생성하고, 그 오디오 및 비디오 조각 다수를 묶어 단편 데이터를 생성하고, 그 단편 데이터를 상기 다수의 서브 컴퓨터(1021~102N)로 제공하여 트랜스코딩을 요청하며, 상기 다수의 서브 컴퓨터(1021~102N)로부터 트랜스코딩된 단편 데이터들을 제공받아 조합하여 새로운 동영상 파일을 구성한다. For the transcoding, the
상기 다수의 서브 컴퓨터(1021~102N)는 상기 트랜스코딩 서버 컴퓨터(100)가 제공하는 오디오 및 비디오 조각들로 구성되는 단편 데이터를 수신받아 트랜스코딩을 이행하고, 그 결과를 트랜스코딩 서버 컴퓨터(100)로 반환한다. 특히 상기 다수의 서브 컴퓨터(1021~102N)에 의한 트랜스코딩에 따라 조각 헤더의 프레임의 크기 및 옵션, 키 프레임이 변경되므로 조각 전체의 크기가 변경되고, 단편 헤더의 디코딩에 필요한 데이터인 엑스트라(extra) 등이 변경된다. 이에 따라 상기 다수의 서브 컴퓨터(1021~102N)는 상기한 변경 사항들을 헤더에 반영하여 헤더를 업데이트한다. 상기 업데이트되는 조각 헤더의 부분은 프레임 플래그(DWORD dwKeyFrame), 헤더 이후로의 바이트 오프셋(DWORD dwOffset)과, 프레임의 바이트 크기(DWORD dwSize)이고, 단편 헤더의 부분은 엑스트라(extra) 데이터 길이를 포함한 바이트 길이(unsigned int length)와, 비디오인 경우 BITMAPINFOHEADER(BITMAPINFOHEADER info)와, 오디오인 경우 WAVEFORMATEX(WAVEFORMATEX)와, 디코딩에 필요한 데이터인 엑스트라(extra) 데이터(unsigned char *extra) 이다.
The plurality of
<동영상 파일의 분산 트랜스코딩 방법><Distributed transcoding method of video file>
본 발명의 바람직한 실시예에 따른 동영상 파일에 대한 트랜스코딩 방법을 도 2를 참조하여 설명한다. A transcoding method for a video file according to a preferred embodiment of the present invention will be described with reference to FIG.
상기 트랜스코딩 서버 컴퓨터(100)는 저장된 공간 순서로 오디오 조각 및 키 프레임을 고려하여 비디오 조각을 생성한다(200단계). The
상기 비디오 조각을 도 3을 참조하여 설명한다. 상기 비디오 조각은 제1 또는 제2비디오 조각으로 구성될 수 있다.The video fragment will be described with reference to FIG. 3. The video fragment may consist of a first or second video fragment.
상기 제1비디오 조각은 헤더와, 제1키 프레임과, 추가 키 프레임인 제2키 프레임과, 다수의 프레임으로 구성된다. 상기 다수의 프레임은 제1키 프레임 또는 제2키 프레임을 참조한다. The first video fragment includes a header, a first key frame, a second key frame as an additional key frame, and a plurality of frames. The plurality of frames refer to a first key frame or a second key frame.
그리고 상기 제2비디오 조각은 헤더와 제2키 프레임과 제3키 프레임과 추가 키 프레임인 제4키프레임과, 다수의 프레임으로 구성된다. 상기 다수의 프레임은 상기 제2키 프레임 또는 상기 제3키 프레임 또는 상기 제4키 프레임을 참조한다. The second video fragment includes a header, a second key frame, a third key frame, a fourth key frame which is an additional key frame, and a plurality of frames. The plurality of frames refer to the second key frame or the third key frame or the fourth key frame.
상기 헤더는 조각 헤더 바이트 크기 (unsigned long header_size), 조각 번호(unsigned long number), 프레임 개수(unsigned long entry_number), 프레임 인덱스 엔트리 배열(INDEX_ENTRY aIndex[])로 구성된다.The header consists of a fragment header byte size (unsigned long header_size), a fragment number (unsigned long number), an unsigned long entry_number, and a frame index entry array (INDEX_ENTRY aIndex []).
상기 프레임에 대한 인덱스 엔트리는 키 프레임 플래그(DWORD dwKeyFrame), 헤더 이후로의 바이트 오프셋(DWORD dwOffset)과, 프레임의 바이트 크기(DWORD dwSize)로 구성된다.The index entry for the frame consists of a key frame flag (DWORD dwKeyFrame), a byte offset after the header (DWORD dwOffset), and a byte size (DWORD dwSize) of the frame.
본 발명에 따른 비디오 조각은 다음의 특징을 갖는다. 먼저 조각 내 프레임은 콘텐츠에 저장된 공간 순서를 따르며, 키 프레임부터 시작에서 추가 키 프레임으로 끝난다. 양 끝의 키 프레임 사이에 키 프레임이 포함될 수 있으며, 마지막 조각의 경우에는 추가 키 프레임이 없을 수 있다. The video fragment according to the present invention has the following features. First, the frames in the fragment follow the order of space stored in the content, starting with the key frame and ending with the additional key frame. Keyframes may be included between the keyframes at both ends, and there may be no additional keyframes for the last piece.
상기 오디오 조각은 조각내 프레임은 동영상 파일에 저장된 공간 순서에 따르며, 비디오 조각의 프레임들에 대응되게 구성된 오디오 프레임으로 구성된다. The audio fragment is composed of an audio frame configured to correspond to the frames of the video fragment in the frame in the fragment according to the spatial order stored in the video file.
상기한 바와 같이 동영상 파일에 대한 비디오 및 오디오 조각을 생성한 후에, 상기 트랜스코딩 서버 컴퓨터(100)는 상기 비디오 및 오디오 조각들을 각 서브 컴퓨터에 대한 사양을 고려하여 전달할 조각 수를 결정하여 이를 바탕으로 단편 데이터를 구성한다. 여기서, 상기 서브 컴퓨터에 대한 사양정보는 미리 트랜스코딩 서버 컴퓨터(100)에 등록되어 저장될 수 있으며, 상기 사양에 대응되는 조각 수는 미리 정해질 수도 있다. After generating the video and audio fragments for the video file as described above, the
상기 단편 데이터는 도 4에 도시한 바와 같이 헤더와 제1 내지 제5조각으로 구성되거나, 헤더와 제6 내지 제8조각으로 구성되거나, 헤더와 제9 내지 제12조각으로 구성될 수 있다. 즉 단편 데이터는 서브 컴퓨터의 사양에 따라 상이한 수의 조각들이 결합되어 구성된다. As shown in FIG. 4, the fragment data may include a header and first to fifth pieces, a header and sixth to eighth pieces, or a header and ninth to twelfth pieces. That is, the fragment data is formed by combining different numbers of pieces according to the specifications of the subcomputer.
상기 단편 데이터의 헤더는 도 5에 도시한 바와 같이 단편 헤더 바이트 크기 (unsigned long header_size), 단편 번호(unsigned long number)와, 오디오 및 비디오 식별정보(unsigned long type; 0: 오디오, 1: 비디오)와, 조각 개수(unsigned long particle_number)와, 트랜스코딩으로 변경할 미디어 타입(FORCC target)과, 엑스트라(extra) 데이터 길이를 포함한 바이트 길이(unsigned int length)와, 비디오인 경우 BITMAPINFOHEADER(BITMAPINFOHEADER info)와, 오디오인 경우 WAVEFORMATEX(WAVEFORMATEX)와, 디코딩에 필요한 데이터인 엑스트라(extra) 데이터(unsigned char *extra)를 포함한다. As shown in FIG. 5, the header of the fragment data includes fragment header byte size (unsigned long header_size), fragment number (unsigned long number), and audio and video identification information (unsigned long type; 0: audio, 1: video). , Unsigned long particle_number, the media type to be transcoded (FORCC target), the byte length including the extra data length, BITMAPINFOHEADER (BITMAPINFOHEADER info) for video, In the case of audio, it includes WAVEFORMATEX (WAVEFORMATEX) and extra data (unsigned char * extra), which is data necessary for decoding.
상기 단편 데이터 헤더에 구비되는 WAVEFORMATEX는 마이크로소프트(Microsoft)사에서 규정한 WAVEFORMATEX 구조체 형식을 따른다. 그리고 상기 BITMAPINFOHEADER에는 마이크로소프트(Microsoft)사에서 규정한 BITMAPINFOHEADER 구조체 형식을 따른다.The WAVEFORMATEX provided in the fragment data header follows the WAVEFORMATEX structure format defined by Microsoft. The BITMAPINFOHEADER follows the format of a BITMAPINFOHEADER structure defined by Microsoft.
상기 트랜스코딩 서버 컴퓨터(100)는 상기 오디오 및 비디오 조각들로 구성된 단편 데이터 각각을 다수의 서브 컴퓨터(1021~102N)로 전송한다(202단계). 상기 다수의 서브 컴퓨터(1021~102N)는 상기 비디오 및 오디오 조각들로 구성되는 단편 데이터 각각을 트랜스코딩한다(204단계). The
이후 상기 다수의 서브 컴퓨터(1021~102N)는 트랜스코딩된 파일 조각들로 구성된 단편 데이터들을 해당 단편 데이터에 포함된 미디어 타입에 따라 트랜스코딩한 후에 트랜스코딩 서버 컴퓨터(100)로 전송한다(206단계). 여기서, 상기 트랜스코딩을 수행하면, 조각 헤더의 프레임의 크기 및 옵셋 및 키 프레임 여부가 달라지고, 그에 따라 조각 전체 크기가 변경되고, 단편 헤더의 디코딩에 필요한 데이터인 엑스트라(extra) 등이 변경된다. 이에 상기 다수의 서브 컴퓨터(1021~102N)는 트랜스코딩 서버 컴퓨터(100)에 전달하기 전에 이러한 변경 사항들을 수신된 헤더들에 반영한다. 상기 변경 사항들은 조각 헤더의 프레임 플래그(DWORD dwKeyFrame), 헤더 이후로의 바이트 오프셋(DWORD dwOffset)과, 프레임의 바이트 크기(DWORD dwSize)이고, 단편 헤더의 엑스트라(extra) 데이터 길이를 포함한 바이트 길이(unsigned int length)와, 비디오인 경우 BITMAPINFOHEADER(BITMAPINFOHEADER info)와, 오디오인 경우 WAVEFORMATEX(WAVEFORMATEX)와, 디코딩에 필요한 데이터인 엑스트라(extra) 데이터(unsigned char *extra) 이다.Subsequently, the plurality of
상기 다수의 서브 컴퓨터(1021~102N)로부터 트랜스코딩된 단편 데이터들을 수신한 트랜스코딩 서버 컴퓨터(100)는 상기 트랜스코딩된 단편 데이터들을 단편번호에 따라 조합하여 트랜스코딩된 동영상 파일을 생성한다(208단계). The
100 : 트랜스코딩 서버 컴퓨터
1021~102N : 다수의 서브 컴퓨터100: transcoding server computer
1021 ~ 102N: Multiple Sub Computers
Claims (7)
트랜스코딩 서버 컴퓨터가, 동영상 파일의 오디오 데이터와 비디오 데이터를 다수의 조각으로 분할하는 단계:
상기 다수의 조각 중 일부를 결합하여 단편 데이터들을 구성하는 단계;
상기 단편 데이터들을 다수의 서브 컴퓨터로 전송하는 단계;
상기 다수의 서브 컴퓨터 각각이 단편 데이터를 트랜스코딩한 후에, 트랜스코딩된 단편 데이터를 제공하면, 상기 트랜스코딩된 단편 데이터를 수신받아 조합하여 트랜스코딩된 동영상 파일을 생성하는 단계;
를 구비함을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법. In the distributed transcoding method of a video file,
The transcoding server computer divides the audio data and the video data of the video file into a plurality of pieces:
Combining some of the plurality of pieces to form fragment data;
Transmitting the fragment data to a plurality of subcomputers;
After each of the plurality of sub-computers have transcoded the fragment data, and if the transcoded fragment data is provided, receiving and combining the transcoded fragment data to generate a transcoded video file;
Distributed transcoding method of a video file, characterized in that it comprises a.
상기 트랜스코딩 서버 컴퓨터는,
다수의 서브 컴퓨터 각각에 대해 해당 서브 컴퓨터의 사양에 따른 수의 조각들로 단편 데이터를 생성하며,
상기 서브 컴퓨터에 대한 사양정보 및 사양에 대응되는 조각의 수는 미리 저장됨을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법. The method of claim 1,
The transcoding server computer,
For each of the plurality of subcomputers, fragment data is generated in the number of pieces according to the specification of the subcomputer,
The specification information of the sub-computer and the number of pieces corresponding to the specification are stored in advance.
상기 조각은 헤더와 오디오 데이터 또는 비디오 데이터로 구성되며,
상기 헤더에는 조각 헤더 바이트 크기(unsigned long header_size)와, 조각 번호(unsigned long number)와, 조각전체 바이트 크기(unsigned long size)와, 프레임 개수(unsigned long entry_number)와, 프레임에 대한 인덱스 엔트리 배열(INDEX_ENTRY aIndex[])이 포함되며,
상기 프레임에 대한 인덱스 엔트리에는 키 프레임 플래그(DWORD dwKeyFrame)와, 헤더 이후로의 바이트 오프셋(DWORD dwOffset)과, 프레임의 바이트 크기(DWORD dwSize)가 포함됨을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법.The method of claim 1,
The fragment consists of a header and audio data or video data,
The header contains an unsigned long header_size, an unsigned long number, an unsigned long size, an unsigned long entry_number, and an index entry array for the frame. INDEX_ENTRY aIndex []),
The index entry for the frame includes a key frame flag (DWORD dwKeyFrame), a byte offset after the header (DWORD dwOffset), and a byte size (DWORD dwSize) of the frame.
상기 조각은
시작 키 프레임과 마지막의 추가 키 프레임, 그리고 상기 키 프레임과 상기 추가 키 프레임 사이에 존재하는 다수의 프레임으로 구성되는 비디오 데이터와 헤더로 구성되거나,
시작 키 프레임과 마지막의 추가 키 프레임, 그리고 상기 키 프레임과 상기 추가 키 프레임 사이에 존재하는 다수의 프레임과, 상기 다수의 프레임 사이에 위치하는 키 프레임으로 구성되는 비디오 데이터와 헤더로 구성되거나,
비디오 조각에 포함된 비디오 데이터의 프레임들과 인터리빙되어 있는 오디오 데이터와 헤더로 구성됨을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법.The method of claim 3,
The piece is
Or a video data and header consisting of a start key frame and a last additional key frame, and a plurality of frames existing between the key frame and the additional key frame, or
Or a video data and a header consisting of a start key frame and a last additional key frame, a plurality of frames existing between the key frame and the additional key frame, and a key frame positioned between the plurality of frames,
A distributed transcoding method of a video file, comprising a header and audio data interleaved with frames of video data included in a video fragment.
상기 단편 데이터는, 상기 헤더와 조각들로 구성되며,
상기 헤더에는 단편 헤더 바이트 크기 (unsigned long header_size), 단편 번호(unsigned long number)와, 오디오 및 비디오 식별정보(unsigned long type; 0: 오디오, 1: 비디오)와, 조각 개수(unsigned long particle_number)와, 트랜스코딩으로 변경할 미디어 타입(FORCC target)와, 엑스트라(extra) 데이터 길이를 포함한 바이트 길이(unsigned int length)와, 비디오인 경우 BITMAPINFOHEADER(BITMAPINFOHEADER info)와, 오디오인 경우 WAVEFORMATEX(WAVEFORMATEX)와, 디코딩에 필요한 데이터인 엑스트라(extra) 데이터(unsigned char *extra)를 포함함을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법. The method of claim 1,
The fragment data consists of the header and fragments,
The header includes fragment header byte size (unsigned long header_size), fragment number (unsigned long number), audio and video identification (unsigned long type; 0: audio, 1: video), fragment number (unsigned long particle_number), , Unsigned int length including the media type (FORCC target) to change to transcoding, extra data length, BITMAPINFOHEADER (BITMAPINFOHEADER info) for video, WAVEFORMATEX (WAVEFORMATEX) for audio, decoding A method of distributed transcoding of a video file, comprising extra data (unsigned char * extra), which is required data.
상기 다수의 서브 컴퓨터가,
트랜스코딩에 따른 프레임 크기 또는 옵션 또는 키 프레임 여부에 대한 변경정보에 따라 상기 트랜스코딩된 단편 데이터의 헤더 및 단편에 속하는 조각들의 헤더의 정보를 업데이트한 후에, 상기 업데이트된 헤더를 상기 단편에 속하는 조각들 및 상기 트랜스코딩된 단편 데이터에 실어 상기 트랜스코딩 서버 컴퓨터로 전송함을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법. The method of claim 1,
The plurality of sub-computers,
After updating the header of the transcoded fragment data and the header of the fragments belonging to the fragment according to the frame size according to the transcoding or the change information on the key frame or not, the fragments belonging to the fragment are updated. And the transcoded fragment data to be transmitted to the transcoding server computer.
상기 업데이트되는 조각 헤더의 부분은 프레임 플래그(DWORD dwKeyFrame), 헤더 이후로의 바이트 오프셋(DWORD dwOffset)과, 프레임의 바이트 크기(DWORD dwSize)이고,
상기 업데이트되는 단편 헤더의 부분은 엑스트라(extra) 데이터 길이를 포함한 바이트 길이(unsigned int length)와, 비디오인 경우 BITMAPINFOHEADER(BITMAPINFOHEADER info)와, 오디오인 경우 WAVEFORMATEX(WAVEFORMATEX)와, 디코딩에 필요한 데이터인 엑스트라(extra) 데이터(unsigned char *extra) 임을 특징으로 하는 동영상 파일의 분산 트랜스코딩 방법.
The method of claim 6,
The portion of the fragment header to be updated is a frame flag (DWORD dwKeyFrame), a byte offset after the header (DWORD dwOffset), and a byte size (DWORD dwSize) of the frame,
The portion of the fragment header being updated includes an unsigned int length including extra data length, BITMAPINFOHEADER (BITMAPINFOHEADER info) for video, WAVEFORMATEX (WAVEFORMATEX) for audio, and extra data that is necessary for decoding. (extra) A distributed transcoding method of a video file characterized by being unsigned char * extra.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20100129847A KR101166085B1 (en) | 2010-12-17 | 2010-12-17 | diversification transcoding method for video file |
PCT/KR2010/009095 WO2012081752A1 (en) | 2010-12-17 | 2010-12-20 | Distributed-transcoding method for a video file |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20100129847A KR101166085B1 (en) | 2010-12-17 | 2010-12-17 | diversification transcoding method for video file |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120068285A true KR20120068285A (en) | 2012-06-27 |
KR101166085B1 KR101166085B1 (en) | 2012-07-23 |
Family
ID=46244841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20100129847A KR101166085B1 (en) | 2010-12-17 | 2010-12-17 | diversification transcoding method for video file |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101166085B1 (en) |
WO (1) | WO2012081752A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160060165A (en) * | 2013-11-21 | 2016-05-27 | 구글 인코포레이티드 | Transcoding media streams using subchunking |
WO2019103293A1 (en) * | 2017-11-23 | 2019-05-31 | 주식회사 에스제이테크놀로지 | Distributed transcoding cloud service system |
WO2020036692A1 (en) * | 2018-08-16 | 2020-02-20 | Bombbomb, Llc. | Method and system for implementing split and parallelized encoding or transcoding of audio and video content |
WO2020209437A1 (en) * | 2019-04-09 | 2020-10-15 | 전자부품연구원 | Apparatus and method for transcoding segmented images in real time |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101489803B1 (en) | 2014-08-07 | 2015-02-09 | (주)스트림비젼 | Method for distributed transcoding media file |
KR20200088753A (en) | 2019-01-15 | 2020-07-23 | 유홍준 | Multidimensional Media Contents Control System and Method Based on Network Information Decomposition Assembly |
CN115942070B (en) * | 2022-12-26 | 2023-09-12 | 北京柏睿数据技术股份有限公司 | Dynamic optimization method and system for transcoding video data file |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3550651B2 (en) | 1999-09-14 | 2004-08-04 | 日本電気株式会社 | Method and apparatus for speeding up transcoding |
JP3969649B2 (en) | 2002-11-06 | 2007-09-05 | 株式会社エヌ・ティ・ティ・データ | Video data processing system |
JP2005176069A (en) | 2003-12-12 | 2005-06-30 | Ntt Data Corp | Distributed parallel transcoder system and method thereof |
-
2010
- 2010-12-17 KR KR20100129847A patent/KR101166085B1/en active IP Right Grant
- 2010-12-20 WO PCT/KR2010/009095 patent/WO2012081752A1/en active Application Filing
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160060165A (en) * | 2013-11-21 | 2016-05-27 | 구글 인코포레이티드 | Transcoding media streams using subchunking |
WO2019103293A1 (en) * | 2017-11-23 | 2019-05-31 | 주식회사 에스제이테크놀로지 | Distributed transcoding cloud service system |
WO2020036692A1 (en) * | 2018-08-16 | 2020-02-20 | Bombbomb, Llc. | Method and system for implementing split and parallelized encoding or transcoding of audio and video content |
US10951906B2 (en) | 2018-08-16 | 2021-03-16 | Bombbomb, Inc. | Method and system for implementing split and parallelized encoding or transcoding of audio and video content |
US11336910B2 (en) | 2018-08-16 | 2022-05-17 | Bombbomb, Inc. | Method and system for implementing split and parallelized encoding or transcoding of audio and video content |
WO2020209437A1 (en) * | 2019-04-09 | 2020-10-15 | 전자부품연구원 | Apparatus and method for transcoding segmented images in real time |
Also Published As
Publication number | Publication date |
---|---|
WO2012081752A1 (en) | 2012-06-21 |
KR101166085B1 (en) | 2012-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101166085B1 (en) | diversification transcoding method for video file | |
CA2696608C (en) | Generation and delivery of multimedia content-adaptation notifications | |
EP1271830B1 (en) | Negotiated dynamic error correction for streamed media | |
KR101617340B1 (en) | System and method for signaling segment encryption and key derivation for adaptive streaming | |
US8234410B2 (en) | Subscriber driven media agnostic content delivery across networks | |
KR101921015B1 (en) | Method for delivering data packets within a data communication system | |
US8862766B2 (en) | Customized data delivery and network configuration via aggregation of device attributes | |
WO2015147590A1 (en) | Broadcast and broadband hybrid service with mmt and dash | |
CN108476220A (en) | Use the peripheral bus video communication of Internet protocol | |
MX2015004596A (en) | Method and apparatus for media data delivery control. | |
US7461161B2 (en) | Information processing apparatus and method for decoding encoded data | |
WO2016129953A1 (en) | Method and apparatus for converting mmtp stream to mpeg-2ts | |
MXPA06003801A (en) | Container format for multimedia presentations. | |
JP2011518526A (en) | Terminal user interface device and method for rich media service | |
CN105187360A (en) | Document conference sharing method and device | |
JP2000101714A (en) | Generalized messaging structure | |
CN112118573A (en) | Voice encryption communication method and device between different systems of wide-band and narrow-band clusters | |
WO2017204579A1 (en) | Method and apparatus for mpeg media transport integration in content distribution networks | |
JP4504627B2 (en) | Data transmitting apparatus and data receiving apparatus | |
US20060176902A1 (en) | Method of processing a multimedia message, a storage medium, and an associated processing system | |
JP2008294957A (en) | Media conversion system, media conversion method, media conversion program, call control device, media conversion apparatus | |
US7016543B2 (en) | Method for providing a terminal with coded still image signals, communications system, network element and module | |
CN100452778C (en) | Multimedia content interaction system based on instantaneous communication and its realizing method | |
CN106534137B (en) | Media stream transmission method and device | |
KR100845318B1 (en) | Server, terminal and method for providing data trnsmission service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20150710 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160711 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20170710 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20180710 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20190710 Year of fee payment: 8 |