KR100918537B1 - Demultiplexing apparatus - Google Patents
Demultiplexing apparatus Download PDFInfo
- Publication number
- KR100918537B1 KR100918537B1 KR1020047003832A KR20047003832A KR100918537B1 KR 100918537 B1 KR100918537 B1 KR 100918537B1 KR 1020047003832 A KR1020047003832 A KR 1020047003832A KR 20047003832 A KR20047003832 A KR 20047003832A KR 100918537 B1 KR100918537 B1 KR 100918537B1
- Authority
- KR
- South Korea
- Prior art keywords
- time length
- content
- total time
- data
- information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/92—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/08—Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
역다중화 장치(200)는 MP4 파일 데이터(100)를 취득하는 데이터 취득부(210)와, 데이터 취득부(210)에 의해 취득된 MP4 파일 데이터(100)를 1조의 moov(11O) 및 mdat(11O)와 1조의 moof(130) 및 mdat(140)마다 역다중화하여 복호화하는 복호부(213)와, 데이터 취득부(210)에 의해 취득된 MP4 파일 데이터(100)의 moov(11O)에 포함되는 콘텐츠 총 시간길이 정보에 근거하여 콘텐츠 총 시간길이를 특정하는 콘텐츠 시간길이 특정부(211a)와, 콘텐츠 시간길이 특정부(211a)에 의해 특정된 콘텐츠 총 시간길이를 표시하는 재생부(214)를 구비한다. The demultiplexer 200 uses the data acquisition unit 210 for acquiring the MP4 file data 100 and the MP4 file data 100 acquired by the data acquisition unit 210 as a set of moov 110 and mdat ( 11O), the decoding unit 213 for demultiplexing and decoding each set of moof 130 and mdat 140, and in the moov 11O of the MP4 file data 100 acquired by the data acquiring unit 210. A content time length specifying unit 211a specifying the content total time length based on the content total time length information to be used, and a playback unit 214 displaying the total content time length specified by the content time length specifying unit 211a. It is provided.
Description
본 발명은 화상 데이터나 음악 데이터 등의 멀티미디어 데이터가 다중화된 다중화 데이터를 역다중화하는 역다중화 장치 및 멀티미디어 데이터를 다중화하는 다중화 장치에 관한 것이다. The present invention relates to a demultiplexing apparatus for demultiplexing multiplexed data into which multimedia data such as image data and music data are multiplexed, and a multiplexing apparatus for multiplexing multimedia data.
근년 멀티미디어 데이터(동화상, 음성, 텍스트 또는 정지화상 등의 콘텐츠)를 다중화하여 격납하는 파일 포맷으로서 MP4가 주목받고 있다. In recent years, MP4 has attracted attention as a file format for multiplexing and storing multimedia data (content such as moving picture, voice, text or still picture).
MP4는 동화상의 압축 부호화 방식인 MPEG-4나, 자연 화상의 압축 부호화 방식인 JPEG의 차세대 버전 JPEG 2000의 파일 포맷으로서 채용되는 등, 그 응용범위가 넓어지고 있다. MP4 is widely used as a file format of MPEG-4, which is a compression encoding method of moving images, and JPEG 2000, a next generation version of JPEG 2000, which is a compression encoding method of natural images.
당초, 이 MP4의 파일 포맷은 다중화된 콘텐츠가 격납되는 1개의 데이터 박스와, 그 데이터 영역의 콘텐츠에 관련되는 정보가 격납되는 1개의 헤더 박스로 구성되어 있었다. Initially, the file format of this MP4 consisted of one data box in which multiplexed content is stored, and one header box in which information related to the content of the data area is stored.
따라서, 멀티미디어 데이터로부터 MP4 파일 데이터를 생성하는 다중화 장치는, 멀티미디어 데이터를 취득하여 부호화 및 다중화 처리를 하고 모든 멀티미디어 데이터에 대한 처리가 종료한 후에, 그 헤더 박스를 작성하고 MP4 파일 데이터를 완성시켰다. Therefore, the multiplexing device for generating MP4 file data from the multimedia data acquires the multimedia data, performs the encoding and multiplexing processing, and after the processing for all the multimedia data is completed, the header box is created and the MP4 file data is completed.
이러한 다중화 장치에서는, 멀티미디어 데이터의 정보량이 많은 경우에는, 멀티미디어 데이터의 취득 및 이에 대한 처리의 종료 후, 그 헤더 박스의 작성을 위해 약간의 시간을 요한다. In such a multiplexing device, when the amount of information of multimedia data is large, some time is required for the creation of the header box after the acquisition of the multimedia data and the completion of the processing thereof.
예컨대, 녹화기능 부가 휴대전화로서 구성된 다중화 장치에서는 녹화 중에 착신이 있었을 때에는, 지금까지 녹화한 콘텐츠 전체에 관련되는 정보를 포함시킨 헤더 박스를 작성하기 때문에 착신에 타임래그가 발생한다. 또한 착신을 우선하는 것과 같은 경우에는, 헤더 박스의 작성이 도중에 중단되어, MP4 파일 데이터를 완성할 수 없다는 문제가 있었다. For example, in a multiplexing device configured as a cellular phone with a recording function, when an incoming call is received during recording, a time box is generated when the incoming call is made because a header box containing information relating to the entire contents of the recording so far is created. In addition, in the case where priority is given to the incoming call, there is a problem that the creation of the header box is interrupted in the middle, and the MP4 file data cannot be completed.
그래서 MP4의 파일 포맷은 데이터 박스와 헤더 박스의 조가 다수 연속하도록 개량되었다. Thus, the file format of MP4 has been improved so that a plurality of data box and header box pairs are continuous.
도 1은 상술한 바와 같이 개량된 종래의 MP4 파일 데이터의 기본적인 파일 포맷을 도시하는 데이터 구성도이다. 1 is a data configuration diagram showing the basic file format of conventional MP4 file data improved as described above.
이 MP4 파일 데이터(900)은 기본 영역(900a)과 확장 영역(90Ob)으로 구성된다. This MP4 file data 900 is composed of a
기본 영역(900a)는 상기 헤더 박스인 무비 박스(이하, ‘moov’라 칭한다)(910)와, 상기 데이터 박스인 미디어 데이터 박스(이하, ‘mdat’라 칭한다)(920)로 이루어진다. The
moov(910)는 또한 1개의 무비 헤더 박스(이하 ‘mvhd’라 칭한다)(911)와, 다수의 트랙 박스(이하 ‘trak’라 칭한다)(912)와, 1개의 무비 익스텐드 박스(이하 ‘mvex’라 칭한다)(913)로 구성된다.
The
확장 영역(900b)은 상기 헤더 박스인 1개의 무비 프레그먼트(fragment) 박스(이하 ‘moof’라 칭한다)(930)와, 상기 데이터 박스인 1개의 미디어 데이터 박스(이하 ‘mdat’라 칭한다)(940)의 조가 다수 연속하도록 조합되어 구성된다. The
moof(930)는 또한 1개의 무비 프레그먼트 헤더 박스(이하, ‘mfhd’라 칭한다)(931)와, 다수의 트랙 프레그먼트 박스(이하 ‘traf’라 칭한다)(932)로 구성된다. The
도 2는 moov(910)의 상세한 구성을 도시하는 데이터 구성도이다. 2 is a data configuration diagram showing a detailed configuration of the
mvhd(911)에는 기본 영역(900a)에 포함되는 콘텐츠의 재생에 요하는 시간길이(기본 콘텐츠 시간길이)를 나타내는 기본 콘텐츠 시간길이 정보를 격납하는 무비 시간길이 필드(91la)가 포함되어 있다. The mvhd 911 includes a movie time length field 91la for storing basic content time length information indicating a time length (basic content time length) required for reproduction of content included in the
trak(912)에는 또한 트랙 헤더 박스(이하 ‘tkhd’라 칭한다)(914)가 포함되고, 이 tkhd(914)에는 트랙을 식별하기 위한 트랙 식별 정보를 격납하는 트랙 ID 필드(916)와, 트랙 시간길이 필드(917)가 포함되어 있다. 또한 이 트랙 시간길이 필드(917)에는, 상기 트랙 식별 정보에 의해 나타내어지는 기본 영역(900a)에 포함된 트랙의 재생에 요하는 시간길이(기본 트랙 시간길이)를 나타내는 기본 트랙 시간길이 정보가 격납된다. 여기서 트랙이란 콘텐츠의 일종으로서, 동화상이나 음성 및 텍스트 등을 의미한다. The
mvex(913)에는 확장 영역(900b)에 포함되는 트랙의 수에 따른 수의 트랙 익스텐드 박스(이하 ‘trex’라 칭한다)(915)가 포함된다. The mvex 913 includes a number of track extend boxes (hereinafter referred to as 'trex') 915 according to the number of tracks included in the
이 trex(915)에는 트랙을 식별하기 위한 트랙 식별 정보를 격납하는 트랙 ID 필드(918)와, 그 트랙 식별 정보에 의해 특정되는 확장 영역(900b)의 트랙의 샘플에 대하여, 디폴트로 설정된 시간길이를 나타내는 디폴트 샘플 시간길이 정보가 격납되는 제1 디폴트 시간길이 필드(919)가 포함되어 있다. The
여기서, 샘플이란 MP4의 파일 포맷의 최소 단위로서, 트랙이 동화상이면 1 프레임이나 픽쳐를 의미하고, 트랙이 음성이면 예컨대 20(msec)분의 소리정보를 의미한다. Here, the sample is the minimum unit of the file format of the MP4. If the track is a moving picture, it means one frame or picture. If the track is audio, it means, for example, 20 msec of sound information.
도 3은 moof(930)의 상세한 구성을 도시하는 데이터 구성도이다.3 is a data configuration diagram showing a detailed configuration of the
moof(930)에 포함되는 traf(932)에는 또한 1개의 트랙 프레그먼트 헤더 박스(이하 ‘tfhd’라 칭한다)(933)와, 다수의 트랙 프레그먼트 런 박스(이하 ‘trun’이라 칭한다)(936)가 포함되어 있다. The
이 tfhd(933)에는 트랙을 식별하기 위한 트랙 식별 정보를 격납하는 트랙 ID 필드(934)와, 그 트랙 식별 정보에 의해 특정되는 확장 영역(900b)의 트랙의 샘플 중에서, tfhd(933)를 격납하고 있는 traf(932)에 관련지어진 샘플에 대하여, 디폴트로 설정된 시간길이를 나타내는 디폴트 샘플 시간길이 정보가 격납되는 제2 디폴트 시간길이 필드(935)가 포함되어 있다. 여기서 제2 디폴트 시간길이 필드(935)는 생략하는 것도 가능하며, 이 경우는 제1 디폴트 시간길이 필드(919)가 참조된다. The
trun(936)에는 상기 트랙 식별 정보에 의해 특정되는 확장 영역(900b)의 트랙에 포함되는 각 샘플의 시간길이(샘플 시간길이)를 나타내는 샘플 시간길이 정보를 격납하는 샘플 시간길이 필드(937)가 포함되어 있다.
The
이와 같이 MP4의 파일 포맷이 mdat(920) 및 moov(910)를 1조 포함하고, 또한 mdat(940) 및 moof(930)를 다수 조 포함하도록, 즉 다중화된 콘텐츠를 격납하는 박스와, 그 박스에 포함되는 내용에 관련되는 정보를 격납하는 박스의 조가 다수 연속하도록 구성됨으로써, 종래의 다중화 장치는 멀티미디어 데이터를 하나하나 취득하여 처리할 때마다 MP4 파일 데이터(900)를 완성시켜, 리얼타임 기록에서 효력을 발휘하고 있다. 그리고 녹화기능 부가 휴대전화로서 구성된 종래의 다중화 장치에서는, 녹화 중에도 착신의 타임 래그의 발생을 방지할 수 있다. In this manner, the MP4 file format includes a set of
도 4는 상기 MP4 파일 데이터(900)를 생성하는 종래의 다중화 장치의 구성을 도시하는 구성도이다. 4 is a configuration diagram showing the configuration of a conventional multiplexing device that generates the MP4 file data 900.
이 다중화 장치(700)는 화상 데이터 해석부(701)와 음성 데이터 해석부(702)와 제1 전환스위치(703)와 제2 전환스위치(704)와 제어부(708)와 moof 생성부(705)와 moov 생성부(706)와 파일 생성부(707)를 구비하고 있다. The
화상 데이터 해석부(701)는 화상 데이터를 취득하여 이를 해석함으로써, 그 화상 데이터의 타임스탬프나 사이즈 등을 나타내는 내용의 화상 특정 정보를 생성한다. 그리고 화상 데이터 해석부(701)는 화상 데이터를 부호화하여 화상 부호화 데이터를 작성하고, 그 화상 부호화 데이터와 화상 특정 정보를 출력한다. The image
음성 데이터 해석부(702)는 음성 데이터를 취득하여 이를 해석함으로써, 그 음성 데이터의 타임스탬프나 사이즈 등을 나타내는 내용의 음성 특정 정보를 생성한다. 그리고 음성 데이터 해석부(702)는 음성 데이터를 부호화하여 음성 부호화 데이터를 작성하고, 그 음성 부호화 데이터와 음성 특정 정보를 출력한다.
The speech
moov 생성부(706)는 제어부(708)로부터의 제어에 따라서, moov(910)에 격납되는 데이터(moov 데이터)를 생성하여 출력한다. The
moof 출력부(705)는 제어부(708)로부터의 제어에 따라서, moof(930)에 격납되는 데이터(moof 데이터)를 생성하여 출력한다. The
제어부(708)는 화상 데이터 해석부(701)로부터 화상 특정 정보를 취득하는 동시에, 음성 데이터 해석부(702)로부터 음성 특정 정보를 취득하여, 그 화상 특정 정보 및 음성 특정 정보에 근거하여, 제1 전환스위치(703) 및 제2 전환스위치(704)를 전환함으로써, 제2 전환스위치(704)로부터 우선 moov 데이터를 포함하는 기본 영역(900a)에 격납되어야 하는 데이터를 출력시키고, 다음으로 moof 데이터를 포함하는 확장 영역(900b)에 격납되어야 하는 데이터를 출력시킨다. The
파일 생성부(707)는 제2 전환스위치(704)로부터 출력되는 각 데이터에 대하여 다중화 처리를 하여 MP4 파일 데이터(900)를 생성하고 이를 출력한다. The
도 5는 종래의 다중화 장치(700)의 moov 데이터 및 moof 데이터의 생성에 관한 동작을 도시하는 플로우 도이다. FIG. 5 is a flow chart showing an operation relating to generation of moov data and moof data of the
먼저, 다중화 장치(700)는 moov 데이터를 생성한다(스텝 S100). First, the
다음으로, 다중화 장치(700)는 moof 데이터를 작성한다(스텝 S102). Next, the
그리고, 다중화 장치(700)는 입력된 화상 데이터나 음성 데이터의 부호화 및 다중화에 대하여 미 처리 데이터가 있는가 없는가를 판별한다(스텝 S104). 여기서 미 처리 데이터가 있다고 판별하였을 때에는(스텝 S104의 Y) 스텝 S102부터의 동작을 반복하여 실행하고, 미 처리 데이터가 없다고 판별하였을 때에는(스텝 S104의 N) 처리를 종료한다. Then, the
이와 같이 MP4 파일 데이터(900)를 이용한 종래의 다중화 장치(700)에서는, 순차 moof 데이터를 작성하기 때문에 리얼타임 기록에 효과적이다. As described above, in the
그런데, 상기 MP4 파일 데이터(900)는, 도 1∼도 3에 도시하는 바와 같이 데이터 박스와 헤더 박스의 조가 다수 연속하도록 구성되어 있음으로써 스트리밍에 적합하다. 즉, MP4 파일 데이터(900)를 취득하여 역다중화 처리를 함으로써 콘텐츠를 재생하는 역다중화 장치는, 스트림으로서 배송되는 MP4 파일 데이터(900)의 모든 다운로드를 완료하기 전부터 순차적으로 재생(다운로드 재생)할 수 있다. Incidentally, the MP4 file data 900 is suitable for streaming because it is configured such that a plurality of pairs of data boxes and header boxes are continuous as shown in Figs. That is, the demultiplexing device which acquires the MP4 file data 900 and plays back the contents by performing the demultiplexing process, can sequentially play (download and play) the files before the download of all the MP4 file data 900 delivered as a stream is completed. Can be.
도 6은 상기 MP4 파일 데이터(900)에 근거하여 콘텐츠의 재생을 하는 종래의 역다중화 장치의 구성을 도시하는 구성도이다. FIG. 6 is a block diagram showing the configuration of a conventional demultiplexing apparatus for reproducing content based on the MP4 file data 900. As shown in FIG.
이 역다중화 장치(800)는 MP4 파일 데이터(900)를 취득하여 재생하는 것으로서, MP4 파일 데이터(900)를 취득하는 데이터 취득부(810)와, 그 데이터 취득부(810)에서 취득된 MP4 파일 데이터(900)를 역다중화하여 복호화하는 복호부(813)와, 취득된 MP4 파일 데이터(900)에 근거하여 시간적인 처리를 하는 시간 처리부(811)와, 취득된 MP4 파일 데이터(900)에 대하여 랜덤 액세스하기 위한 처리를 하는 랜덤 액세스 처리부(812)와, 복호부(813)로부터 출력된 데이터에 근거하여 화상이나 음성을 출력하는 재생부(814)를 구비하고 있다. The
또한, 시간 처리부(811)는 MP4 파일 데이터(900)에 포함되는 일부 콘텐츠의 재생에 요하는 시간길이를 특정하는 시간길이 특정부(811a)와, 재생 시간을 특정하는 재생 시간 특정부(811b)를 구비하고 있다. 여기서, 재생 시간이란 콘텐츠를 처 음부터 재생하였을 때에, 그 재생 개시 시점으로부터 현 시점에 이르기까지의 재생에 걸린 시간을 말한다. The
도 7은 시간길이 특정부(811a)의 내부 구성을 도시하는 블록도이다. 7 is a block diagram showing an internal configuration of the time
시간길이 특정부(811a)는 제1 분리부(821)와 제2 분리부(822)와 제3 분리부(823)와 제1 해석부(824)와 제2 해석부(825)를 구비하고 있다. The time
제1 분리부(821)는 MP4 파일 데이터(900)를 취득하면, 그 MP4 파일 데이터(900)로부터 moov 데이터를 분리하여 출력한다. When the
제2 분리부(822)는 moov 데이터를 취득하면, 그 moov 데이터로부터 mvhd(911)에 격납되어 있는 데이터(mvhd 데이터)와 trak(912)에 격납되어 있는 데이터(trak 데이터)를 분리하여 출력한다. When the
제3 분리부(823)는 trak 데이터를 취득하면, 그 trak 데이터로부터 tkhd(914)에 격납되어 있는 데이터(tkhd 데이터)를 분리하여 출력한다. When the
제1 해석부(824)는 제2 분리부(822)로부터 mvhd 데이터를 취득하면, 그 mvhd 데이터를 해석하여 그 무비 시간길이 필드(911a)에 격납되어 있는 기본 콘텐츠 시간길이 정보를 출력한다. When the
제2 해석부(825)는 제3 분리부(823)로부터 tkhd 데이터를 취득하면, 그 tkhd 데이터를 해석하여 트랙 ID 필드(916)에 격납되어 있는 트랙 식별 정보를 출력하는 동시에, 그 트랙 식별 정보에 대응하여 트랙 시간길이 필드(917)에 격납되어 있는 기본 트랙 시간길이 정보를 출력한다. When the second analyzing unit 825 acquires tkhd data from the
이러한 시간길이 특정부(811a)는 기본 콘텐츠 시간길이 정보를 재생부(814) 에 출력하는 동시에, 트랙 식별 정보와 그 트랙 식별 정보에 의해 나타내어지는 기본 영역(900a)의 트랙에 대응하는 기본 트랙 시간길이 정보를 재생부(814)에 출력한다. The time
그리고, 재생부(814)는 기본 콘텐츠 시간길이 정보 및 트랙 시간길이 정보 및 트랙 식별 정보를 취득하면, 필요에 따라서 기본 콘텐츠 시간길이를 표시하거나, 기본 트랙 시간길이를 트랙마다 표시한다. 또한, 재생부(814)는 재생 시간 특정부(811b)에 의한 특정 결과에 근거하여, 화상이나 음성의 재생을 하면서 그 재생 시간을 표시한다. When the
도 8은 랜덤 액세스 처리부(812)의 구성을 도시하는 구성도이다. 랜덤 액세스 처리부(812)는 외부로부터 목표 시간을 나타내는 내용의 목표 시간 정보를 취득하면, 축적된 MP4 파일 데이터(900) 중에서 그 목표 시간에 대응하는 샘플을 목적 샘플로서 검색하는 것으로서, 데이터 축적부(830a)와 제1 분리부(830)와 제2 분리부(831)와 제3 분리부(832)와 제4 분리부(835)와 제5 분리부(834), 제1 해석부(836)와 제2 해석부(837)와 제3 해석부(838)와 트랙 제어부(833)와 결정부(839)와 제어부(840)를 구비하고 있다. 여기서 목표 시간이란 유저가 콘텐츠를 도중부터 재생하고자 할 때의 도중 재생 개시 시간을 말한다. 예컨대 유저가 총 시간길이 10분인 콘텐츠를 그 선두의 2분간을 보지 않고 재생하고자 하는 경우에는 목표 시간은 2분이다. 데이터 축적부(830a)는 데이터 취득부(810)에서 취득된 MP4 파일 데이터(900)를 축적하고 있다. 8 is a configuration diagram showing the configuration of the random
제1 분리부(830)는 데이터 축적부(830a)로부터 MP4 파일 데이터(900)를 취득 하면, 그 MP4 파일 데이터(900)로부터 moov 데이터와 moof 데이터를 분리하여 출력한다. When the first separator 830 acquires the MP4 file data 900 from the data accumulator 830a, the first separator 830 separates and outputs the moov data and the moof data from the MP4 file data 900.
제3 분리부(832)는 moov 데이터를 취득하면, 그 moov 데이터로부터 mvex(913)에 격납되어 있는 데이터(mvex 데이터)를 분리하여 출력한다. When the
트랙 제어부(833)는 제1 분리부(830)로부터 moov 데이터를 취득하면, 그 moov 데이터에 근거하여 트랙 식별 정보를 출력한다. When the
제2 분리부(831)는 제1 분리부(830)로부터 moof 데이터를 취득하고, 트랙 제어부(833)로부터 트랙 식별 정보를 취득하면, 그 moof 데이터로부터 트랙 식별 정보에 의해 특정되는 트랙에 대응하는 traf(932)에 격납되어 있는 데이터(traf 데이터)를 분리하여 출력한다. When the
제4 분리부(835)는 제2 분리부(831)로부터 traf 데이터를 취득하면, 그 traf 데이터로부터 tfhd(933)에 격납되어 있는 데이터(tfhd 데이터)와, trun(936)에 격납되어 있는 데이터(trun 데이터)를 분리하여 출력한다. When the
제5 분리부(834)는 제3 분리부(832)로부터 mvex 데이터를 취득하고, 트랙 제어부(833)로부터 트랙 식별 정보를 취득하면, 그 mvex 데이터로부터 트랙 식별 정보에 의해 특정되는 트랙에 대응하는 trex(915)에 격납되어 있는 데이터(trex 데이터)를 분리하여 출력한다. When the
제1 해석부(836)는 제5 분리부(834)로부터 trex 데이터를 취득하면 그 trex 데이터를 해석하여, trex 데이터에 포함되는 디폴트 샘플 시간길이 정보를 제1 시간길이 정보로서 출력한다.
When the
제2 해석부(837)는 제4 분리부(835)로부터 tfhd 데이터를 취득하면, 그 tfhd 데이터를 해석하여 tfhd 데이터에 포함되는 샘플 시간길이 정보를 제2 시간길이 정보로서 출력한다. When the
제3 해석부(838)는 제4 분리부(835)로부터 trun 데이터를 취득하면, 그 trun 데이터를 해석하여 trun 데이터에 포함되는 샘플 시간길이 정보를 제3 시간길이 정보로서 출력한다. When the
결정부(839)는 제1 해석부(836)로부터 취득한 제1 시간길이 정보와, 제2 해석부(837)로부터 취득한 제2 시간길이 정보와, 제3 해석부(838)로부터 취득한 제3 시간길이 정보 중에서, 어느 하나를 선택 결정하여 이를 시간길이 정보로서 출력한다. 여기서 결정부(839)는 먼저 제3 시간길이 정보를 우선하고, 제3 시간길이 정보가 생략되어 있어 얻을 수 없는 경우에는 제2 시간길이 정보를 우선하며, 제2 시간길이 정보가 생략되어 있어 얻을 수 없는 경우에는, 제1 시간길이 정보를 선택하여 출력한다. The
또한, 결정부(839)는 시간길이 정보를 출력할 때에는, 그 시간길이 정보에 대응한 샘플을 식별하기 위한 샘플 식별 정보도 출력한다. In addition, when outputting the time length information, the
제어부(840)는 목표 시간을 나타내는 목표 시간 정보를 취득하면, 결정부(839)로부터 순차 출력되는 시간길이 정보에 나타내어지는 시간길이를 순차적으로 가산한다. 그리고 제어부(840)는 가산 결과가 목표 시간 정보에 나타내어지는 목표 시간에 도달할 때까지 상기 가산을 하여, 목표 시간에 도달하였을 때에 결정부(839)로부터 취득된 샘플 식별 정보를 목적 샘플 식별 정보로서 출력한다.
When the
도 9는 트랙 제어부(833)의 내부 구성을 도시하는 블록도이다.9 is a block diagram showing an internal configuration of the
트랙 제어부(833)는 moov 데이터를 취득하여 거기로부터 trak 데이터를 분리하는 제6 분리부(841)와, 그 trak 데이터를 취득하여 거기로부터 다시 tkhd 데이터를 분리하는 제7 분리부(842)와, 그 tkhd 데이터를 해석함으로써 트랙 식별 정보를 특정하여 이를 출력하는 해석부(843)를 구비하고 있다. The
도 10은 랜덤 액세스 처리부(812)의 개략적인 동작을 설명하기 위한 설명도이다. 10 is an explanatory diagram for illustrating a schematic operation of the random
이 도 10에 도시하는 바와 같이, 종래의 랜덤 액세스 처리부(812)는 샘플 시간길이를 순차적으로 가산해감으로써 목표 시간에 대응하는 목적 샘플을 특정한다. As shown in FIG. 10, the conventional random
그리고, 랜덤 액세스 처리부(812)는 MP4 파일 데이터(900)와 목적 샘플 식별 정보를 복호부(813)에 출력하여, 그 목적 샘플 식별 정보에 의해 나타내어지는 목적 샘플로부터의 콘텐츠의 재생을 복호부(813) 및 재생부(814)에 실행시킨다. The random
이러한 종래의 역다중화 장치(800)는 스트림으로서 배송되는 MP4 파일 데이터(900)를 취득하면 이에 근거하여 다운로드 재생할 수 있는 동시에, 랜덤 액세스 처리부(812)를 구비함으로써, 축적된 모든 MP4 파일 데이터(900)에 대하여 랜덤 액세스를 가능하게 하고 있다. The
그러나, 상기 종래의 역다중화 장치(800)에서는 MP4 파일 데이터(900)를 다운로드 재생할 때에는, 기본 영역(900a)에 포함되는 콘텐츠의 재생에 요하는 시간길이를 표시할 수 있더라도, 확장 영역(900b)을 포함하는 전체 콘텐츠의 총 시간길이를 표시할 수 없고 사용하기 불편하다는 문제가 있었다.
However, when the
도 11은 종래의 역다중화 장치(800)에서의 문제점을 설명하기 위한 설명도이다. 11 is an explanatory diagram for describing a problem in the
휴대전화로서 구성된 역다중화 장치(800)는 기지국(990)을 통하여 스트림으로서 배송되는 MP4 파일 데이터(900)를 다운로드하여, 그 다운로드된 MP4 파일 데이터(900)를 순차적으로 재생한다. 이 때 역다중화 장치(800)는 재생 시간을 표시하지만, 모든 MP4 파일 데이터(900)를 취득한 후가 아니면 모든 콘텐츠를 재생에 요하는 시간길이를 특정할 수 없고, 그 결과 다운로드 중 또는 재생 중에 콘텐츠의 총 시간길이를 표시할 수 없다. 예컨대 이용 시간에 따라서 부과되는 요금 체계에서는, 역다중화 장치(800)의 유저는 이용 요금의 기준을 모른다는 불안이나, 배터리의 잔여 용량이 적은 경우 등에는 도중에 전원이 끊어져 버릴지도 모른다는 불안 등을 느끼는 경우가 있다. 이와 같이 종래의 역다중화 장치(800)에서는 유저가 콘텐츠의 총 시간길이를 알 수 없어 편리성이 결여되는 것이다. The
그래서, 본 발명은 이러한 문제점을 감안하여, 다운로드 재생 및 리얼타임 기록의 유효성을 유지하면서 콘텐츠의 다운로드 재생 시의 편리성을 향상한 역다중화 장치 및 다중화 장치를 제공하는 것을 목적으로 한다. In view of these problems, it is an object of the present invention to provide a demultiplexing device and a multiplexing device which improves the convenience in downloading and reproducing content while maintaining the validity of download reproduction and real-time recording.
상기 목적을 달성하기 위해 본 발명에 관한 역다중화 장치는, 디지털 저작물인 콘텐츠가 다중화된 다중화 데이터를 그 선두부로부터 취득하여 역다중화하는 역다중화 장치로서, 상기 다중화 데이터는 다중화된 콘텐츠의 일부를 격납하는 콘텐츠 격납 박스와 상기 일부의 콘텐츠에 관련되는 관련 정보를 격납하는 관련 정보 격납 박스의 조가 다수 연속하는 동시에, 상기 모든 콘텐츠의 재생에 요하는 총 시간길이를 특정하기 위한 총 시간길이 정보가 상기 선두부에 포함되도록 구성되어 있고, 상기 역다중화 장치는 상기 다중화 데이터를 취득하는 취득수단과, 상기 취득수단에 의해 취득된 상기 다중화 데이터를 상기 각 조마다 역다중화 처리하는 처리수단과, 상기 취득수단에 의해 취득된 상기 다중화 데이터의 선두부에 포함되는 총 시간길이 정보에 근거하여 상기 총 시간길이를 특정하는 총 시간길이 특정수단과, 상기 총 시간길이 특정수단에 의해 특정된 총 시간길이를 표시하는 표시수단을 구비한다. 여기서 상기 다중화 데이터는 상기 조를 각각 가지는 제1 및 제2 영역으로 구성되고, 상기 총 시간길이 정보는 상기 제1 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이를 나타내는 내용의 제1 시간길이 정보와, 상기 제2 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이를 나타내는 내용의 제2 시간길이 정보로 구성되어 있으며, 상기 총 시간길이 특정수단은 상기 제1 시간길이 정보에 의해 나타내어지는 시간길이와, 상기 제2 시간길이 정보에 의해 나타내어지는 시간길이를 서로 더함으로써, 상기 총 시간길이를 특정하는 것을 특징으로 하여도 된다. In order to achieve the above object, a demultiplexing apparatus according to the present invention is a demultiplexing apparatus for obtaining and demultiplexing multiplexed data obtained by multiplexing a content, which is a digital work, from its head, wherein the multiplexed data stores a part of the multiplexed content. A plurality of pairs of related information storage boxes for storing the related content storage box and related information related to the partial content are continuous, and the total time length information for specifying the total time length required for reproduction of all the contents is the first. The demultiplexing apparatus includes: acquiring means for acquiring the multiplexed data, processing means for demultiplexing the multiplexed data acquired by the acquiring means for each of the sets, and the acquiring means. Total time length information contained in the beginning of the multiplexed data obtained by Basis will be provided and the total time length specifying means for specifying the total length of time, display means for the total length of time to display the total length of time specified by the specifying means. Here, the multiplexed data is composed of first and second regions each having the set, and the total time length information includes first time length information of content indicating a time length required for reproduction of content included in the first area. And second time length information of contents representing a time length required for reproduction of content included in the second area, wherein the total time length specifying means is a time length represented by the first time length information. And the total time length may be specified by adding the time lengths represented by the second time length information to each other.
이에 의해 처리수단으로 다중화 데이터가 각 조마다 역다중화 처리되기 때문에, 스트림으로서 배송되는 다중화 데이터로부터 콘텐츠를 다운로드 재생할 수 있는 동시에, 다중화 데이터의 선단부에 포함되는 총 시간길이 정보에 근거하여 총 시간길이가 총 시간길이 특정수단으로 특정되어 그 총 시간길이가 표시수단에 의해 표시되기 때문에, 다운로드 재생 중에도 총 시간길이를 유저에게 알릴 수 있어, 콘텐츠의 다운로드 재생 시의 편리성을 향상할 수 있다. As a result, the multiplexed data is demultiplexed for each pair by the processing means, so that the content can be downloaded and reproduced from the multiplexed data delivered as a stream, and the total time length is based on the total time length information included in the leading end of the multiplexed data. Since the total time length is specified by the total time length specifying means and displayed by the display means, the total time length can be notified to the user even during the download and playback, and the convenience in downloading and reproducing the content can be improved.
또한, 상기 다중화 데이터는 거기에 포함되는 상기 콘텐츠에 따라서 제1 영역, 또는 상기 조를 각각 가지는 제1 및 제2 영역으로 구성되며, 상기 다중화 데이터가 제1 영역으로 구성될 때에는 상기 총 시간길이 정보는 상기 제1 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이를 나타내며, 상기 다중화 데이터가 제1 및 제2 영역으로 구성될 때에는 상기 총 시간길이 정보는 상기 제1 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이를 나타내는 내용의 제1 시간길이 정보와, 상기 제2 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이, 또는 상기 시간길이가 불명임을 나타내는 내용의 제2 시간길이 정보로 구성되어 있고, 상기 총 시간길이 특정수단은 상기 취득수단으로 취득된 상기 다중화 데이터가 제1 영역으로 구성되어 있는지, 제1 및 제2 영역으로 구성되어 있는지를 판별하여, 제1 영역으로 구성되어 있다고 판별하였을 때에는 상기 총 시간길이 정보에 의해 나타내어지는 시간길이를 상기 총 시간길이로서 특정하고, 제1 및 제2 영역으로 구성되어 있다고 판별하였을 때에는 다시 상기 제2 시간길이 정보에 근거하여 상기 제2 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이가 불명인가 아닌가를 판별하여, 불명이 아니라고 판별하였을 때에는 상기 제1 시간길이 정보에 의해 나타내어지는 시간길이와 상기 제2 시간길이 정보에 의해 나타내어지는 시간길이를 서로 더함으로써 상기 총 시간길이를 특정하며, 불명이라고 판별하였을 때에는 상기 총 시간길이를 특정할 수 없다고 판별하고, 상기 표시수단은 상기 총 시간길이 특정수단으로 상기 총 시간길이를 특정할 수 없다고 판별되었을 때에는 상기 총 시간길이가 불명임을 알리는 것을 특징으로 하여도 된다. Further, the multiplexed data is composed of a first region or a first region and a second region each having the set according to the contents contained therein, and the total time length information when the multiplexed data is composed of the first region. Denotes a time length required for reproduction of content included in the first area, and when the multiplexed data consists of first and second areas, the total time length information is used to reproduce content included in the first area. A first time length information of contents indicating a required time length, a time length required for reproduction of contents included in the second area, or second time length information of contents indicating that the time length is unknown; The total time length specifying means is configured to determine whether the multiplexed data acquired by the acquiring means is constituted by a first region. Is determined to constitute the first area, the time length indicated by the total time length information is specified as the total time length, and when it is determined that the first area is composed of the first and second areas. Again, based on the second time length information, it is determined whether the time length required for reproduction of the content included in the second area is unknown, and when it is determined that the time length is not unknown, the time indicated by the first time length information. The total time length is specified by adding a length and the time length represented by the second time length information, and when it is determined that it is unknown, it is determined that the total time length cannot be specified, and the display means determines the total time. When it is determined that the total time length cannot be specified by the length specifying means. It may be characterized by indicating that the total time length is unknown.
이에 의해 다중화 데이터에 제2 영역이 없으면 제1 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이가 총 시간길이로서 특정되고, 다중화 데이터가 제1 및 제2 영역으로 구성되어 있을 때에는 제1 및 제2 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이가 가산되어 그 가산 결과가 총 시간길이로서 특정되기 때문에, 총 시간길이를 정확하게 특정할 수 있는 동시에 다중화 데이터에 포함되는 제2 시간길이 정보에 근거하여 제2 영역에 포함되는 콘텐츠의 재생에 요하는 시간길이가 불명인가 아닌가가 판별되어, 불명일 때에는 그 뜻이 알려지기 때문에, 신뢰성이 있는 총 시간길이만을 유저에게 알릴 수 있다. As a result, if there is no second region in the multiplexed data, the time length required for reproduction of the content included in the first region is specified as the total time length. Since the time length required for the reproduction of the contents included in the two areas is added and the addition result is specified as the total time length, the total time length can be precisely specified and is based on the second time length information included in the multiplexed data. Therefore, it is determined whether or not the time length required for reproduction of the content included in the second area is unknown, and when it is unknown, the meaning is known, so that only a reliable total time length can be informed to the user.
그리고, 상기 역다중화 장치는 또한 상기 처리수단에 의해 역다중화 처리된 콘텐츠를 재생하는 재생수단과, 상기 재생수단에 의해 상기 콘텐츠가 재생되고 있는 재생 시간을 특정하는 재생 시간 특정수단을 구비하며, 상기 표시수단은 상기 총 시간길이 특정수단에 의해 특정된 상기 총 시간길이에 대한, 상기 재생 시간 특정수단에 의해 특정된 재생 시간의 비율을 산출하여, 소정의 도형을 상기 비율에 따라서 이동시켜서 표시하는 것을 특징으로 하여도 된다. The demultiplexer further includes reproducing means for reproducing the content demultiplexed by the processing means, and reproducing time specifying means for specifying a reproducing time at which the content is being reproduced by the reproducing means. The display means calculates a ratio of the reproduction time specified by the reproduction time specifying means with respect to the total time length specified by the total time length specifying means, and moves and displays a predetermined figure in accordance with the ratio. It may be featured.
이에 의해 총 시간길이에 대한 재생 시간의 비율에 따라서 상기 도형이 이동하기 때문에, 유저는 콘텐츠의 재생 상황을 용이하게 파악할 수 있다. As a result, the figure moves according to the ratio of the reproduction time to the total time length, so that the user can easily grasp the reproduction state of the content.
또한, 본 발명은 상기 역다중화 장치가 취급하는 다중화 데이터의 데이터 구조나, 그 다중화 데이터를 격납하는 기억 매체나, 그 다중화 데이터를 생성하는 다중화 장치나, 상기 역다중화 장치 및 다중화 장치가 행하는 역다중화 방법 및 다중화 방법이나, 그 방법을 컴퓨터에 실행시키는 프로그램으로서도 실현할 수 있다. The present invention also provides a data structure of the multiplexed data handled by the demultiplexer, a storage medium storing the multiplexed data, a multiplexing device for generating the multiplexed data, and a demultiplexing performed by the demultiplexer and the multiplexing device. The method and multiplexing method can also be realized as a program for causing the computer to execute the method.
도 1은 종래예에서의 MP4 파일 데이터의 기본적인 파일 포맷을 도시하는 데이터 구성도, 1 is a data configuration diagram showing a basic file format of MP4 file data in a conventional example;
도 2는 상기 moov의 상세한 구성을 도시하는 데이터 구성도,2 is a data configuration diagram showing a detailed configuration of the moov;
도 3은 상기 moof의 상세한 구성을 도시하는 데이터 구성도, 3 is a data configuration diagram showing a detailed configuration of the moof;
도 4는 상기 MP4 파일 데이터를 생성하는 종래의 다중화 장치의 구성을 도시하는 구성도, 4 is a configuration diagram showing a configuration of a conventional multiplexing device for generating the MP4 file data;
도 5는 상기 다중화 장치의 moov 데이터 및 moof 데이터의 생성에 관한 동작을 도시하는 플로우 도, FIG. 5 is a flowchart showing an operation relating to generation of moov data and moof data of the multiplexing device; FIG.
도 6은 상기 MP4 파일 데이터에 근거하여 재생을 하는 종래의 역다중화 장치의 구성을 도시하는 구성도, Fig. 6 is a block diagram showing the configuration of a conventional demultiplexing apparatus which plays back based on the MP4 file data;
도 7은 상기 시간길이 특정부의 내부 구성을 도시하는 블록도,7 is a block diagram showing an internal configuration of the time length specifying unit;
도 8은 상기 랜덤 액세스 처리부의 구성을 도시하는 구성도,8 is a configuration diagram showing a configuration of the random access processing unit;
도 9는 상기 트랙 제어부의 내부 구성을 도시하는 블록도,9 is a block diagram showing an internal configuration of the track control section;
도 10은 상기 랜덤 액세스 처리부의 개략적인 동작을 설명하기 위한 설명도, 10 is an explanatory diagram for illustrating a schematic operation of the random access processing unit;
도 11은 상기 종래의 역다중화 장치에서의 문제점을 설명하기 위한 설명도, 11 is an explanatory diagram for explaining a problem in the conventional demultiplexer;
도 12는 실시형태에서의 역다중화 장치 및 다중화 장치가 취급하는 MP4 파일 데이터의 파일 포맷을 도시하는 데이터 구성도,FIG. 12 is a data configuration diagram showing a file format of MP4 file data handled by the demultiplexing apparatus and the multiplexing apparatus in the embodiment; FIG.
도 13은 상기 MP4 파일 데이터에 근거하여 재생을 하는 역다중화 장치의 구성을 도시하는 구성도, Fig. 13 is a block diagram showing the configuration of a demultiplexing device that plays back based on the MP4 file data;
도 14는 상기 시간 처리부의 콘텐츠 시간길이 특정부의 내부 구성을 도시하는 블록도, 14 is a block diagram showing an internal configuration of a content time length specifying portion of the time processing portion;
도 15는 상기 시간 처리부의 트랙 시간길이 특정부의 내부 구성을 도시하는 블록도, 15 is a block diagram showing an internal configuration of a track time length specifying portion of the time processing portion;
도 16은 상기 역다중화 장치의 콘텐츠 시간길이 특정부의 특징적인 동작을 도시하는 플로우 도, 16 is a flowchart showing characteristic operations of a content time length specifying unit of the demultiplexing apparatus;
도 17은 상기 역다중화 장치의 재생부에 의해 표시되는 화상을 도시하는 화상 표시도, 17 is an image display diagram showing an image displayed by the reproducing section of the demultiplexing apparatus;
도 18은 상기 역다중화 장치의 재생부에 의해 표시되는 다른 화상을 도시하는 화상 표시도, 18 is an image display diagram showing another image displayed by the reproducing section of the demultiplexer;
도 19는 상기 다중화 장치의 구성을 도시하는 구성도, 19 is a block diagram showing a configuration of the multiplexing device;
도 20은 상기 다중화 장치의 동작을 도시하는 플로우 도,20 is a flowchart showing the operation of the multiplexing device;
도 21은 상기 trex의 신텍스를 도시하는 표시도, 21 is a display diagram showing the syntax of the trex;
도 22는 상기 mehd를 포함하는 MP4 파일 데이터를 취급하는 콘텐츠 시간길이 특정부의 내부 구성을 도시하는 블록도, Fig. 22 is a block diagram showing the internal structure of a content time length specifying unit which handles MP4 file data including the above mehd;
도 23은 상기 콘텐츠 시간길이 특정부의 특징적인 동작을 도시하는 플로우 도, 23 is a flowchart showing characteristic operations of the content time length specifying unit;
도 24는 상기 mehd의 신텍스를 도시하는 표시도, 24 is a display diagram showing a syntax of the mehd;
도 25는 상기 변형예에 관한 역다중화 장치가 취급하는 MP4 파일 데이터의 moof의 파일 포맷을 도시하는 데이터 구성도, 25 is a data configuration diagram showing a file format of moof of MP4 file data handled by the demultiplexing apparatus according to the modification;
도 26은 상기 변형예에 관한 역다중화 장치의 랜덤 액세스 처리부의 내부 구성을 도시하는 블록도, 26 is a block diagram showing an internal configuration of a random access processing unit of the demultiplexing apparatus according to the modification;
도 27은 상기 변형예에 관한 moof 시간길이 처리부의 내부 구성을 도시하는 블록도, 27 is a block diagram showing an internal configuration of a moof time length processing unit according to the modification;
도 28은 상기 변형예에 관한 traf 시간길이 처리부의 내부 구성을 도시하는 블록도, 28 is a block diagram showing an internal configuration of a traf time length processing unit according to the modification;
도 29는 상기 변형예에 관한 랜덤 액세스 처리부의 개략적인 동작을 설명하기 위한 설명도, 29 is an explanatory diagram for illustrating a schematic operation of the random access processing unit according to the modification;
도 30은 상기 변형예에 관한 랜덤 액세스 처리부의 동작을 도시하는 플로우 도, 30 is a flowchart showing the operation of the random access processing unit according to the modification;
도 31은 상기 변형예에 관한 tfhd의 신텍스를 도시하는 표시도이다. Fig. 31 is a display diagram showing the syntax of tfhd according to the modification.
이하, 본 발명의 실시형태에서의 역다중화 장치 및 다중화 장치에 대하여 도면을 참조하면서 설명한다. EMBODIMENT OF THE INVENTION Hereinafter, the demultiplexing apparatus and multiplexing apparatus in embodiment of this invention are demonstrated, referring drawings.
도 12는 본 실시형태에서의 역다중화 장치 및 다중화 장치가 취급하는 MP4 파일 데이터의 파일 포맷을 도시하는 데이터 구성도이다. 12 is a data configuration diagram showing a file format of MP4 file data handled by the demultiplexing apparatus and the multiplexing apparatus according to the present embodiment.
이 MP4 파일 데이터(100)는 기본 영역(100a)와 확장 영역(10Ob)로 구성되며, 그 데이터(100)에 포함되는 콘텐츠의 총 시간길이를 나타내는 내용의 정보가 기본 영역(1OOa)에 격납되어 있는 점에 특징이 있다. 이 정보가 있음으로써 역다중화 장치에서 유저는 총 시간길이를 알 수 있어 편리성이 향상한다. 또한 리얼타임으 로 기록하는 다중화 장치 등에서, 이 정보를 부여하기가 곤란한 장치는 그 정보의 부여를 생략 가능하게 하여도 된다. The MP4 file data 100 is composed of a
기본 영역(1OOa)는 다중화된 콘텐츠가 격납되는 미디어 데이터 박스(이하, ‘mdat’라 칭한다)(120)와, 그 mdat(120)의 콘텐츠에 관련되는 정보가 격납되는 무비 박스(이하, ‘moov’라 칭한다)(11O)로 이루어진다. The
moov(11O)는 또한 1개의 무비 헤더 박스(이하 ‘mvhd’라 칭한다)(111)와, 다수의 트랙 박스(이하 ‘trak’라 칭한다)(112)와, 1개의 무비 익스텐드 박스(이하 ‘mvex’라 칭한다)(113)로 구성된다. The
확장 영역(100b)은 다중화된 콘텐츠가 격납되는 1개의 미디어 데이터 박스(이하, ‘mdat’라 칭한다)(140)와, 그 mdat(140)의 콘텐츠에 관련되는 정보가 격납되는 1개의 무비 프레그먼트(fragment) 박스(이하 ‘moof’라 칭한다)(130)의 조가 다수 연속하도록 조합되어 구성된다. 여기서 moof(130)는 종래예와 마찬가지로, 또한 1개의 무비 프레그먼트 헤더 박스(이하 ‘mfhd’라 칭한다)와, 다수의 트랙 프레그먼트 박스(이하 ‘traf’라 칭한다)로 구성된다. 즉 이러한 확장 영역(100b)은 종래의 확장 영역(900b)와 같은 구조를 갖는다. The
기본 영역(1OOa)의 moov(11O)에서의 mvhd(111)에는, 기본 영역(1OOa)에 포함되는 콘텐츠의 재생에 요하는 시간길이(기본 콘텐츠 시간길이)를 나타내는 내용의 기본 콘텐츠 시간길이 정보를 격납하는 무비 시간길이 필드(111a)가 포함되어 있다. In the
trak(112)에는 트랙 헤더 박스(이하 ‘tkhd’라 칭한다)(114)가 포함되어 있 다. 여기서 이 tkhd(114)에는 트랙을 식별하기 위한 트랙 식별 정보를 격납하는 트랙 ID 필드(116)와, 그 트랙 식별 정보에 의해 나타내어지는 기본 영역(100a)의 트랙을 재생하는 데 요하는 시간길이(기본 트랙 시간길이)를 나타내는 기본 트랙 시간길이 정보를 격납하는 트랙 시간길이 필드(117)가 포함되어 있다. The
그리고, mvex(113)에는 확장 영역(100b)에 포함되는 트랙의 수에 따른 수의 트랙 익스텐드 박스(이하 ‘trex’라 칭한다)(115)가 포함되는 동시에, 또한 1개의 무비 익스텐드 헤더 박스(이하 ‘mhex’라 칭한다)(113a)가 포함되어 있다. The
mhex(113a)에는 확장 영역(100b)에 포함되는 콘텐츠의 재생에 요하는 시간길이(확장 콘텐츠 시간길이)를 나타내는 내용의 확장 콘텐츠 시간길이 정보를 격납하는 무비 시간길이 필드(113b)가 포함되어 있다. 여기서 확장 콘텐츠 시간길이 정보는 ‘0’을 나타내는 경우가 있으며, 이 경우 그 확장 콘텐츠 시간길이 정보는 확장 콘텐츠 시간길이가 불명임을 나타내고 있다. The
trex(115)에는 확장 영역(100b)의 트랙을 식별하기 위한 트랙 식별 정보를 격납하는 트랙 ID 필드(118)와, 그 트랙 식별 정보에 의해 특정되는 확장 영역(100b)의 트랙의 샘플에 대하여, 디폴트로 설정된 시간길이를 나타내는 디폴트 샘플 시간길이 정보가 격납되는 제1 디폴트 시간길이 필드(119)와, 그 트랙 식별 정보에 의해 특정되는 확장 영역(100b)의 트랙의 재생에 요하는 시간길이(확장 트랙 시간길이)를 나타내는 내용의 확장 트랙 시간길이 정보가 격납되는 트랙 시간길이 필드(115a)가 포함되어 있다. The
즉, 본 실시형태의 MP4 파일 데이터(100)에서는 종래예와 비교하여 mvex(113)에 확장 콘텐츠 시간길이 정보가 격납되는 mhex(113a)가 포함되고, 또한 mvex(113)의 trex(115)에 확장 트랙 시간길이 정보가 격납되는 트랙 시간길이 필드(115a)가 포함되어 있는 점에 특징이 있다. That is, in the MP4 file data 100 of the present embodiment, the
또한, MP4 파일 데이터(100)는 거기에 포함되는 콘텐츠의 정보량이 적을 때에는 기본 영역(1OOa)만으로 구성되는 경우가 있으며, 이 경우에는 moov(110)의 mvex(113)가 생략된 구성이 된다. In addition, the MP4 file data 100 may be composed of only the
도 13은 상기 MP4 파일 데이터(100)에 근거하여 콘텐츠의 재생을 하는 본 실시형태의 역다중화 장치(200)의 구성을 도시하는 구성도이다. FIG. 13 is a configuration diagram showing the configuration of the
이 역다중화 장치(200)는 MP4 파일 데이터(100)를 취득하여 재생하는 것으로서, MP4 파일 데이터(100)를 기본 영역(100a)로부터 순차적으로 취득하는 데이터 취득부(210)와, 그 데이터 취득부(210)에서 취득된 MP4 파일 데이터(100)를, 1조(組)의 moov(110) 및 mdat(120)이나 1조의 moof(130) 및 mdat(140)마다 순차적으로 역다중화하여 복호화하는 복호부(213)와, 데이터 취득부(210)에서 취득된 MP4 파일 데이터(100)에 근거하여 시간적인 처리를 하는 시간 처리부(211)와, 취득된 MP4 파일 데이터(100)에 대하여 랜덤 액세스하기 위한 처리를 하는 랜덤 액세스 처리부(212)와, 복호부(213)로부터 출력된 데이터에 근거하여 화상이나 음성을 출력하는 재생부(214)를 구비하고 있다. The
랜덤 액세스 처리부(212)는 데이터 취득부(210)에서 취득된 MP4 파일 데이터(100)를 모두 축적하고 있어, 외부로부터 목표 시간을 나타내는 내용의 목표 시간 정보를 취득하면, 그 축적된 MP4 파일 데이터(100) 중에서 그 목표 시간에 대 응하는 샘플을 목적 샘플로서 검색하여, 그 목적 샘플로부터의 콘텐츠의 재생을 복호부(213) 및 재생부(214)에 실행시킨다. The random
또한, 시간 처리부(211)는 MP4 파일 데이터(100)에 근거하여 거기에 포함되는 모든 콘텐츠의 재생에 요하는 총 시간길이를 특정하는 콘텐츠 시간길이 특정부(211a)와, MP4 파일 데이터(100)에 포함되는 모든 트랙의 재생에 요하는 시간길이를 트랙마다 특정하는 트랙 시간길이 특정부(211b)와, 재생 시간을 특정하는 재생 시간 특정부(211c)를 구비하고 있다. The
도 14는 시간 처리부(211)의 콘텐츠 시간길이 특정부(211a)의 내부 구성을 도시하는 블록도이다.14 is a block diagram showing an internal configuration of the content time
콘텐츠 시간길이 특정부(211a)는 제1 분리부(221)와 제2 분리부(222)와 제3 분리부(224)와 제1 해석부(223)와 제2 해석부(225)와 가산부(226)를 구비하고 있다. The content time
제1 분리부(221)는 MP4 파일 데이터(100)를 취득하여, 그 MP4 파일 데이터(100)로부터 moov(110)에 격납되어 있는 데이터(moov 데이터)를 분리하여 출력한다. The
제2 분리부(222)는 moov 데이터를 취득하면 그 moov 데이터로부터, mvhd(111)에 격납되어 있는 데이터(mvhd 데이터)와 mvex(113)에 격납되어 있는 데이터(mvex 데이터)를 분리하여 출력한다. When the
제3 분리부(224)는 mvex 데이터를 취득하면, 그 mvex 데이터로부터 mhex(113a)에 격납되어 있는 데이터(mhex 데이터)를 분리하여 출력한다.
When the
제1 해석부(223)는 제2 분리부(222)로부터 mvhd 데이터를 취득하면, 그 mvhd 데이터를 해석하여 그 무비 시간길이 필드(111a)에 격납되어 있는 기본 콘텐츠 시간길이 정보를 출력한다. When the
제2 해석부(225)는 제3 분리부(224)로부터 mhex 데이터를 취득하면, 그 mhex 데이터를 해석하여 그 무비 시간길이 필드(113b)에 격납되어 있는 확장 콘텐츠 시간길이 정보를 출력한다. When the
가산부(226)은 제1 해석부(223) 및 제2 해석부(225)로부터 기본 콘텐츠 시간길이 정보 및 확장 콘텐츠 시간길이 정보를 취득하면, 기본 콘텐츠 시간길이 정보에 의해 나타내어지는 기본 콘텐츠 시간길이와, 확장 콘텐츠 시간길이 정보에 의해 나타내어지는 확장 콘텐츠 시간길이를 가산하여, 그 가산된 시간길이(콘텐츠 총 시간길이)를 나타내는 콘텐츠 총 시간길이 정보를 출력한다. 또한 가산부(226)는 확장 콘텐츠 시간길이 정보가 ‘0’을 나타내고 있을 때에는, 기본 콘텐츠 시간길이 정보를 콘텐츠 총 시간길이 정보로서 출력한다. When the
이와 같이 본 실시형태의 콘텐츠 시간길이 특정부(211a)는 MP4 파일 데이터(100)의 기본 영역(100a) 및 확장 영역(100b)에 포함되는 콘텐츠의 총 시간길이를 특정하고, 그 콘텐츠 총 시간길이를 나타내는 내용의 콘텐츠 총 시간길이 정보를 출력한다. As described above, the content time
도 15는 시간 처리부(211)의 트랙 시간길이 특정부(211b)의 내부 구성을 도시하는 블록도이다. 15 is a block diagram showing an internal configuration of the track time
트랙 시간길이 특정부(211b)는 제1 분리부(231)와 제2 분리부(232)와 제3 분 리부(233)와 제4 분리부(235)와 제1 해석부(234)와 제2 해석부(236)와 가산부(237)를 구비하고 있다. The track time
제1 분리부(231)는 MP4 파일 데이터(100)를 취득하여, 그 MP4 파일 데이터(100)로부터 moov 데이터를 분리하여 출력한다. The
제2 분리부(232)는 moov 데이터를 취득하면, 그 moov 데이터로부터 trak(112)에 격납되어 있는 데이터(trak 데이터)와 mvex 데이터를 분리하여 출력한다. When the
제3 분리부(233)는 trak 데이터를 취득하면, 그 trak 데이터로부터 tkhd(114)에 격납되어 있는 데이터(tkhd 데이터)를 분리하여 출력한다. When the
제1 해석부(234)는 제3 분리부(233)로부터 tkhd 데이터를 취득하면, 그 tkhd 데이터를 해석하여 tkhd(114)의 트랙 ID 필드(116)에 격납되어 있는 트랙 식별 정보를 출력한다. 또한 제1 해석부(234)는 그 트랙 식별 정보에 의해 특정되는 트랙에 대응하는 기본 트랙 시간길이 정보를, tkhd(114)의 트랙 시간길이 필드(117)로부터 추출하여 이를 출력한다. When the
제4 분리부(235)는 제2 분리부(232)로부터 mvex 데이터를 취득하고, 제1 해석부(234)로부터 트랙 식별 정보를 취득하면, 그 mvex 데이터로부터 그 트랙 식별 정보에 의해 특정되는 트랙에 대응하는 trex(115)에 격납되어 있는 데이터(trex 데이터)를 분리하여 출력한다. When the
제2 해석부(236)는 제4 분리부(235)로부터 trex 데이터를 취득하면, 그 trex 데이터를 해석하여 트랙 시간길이 필드(115a)에 격납되어 있는 확장 트랙 시간길이 정보를 출력한다. When the
가산부(237)는 제1 해석부(234)로부터 기본 트랙 시간길이 정보를 취득하고, 제2 해석부(236)로부터 확장 트랙 시간길이 정보를 취득하면, 기본 트랙 시간길이 정보에 나타내어지는 시간길이와 확장 트랙 시간길이 정보에 나타내어지는 시간길이를 가산하여, 그 가산된 시간길이(트랙 총 시간길이)를 나타내는 트랙 총 시간길이 정보를 출력한다. The
이와 같이 본 실시형태의 트랙 시간길이 특정부(211b)는, MP4 파일 데이터(100)의 기본 영역(100a) 및 확장 영역(100b)에 포함되는 트랙의 총 시간길이를 트랙마다 특정하여 그 트랙을 나타내는 트랙 식별 정보와, 그 트랙의 트랙 총 시간길이를 나타내는 트랙 총 시간길이 정보를 출력한다. As described above, the track time
도 16은 본 실시형태에서의 역다중화 장치(200)의 콘텐츠 시간길이 특정부(211a)의 특징적인 동작을 도시하는 플로우 도이다. FIG. 16 is a flowchart showing characteristic operations of the content time
우선, 콘텐츠 시간길이 특정부(211a)는 MP4 파일 데이터(100)를 취득하고(스텝 S200), 그 데이터(100)의 mvhd(111)를 해석하여 기본 콘텐츠 시간길이(T1)를 특정한다(스텝 S202). First, the content time
다음으로, 콘텐츠 시간길이 특정부(211a)는 스텝 S200에서 취득한 데이터(100)의 moov(110)에 mvex(113)가 포함되어 있는가 아닌가를 판별한다(스텝 S204). Next, the content time
여기서, 콘텐츠 시간길이 특정부(211a)는 mvex(113)를 검출하면(스텝 S204의 Y), MP4 파일 데이터(100)는 기본 영역(1OOa)과 확장 영역(100b)으로 구성되어 있 다고 판단하고, 다시 그 mvex(113)에 포함되는 mhex(113a)를 해석함으로써(스텝 S206), 그 무비 시간길이 필드(113b)에 격납되어 있는 확장 콘텐츠 시간길이 정보가 ‘0’을 나타내는가 아닌가를 판별한다(스텝 S208). Here, when the content time
콘텐츠 시간길이 특정부(211a)는 확장 콘텐츠 시간길이 정보가 ‘0’을 나타내고 있지 않다고 판별하면(스텝 S208의 N), 그 확장 콘텐츠 시간길이 정보로부터 확장 콘텐츠 시간길이(T2)를 특정한다(스텝 S210). If the content time
그리고, 콘텐츠 시간길이 특정부(211a)는 기본 콘텐츠 시간길이(T1)와 확장 콘텐츠 시간길이(T2)를 가산하여, 콘텐츠 총 시간길이(T)를 산출하고(스텝 S212), 그 콘텐츠 총 시간길이(T)를 나타내는 내용의 콘텐츠 총 시간길이 정보를 출력한다(스텝 S214). The content time
한편, 스텝 S204에서 mvex(113)를 검출하지 않았을 때에는(스텝 S204의 N), 콘텐츠 시간길이 특정부(211a)는, MP4 파일 데이터(100)는 기본 영역(1OOa)으로 구성된다고 판단하고, 기본 콘텐츠 시간길이(T1)을 콘텐츠 총 시간길이(T)로 취급하여(스텝 S220), 콘텐츠 총 시간길이 정보를 출력한다 (스텝 S214). On the other hand, when the
그리고, 스텝 S208에서 확장 콘텐츠 시간길이 정보가 ‘0’을 나타내고 있다고 판별하였을 때에는(스텝 S208의 Y), 콘텐츠 시간길이 특정부(211a)는 콘텐츠 총 시간길이(T)를 산출할 수 없다고 판단하고(스텝 S216), 콘텐츠 총 시간길이(T)가 불명임을 알리는 내용의 총 시간길이 불명 정보를 출력한다(스텝 S218). When it is determined in step S208 that the extended content time length information indicates "0" (Y in step S208), the content time
여기서, 본 실시형태에서의 역다중화 장치(200)의 재생부(214)는, 복호부(213)로부터의 데이터에 근거하여 화상이나 음성을 출력하고, 재생 시간 특 정부(211c)에 의해 특정된 재생 시간을 표시하는 동시에, 콘텐츠 시간길이 특정부(211a)로부터 콘텐츠 총 시간길이 정보가 출력되었을 때에는, 그 콘텐츠 총 시간길이 정보에 의해 나타내어지는 콘텐츠 총 시간길이를 표시하고, 콘텐츠 시간길이 특정부(211a)로부터 총 시간길이 불명 정보가 출력되었을 때에는, 콘텐츠 총 시간길이가 불명임을 알린다.Here, the reproducing
도 17은 콘텐츠 총 시간길이 정보가 출력되었을 때의 재생부(214)에 의해 표시되는 화상을 도시하는 화상 표시도이다. 17 is an image display diagram showing an image displayed by the
재생부(214)는 재생 화상을 표시하기 위한 화면(P1)을 표시하고, 그 화면(P1) 상에 재생 화상이 표시되는 재생 화상 표시부(P2)와 슬라이더 바(P3)와 조작 버튼(P4)과 시간 표시부(P5)를 표시한다. The
시간 표시부(P5)에는 도면 중 우측에 콘텐츠 총 시간길이가 예컨대 ‘00:02:30’과 같이 표시되고, 도면 중 좌측에 재생 시간이 예컨대 ‘00:00:30’과 같이 표시된다. In the time display unit P5, the total content length of time is displayed on the right side of the figure as, for example, '00: 02: 30 ', and the playback time is displayed on the left side of the figure, for example, '00: 00: 30'.
슬라이더 바(P3)는 콘텐츠 총 시간길이에 대한 재생 시간의 비율에 따라서, 라인 Ln1 상을 도면 중 좌측으로부터 우측으로 슬라이드한다. The slider bar P3 slides the line Ln1 image from left to right in the figure in accordance with the ratio of the reproduction time to the total content time length.
도 18은 총 시간길이 불명 정보가 출력되었을 때의 재생부(214)에 의해 표시되는 화상을 도시하는 화상 표시도이다. 18 is an image display diagram showing an image displayed by the
재생부(214)는 상술한 바와 같이 재생 화상 표시부(P2)와 슬라이더 바(P3)와 조작 버튼(P4)과 시간 표시부(P5)를 포함하는 화면(P1)을 표시하나, 시간 표시부(P5)의 도면 중 우측에는 콘텐츠 총 시간길이가 불명임을 나타내는 문자 또 는 기호를, 예컨대 ‘--:--:--’와 같이 표시한다. 또한 재생부(214)는 시간 표시부(P5)의 도면 중 우측에 재생 시간을 예컨대 ‘00:00 30’과 같이 표시한다. The
슬라이더 바(P3)는 예컨대 소정 시간에 대한 재생 시간의 비율에 따라서, 라인 Ln1 상을 도면 중 좌단으로부터 우측으로 슬라이드하고, 재생 시간이 상기 소정 시간을 넘으면, 다시 도면 중 좌단으로부터 우측으로의 슬라이드를 반복하여 실행한다. Slider bar P3 slides the line Ln1 image from the left end to the right side in the figure according to the ratio of the reproduction time to the predetermined time, for example. Run it repeatedly.
또한, 재생부(214)는 트랙 시간길이 특정부(211b)로부터 트랙 식별 정보 및 트랙 총 시간길이 정보를 취득하였을 때에는, 필요에 따라서 그 트랙 식별 정보에 나타내어지는 트랙마다, 트랙 총 시간길이 정보에 의해 나타내어지는 트랙 총 시간길이를 표시한다. When the
이와 같이 본 실시형태에서의 역다중화 장치(200)는 MP4 파일 데이터(100)의 다운로드를 개시하였을 때에는, 다운로드 재생을 할 수 있는 동시에 MP4 파일 데이터(100)의 모든 다운로드가 완료될 필요 없이, 그 MP4 파일 데이터(100)의 moov(11O)에 격납된 콘텐츠 총 시간길이 정보에 근거하여 콘텐츠 총 시간길이를 표시할 수 있어 편리성을 향상할 수 있다. As described above, when the
다음으로, 본 실시형태에서의 MP4 파일 데이터(100)를 작성하는 다중화 장치(300)에 관해서 설명한다. Next, the
도 19는 본 실시형태에서의 다중화 장치(300)의 구성을 도시하는 구성도이다. 19 is a configuration diagram showing a configuration of the
이 본 실시형태에서의 다중화 장치(300)는, 화상 데이터 해석부(301)와 음성 데이터 해석부(302)와 제1 전환스위치(303)와 제2 전환스위치(304)와 제어부(308)와 moof 생성부(305)와 moov 생성부(306)와 파일 생성부(307)를 구비하고 있다. The
화상 데이터 해석부(301)는 화상 데이터를 취득하여 이를 해석함으로써, 그 화상 데이터의 타임 스탬프나 사이즈 등을 나타내는 내용의 화상 특정 정보를 생성한다. 그리고 화상 데이터 해석부(301)는 화상 데이터를 부호화하여 화상 부호화 데이터를 작성하여, 그 화상 부호화 데이터와 화상 특정 정보를 출력한다. The image data analysis unit 301 acquires image data and analyzes the image data, thereby generating image specific information of the content indicating the time stamp, size, and the like of the image data. The image data analysis unit 301 encodes the image data to generate image coded data, and outputs the image coded data and the image specific information.
음성 데이터 해석부(302)는 음성 데이터를 취득하여 이를 해석함으로써, 그 음성 데이터의 타임 스탬프나 사이즈 등을 나타내는 내용의 음성 특정 정보를 생성한다. 그리고 음성 데이터 해석부(302)는 음성 데이터를 부호화하여 음성 부호화 데이터를 작성하여, 그 음성 부호화 데이터와 음성 특정 정보를 출력한다. The speech
moov 생성부(306)는 제어부(308)로부터의 제어에 따라서, moov 데이터를 생성하여 출력한다. 여기서 본 실시형태에서의 moov 생성부(306)는 moov 데이터의 mvex(113)에 mhex(113a)를 작성한다. The
moof 생성부(305)는 제어부(308)로부터의 제어에 따라서 moof 데이터를 생성하여 출력한다. The
제어부(308)는 화상 데이터 해석부(301)로부터 화상 특정 정보를 취득하는 동시에 음성 데이터 해석부(302)로부터 음성 특정 정보를 취득하여, 그 화상 특정 정보 및 음성 특정 정보에 근거하여 제1 전환스위치(303) 및 제2 전환스위치(304)를 전환함으로써, 제2 전환스위치(304)로부터 먼저 moov 데이터를 포함하는 기본 영역(100a)에 격납되어야 하는 데이터를 출력시키고, 다음으로 moof 데이터를 포함 하는 확장 영역(100b)에 격납되어야 하는 데이터를 출력시킨다. The
여기서, 본 실시형태에서의 제어부(308)는 moov 생성부(306)로부터 moov 데이터를 출력시킬 때에는, 우선, mhex(113a)의 무비 시간길이 필드(113b)에 격납되는 확장 콘텐츠 시간길이 정보가 ‘0’을 나타내는 것과 같은 moov 데이터를 moov 생성부(306)에 생성시켜서 이를 출력시킨다. In the present embodiment, when the
그리고, 제어부(308)는 화상 특정 정보 및 음성 특정 정보에 근거하여, 화상 부호화 데이터 및 음성 부호화 데이터의 확장 영역(100b)에 저장되는 각 샘플의 시간길이를 순차적으로 가산한다. Then, the
다음으로, 제어부(308)는 입력된 음성 데이터나 화상 데이터 모두에 대하여 moof 데이터를 moof 생성부(305)로부터 출력시키면, 상술한 바와 같이 가산한 시간길이를 확장 콘텐츠 시간길이로 하고 그 시간길이를 나타내는 확장 콘텐츠 시간길이 정보를 moov 생성부(306)에 출력한다. Next, when the
그리고, 제어부(308)로부터 확장 콘텐츠 시간길이 정보를 취득한 moov 출력부(306)는, 그 확장 콘텐츠 시간길이 정보와 그 정보가 격납되는 mhex(113a)의 무비 시간길이 필드(113b)의 위치를 나타내는 내용의 위치 특정 정보를 파일 생성부(307)에 출력한다. The
파일 출력부(307)는 moov 생성부(306)로부터 확장 콘텐츠 시간길이 정보와 위치 특정 정보를 취득하면, 그 위치 특정 정보에 의해 나타내어지는 mhex(113a)의 무비 시간길이 필드(113b)에, 그 취득한 확장 콘텐츠 시간길이 정보를 겹쳐 쓴다. 즉 파일 생성부(307)는 ‘0’을 나타내는 확장 콘텐츠 시간길이 정보를, 후에 취득 한 확장 콘텐츠 시간길이 정보로 변경하여 MP4 파일 데이터(100)를 완성한다. When the
도 20은 본 실시형태에서의 다중화 장치(300)의 동작을 도시하는 플로우 도이다. 20 is a flowchart showing the operation of the
우선, 다중화 장치(300)는 ‘0’을 나타내는 확장 콘텐츠 시간길이 정보를 포함하는 moov 데이터를 생성한다(스텝 S300). 즉 다중화 장치(300)는 처음에 임시 moov 데이터를 생성해 둔다. First, the
다음으로, 다중화 장치(300)는 moof 데이터를 작성한다(스텝 S302). Next, the
그리고, 다중화 장치(300)는 입력된 화상 데이터나 음성 데이터의 부호화 및 다중화에 대하여 미 처리 데이터가 있는가 없는가를 판별한다(스텝 S304). 여기서 미 처리 데이터가 있다고 판별하였을 때에는(스텝 S304의 Y), 스텝 S302부터의 동작을 반복하여 실행하고, 미 처리 데이터가 없다고 판별하였을 때에는(스텝 S302의 N), 샘플의 시간길이의 가산 결과에 근거하는 확장 콘텐츠 시간길이 정보를 moov 데이터에 겹쳐 써서(스텝 S306) 처리를 종료한다. Then, the
이러한 본 실시형태에서의 다중화 장치(300)는 콘텐츠의 정보량에 따라서 1조의 moov(110) 및 mdat(120)와, 적어도 1조의 moof(130) 및 mdat(140)이 연속하도록 구성되는 MP4 파일 데이터(100)를 생성하기 때문에, 리얼타임 기록에 효과적인 동시에 역다중화 장치(200)의 편리성 향상을 위해 필요한 확장 콘텐츠 시간길이 정보를 moov(11O)에 격납할 수 있다. The
도 21은 trex의 신텍스를 도시하는 표시도이다. 21 is a display diagram showing a syntax of trex.
trex(115)의 트랙 시간길이 필드(115a)에는 버전에 따라서 32비트나 64비트 가 할당되고, 제1 디폴트 시간길이 필드(119)에는 32비트가 할당된다. 또한 타임 스케일은 mvhd(111)에 의해 나타내어진다. 32 bits or 64 bits are allocated to the track
또, 본 실시형태에서는 MP4 파일 데이터(100)의 mvex(113)에 확장 콘텐츠 시간길이 정보를 포함하는 mhex(113a)를 격납하였지만, 이 mhex(113a) 대신에 콘텐츠 총 시간길이 정보를 포함하는 박스(이하 ‘mehd’라 칭한다)를 격납하여도 된다. In this embodiment, the
도 22는 mehd를 포함하는 MP4 파일 데이터에 근거하여 콘텐츠 총 시간길이를 특정하는 콘텐츠 시간길이 특정부의 내부 구성을 도시하는 블록도이다. Fig. 22 is a block diagram showing an internal configuration of a content time length specifying unit that specifies a content total time length based on MP4 file data including mehd.
이 콘텐츠 시간길이 특정부(211a’)는, 제1 분리부(211’)와 제2 분리부(222’)와 제3 분리부(224’)와 해석부(225’)를 구비하고 있다. 제1 분리부(221’)는 MP4 파일 데이터를 취득하여, 그 MP4 파일 데이터로부터 moov 데이터를 분리하여 출력한다. 제2 분리부(222’)는 moov 데이터를 취득하면, 그 moov 데이터로부터 mvex 데이터를 분리하여 출력한다. 제3 분리부(224’)는 mvex 데이터를 취득하면, 그 mvex 데이터로부터 상술한 mehd에 격납되어 있는 mehd 데이터를 분리하여 출력한다. 해석부(225’)는 제3 분리부(224’)로부터 mehd 데이터를 취득하면, 그 mehd 데이터를 해석하여 콘텐츠 총 시간길이 정보를 출력한다. This content time
도 23은 상술한 콘텐츠 시간길이 특정부(211a’)의 특징적인 동작을 도시하는 플로우 도이다. FIG. 23 is a flowchart showing characteristic operations of the above-described content time
우선, 콘텐츠 시간길이 특정부(211a’)는 상술한 MP4 파일 데이터를 취득하여(스텝 S260), 그 데이터에 mehd가 포함되어 있는가 아닌가를 판별한다(스텝 S262).
First, the content time
여기서, 콘텐츠 시간길이 특정부(211a’)는 mehd를 검출하면(스텝 S262의 Y) 그 mehd를 해석하여(스텝 S264), mehd에 격납되어 있는 콘텐츠 총 시간길이 정보가 ‘0’을 나타내고 있는가 아닌가를 판별한다(스텝 S266). Here, if the content time
그리고, 콘텐츠 시간길이 특정부(211a’)는 스텝 S266에서 콘텐츠 총 시간길이 정보가 ‘O’을 나타내고 있지 않다고 판별하였을 때에는(스텝 S266의 N), 그 콘텐츠 총 시간길이 정보를 출력한다(스텝 S268). 한편 콘텐츠 시간길이 특정부(211a’)는 스텝 S262에서 데이터에 mehd가 포함되어 있지 않다고 판별하였을 때(스텝 S262의 N), 또는 스텝 S266에서 콘텐츠 총 시간길이 정보가 ‘0’을 나타내고 있다고 판별하였을 때에는(스텝 S266의 Y), 콘텐츠 총 시간길이를 특정할 수 없다고 판별하여(스텝 S270), 콘텐츠 총 시간길이가 불명임을 알리는 내용의 총 시간길이 불명 정보를 출력한다(스텝 S272). When the content time
이와 같이 mhex(113a)의 대신에 mehd를 MP4 파일 데이터에 격납함으로써, 콘텐츠 시간길이 특정부(211a’)는 콘텐츠 총 시간길이를 특정하기 위해서 기본 영역(1OOa)의 콘텐츠의 시간길이와 확장 영역(100b)의 콘텐츠의 시간길이를 가산하지 않고서 mehd 데이터를 해석함으로써, 용이하게 콘텐츠 총 시간길이를 특정할 수 있다. By storing mehd in the MP4 file data instead of the mhex 113a in this manner, the content time
한편, 다중화 장치(300)의 제어부(308)는 moov 생성부(306)에 moov 데이터를 생성시킬 때에는, 우선 mehd에 격납되는 콘텐츠 총 시간길이 정보가 ‘O’을 나타내는 것과 같은 moov 데이터를 moov 생성부(306)에 생성시키는 동시에, 화상 특정 정보 및 음성 특정 정보에 근거하여 화상 부호화 데이터 및 음성 부호화 데이터의 기본 영역(1OOa) 및 확장 영역(100b)에 저장되는 각 샘플의 시간길이를 순차적으로 가산한다. 그리고 제어부(308)는 입력된 음성 데이터나 화상 데이터 모두에 대하여 moof 데이터를 moof 생성부(305)로부터 출력시키면, 상술한 바와 같이 가산한 시간길이를 콘텐츠 총 시간길이로 하고, 그 시간길이를 나타내는 콘텐츠 총 시간길이 정보를 moov 생성부(306)에 출력한다. 이에 의해 다중화 장치(300)의 파일 생성부(307)는 상술한 mehd를 격납하는 MP4 파일 데이터(100)를 생성한다. On the other hand, when the
도 24는 mehd의 신텍스를 도시하는 표시도이다. 24 is a display diagram showing syntax of mehd.
mehd의 콘텐츠 총 시간길이 정보를 격납하는 무비 시간길이 필드에는 버전에 따라서 32비트나 64비트가 할당된다. 예컨대 버전이 0을 나타내는 경우에는 32비트가 할당되고, 버전이 1을 나타낼 때에는 64비트가 할당된다. 또한 타임 스케일은 mvhd에 의해 나타내어진다. The movie time length field that stores the total time length information of mehd is allocated 32 bits or 64 bits depending on the version. For example, 32 bits are allocated when the version indicates 0, and 64 bits are allocated when the version indicates 1. The time scale is also represented by mvhd.
또한, mhex(113a)가 도 24에 도시하는 것과 같은 신텍스를 가지고 있어도 무방하다. In addition, the mhex 113a may have a syntax as shown in FIG. 24.
또한, 상기 실시형태에서는 확장 콘텐츠 시간길이 정보가 ‘O’을 나타내는 경우에 확장 콘텐츠 시간길이가 불명이라고 하였으나, 그 값은 ‘O’이외의 예컨대 음수 등이어도 무방하다. In addition, in the above embodiment, when the extended content time length information indicates 'O', the extended content time length is unknown, but the value may be, for example, a negative number other than 'O'.
(변형예) (Variation)
다음으로, 상기 본 실시형태에서의 역다중화 장치(200)의 변형예에 관하여 설명한다. Next, the modification of the
상술한 역다중화 장치(200)는 종래의 파일 포맷과 기본 영역의 구조가 상이 한 MP4 파일 데이터를 취급하였으나, 본 변형예에 관한 역다중화 장치는 또한 종래의 파일 포맷과 확장 영역의 구조도 상이한 MP4 파일 데이터를 취급한다. The
도 25는 본 변형예에 관한 역다중화 장치가 취급하는 MP4 파일 데이터의 moof의 파일 포맷을 도시하는 데이터 구성도이다. Fig. 25 is a data structure diagram showing a file format of moof of MP4 file data handled by the demultiplexing apparatus according to the present modification.
moof(130’)는 1개의 mfhd(131)와 다수의 traf(132)로 구성되어 있다. The moof 130 'is composed of one
mfhd(131)는 엔트리 카운터 필드(131a)와 다수의 시간길이 엔트리 필드(131b)로 구성되며, 시간길이 엔트리 필드(131b)에는 또한 트랙을 식별하기 위한 트랙 식별 정보를 격납하는 트랙 ID 필드(131c)와, 해당 moof(130’)와 쌍이 되는 mdat(140)에서, 그 트랙 식별 정보에 의해 특정되는 트랙의 시간길이(moof 시간길이)를 나타내는 moof 시간길이 정보를 격납하는 moof 시간길이 필드(131d)가 형성되어 있다. The
traf(132)는 1개의 트랙 프레그먼트 헤더 박스(이하, ‘tfhd’라 칭한다)(133)와 다수의 트랙 프레그먼트 런 박스(이하 ‘trun’라 칭한다)(136)으로 구성되며, tfhd(133)에는 traf 시간길이 정보가 격납되는 traf 시간길이 필드(135)와, 디폴트 샘플 시간길이 정보가 격납되는 제2 디폴트 시간길이 필드(134)가 포함되어 있다. The
traf 시간길이 필드(135)에 격납되는 traf 시간길이 정보는, traf(132)의 trun(136)에 포함되는 샘플 시간길이 정보에 의해 나타내어지는 샘플의 시간길이의 총계(traf 시간길이)를 나타내며, 제2 디폴트 시간길이 필드(134)에 격납되는 디폴트 샘플 시간길이 정보는 그 traf 시간길이에 대하여 디폴트로 설정된 시간길이를 나타낸다. The traf time length information stored in the traf
도 26은 본 변형예에 관한 역다중화 장치의 랜덤 액세스 처리부의 내부 구성을 도시하는 블록도이다. 26 is a block diagram showing an internal configuration of a random access processing unit of the demultiplexing apparatus according to the present modification.
랜덤 액세스 처리부(400)는 종래의 랜덤 액세스 처리부(812)에 비해 계산량을 줄여 신속하게 목적 샘플을 찾아낼 수 있는 것으로서, 도 25에 도시하는 moof(130’)을 갖는 MP4 파일 데이터(100’)를 축적하는 데이터 축적부(401)와, moof 시간길이를 특정하는 moof 시간길이 처리부(420)와, traf 시간길이를 특정하는 traf 시간길이 처리부(430)와, 샘플 시간길이를 특정하는 샘플 시간길이 처리부(440)와, 이들 처리부를 제어하는 주 제어부(410)로 구성된다. The random
주 제어부(410)는 MP4 파일 데이터(100’)와 목표 시간을 나타내는 목표 시간 정보를 취득하면, 그 MP4 파일 데이터(100’)의 구성을 해석하여 moof 시간길이 처리부(420)와 traf 시간길이 처리부(430)와 샘플 시간길이 처리부(440)를 제어하고, 이들 각 처리부에 의해 특정되는 moof 시간길이 및 traf 시간길이 및 샘플 시간길이를 누계 처리함으로써, 상기 목표 시간에 따른 목적 샘플을 나타내는 목적 샘플 식별 정보를 출력한다. When the
도 27은 moof 시간길이 처리부(420)의 내부 구성을 도시하는 블록도이다. 27 is a block diagram showing an internal configuration of a moof time
moof 시간길이 처리부(420)는 제1 분리부(421)와 제2 분리부(423)와 트랙 제어부(422)와 해석부(424)를 구비하고 있다. The moof
제1 분리부(421)는 도 25의 moof(130’)를 갖는 MP4 파일 데이터(100’)를 취득하면, 그 MP4 파일 데이터(100’)로부터 moov 데이터와 moof 데이터를 분리하 여 출력한다. When the
제2 분리부(423)는 제1 분리부(421)로부터 moof 데이터를 취득하면, 그 moof 데이터로부터 mfhd(131)에 격납되어 있는 데이터(mfhd 데이터)를 분리하여 출력한다. When the
트랙 제어부(422)는 제1 분리부(421)로부터 moov 데이터를 취득하면, 그 moov 데이터에 근거하여 트랙 식별 정보를 출력한다. When the
해석부(424)는 제2 분리부(423)로부터 mfhd 데이터를 취득하는 동시에 트랙 제어부(422)로부터 트랙 식별 정보를 취득하면, mfhd 데이터를 해석하여 그 mfhd 데이터로부터 트랙 식별 정보에 의해 특정되는 트랙의 moof 시간길이 정보를 추출하여 이를 출력한다. The analyzing
도 28은 traf 시간길이 처리부(430)의 내부 구성을 도시하는 블록도이다. 28 is a block diagram showing an internal configuration of the traf time
traf 시간길이 처리부(430)는 제1 분리부(431)와 제2 분리부(433)와 제3 분리부(434)와 트랙 제어부(432)와 해석부(435)를 구비하고 있다. The traf
제1 분리부(431)는 MP4 파일 데이터(100’)를 취득하면, 그 MP4 파일 데이터(100’)로부터 moov 데이터와 moof 데이터를 분리하여 출력한다. When the
트랙 제어부(432)는 제1 분리부(431)로부터 moov 데이터를 취득하면, 그 moov 데이터에 근거하여 트랙 식별 정보를 출력한다. When the
제2 분리부(433)는 제1 분리부(431)로부터 moof 데이터를 취득하는 동시에 트랙 제어부(432)로부터 트랙 식별 정보를 취득하면, moof 데이터를 해석하여 그 moof 데이터로부터, 트랙 식별 정보에 의해 특정되는 트랙에 대응하는 traf 데이터 를 분리하여 출력한다. When the
제3 분리부(434)는 제2 분리부(433)로부터 traf 데이터를 취득하면, 그 traf 데이터로부터 tfhd 데이터를 분리하여 출력한다. When the
해석부(435)는 제3 분리부(434)로부터 tfhd 데이터를 취득하면, 그 tfhd 데이터를 해석하여 그 tfhd 데이터로부터 traf 시간길이 정보를 추출하여 출력한다. When the analyzing
또한, 샘플 시간길이 처리부(440)는 MP4 파일 데이터(100’)로부터 소정의 분리 처리를 함으로써 트랙마다 trun 데이터를 분리하여, 그 trun 데이터로부터 샘플 시간길이 정보를 추출하여 출력한다. Further, the sample time
도 29는 랜덤 액세스 처리부(400)의 개략적인 동작을 설명하기 위한 설명도이다. 29 is an explanatory diagram for illustrating a schematic operation of the random
도 29의 (a)는 MP4 파일 데이터(100’)의 스트림을 도시하는 데이터 구성도이다. 이러한 스트림은 샘플 단위로 구성되며, 그 샘플에는 시크 가능(최초로 독출 가능)함을 나타내는 플래그가 포함되어 있다. FIG. 29A is a data configuration diagram showing a stream of MP4 file data 100 '. These streams are organized in sample units and the samples contain flags indicating that they are seekable (first read).
도 29의 (b)는 MP4 파일 데이터(100’)의 세그먼트 구조를 도시하는 데이터 구성도이다. FIG. 29B is a data configuration diagram showing a segment structure of the MP4 file data 100 '.
MP4 파일 데이터(100’)의 파일 포맷에는 상술한 바와 같이 moov(110)와 moof(130’)가 포함되고, 그 moof(130’)에는 traf(132)가 포함되어 있다. As described above, the file format of the MP4 file data 100 'includes a
MP4 파일 데이터(100’)에 포함되는 콘텐츠 총 시간길이는, 기본 콘텐츠 시간길이(A)와 확장 콘텐츠 시간길이(B)의 합으로 표시된다.The total content time length included in the MP4 file data 100 'is expressed as the sum of the basic content time length A and the extended content time length B. FIG.
또한, 확장 콘텐츠 시간길이(B)는 확장 영역의 각 moof(130’)에 의해 나타 내어지는 moof 시간길이 C1, C2,…의 총계로 표시되며, moof 시간길이 C1, C2,…는 각각의 moof(13O’) 내의 각 traf(132)에 의해 나타내어지는 traf 시간길이 D1, D2,…의 총계로 표시된다. Further, the extended content time length B is represented by the moof time lengths C 1 , C 2 ,... Represented by each moof 130 'of the extended area. It is expressed as the total of moof time lengths C 1 , C 2 ,… Is the traf time length D 1 , D 2 ,... Represented by each traf 132 in each moof 13O '. It is expressed as the total of.
도 29의 (c)는 랜덤 액세스 처리부(400)의 시크 동작을 설명하기 위한 설명도이다. FIG. 29C is an explanatory diagram for explaining the seek operation of the random
랜덤 액세스 처리부(400)는 목표 시간을 나타내는 목표 시간 정보를 취득하면, 우선 기본 콘텐츠 시간길이(A)에 확장 콘텐츠 시간길이(B)를 가산한다. 그 가산 결과가 목표 시간과 동일해지면, 랜덤 액세스 처리부(400)는 MP4 파일 데이터(100’)가 마지막으로 취득한 샘플을 목적 샘플로서 특정하고, 그 목적 샘플을 나타내는 목적 샘플 식별 정보를 출력한다. When the random
한편, 가산 결과가 목표 시간을 넘으면, 랜덤 액세스 처리부(400)는 기본 콘텐츠 시간길이(A)에 대한 moof 시간길이 C1, C2,…의 가산을 시계열을 따라 순차적으로 실시한다. 그 가산 결과가 목표 시간과 동일해졌을 때에는, 랜덤 액세스 처리부(400)는 마지막으로 가산한 moof 시간길이에 대응하는 마지막 샘플을 목적 샘플로서 특정하고, 그 목적 샘플을 나타내는 목적 샘플 식별 정보를 출력한다. On the other hand, if the addition result exceeds the target time, the random
또한, 그 가산 결과가 목표 시간을 넘었을 때에는, 랜덤 액세스 처리부(400)는 목표 시간을 넘기 직전의 가산 결과에 대하여, traf 시간길이 D1, D2,…의 가산을 시계열을 따라 순차적으로 실시한다. 그 가산 결과가 목표 시간과 동일해졌을 때에는, 랜덤 액세스 처리부(400)는 마지막으로 가산한 traf 시간길이에 대응하는 마지막 샘플을 목적 샘플로서 특정하고, 그 샘플을 나타내는 목적 샘플 식별 정보를 출력한다. When the addition result exceeds the target time, the random
그리고, 또한 그 가산 결과가 목표 시간을 넘었을 때에는, 랜덤 액세스 처리부(400)는 목표 시간을 넘기 직전의 가산 결과에 대하여, 샘플 시간길이 E1, E2,…의 가산을 시계열을 따라 순차적으로 실시한다. 여기서 그 가산 결과가 목표 시간과 동일해졌을 때에는, 랜덤 액세스 처리부는 마지막으로 가산한 샘플 시간길이에 대응하는 샘플을 목적 샘플로서 특정하고, 그 목적 샘플을 나타내는 목적 샘플 식별 정보를 출력한다. Further, when the addition result exceeds the target time, the random
도 30은 랜덤 액세스 처리부(400)의 동작을 도시하는 플로우 도이다. 30 is a flowchart showing the operation of the random
우선, 랜덤 액세스 처리부(400)는 기본 콘텐츠 시간길이(A)에 확장 콘텐츠 시간길이(B)를 가산하여, 그 가산 결과가 목표 시간(X)과 동일해지는가 아닌가를 판별한다(스텝 S400). First, the random
그 판별 결과 동일하다고 판별하였을 때에는(스텝 S400의 Y), 랜덤 액세스 처리부(400)는 목적 샘플은 MP4 파일 데이터의 마지막에 있는 샘플이라고 판별한다(스텝 S402). When the determination result is the same (Y in step S400), the random
또한, 동일하지 않다고 판별하였을 때에는(스텝 S400의 N), 랜덤 액세스 처리부(400)는 우선 변수 N을 N=1로 하고(스텝 S404), 기본 콘텐츠 시간길이(A) 및 moof 시간길이(Cn)를 이용하여 시간길이(a)를 하기 수식에 의해 산출한다(스텝 S406).
When it is determined that they are not the same (N in step S400), the random
여기서 랜덤 액세스 처리부(400)는 시간길이(a)가 목표 시간(X)과 동일한가 아닌가를 판별하여(스텝 S408), 동일하다고 판별하였을 때에는(스텝 S408의 Y), 목적 샘플은 moof 시간길이(CN)에 대응하는 마지막 샘플이라고 판별한다(스텝 S410). Here, the random
또한, 랜덤 액세스 처리부(400)는 시간길이(a)가 목표 시간(X)과 동일하지 않다고 판별하였을 때에는(스텝 S408의 N), 다시 시간길이(a)가 목표 시간(X)보다도 큰가 아닌가를 판별한다(스텝 S412). When the random
랜덤 액세스 처리부(400)는 시간길이(a)가 목표 시간(X)보다도 크지 않다고 판별하였을 때에는(스텝 S412의 N), N=N+1로 하고(스텝 S414), 다시 스텝 S406부터의 동작을 반복하여 실행한다. 또 상기 수식은 기본 콘텐츠 시간길이(A)와 moof 시간길이 C1∼CN의 총계를 나타내고 있으나, 랜덤 액세스 처리부(400)는 N의 증가 시마다 상기 수식의 가산 처리를 모두 실행하는 경우는 없으며, 가산처리 결과를 일시 보존해 두고, N이 1 증가할 때마다 상기 N에 상당하는 CN을 상기 보존된 가산처리 결과에 다시 가산함으로써 상기 수식의 해를 구한다. When the random
그리고, 시간길이(a)가 목표 시간(X)보다도 크다고 판별하였을 때에는(스텝 S412의 Y), 랜덤 액세스 처리부(400)는 우선 변수 M을 M=1로 하고(스텝 S416), 기본 콘텐츠 시간길이(A) 및 moof 시간길이(Cn) 및 traf 시간길이(Dm)을 이용하여 시 간길이(b)를 하기 수식에 의해 산출한다(스텝 S417).When it is determined that the time length a is larger than the target time X (Y in step S412), the random
여기에서 랜덤 액세스 처리부(400)는 시간길이(b)가 목표 시간(X)와 동일한가 아닌가를 판별하여(스텝 S418), 동일하다고 판별하였을 때에는(스텝 S418의 Y) 목적 샘플은 traf 시간길이(DM)에 대응하는 마지막 샘플이라고 판별한다(스텝 S420).Here, the random
또한, 랜덤 액세스 처리부(400)는 시간길이(b)가 목표 시간(X)과 동일하지 않다고 판별하였을 때에는(스텝 S418의 N), 다시 시간길이(b)가 목표 시간(X)보다도 큰가 아닌가를 판별한다(스텝 S422). In addition, when the random
랜덤 액세스 처리부(400)는 시간길이(b)가 목표 시간(X)보다도 크지 않다고 판별하였을 때에는, M=M+1로 하고(스텝 S424) 다시 스텝 S417부터의 동작을 반복하여 실행한다. 그리고 시간길이(b)가 목표 시간(X)보다도 크다고 판별하였을 때에는(스텝 S422의 Y), 랜덤 액세스 처리부(400)는 우선 변수 L을 L=1로 하고(스텝 S426), 기본 콘텐츠 시간길이(A), moof 시간길이(Cn), traf 시간길이(Dm), 샘플시간(E1)을 이용하여 시간길이(c)를 하기 수식에 의해 산출한다(스텝 S428). When the random
여기서 랜덤 액세스 처리부(400)는 시간길이(c)가 목표 시간(X)과 동일한가 아닌가를 판별하여(스텝 S430), 동일하다고 판별하였을 때에는(스텝 S430의 Y) 목 적 샘플은 샘플 시간길이(EL)에 대응하는 샘플이라고 판별한다(스텝 S432). Here, the random
또한, 랜덤 액세스 처리부(400)는 시간길이(c)가 목표 시간(X)과 동일하지 않다고 판별하였을 때에는(스텝 S430의 N), 다시 시간길이(c)가 목표 시간(X)보다도 큰가 아닌가를 판별한다(스텝 S434). Further, when the random
랜덤 액세스 처리부(400)는 시간길이(c)가 목표 시간(X)보다도 크지 않다고 판별하였을 때에는(스텝 S434의 N), L=L+1로 하고(스텝 S436) 다시 스텝 S428부터의 동작을 반복하여 실행한다. 그리고 시간길이(c)가 목표 시간(X)보다도 크다고 판별하였을 때에는(스텝 S의 Y), 랜덤 액세스 처리부(400)는 에러가 발생한 것으로 판단한다(스텝 S438). When the random
그리고, 스텝 S402, 스텝 S410, 스텝 S420 또는 스텝 S432에서 목적 샘플이 특정된 후, 랜덤 액세스 처리부(400)는 그 목적 샘플을 나타내는 목적 샘플 식별 정보를 출력한다(스텝 S440). After the target sample is specified in step S402, step S410, step S420, or step S432, the random
이와 같이 본 변형예에서는 확장 영역의 moof(130’)의 mfhd(131)에 moof 시간길이 정보를 격납하는 moof 시간길이 필드(131d)를 설치하고, 또한 tfhd(133)에 traf 시간길이 정보를 격납하는 traf 시간길이 필드(135)를 설치하는 동시에, 랜덤 액세스 시에 목표 시간으로부터 목적 샘플을 찾을 때에는, 우선 확장 콘텐츠 시간길이를 이용하고, 다음으로 확장 콘텐츠 시간길이보다도 짧은 moof 시간길이를 이용하며, 그 다음으로 moof 시간길이보다도 짧은 traf 시간길이를 이용하고, 그리고 마지막으로 traf 시간길이보다도 짧은 샘플 시간길이를 이용하기 때문에, 도 8에 도시하는 종래의 랜덤 액세스 처리부(812)의 동작과 비교하여 계산량을 줄여 신속 하게 목적 샘플을 찾아낼 수 있다. Thus, in this modification, the moof
그리고, 랜덤 액세스 처리부(400)는 MP4 파일 데이터(100’)와 목적 샘플 식별 정보를 복호부(213)에 출력하여, 그 목적 샘플 식별 정보에 의해 나타내어지는 목적 샘플로부터의 콘텐츠의 재생을 복호부(213) 및 재생부(214)에 실행시킨다. The random
도 31은 tfhd(133)의 신텍스를 도시하는 표시도이다. 31 is a display diagram showing the syntax of the
이 도 31에 도시하는 바와 같이, traf(132)의 traf 시간길이 필드(135)에는 예컨대 32비트가 할당된다. As shown in FIG. 31, for example, 32 bits are allocated to the traf
또, 랜덤 액세스 처리부(400)의 주 제어부(410)는 moof 시간길이 처리부(420)로부터의 moof 시간길이 정보의 출력 상황이나, moof 시간길이 정보에 의해 나타내어지는 moof 시간길이의 유효성을 판별하며, moof 시간길이를 이용하고자 하는 경우에 moof 시간길이 정보가 출력되지 않았을 때, 또는 moof 시간길이가 유효하지 않다고 판별하였을 때에는, traf 시간길이 처리부(430)에 moof(130’)에 격납되어 있는 모든 traf 시간길이 정보를 출력시켜, 이들 traf 시간길이의 합을 moof 시간길이 대신으로 이용하여도 된다. 또한 랜덤 액세스 처리부(400)의 주 제어부(410)는 traf 시간길이 처리부(430)로부터의 traf 시간길이 정보의 출력 상황이나, traf 시간길이 정보에 의해 나타내어지는 traf 시간길이의 유효성을 판별하며, traf 시간길이를 이용하고자 하는 경우에 traf 시간길이 정보가 출력되지 않았을 때, 또는 traf 시간길이가 유효하지 않다고 판별하였을 때에는, 샘플 시간길이 처리부(440)에 traf(132)에 격납되어 있는 모든 샘플 시간길이 정보를 출력시켜, 이들 샘플 시간길이의 합을 traf 시간길이 대신으로 이용하여도 된다.
In addition, the
또한, 상기 변형예에서는 각 샘플에 시크 가능한가 아닌가를 나타내는 플래그를 포함시켰으나, moof(130)에 대응하는 다수의 샘플에 대하여 1개의 플래그를 포함시키거나, traf(132)에 대응하는 다수의 샘플에 대하여 1개의 플래그를 포함시켜도 된다. 이에 의해 각 샘플마다 플래그를 체크하는 처리를 생략할 수 있다. In addition, in the above modification, a flag indicating whether or not each sample is seekable is included, but one flag is included for a plurality of samples corresponding to moof 130 or a plurality of samples corresponding to traf 132. One flag may be included. Thereby, the process of checking a flag for each sample can be skipped.
본 발명에 관한 역다중화 장치는 MP4 파일 데이터를 다운로드하여 재생하는 퍼스널 컴퓨터나 휴대전화 등에 이용하기에 적합하며, 본 발명에 관한 다중화 장치는 화상이나 음성 등의 멀티미디어 데이터를 취득하여 MP4 파일 데이터를 작성하여 기록하는 디지털 비디오 카메라나 녹화기능 부가 휴대전화 등에 이용하기에 적합하다. The demultiplexing apparatus according to the present invention is suitable for use in a personal computer or mobile phone for downloading and reproducing MP4 file data, and the multiplexing apparatus according to the present invention obtains multimedia data such as an image or a voice and creates MP4 file data. It is suitable for use in digital video cameras for recording and recording and mobile phones with recording functions.
Claims (29)
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2002-00126028 | 2002-04-26 | ||
JP2002126028 | 2002-04-26 | ||
US37864402P | 2002-05-09 | 2002-05-09 | |
US60/378,644 | 2002-05-09 | ||
PCT/JP2003/005075 WO2003092285A1 (en) | 2002-04-26 | 2003-04-22 | Demultiplexing device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040101187A KR20040101187A (en) | 2004-12-02 |
KR100918537B1 true KR100918537B1 (en) | 2009-09-21 |
Family
ID=50150896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020047003832A KR100918537B1 (en) | 2002-04-26 | 2003-04-22 | Demultiplexing apparatus |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100918537B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682718B (en) * | 2007-04-04 | 2015-09-09 | 韩国电子通信研究院 | Based on storage/playback method and the equipment of the mpeg 2 transport stream of ISO base media file form |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11296984A (en) | 1998-04-06 | 1999-10-29 | Pioneer Electron Corp | Information record medium and reproducer therefor |
JP2000353134A (en) | 1999-06-10 | 2000-12-19 | I4 Corp | Method for providing information and recording medium |
JP2002027381A (en) | 2000-07-07 | 2002-01-25 | Toshiba Corp | Recording and reproducing device |
-
2003
- 2003-04-22 KR KR1020047003832A patent/KR100918537B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11296984A (en) | 1998-04-06 | 1999-10-29 | Pioneer Electron Corp | Information record medium and reproducer therefor |
JP2000353134A (en) | 1999-06-10 | 2000-12-19 | I4 Corp | Method for providing information and recording medium |
JP2002027381A (en) | 2000-07-07 | 2002-01-25 | Toshiba Corp | Recording and reproducing device |
Also Published As
Publication number | Publication date |
---|---|
KR20040101187A (en) | 2004-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105612753B (en) | Switching method and apparatus during media flow transmission between adaptation is gathered | |
US7139470B2 (en) | Navigation for MPEG streams | |
CN103188522B (en) | Method and system for providing and delivering a composite condensed stream | |
CN100367794C (en) | Meta data edition device, meta data reproduction device, meta data distribution device, meta data search device, meta data reproduction condition setting device, and meta data distribution method | |
KR101516325B1 (en) | Storage/playback method and apparatus for mpeg-2 transport stream based on iso base media file format | |
KR100941248B1 (en) | Recording device, reproducing device, recording/reproducing device, recording medium for recording program, and recording medium for reproducing program | |
JP4598627B2 (en) | Content editing apparatus and playback apparatus thereof | |
CN103069812B (en) | There is provided based on the method for the multimedia streaming service of segmentation and device, reception based on the method for the multimedia streaming service of segmentation and device | |
US8433678B2 (en) | Method and device for editing composite content file and reproduction apparatus | |
US20080131071A1 (en) | Apparatus and method for transmission, apparatus and method for production, program, and recording medium | |
US20050021805A1 (en) | System and method for transmitting multimedia information streams, for instance for remote teaching | |
US9197908B2 (en) | Method for file formation according to freeview AV service | |
KR20050013050A (en) | Moving picture data reproducing device | |
JP4436617B2 (en) | Demultiplexer | |
CN101132528B (en) | Metadata reproduction apparatus, metadata delivery apparatus, metadata search apparatus, metadata re-generation condition setting apparatus | |
EP1501301B1 (en) | Demultiplexing device | |
KR100918537B1 (en) | Demultiplexing apparatus | |
US7650061B2 (en) | Information recording apparatus, information reproducing apparatus, and related computer programs | |
KR20140134100A (en) | Method for generating user video and Apparatus therefor | |
KR100676723B1 (en) | Video reproducing apparatus | |
JP4383721B2 (en) | Demultiplexer | |
KR101995270B1 (en) | Method and apparatus for playing video data | |
US20090119314A1 (en) | Method for Storing Individual Data Elements of a Scalable Bit Stream in File, and Associated Device | |
KR100762572B1 (en) | Method and Apparatus for converting Advanced Audio Codec file into MPEG-4 Audio file | |
JP2006304103A (en) | Moving video recording apparatus and moving video recording/reproducing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120821 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20130819 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20140826 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20150730 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160818 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170823 Year of fee payment: 9 |