KR20010018003A - Multiple data synchronizing method and multiple multimedia data streaming method using the same - Google Patents
Multiple data synchronizing method and multiple multimedia data streaming method using the same Download PDFInfo
- Publication number
- KR20010018003A KR20010018003A KR1019990033796A KR19990033796A KR20010018003A KR 20010018003 A KR20010018003 A KR 20010018003A KR 1019990033796 A KR1019990033796 A KR 1019990033796A KR 19990033796 A KR19990033796 A KR 19990033796A KR 20010018003 A KR20010018003 A KR 20010018003A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- multimedia
- frame
- generation time
- frames
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23605—Creation or processing of packetized elementary streams [PES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2368—Multiplexing of audio and video streams
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
본 발명은, 다중 데이터 동기화 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히, 프리젠테이션 등과 같이 하나의 묶음으로 구성된 다중의 데이터에 대해 동기화를 수행하는 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.The present invention relates to a multiple data synchronization method and a computer-readable recording medium having recorded thereon a program for realizing the method. In particular, the present invention relates to a method of performing synchronization for multiple data in one bundle, such as a presentation. And a computer readable recording medium having recorded thereon a program for realizing the method.
또한, 본 발명은, 멀티미디어 데이터 스트리밍 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히, 두 개 이상의 멀티미디어 스트림이 한 프리젠테이션으로 전송이 될 경우 상기한 다중 데이터 동기화 방법을 이용해 스트림간의 동기화를 이루는 멀티미디어 데이터 스트리밍 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.The present invention also relates to a multimedia data streaming method and a computer readable recording medium having recorded thereon a program for realizing the method, in particular, when two or more multimedia streams are transmitted in one presentation. A multimedia data streaming method for synchronizing streams using a data synchronization method and a computer-readable recording medium having recorded thereon a program for realizing the method.
종래의 동영상 스트리밍 서비스에서는 네트워크를 통하여 동영상 혹은 음성데이터를 다운로드 받지 않고 스트림화하여 실시간에 전송/재생을 가능하게 하였다.In the conventional video streaming service, a video or audio data is streamed without being downloaded through a network to enable transmission / playback in real time.
그런데, 멀티미디어 스트림이 한 개가 아니라 두 개 이상이고, 그 두 개 이상의 멀티미디어 스트림이 한 개의 프리젠테이션으로 서비스된다면 실시간 전송시에 동기화가 어려운 문제점이 있었다.However, if there are two or more multimedia streams instead of one, and the two or more multimedia streams serve as one presentation, there is a problem in that synchronization is difficult in real time transmission.
즉, 하나의 프리젠테이션으로 표현되는 다중의 데이터에 대한 동기화가 구현되지 못하여 멀티미디어 스트리밍 서비스가 어려운 문제점이 있었다.That is, the multimedia streaming service is difficult because synchronization for multiple data represented by one presentation is not implemented.
상기한 바와 같은 문제점을 해결하기 위하여 안출된 본 발명은, 하나의 묶음으로 이루어진 다중의 데이터에 대해 생성 시간을 기준으로 동기화하는 다중 데이터 동기화 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.The present invention devised to solve the problems described above, can be read by a computer recording a multi-data synchronization method and a program for realizing the multi-data synchronization method for synchronizing a plurality of data consisting of one bundle based on the generation time The purpose is to provide a recording medium.
또한, 본 발명은, 한 개의 프리젠테이션으로 전송된 다중의 멀티미디어 스트림에 대해 상기한 다중 데이터 동기화 방법을 통해 스트리밍 서비스를 제공하는 다중 멀티미디어 데이터 스트리밍 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 다른 목적이 있다.In addition, the present invention provides a multi-media data streaming method for providing a streaming service through the multi-data synchronization method described above for multiple multimedia streams transmitted in one presentation, and a computer program for recording the program for realizing the method. Another purpose is to provide a record carrier.
도 1 은 본 발명이 적용되는 멀티미디어 데이터 스트리밍 서비스 제공을 위한 데이터 송수신 시스템의 구성예시도.1 is a configuration example of a data transmission and reception system for providing a multimedia data streaming service to which the present invention is applied.
도 2 는 본 발명이 적용되는 디스크에 저장되어 있는 멀티미디어 데이터를 단위 패킷으로 나누어 전송하는 송신측 스트리밍 서비스 장치에 관한 구성예시도.FIG. 2 is an exemplary configuration diagram of a transmitting-side streaming service apparatus for transmitting multimedia data stored in a disc according to the present invention in unit packets. FIG.
도 3 은 본 발명이 적용되는 단위 패킷을 수신하여 스트림으로 변환하는 수신측 스트리밍 서비스 장치에 관한 구성예시도.3 is a configuration example of a receiving-side streaming service apparatus for receiving and converting a unit packet to a stream according to the present invention.
도 4 는 본 발명이 적용되는 수신된 멀티미디어 단위 프레임을 순차적으로 배열하기 위한 스트림 동기화 모듈에 대한 상세 구성예시도.4 is a detailed configuration example of a stream synchronization module for sequentially arranging received multimedia unit frames to which the present invention is applied.
도 5 는 본 발명이 적용되는 수신된 다중 멀티미디어 스트림의 프리젠테이션 동기화를 수행하는 모듈에 대한 상세 구성예시도.5 is a detailed configuration example of a module for performing presentation synchronization of a received multiple multimedia streams to which the present invention is applied.
도 6 은 본 발명에 따른 다중 멀티미디어 데이터 스트리밍 방법에 대한 일실시예 흐름도.6 is a flowchart illustrating an embodiment of a multi-media data streaming method according to the present invention.
도 7 은 본 발명에 따른 다중 멀티미디어 데이터를 패킷화하여 전송하는 과정에 대한 일실시예 상세흐름도.7 is a detailed flowchart illustrating a process of packetizing and transmitting multiple multimedia data according to the present invention.
도 8a 및 도 8b 는 본 발명에 따른 동일종류의 멀티미디어 데이터에 대해 순차적으로 배열하는 과정에 대한 일실시예 상세흐름도.8A and 8B are detailed flowcharts illustrating an embodiment of sequentially arranging multimedia data of the same type according to the present invention.
도 9 는 본 발명에 따른 다중의 멀티미디어 데이터에 대해 프리젠테이션 동기화를 수행하는 과정에 대한 일실시예 상세흐름도.9 is a detailed flowchart of an embodiment of a process of performing a presentation synchronization on a plurality of multimedia data according to the present invention.
*도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings
101 : 디스크 102 : 송신측 스트리밍 서비스 장치101 disk 102: sender streaming service device
103 : 송신측 소켓 104 : 수신측 소켓103: socket on the sending side 104: socket on the receiving side
105 : 수신측 스트리밍 서비스 장치105: receiving side streaming service device
106 : 멀티미디어 데이터 처리 장치106: multimedia data processing device
상기 목적을 달성하기 위한 본 발명은, 데이터 수신 시스템에 적용되는 다중 데이터 동기화 방법에 있어서, 소정의 크기로 분할하여 전송된 다중 데이터를 수신하여 그 생성 시간을 비교하는 제 1 단계; 상기 제 1 단계의 비교 결과, 같은 생성 시간을 갖는 다중 데이터가 아니면 저장 수단에서 같은 생성 시간의 데이터를 찾아 동기화를 구현하고, 생성 시간이 다른 데이터는 상기 저장 수단에 임시로 저장하는 제 2 단계; 및 상기 제 1 단계의 비교 결과, 같은 생성 시간을 갖는 다중 데이터이면 상기 다중 데이터에 대해 동기화를 구현하는 제 3 단계를 포함하여 이루어진 것을 특징으로 한다.In order to achieve the above object, the present invention provides a multi-data synchronization method applied to a data receiving system, comprising: a first step of receiving multiple data transmitted by dividing it into a predetermined size and comparing the generation time thereof; As a result of the comparison of the first step, a second step of realizing synchronization by finding data of the same generation time in the storage means, if not multiple data having the same generation time, and temporarily storing data having a different generation time in the storage means; And a third step of implementing synchronization with respect to the multiple data if the multiple data having the same generation time as a result of the comparison of the first step.
상기 다른 목적을 달성하기 위한 본 발명은, 데이터 송수신 시스템에 적용되는 다중의 멀티미디어 데이터 스트리밍 방법에 있어서, 동일 프리젠테이션으로써 전송하고자 하는 다중의 멀티미디어 데이터를 프레임 단위로 분할하여 패킷화하여 전송하는 제 1 단계; 수신된 상기 다중의 멀티미디어 데이터 패킷으로부터 단위 프레임을 추출하여 동일 종류의 프레임에 대해 순차적으로 배열하는 제 2 단계; 및 순차적으로 배열된 다중의 멀티미디어 프레임에 대해 생성 시간을 기준으로 프리젠테이션 동기화를 수행하여 연속적으로 멀티미디어 스트림을 재생하는 제 3 단계를 포함하여 이루어진 것을 특징으로 한다.In accordance with another aspect of the present invention, there is provided a multi-media multimedia data streaming method applied to a data transmission / reception system. step; Extracting unit frames from the received multiple multimedia data packets and sequentially arranging frames of the same type; And a third step of sequentially playing the multimedia stream by synchronizing the presentation on the basis of the generation time of the plurality of multimedia frames sequentially arranged.
또한, 본 발명은, 대용량 프로세서를 구비한 데이터 수신 시스템에, 소정의 크기로 분할하여 전송된 다중 데이터를 수신하여 그 생성 시간을 비교하는 제 1 기능; 상기 제 1 기능의 비교 결과, 같은 생성 시간을 갖는 다중 데이터가 아니면 저장 수단에서 같은 생성 시간의 데이터를 찾아 동기화를 구현하고, 생성 시간이 다른 데이터는 상기 저장 수단에 임시로 저장하는 제 2 기능; 및 상기 제 1 기능의 비교 결과, 같은 생성 시간을 갖는 다중 데이터이면 상기 다중 데이터에 대해 동기화를 구현하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a data receiving system having a large capacity processor, comprising: a first function of receiving multiple data transmitted by dividing it into a predetermined size and comparing the generation time thereof; A second function of locating data having the same generation time in the storage means if the data are not multiple data having the same generation time as a result of the comparison of the first function, and temporarily storing data having different generation times in the storage means temporarily; And a computer-readable recording medium having recorded thereon a program for realizing a third function for implementing synchronization for the multiple data if the first function compares the multiple data with the same generation time.
또한, 본 발명은, 대용량 프로세서를 구비한 데이터 송수신 시스템에, 동일 프리젠테이션으로써 전송하고자 하는 다중의 멀티미디어 데이터를 프레임 단위로 분할하여 패킷화하여 전송하는 제 1 기능; 수신된 상기 다중의 멀티미디어 데이터 패킷으로부터 단위 프레임을 추출하여 동일 종류의 프레임에 대해 순차적으로 배열하는 제 2 기능; 및 순차적으로 배열된 다중의 멀티미디어 프레임에 대해 생성 시간을 기준으로 프리젠테이션 동기화를 수행하여 연속적으로 멀티미디어 스트림을 재생하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a data transmission / reception system including a large capacity processor, comprising: a first function of dividing a plurality of multimedia data to be transmitted by the same presentation into frame units and transmitting the packetized data; A second function of extracting unit frames from the received multiple multimedia data packets and sequentially arranging frames of the same type; And a computer-readable recording medium having recorded thereon a program for realizing a third function of continuously playing a multimedia stream by synchronizing a presentation based on a generation time of a plurality of multimedia frames sequentially arranged.
본 발명은 네트워크를 통한 멀티미디어 데이터 전송에 있어서 기존의 방식인 동영상을 실시간에 전송하는 스트리밍 기법에 다중 멀티미디어 스트림 실시간전송에 꼭 필요한 프리젠테이션 동기화모듈을 추가 더 발전시킨 모델이다. 기존 발명과의 차이점을 굳이 설명하자면 기존 발명은 단지 하나의 멀티미디어 스트림을 실시간 전송할 수 있는 스트림 구조만으로 이루어져 있지 두 개이상의 다중 멀티미디어 스트림이 한 개의 프리젠테이션으로 전송되었을 때 이 들의 동기를 맞춰주는 동기화모듈이 존재하지 않는다. 또 전송시 오디오 프레임과 비디오 프레임을 한 개씩 엇갈려 전송함으로써 수신측에서 수신시 보다 개선된 스트림 구조를 전송 받을 수 있도록 하였다. 본 발명에서는 동기화 모듈의 모델과 전송기법을 사용하여 기존 발명에 확장모델로서 제시하고 이를 사용하여 두 개이상의 멀티미디어 데이터 스트림의 동기화작업을 수행한다.The present invention is a model in which the presentation synchronization module, which is necessary for real-time transmission of multiple multimedia streams, is further developed in addition to the streaming scheme for transmitting video in real time in multimedia data transmission through a network. To explain the difference from the existing invention, the existing invention consists only of a stream structure capable of transmitting a single multimedia stream in real time. A synchronization module for synchronizing their synchronization when two or more multiple multimedia streams are transmitted in one presentation. This does not exist. In addition, by transmitting the audio frame and the video frame alternately one by one, the receiver can receive an improved stream structure upon reception. In the present invention, a model of the synchronization module and a transmission technique are presented as an extension model in the existing invention, and the synchronization operation of two or more multimedia data streams is performed using the same.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
다중의 데이터 동기화 방법에 대하여는 멀티미디어 데이터 스트리밍 서비스 중 다중의 데이터 동기화 부분인 프리젠테이션 동기화 모듈의 설명과 프리젠테이션 동기화 방법에 대한 설명을 통해 설명하도록 한다.The multiple data synchronization method will be described through the description of the presentation synchronization module and the presentation synchronization method, which are multiple data synchronization parts of the multimedia data streaming service.
도 1 은 본 발명이 적용되는 멀티미디어 데이터 스트리밍 서비스 제공을 위한 데이터 송수신 시스템의 구성예시도로서, 도면에 도시된 바와 같이, 디스크(101)상에 존재하는 멀티미디어 데이터를 송신측 스트리밍 서비스 장치(102)에서 소켓(103)을 통하여 전송하면, 이를 수신측의 소켓(104)을 통해 수신측 스트리밍 서비스 장치(105)가 수신하면 연속적인 멀티미디어 스트림의 형태로 멀티미디어 데이터를 변환하여 멀티미디어 데이터 처리 장치(MDPU, 106)로 전송한다.FIG. 1 is an exemplary configuration diagram of a data transmission / reception system for providing a multimedia data streaming service to which the present invention is applied. As shown in FIG. 1, a streaming side streaming service apparatus 102 transmits multimedia data existing on a disk 101. Transmits the data through the socket 103, and when the receiving streaming service device 105 receives the received data through the socket 104 on the receiving side, the multimedia data is converted into a continuous multimedia stream to convert the multimedia data into a multimedia data processing device (MDPU, 106).
그러면, 멀티미디어 데이터 처리 장치(MDPU, 106)가 스트림 형태의 멀티미디어 데이터를 처리하여 출력한다.Then, the multimedia data processing unit (MDPU) 106 processes and outputs the multimedia data in the form of a stream.
도 2 는 본 발명이 적용되는 디스크에 저장되어 있는 멀티미디어 데이터를 단위 패킷으로 나누어 전송하는 송신측 스트리밍 서비스 장치에 관한 구성예시도이다.FIG. 2 is an exemplary configuration diagram of a transmitting-side streaming service apparatus for dividing and transmitting multimedia data stored in a disc according to the present invention into unit packets.
영상과 음성 2개의 멀티미디어 스트림을 실시간 전송할 때 두 개의 스트림을 한 개의 프리젠테이션으로 동기화하여 송신하는 송신측 스트리밍 서비스 장치(102)의 상세 모델이다.This is a detailed model of the transmission-side streaming service device 102 for transmitting two multimedia streams in real time by transmitting the two streams in one presentation.
비디오 스트림(201)에서 비디오 단위 프레임(202)으로 분할하고, 분할된 비디오 단위 프레임(202)에 비디오 단위 프레임 헤더정보(203)와 프레임 번호(204)를 덧붙여 전송 가능한 비디오 단위 패킷(205)을 생성한다. 이때, 비디오 단위 프레임 헤더정보(203)에는 해당 비디오 프레임의 정보가 담겨있고, 프레임 번호(204)에는 비디오 스트림(201)에서 비디오 단위 프레임(202)이 분할된 시점에서의 시간 정보를 프레임의 번호로 환산한 정보가 담겨있다. 생성된 비디오 단위 패킷은 송신측 소켓(103)에서 네트워크를 통해 전송된다.The video unit packet 205 is divided into a video unit frame 202 in the video stream 201, and the video unit packet 205 that can be transmitted is added to the divided video unit frame 202 by adding the video unit frame header information 203 and the frame number 204. Create In this case, the video unit frame header information 203 contains information of the corresponding video frame, and the frame number 204 includes time information at the time when the video unit frame 202 is divided in the video stream 201. Contains information converted into. The generated video unit packet is transmitted through the network in the sender socket 103.
비디오 스트림(201)에서 소켓(103)으로의 패킷 생성 과정을 통해 한개의 비디오 단위 패킷(205)이 전송 완료되면, 두 번째 멀티미디어 스트림인 오디오 스트림(211)을 오픈하여 오디오 단위 프레임(212)을 추출한다. 추출된 오디오 단위 프레임(212)에 오디오 단위 프레임 헤더정보(213)와 프레임 번호(214)를 덧붙여 오디오 단위 패킷(215)을 생성 후, 송신측 소켓(103)을 통해 네트워크로 전송한다. 이렇게 되면 두개의 멀티미디어 단위 패킷을 동기화시키면서 전송 할 수 있다.When one video unit packet 205 is transmitted through the packet generation process from the video stream 201 to the socket 103, the audio unit frame 212 is opened by opening the second multimedia stream, the audio stream 211. Extract. The audio unit packet 215 is generated by adding the audio unit frame header information 213 and the frame number 214 to the extracted audio unit frame 212, and then transmits the audio unit packet 215 to the network through the transmitting socket 103. This allows the transmission of two multimedia unit packets in synchronization.
도 3 은 본 발명이 적용되는 단위 패킷을 수신하여 스트림으로 변환하는 수신측 스트리밍 서비스 장치에 관한 구성예시도로서, 수신측 스트리밍 서비스 장치(105)에서 수신된 데이터 패킷들을 스트림화시키는 과정을 보여준다.FIG. 3 is an exemplary configuration diagram of a receiving-side streaming service apparatus for receiving and converting a unit packet to a stream according to the present invention, and showing a process of streaming data packets received by the receiving-side streaming service apparatus 105.
수신측 소켓(104)에서 첫 번째 데이터 패킷을 수신한다. 수신된 데이터 패킷이 비디오 단위 패킷(301)이면 비디오 단위 프레임 헤더정보(303)와 프레임 번호(304) 및 비디오 단위 프레임(302)으로 분리하고, 비디오 단위 프레임(302)은 스트림 동기화 모듈(305)을 통해 동기화되며, 동기화된 비디오 단위 프레임(302)은 비디오 버퍼(Video Buffer, 306)에 저장된 후, 수신된 다중 멀티미디어 데이터의 프리젠테이션 동기화를 수행하는 모듈(309)로 전송되어 비디오 단위 프레임(302)과 오디오 단위 프레임(312)을 프리젠테이션 동기화시켜 멀티미디어 처리 장치(106)로 송신한다.Receive socket 104 receives the first data packet. If the received data packet is a video unit packet 301, the video unit frame header information 303, the frame number 304, and the video unit frame 302 are separated. The video unit frame 302 is a stream synchronization module 305. The synchronized video unit frame 302 is stored in the video buffer 306 and then transmitted to the module 309 which performs presentation synchronization of the received multimedia data. ) And the audio unit frame 312 are synchronized with the presentation and transmitted to the multimedia processing device 106.
한정된 메모리의 비디오 버퍼(306)를 통해 원활하게 멀티미디어 데이터의 스트리밍 서비스를 하기 위해 두개의 흐름제어기(307, 308)를 사용하며 이 흐름제어기(307, 308)의 역할은 다음과 같다.Two flow controllers 307 and 308 are used to smoothly stream multimedia data through the video buffer 306 of the limited memory. The roles of the flow controllers 307 and 308 are as follows.
우선, 제1 흐름제어기(307)는 비디오 버퍼(306)가 모두 비디오 프레임으로 차버릴 경우 전송을 차단한다. 또한, 비디오 버퍼(306)가 비어있을 경우 제1 흐름제어기(307)에서 새로운 프레임을 요구하고, 동시에 제2 흐름제어기(308)에서는 프리젠테이션 동기화 모듈(309)로의 데이터 송신을 중단하는 흐름의 적절한 제어 역활을 한다.First, the first flow controller 307 blocks transmission when the video buffer 306 fills up with video frames. In addition, when the video buffer 306 is empty, the first flow controller 307 requests a new frame, and at the same time, the second flow controller 308 stops the flow of data to stop the data transmission to the presentation synchronization module 309. It acts as a control.
수신측 소켓(104)을 통해 수신된 데이터 패킷이 오디오 단위 패킷(311)이면 이에 대한 처리 절차도 비디오 단위 패킷(301)의 처리와 같은 방법으로 오디오 단위 프레임(312)이 오디오 버퍼(Audio Buffer, 316)에 순차적으로 전송되고, 오디오 버퍼(316)에서는 수신된 다중 멀티미디어 데이터의 프리젠테이션 동기화를 수행하는 모듈(309)로 전송되어 비디오 단위 프레임(302)과 오디오 단위 프레임(312)을 프리젠테이션 동기화시켜 멀티미디어 데이터 처리 장치(MDPU, 106)로 송신한다.If the data packet received through the receiving socket 104 is an audio unit packet 311, the audio unit frame 312 may receive an audio buffer in the same manner as the video unit packet 301. 316 is sequentially transmitted, and the audio buffer 316 is transmitted to a module 309 which performs presentation synchronization of the received multimedia data, thereby synchronizing the presentation of the video unit frame 302 and the audio unit frame 312 with each other. To the multimedia data processing unit (MDPU) 106.
도 4 는 본 발명이 적용되는 수신된 멀티미디어 단위 프레임을 순차적으로 배열하기 위한 스트림 동기화 모듈에 대한 상세 구성예시도이다.4 is a detailed configuration example of a stream synchronization module for sequentially arranging received multimedia unit frames to which the present invention is applied.
도 4 의 스트림 동기화 모듈은 도 3 의 프레임 수신 과정 중에서 동일 종류의 멀티미디어 단위 프레임을 동기화 시켜주는 스트림 동기화 모듈(305, 315)에 대한 상세한 구성 예시를 보여주고 있다.The stream synchronization module of FIG. 4 shows a detailed configuration example of the stream synchronization modules 305 and 315 for synchronizing multimedia unit frames of the same type during the frame reception process of FIG. 3.
스트림 동기화 모듈은, 멀티미디어 데이터 단위 패킷에서 분리된 프레임 번호(401)를 통해, 현재의 멀티미디어 단위 프레임이 이전에 수신된 멀티미디어 단위 프레임(402)의 다음 번에 생긴 것이면 바로 수신 스트림 버퍼(403)로 멀티미디어 단위 프레임을 전송하고, 수신된 프레임의 프레임 번호(401)가 이전에 수신된 멀티미디어 단위 프레임(402)의 다음 번에 생성된 멀티미디어 단위 프레임이 아니면 임시 저장버퍼(404)에 저장하였다가, 이전에 수신된 멀티미디어 단위 프레임(403)의 다음 번에 생성된 프레임이 수신된 후에 수신 스트림 버퍼(403)로 프레임을 전송하는 기능을 수행한다.The stream synchronization module, via the frame number 401 separated in the multimedia data unit packet, directly to the reception stream buffer 403 if the current multimedia unit frame is the next one after the previously received multimedia unit frame 402. The multimedia unit frame is transmitted, and if the frame number 401 of the received frame is not the multimedia unit frame generated next to the previously received multimedia unit frame 402, the multimedia unit frame is stored in the temporary storage buffer 404. The frame is transmitted to the receiving stream buffer 403 after the frame generated next to the received multimedia unit frame 403 is received.
여기서, 수신 스트림 버퍼(403)는 도 3 에서의 비디오 버퍼(306)나 오디오 버퍼(316)에 해당한다. 프레임 번호(401)는 멀티미디어 데이터 스트림에서 멀티미디어 데이터 단위 프레임이 분할된 시점에서의 시간 정보를 프레임의 번호로 환산한 것이다.Here, the reception stream buffer 403 corresponds to the video buffer 306 or the audio buffer 316 in FIG. The frame number 401 converts time information when a multimedia data unit frame is divided into a frame number in a multimedia data stream.
도 5 는 본 발명이 적용되는 수신된 다중 멀티미디어 스트림의 프리젠테이션 동기화를 수행하는 모듈에 대한 상세 구성예시도로서, 프리젠테이션 동기화 모듈(309)을 통해 두개 이상의 멀티미디어 데이터 스트림을 서로 동기화시켜 일정한 흐름에 따라 제공될 수 있도록 한다.5 is a detailed configuration example of a module for performing a presentation synchronization of a received multi-media stream to which the present invention is applied. The presentation synchronization module 309 synchronizes two or more multimedia data streams to each other in a specific flow. To be provided accordingly.
비디오 버퍼(306)와 오디오 버퍼(316)로부터 각각의 비디오 프레임과 오디오 프레임을 받아들인 후, 프레임 비교모듈(501)에서 두 프레임의 시간을 기준으로 하는 프레임 번호를 비교하여, 같으면 프리젠테이션 동기화 버퍼(502)로 동기화된 프레임을 전송하고, 만약 값이 같지 않으면 프리젠테이션 임시버퍼(503)내에 저장된 프레임들 중에 같은 시간에 만들어진 것을 나타내는 프레임 번호를 가지는 프레임이 있는지를 검색한다. 만약 프리젠테이션 임시버퍼(503)에도 같은 생성 시간을 가지는 프레임이 존재하지 않으면 현재 프레임을 임시버퍼(503)에 저장하고 비디오 버퍼(306)와 오디오 버퍼(316)로부터 각각의 비디오 프레임과 오디오 프레임을 받아들여 프레임 번호가 같은지를 확인하는 과정부터 다시 수행한다.After receiving each video frame and audio frame from the video buffer 306 and the audio buffer 316, the frame comparison module 501 compares the frame numbers based on the time of the two frames, and if it is the same, the presentation synchronization buffer The frame is sent to 502, and if the value is not the same, it is searched for a frame having a frame number indicating that the frames stored in the presentation temporary buffer 503 are created at the same time. If there is no frame having the same creation time in the presentation temporary buffer 503, the current frame is stored in the temporary buffer 503, and each video frame and audio frame is removed from the video buffer 306 and the audio buffer 316. Accept again to check if the frame numbers are the same.
프리젠테이션 임시버퍼(503)에 같은 프레임번호를 가지는 프레임이 존재한다면 이 프레임은 프리젠테이션 동기화 버퍼(502)로 전송된다.If there is a frame with the same frame number in the presentation temporary buffer 503, this frame is transmitted to the presentation synchronization buffer 502.
일단 프리젠테이션 동기화 버퍼(502)로 전송된 프레임들은 프리젠테이션 동기화가 되어 있기 때문에 바로 멀티미디어 데이터 처리 장치(MDPU, 106)로 전송시켜 적절한 멀티미디어 처리를 수행하면 된다.Since the frames once transmitted to the presentation synchronization buffer 502 are synchronized with the presentation, the frames may be transferred directly to the multimedia data processing unit MDPU 106 to perform appropriate multimedia processing.
상기한 실시예에서는 멀티미디어 데이터인 비디오 데이터와 오디오 데이터에 한정하여 설명하였는데, 이는 하나의 프리젠테이션으로써 한 묶음인 다중의 데이터에 대해서도 적용할 수 있다.In the above-described embodiment, the present invention has been limited to the video data and the audio data, which are multimedia data. The present invention can also be applied to a plurality of pieces of data in one presentation.
도 6 은 본 발명에 따른 다중 멀티미디어 데이터 스트리밍 방법에 대한 일실시예 흐름도이다.6 is a flowchart illustrating an embodiment of a multi-media data streaming method according to the present invention.
디스크(101)에 존재하는 하나의 프리젠테이션인 다중 멀티미디어 데이터에 대해 송신측 스트리밍 서비스 장치(102)에서 패킷으로 만들어서 송신측 소켓(103)을 통해 전송하고(601), 수신측 소켓(104)에서는 송신측 소켓(103)에서 전송된 멀티미디어 데이터를 수신한다(602).The multimedia streaming data, which is one presentation present in the disk 101, is made into a packet by the transmitting-side streaming service apparatus 102 and transmitted through the transmitting-side socket 103 (601). The multimedia data transmitted from the transmitting socket 103 is received (602).
수신된 멀티미디어 데이터 패킷 중 동일한 종류의 멀티미디어 데이터에 대해 순차적으로 배열한 후에(603), 다중의 멀티미디어 데이터에 대해 하나의 프리젠테이션으로 동기화하여(604) 연속적인 멀티미디어 스트림 형태로 멀티미디어 데이터 처리 장치(MDPU, 106)로 전송하여 하나의 프리젠테이션인 멀티미디어 데이터를 재생한다(605).After sequentially arranging the same kind of multimedia data among the received multimedia data packets (603) and synchronizing the multiple multimedia data into one presentation (604), the multimedia data processing apparatus (MDPU) in the form of a continuous multimedia stream And transmits the multimedia data as one presentation (605).
도 7 은 본 발명에 따른 다중 멀티미디어 데이터를 패킷화하여 전송하는 과정에 대한 일실시예 상세흐름도이다.7 is a detailed flowchart illustrating a process of packetizing and transmitting multiple multimedia data according to the present invention.
본 실시예에서는 비디오 스트림과 오디오 스트림이라는 두 개의 다중 멀티미디어 데이터 스트림에 대해 패킷화하여 전송하는 과정을 설명하고 있다.This embodiment describes a process of packetizing and transmitting two multiple multimedia data streams, a video stream and an audio stream.
먼저, 송신측 스트리밍 서비스 장치에서 일정한 시간에 따라 비디오 스트림을 프레임 단위로 분할한 후에(701), 그 분할된 비디오 단위 프레임에 프레임 헤더정보와 프레임 번호를 첨부하여(702) 비디오 단위 패킷을 생성한다. 또한 일정한 시간에 따라 오디오 스트림을 프레임 단위로 분할한 후에(703), 그 분할된 오디오 단위 프레임에 프레임 헤더 정보와 프레임 번호를 첨부하여(704), 오디오 단위 패킷을 생성한다.First, the video streaming service apparatus divides the video stream into frame units according to a predetermined time (701), and then attaches frame header information and a frame number to the divided video unit frame (702) to generate a video unit packet. . After the audio stream is divided in units of frames according to a predetermined time (703), frame header information and frame numbers are appended to the divided audio unit frames (704) to generate an audio unit packet.
송신측 소켓(Socket)을 통해 하나의 비디오 단위 패킷과 오디오 단위 패킷을 네트워크로 전송하고(705, 706), 전송해야할 비디오와 오디오의 다중 멀티미디어 스트림이 남아 있는지를 확인한다(707).One video unit packet and one audio unit packet are transmitted to the network through the transmitting socket (705, 706), and it is checked whether multiple multimedia streams of video and audio to be transmitted remain (707).
전송해야할 다중 멀티미디어 스트림이 남아있는지를 확인한 결과, 전송해야할 다중 멀티미디어 스트림이 있으면, 일정시간에 따라 비디오 스트림을 프레임 단위로 분할하는 과정(701)부터 반복하여 수행한다.As a result of checking whether there are multiple multimedia streams to be transmitted, if there are multiple multimedia streams to be transmitted, the process is repeatedly performed from step 701 of dividing the video stream into frame units according to a predetermined time.
전송해야할 다중 멀티미디어 스트림이 남아있는지를 확인한 결과, 전송해야할 다중 멀티미디어 스트림이 없으면, 다중 멀티미디어 데이터를 패킷화하여 전송하는 과정을 종료한다.As a result of checking whether there are multiple multimedia streams to be transmitted, if there are no multiple multimedia streams to be transmitted, the process of packetizing and transmitting the multimedia data is terminated.
도 8a 및 도 8b 는 본 발명에 따른 동일종류의 멀티미디어 데이터에 대해 순차적으로 배열하는 과정에 대한 일실시예 상세흐름도이다.8A and 8B are detailed flowcharts illustrating an embodiment of sequentially arranging multimedia data of the same type according to the present invention.
수신측 소켓(104)에서 수신된 패킷이 비디오 패킷인지를 확인한다(801).In operation 801, it is checked whether the packet received at the receiving socket 104 is a video packet.
비디오 패킷인지를 확인한 결과, 비디오 단위 패킷이면 비디오 단위 프레임 헤더정보, 프레임 번호 및 비디오 단위 프레임으로 비디오 단위 패킷을 분리하여(802), 비디오 스트림 동기화 모듈로 전송한다(803).As a result of checking whether the video packet is a video packet, the video unit packet is divided into video unit frame header information, frame number, and video unit frame (802), and transmitted to the video stream synchronization module (803).
비디오 스트림 동기화 모듈에 수신된 비디오 프레임이 이전에 수신된 비디오 프레임의 다음 번에 생성된 프레임인지를 확인한다(804). 이는 비디오 단위 프레임이 스트림에서 분할된 시점에서의 시간 정보를 환산한 프레임 번호를 통해 확인할 수 있다.It is checked whether the video frame received by the video stream synchronization module is the next generated frame of the previously received video frame (804). This may be confirmed through a frame number in which time information at the time point at which the video unit frame is divided in the stream is converted.
이전에 수신된 비디오 프레임의 다음 번에 생성된 프레임인지를 확인한 결과, 다음 번에 생성된 프레임이면 비디오 프레임이 저장되는 비디오 버퍼가 완전히 채워져 있는지를 검사한다(805).As a result of checking whether the frame is generated next to the previously received video frame, the next frame is checked whether the video buffer in which the video frame is stored is completely filled (805).
비디오 버퍼가 완전히 채워져 있는지를 검사한 결과, 비디오 버퍼가 완전히 채워져 있으면 일정 시간 대기 후 비디오 버퍼가 완전히 채워져 있는지를 검사하는 과정(805)부터 반복 수행한다.As a result of checking whether the video buffer is completely filled, if the video buffer is completely filled, the process is repeatedly performed after a process of checking whether the video buffer is completely filled after waiting for a predetermined time.
비디오 버퍼가 완전히 채워져 있는지를 검사한 결과, 비디오 버퍼가 완전히 채워져 있지 않아 비디오 프레임을 저장할 수 있으면 비디오 버퍼로 현재 처리 중인 비디오 프레임을 전송하여 저장토록 하고(806), 수신측 소켓(104)에 수신된 패킷이 더 있는지를 검사한다(816). 검사 결과, 수신측 소켓(104)에 수신된 패킷이 없으면 동일 종류의 멀티미디어 데이터에 대해 순차적으로 배열하는 과정(603)을 종료하고, 수신된 패킷이 더 있으면, 수신된 패킷이 비디오 패킷인지를 확인하는 과정(801)부터 반복 수행한다.As a result of checking that the video buffer is completely filled, if the video buffer is not completely filled, and the video frame can be stored, the video buffer is transmitted to the video buffer for storage (806) and received at the receiving socket (104). Check if there are more packets dropped (816). As a result of the check, if there is no packet received in the receiving socket 104, the process of sequentially arranging the same type of multimedia data 603 is terminated. If there are more packets received, it is checked whether the received packet is a video packet. The process is repeated from step 801.
이전에 수신된 비디오 프레임의 다음 번에 생성된 프레임인지를 확인한 결과, 다음 번에 생성된 프레임이 아니면 임시 저장공간에 처리중인 비디오 프레임을 저장하고(807), 임시 저장공간에 이전에 수신된 비디오 프레임의 다음 번 프레임이 있는지를 판단한다(808).As a result of checking whether the frame is generated next to a previously received video frame, if the next frame is not generated, the video frame being processed is stored in temporary storage (807), and the previously received video is stored in temporary storage. It is determined whether there is a next frame of the frame (808).
이전에 수신된 비디오 프레임의 다음 번 프레임이 있는지를 판단한 결과, 임시 저장공간에 다음 번 프레임이 있으면 비디오 프레임이 저장되는 비디오 버퍼가 완전히 채워져 있는지를 검사하는 과정(805)부터 반복 수행한다.As a result of determining whether there is a next frame of the previously received video frame, if there is a next frame in the temporary storage space, the process is repeated from step 805 to check whether the video buffer in which the video frame is stored is completely filled.
이전에 수신된 비디오 프레임의 다음 번 프레임이 있는지를 판단한 결과, 임시 저장공간에 다음 번 프레임이 없으면 수신측 소켓(104)에 수신된 패킷이 더 있는지를 검사한다(816). 검사 결과, 수신측 소켓에 수신된 패킷이 없으면 동일 종류의 멀티미디어 데이터에 대해 순차적으로 배열하는 과정(603)을 종료하고, 검사 결과, 수신측 소켓에 수신된 패킷이 더 있으면, 수신된 패킷이 비디오 패킷이지를 확인하는 과정(801)부터 반복 수행한다.As a result of determining whether there is a next frame of a previously received video frame, if there is no next frame in the temporary storage space, it is checked whether there are more packets received in the receiving socket 104 (816). As a result of the inspection, if there is no packet received in the receiving socket, the process of sequentially arranging multimedia data of the same type is terminated (603). If the result of the inspection is that there are more packets received in the receiving socket, the received packet is a video. From step 801 to check whether the packet is repeated.
수신측 소켓(104)에서 수신된 패킷이 비디오 패킷인지를 확인한 결과, 비디오 패킷이 아니라 오디오 패킷이면, 오디오 단위 프레임 헤더정보, 프레임 번호 및 오디오 단위 프레임으로 오디오 단위 패킷을 분리하여(809), 오디오 스트림 동기화 모듈로 전송한다(810).As a result of checking whether the received packet is the video packet, the receiving socket 104 separates the audio unit packet into audio unit frame header information, frame number, and audio unit frame (809). In step 810, the data is transmitted to a stream synchronization module.
오디오 스트림 동기화 모듈에 수신된 오디오 프레임이 이전에 수신된 오디오 프레임의 다음 번에 생성된 프레임인지를 확인한다(811). 이는 오디오 단위 프레임이 스트림에서 분할된 시점에서의 시간 정보를 환산한 프레임 번호를 통해 확인할 수 있다.It is checked whether the audio frame received by the audio stream synchronization module is the next generated frame of the previously received audio frame (811). This can be confirmed through a frame number in which time information at the time when the audio unit frame is divided in the stream is converted.
이전에 수신된 오디오 프레임의 다음 번에 생성된 프레임인지를 확인한 결과, 다음 번에 생성된 프레임이면 오디오 프레임이 저장되는 오디오 버퍼가 완전히 채워져 있는지를 검사한다(812).As a result of checking whether the frame is generated next to the previously received audio frame, if the next frame is generated, it is checked whether the audio buffer in which the audio frame is stored is completely filled (812).
오디오 버퍼가 완전히 채워져 있는지를 검사한 결과, 오디오 버퍼가 완전히 채워져 있으면 일정 시간 대기 후 오디오 버퍼가 완전히 채워져 있는지를 검사하는 과정(812)부터 반복 수행한다.As a result of checking whether the audio buffer is completely filled, if the audio buffer is completely filled, the process is repeatedly performed after checking whether the audio buffer is completely filled after waiting for a predetermined time.
오디오 버퍼가 완전히 채워져 있는지를 검사한 결과, 오디오 버퍼가 완전히 채워져 있지 않아 오디오 프레임을 저장할 수 있으면 오디오 버퍼로 현재 처리 중인 오디오 프레임을 전송하여 저장토록 하고(813), 수신측 소켓(104)에 수신된 패킷이 더 있는지를 검사한다(816). 검사 결과, 수신측 소켓에 수신된 패킷이 없으면 동일 종류의 멀티미디어 데이터에 대해 순차적으로 배열하는 과정(603)을 종료하고, 검사 결과, 수신측 소켓에 수신된 패킷이 더 있으면, 수신된 패킷이 비디오 패킷인지를 확인하는 과정(801)부터 반복 수행한다.As a result of checking whether the audio buffer is completely filled, if the audio buffer is not completely filled and an audio frame can be stored, the audio buffer currently being processed is transmitted to the audio buffer for storage (813), and received at the receiving socket 104. Check if there are more packets dropped (816). As a result of the inspection, if there is no packet received in the receiving socket, the process of sequentially arranging multimedia data of the same type is terminated (603). If the result of the inspection is that there are more packets received in the receiving socket, the received packet is a video. From step 801 to check whether the packet is repeated.
이전에 수신된 오디오 프레임의 다음 번에 생성된 프레임인지를 확인한 결과, 다음 번에 생성된 프레임이 아니면 임시 저장공간에 처리중인 오디오 프레임을 저장하고(814), 임시 저장공간에 이전에 수신된 오디오 프레임의 다음 번 프레임이 있는지를 판단한다(815).As a result of checking whether the frame is generated next to the previously received audio frame, if it is not the next generated frame, the audio frame being processed is stored in the temporary storage space (814), and the previously received audio is stored in the temporary storage space. It is determined whether there is a next frame of the frame (815).
이전에 수신된 오디오 프레임의 다음 번 프레임이 있는지를 판단한 결과, 임시 저장공간에 다음 번 프레임이 있으면 오디오 프레임이 저장되는 오디오 버퍼가 완전히 채워져 있는지를 검사하는 과정(812)부터 반복 수행한다.As a result of determining whether there is a next frame of the previously received audio frame, if there is a next frame in the temporary storage space, the process is repeated from step 812 to check whether the audio buffer in which the audio frame is stored is completely filled.
이전에 수신된 오디오 프레임의 다음 번 프레임이 있는지를 판단한 결과, 임시 저장공간에 다음 번 프레임이 없으면 수신측 소켓(104)에 수신된 패킷이 더 있는지를 검사한다(816). 검사 결과, 수신측 소켓에 수신된 패킷이 없으면 동일 종류의 멀티미디어 데이터에 대해 순차적으로 배열하는 과정(603)을 종료하고, 검사 결과, 수신측 소켓에 수신된 패킷이 더 있으면, 수신된 패킷이 비디오 패킷인지를 확인하는 과정(801)부터 반복 수행한다.As a result of determining whether there is a next frame of the previously received audio frame, if there is no next frame in the temporary storage space, it is checked whether there are more packets received in the receiving socket 104 (816). As a result of the inspection, if there is no packet received in the receiving socket, the process of sequentially arranging multimedia data of the same type is terminated (603). If the result of the inspection is that there are more packets received in the receiving socket, the received packet is a video. From step 801 to check whether the packet is repeated.
이와 같은 과정을 거쳐 수신측 소켓(104)에서 수신된 멀티미디어 데이터 중 동일한 멀티미디어 데이터에 대해서 순차적으로 배열하게 된다.Through the above process, the same multimedia data among the multimedia data received from the receiving socket 104 is sequentially arranged.
도 9 는 본 발명에 따른 다중의 멀티미디어 데이터에 대해 프리젠테이션 동기화를 수행하는 과정에 대한 일실시예 상세흐름도이다.9 is a detailed flowchart illustrating an embodiment of performing a presentation synchronization on a plurality of multimedia data according to the present invention.
비디오 버퍼와 오디오 버퍼로부터 각각 비디오 프레임과 오디오 프레임을 수신하여 수신된 비디오 프레임과 오디오 프레임이 같은 시간에 생성된 것인지를 확인하기 위해 프레임 비교 모듈에서 프레임 번호를 비교한다(901).In operation 901, the frame comparison module compares the frame number to receive the video frame and the audio frame from the video buffer and the audio buffer to determine whether the received video frame and the audio frame are generated at the same time.
프레임 번호를 비교한 결과, 생성시간이 같으면 프리젠테이션 동기화 버퍼로 비디오 프레임과 오디오 프레임을 전송하고(902), 수신된 프레임이 더 있는지를 검사한다(905).As a result of comparing the frame numbers, if the generation time is the same, the video frame and the audio frame are transmitted to the presentation synchronization buffer (902), and it is checked whether there are more frames received (905).
프레임 번호를 비교한 결과, 비디오 버퍼와 오디오 버퍼로부터 받아들인 비디오 프레임과 오디오 프레임이 같은 생성 시간을 갖지 않으면, 스트림 임시버퍼 내에 저장된 프레임들 중에 같은 생성 시간을 갖는 프레임이 있는지를 검사한다(903).As a result of comparing the frame numbers, if the video frame and the audio frame received from the video buffer and the audio buffer do not have the same generation time, it is checked whether there is a frame having the same generation time among the frames stored in the stream temporary buffer (903). .
프리젠테이션 임시버퍼에서 같은 생성 시간을 갖는 프레임이 있는지를 검사한 결과, 있으면 같은 생성 시간의 비디오 프레임과 오디오 프레임을 프리젠테이션 동기화 버퍼로 전송한다(902). 이때, 남은 비디오 프레임이나 오디오 프레임은 프리젠테이션 임시버퍼에 저장하여 같은 생성시간의 프레임이 들어오기를 기다린다.As a result of checking whether there is a frame having the same generation time in the presentation temporary buffer, the video frame and the audio frame having the same generation time are transmitted to the presentation synchronization buffer (902). At this time, the remaining video frame or audio frame is stored in the presentation temporary buffer to wait for the frame of the same generation time.
프리젠테이션 임시버퍼에서 같은 생성 시간을 갖는 프레임이 있는지를 검사한 결과, 없으면 비디오 프레임과 오디오 프레임을 프리젠테이션 임시버퍼에 저장하여 같은 생성시간의 프레임이 들어오기를 기다린다(904).As a result of checking whether there is a frame having the same generation time in the presentation temporary buffer, if not, the video frame and the audio frame are stored in the presentation temporary buffer, and the frame having the same generation time is waited for (904).
프레임을 프리젠테이션 임시 버퍼에 저장하거나 프리젠테이션 동기화 버퍼로 전송한 후에는, 수신된 프레임이 더 있는지를 검사한다(905).After storing the frame in the presentation temporary buffer or transferring it to the presentation synchronization buffer, it is checked if there are more frames received (905).
수신된 프레임이 더 있는지를 검사한 결과, 더 있으면 수신된 비디오 프레임과 오디오 프레임이 같은 시간에 생성된 것인지를 확인하기 위해 프레임 비교 모듈에서 프레임 번호를 비교하는 과정(901)부터 반복 수행한다.As a result of checking whether there are more frames received, the frame comparison module repeats the process of comparing frame numbers to determine whether the received video frame and the audio frame are generated at the same time.
수신된 프레임이 더 있는지를 검사한 결과, 없으면 다중의 멀티미디어 데이터에 대해 프리젠테이션 동기화를 수행하는 과정(604)을 종료한다.If it is determined whether there are more frames received, the process ends 604 of performing a presentation synchronization on the multi-media data.
프리젠테이션 임시버퍼에 멀티미디어 프레임을 저장하는 경우에는 비디오 프레임과 오디오 프레임 각각은 시간 순서에 따라 순차적으로 배열된 것이므로, 프리젠테이션 임시버퍼에서도 들어온 순서대로 순차적으로 관리하도록 하여 다중 멀티미디어 동기화가 수월하고 빠르게 진행되도록 한다.In case of storing multimedia frames in the presentation temporary buffer, video frames and audio frames are arranged in sequential order, so that the multimedia buffers can be easily and quickly managed by sequentially managing the presentation temporary buffer. Be sure to
이렇게 비디오 프레임과 오디오 프레임이 생성 시간을 동기화하여 프리젠테이션 동기화 버퍼로 전송되면, 프리젠테이션 동기화 버퍼에서는 멀티미디어 데이터 처리 장치(106)로 전송하여 적절한 멀티미디어 처리를 수행하게 된다.When the video frame and the audio frame are synchronized with the generation time and transmitted to the presentation synchronization buffer, the presentation synchronization buffer is transmitted to the multimedia data processing device 106 to perform appropriate multimedia processing.
이와 같이 함으로써, 두 개이상의 다중 멀티미디어 스트림이 한 개의 프리젠테이션으로 전송되었을 때, 다중 멀티미디어 스트림의 동기를 맞춰줄 수 있다.In this way, when two or more multiple multimedia streams are transmitted in one presentation, synchronization of multiple multimedia streams can be achieved.
상기한 실시예는 다중 멀티미디어 스트림 뿐만 아니라 다중 데이터의 동기화에서 행해질 수 있다.The above embodiment can be done in the synchronization of multiple data as well as multiple multimedia streams.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes can be made in the art without departing from the technical spirit of the present invention. It will be apparent to those of ordinary knowledge.
상기한 바와 같은 본 발명은, 멀티미디어 데이터 스트리밍 서비스 제공시에 다중의 멀티미디어 데이터를 동기화함으로써 여러 개의 멀티미디어 데이터를 동시에 전송할 수 있으며, 또한 동시에 여러 멀티미디어 데이터를 전송하면서 서로 다른 데이터간에 간섭을 일으키지 않고 멀티미디어 스트리밍 서비스를 제공할 수 있는 효과가 있다.As described above, the present invention can simultaneously transmit a plurality of multimedia data by synchronizing a plurality of multimedia data when providing a multimedia data streaming service, and at the same time transmitting multimedia data without causing interference between different data while transmitting multiple multimedia data at the same time. There is an effect that can provide a service.
또한, 본 발명은, 네트워크를 통한 멀티미디어 데이터 전송에 있어서 기존의 방식인 동영상을 실시간에 전송하는 스트리밍 기법에 다중 멀티미디어 스트림 실시간 전송에 꼭 필요한 프리젠테이션 동기화모듈을 추가 더 발전시킴으로써, 두 개이상의 다중 멀티미디어 스트림이 한 개의 프리젠테이션으로 전송되었을 때 이 들의 동기를 맞춰줄 수 있으며, 또 전송시 오디오 프레임과 비디오 프레임을 한 개씩 엇갈려 전송함으로써 수신측에서 수신할 때 보다 개선된 스트림 구조를 전송받을 수 있도록 하는 효과가 있다.In addition, the present invention, by further developing a presentation synchronization module necessary for real-time transmission of the multi-media stream to the streaming scheme for transmitting the video in real time in the multimedia data transmission over the network, two or more multi-media When the streams are transmitted in one presentation, they can be synchronized and the audio and video frames are alternately transmitted one by one so that the receiver can receive an improved stream structure. It works.
또한, 본 발명은, 수신된 다중 데이터에 대해 동기화를 수행함으로써, 여러 종류가 한꺼번에 서비스되는 멀티미디어 서비스에 효과적으로 이용될 수 있을 뿐만 아니라 동일 종류의 다중 데이터의 전송에 있어서도 동기화가 요구되는 경우에 이를 적용할 수 있는 효과가 있다.In addition, the present invention, by performing the synchronization on the received multiple data, not only can be effectively used in the multimedia service that several types are serviced at the same time, but also applies when the synchronization is required in the transmission of the same type of multiple data It can work.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990033796A KR100315310B1 (en) | 1999-08-17 | 1999-08-17 | Multiple data synchronizing method and multiple multimedia data streaming method using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990033796A KR100315310B1 (en) | 1999-08-17 | 1999-08-17 | Multiple data synchronizing method and multiple multimedia data streaming method using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010018003A true KR20010018003A (en) | 2001-03-05 |
KR100315310B1 KR100315310B1 (en) | 2001-11-26 |
Family
ID=19607421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990033796A KR100315310B1 (en) | 1999-08-17 | 1999-08-17 | Multiple data synchronizing method and multiple multimedia data streaming method using the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100315310B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020054276A (en) * | 2002-05-03 | 2002-07-06 | 변진우 | Method for providing mobile multimedia communication with multimedia streaming format |
KR100478584B1 (en) * | 2002-02-25 | 2005-03-28 | 삼성에스디에스 주식회사 | The duplicate contents transmission method |
KR101122860B1 (en) * | 2003-06-25 | 2012-04-19 | 마이크로소프트 코포레이션 | Media foundation media processor |
KR101304393B1 (en) * | 2010-09-06 | 2013-09-05 | 현택영 | User data management server and operating method thereof, user terminal and recording medium |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220109944A (en) * | 2021-01-29 | 2022-08-05 | 삼성전자주식회사 | Electronic device for synchronizing time of received data records and method thereof |
-
1999
- 1999-08-17 KR KR1019990033796A patent/KR100315310B1/en not_active IP Right Cessation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100478584B1 (en) * | 2002-02-25 | 2005-03-28 | 삼성에스디에스 주식회사 | The duplicate contents transmission method |
KR20020054276A (en) * | 2002-05-03 | 2002-07-06 | 변진우 | Method for providing mobile multimedia communication with multimedia streaming format |
KR101122860B1 (en) * | 2003-06-25 | 2012-04-19 | 마이크로소프트 코포레이션 | Media foundation media processor |
KR101304393B1 (en) * | 2010-09-06 | 2013-09-05 | 현택영 | User data management server and operating method thereof, user terminal and recording medium |
Also Published As
Publication number | Publication date |
---|---|
KR100315310B1 (en) | 2001-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8615602B2 (en) | Method and device for recording or playing back a data stream | |
US9270723B2 (en) | Communication method and apparatus using hypertext transfer protocol | |
US6801544B1 (en) | Method of converting a packetized stream of information signals into a stream of information signals with time stamps and vice versa | |
US8397272B2 (en) | Multi-stream digital display interface | |
WO2012173389A2 (en) | Method and apparatus for transmitting/receiving media contents in multimedia system | |
JP2009512280A (en) | RTP egress streaming apparatus and method using complementary instruction file | |
CA2446513A1 (en) | Communication protocol for controlling transfer of temporal data over a bus between devices in synchronization with a periodic reference signal | |
US6088366A (en) | Device and method for converting a data transfer rate in communication of digital audio and video data | |
JP2003338830A (en) | Media transmitting method, media receiving method, media transmitter and media receiver | |
CN105611395B (en) | A kind of method and system that MP4 format video plays online | |
MXPA06001691A (en) | Method for performing data transport over a serial bus using internet protocol and apparatus for use in the method. | |
WO2009157713A2 (en) | Image processing method and apparatus | |
JP2006311508A (en) | Data transmission system, and transmission side apparatus and reception side apparatus thereof | |
KR100315310B1 (en) | Multiple data synchronizing method and multiple multimedia data streaming method using the same | |
KR100298174B1 (en) | multimedia data streaming system method on network environment | |
US7668091B2 (en) | Program, storage medium, information transmission apparatus, and information transmission method | |
US7917642B2 (en) | Isochronous audio network software interface | |
WO2018093051A1 (en) | Method for providing streaming service while converting file format in real time | |
KR20090049955A (en) | Method and apparatus for transmitting and receiving data | |
US7720821B1 (en) | Method of and apparatus for writing and reading time sensitive data within a storage device | |
CN105959742A (en) | Video transmission control method and device | |
KR20100062864A (en) | Communication method and device with security function and recording medium for performing the method | |
JPH10313448A (en) | Moving image transmitter and receiver | |
KR100636107B1 (en) | Apparatus for realtime data processing and method thereof | |
KR20080024310A (en) | Packetizer, depacketizer, and play time processing method in a wireless network |
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: 20121101 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20131101 Year of fee payment: 13 |
|
LAPS | Lapse due to unpaid annual fee |