KR101579283B1 - Method, server and computer-readable storage medium for inserting substitutional advertisement into media file - Google Patents

Method, server and computer-readable storage medium for inserting substitutional advertisement into media file Download PDF

Info

Publication number
KR101579283B1
KR101579283B1 KR1020140077585A KR20140077585A KR101579283B1 KR 101579283 B1 KR101579283 B1 KR 101579283B1 KR 1020140077585 A KR1020140077585 A KR 1020140077585A KR 20140077585 A KR20140077585 A KR 20140077585A KR 101579283 B1 KR101579283 B1 KR 101579283B1
Authority
KR
South Korea
Prior art keywords
advertisement
frame
media file
file
media
Prior art date
Application number
KR1020140077585A
Other languages
Korean (ko)
Inventor
박정진
Original Assignee
주식회사 더블유코퍼레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 더블유코퍼레이션 filed Critical 주식회사 더블유코퍼레이션
Priority to KR1020140077585A priority Critical patent/KR101579283B1/en
Application granted granted Critical
Publication of KR101579283B1 publication Critical patent/KR101579283B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The present invention relates to an exemplary media relay server which may comprise: a file receiving unit for receiving a media file from a media file providing server; a substitutional advertisement storage unit for storing a substitutional advertisement; a buffer unit for caching at least one frame of the substitutional advertisement; a substitutional advertisement coupling unit for coupling the substitutional advertisement to the received media file; and a file transmitting unit for transmitting the media file, in which the substitutional advertisement is coupled, to at least one user device.

Description

미디어 파일에 대체 광고를 삽입하기 위한 방법, 이를 수행하기 위한 서버 및 컴퓨터 판독가능 저장 매체{METHOD, SERVER AND COMPUTER-READABLE STORAGE MEDIUM FOR INSERTING SUBSTITUTIONAL ADVERTISEMENT INTO MEDIA FILE}[0001] METHOD, SERVER AND COMPUTER READABLE STORAGE MEDIUM FOR INSERTION SUBSTITUTIONAL ADVERTISEMENT INTO MEDIA FILE [0002] BACKGROUND OF THE INVENTION [0003]

본 개시는 스트리밍 동영상과 같은 미디어 파일의 광고 삽입 지점에 대체 광고를 삽입하는 기술에 관한 것이다.This disclosure relates to techniques for inserting replacement ads at the insertion point of a media file such as a streaming video.

여기에서 달리 언급하지 않으면, 본 섹션에서 기술되는 내용은 본 출원에서의 청구항의 선행 기술이 아니며 본 섹션에 기재된 것 만으로 선행 기술로서 인정되는 것이 아니다.Unless otherwise stated herein, the description in this section is not prior art to the claims in this application and is not prior art recognized solely by what is described in this section.

인터넷과 같은 유무선 네트워크 통신 기술의 발달에 따라, 네트워크를 통한 실시간 TV 중계와 같은 실시간 스트리밍 데이터 제공 서비스가 널리 사용되고 있다. 실시간 TV 중계의 경우, 중계를 담당하는 미디어 중계 서버는 방송국과 같은 실시간 스트리밍 TV 신호를 제공하는 서버로부터 해당 스트리밍 데이터를 수신 받아 인터넷과 같은 네트워크를 통해 일반 사용자들에게 실시간 TV 방송을 중계한다. With the development of wired / wireless network communication technologies such as the Internet, real-time streaming data provision services such as real-time TV broadcasting over a network are widely used. In the case of real-time TV broadcasting, the media relay server responsible for the relay receives the streaming data from a server providing a real-time streaming TV signal such as a broadcasting station, and relays real-time TV broadcasting to general users through a network such as the Internet.

여기서, 스트리밍 TV 신호를 제공하는 방송국은 해당 스트리밍 데이터에 광고를 삽입해 두기 마련이며, 미디어 중계 서버의 운영자 입장에서는 기삽입된 광고 대신에 대체 광고를 노출시키기를 원할 수 있다. 하지만, 실시간으로 영상을 내보내는 과정에서 대체 광고를 노출시킬 경우, 대체 광고 소재를 읽으면서 바로 처리하는 방식으로 영상이 스트리밍되는 과정에서 끊기는 현상이 발생할 수 있으며, 이에 따라 안정적인 서비스의 제공이 어려울 수 있다.Here, the broadcasting station providing the streaming TV signal inserts the advertisement into the corresponding streaming data, and the operator of the media relay server may desire to expose the replacement advertisement instead of the inserted advertisement. However, if an alternative advertisement is exposed in the process of exporting a real-time image, there may occur a phenomenon in which the image is interrupted during the streaming process by directly processing the supplementary advertisement while reading the advertisement. Accordingly, it may be difficult to provide a stable service .

한편, 스트리밍 데이터는 비디오와 오디오 데이터를 동시에 저장하고 있는데, 예컨대 대체 광고 소재로써 오디오가 필요한 상황일 때에 해당 동영상에서 데이터를 읽으면 비디오가 나오는 경우가 존재하게 되며, 이런 경우 대체 광고 삽입으로 인한 사용자의 불편을 초래하게 된다.On the other hand, streaming data stores both video and audio data at the same time. For example, when audio is needed as an alternative advertisement material, there is a case where video is read out when data is read from the video. In such a case, Resulting in inconvenience.

본 개시는, 스트리밍 동영상 같은 스트리밍 데이터를 실시간으로 중계함에 있어, 스트리밍 데이터에 기삽입된 광고 대신에 미디어 중계 서버가 대체 광고를 노출시키고자 하는 경우 실시간으로 대체 광고 소재를 스트리밍 데이터에 삽입하는 경우, 비디오 데이터 및/또는 오디오 데이터의 끊김 현상 없이 안정적인 스트리밍 데이터를 일반 사용자에게 중계하여 전송하는 것을 그 일 해결 과제로 하고 있다.When the media relay server inserts an alternative advertisement material into the streaming data in real time when the media relay server wants to expose the replacement advertisement instead of the advertisement inserted in the streaming data in real time in relaying the streaming data such as the streaming video, It is an object of the present invention to relay stable streaming data to a general user and transmit the stream data without interruption of video data and / or audio data.

위 해결 과제는 일 예시에 불과하며, 본 명세서에서 설명되는 다양한 기술적 내용을 기초로 하여, 당업자라면 본 개시에서 의도하고자 하는 여러 직접적 및 간접적인 과제를 이해할 수 있을 것이다.The above solution is merely an example and, based on the various technical discussions described herein, one of ordinary skill in the art will understand many of the direct and indirect challenges that are contemplated in this disclosure.

일 실시예에서, 미디어 파일에 대체 광고를 삽입하기 위한 방법이 설명된다. 예시적인 미디어 파일에 대체 광고를 삽입하기 위한 방법은 미디어 중계 서버 상에서 수행되며, 상기 미디어 중계 서버는 메모리부를 포함하고, 상기 메모리부는 상기 대체 광고의 적어도 일부를 캐싱(caching)하는 버퍼부를 할 수 있다. 또한, 상기 방법은, 상기 미디어 파일에서 상기 대체 광고의 삽입 위치를 검출하는 단계; 상기 버퍼부에 상기 대체 광고의 해당 프레임이 저장되어 있는지를 판단하는 단계; 상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있는 경우, 상기 버퍼부로부터 상기 해당 프레임을 독출(讀出)하는 단계 및 상기 독출된 해당 프레임을 상기 미디어 파일의 상기 대체 광고 삽입 위치에 삽입하는 단계를 포함할 수 있다. 여기서, 미디어 파일은 스트리밍 미디어 파일일 수 있으며, 상기 예시적인 미디어 파일에 대체 광고를 삽입하기 위한 방법은 상기 미디어 파일을 미디어 파일 제공 서버로부터 수신하는 단계를 더 포함할 수 있다.In one embodiment, a method for inserting replacement ads in a media file is described. A method for inserting an alternative advertisement into an exemplary media file is performed on a media relay server, the media relay server includes a memory unit, and the memory unit may include a buffer unit for caching at least a part of the replacement advertisement . The method may further comprise: detecting an insertion position of the replacement advertisement in the media file; Determining whether a corresponding frame of the substitute advertisement is stored in the buffer unit; Reading the corresponding frame from the buffer unit when the corresponding frame of the substitute advertisement is stored in the buffer unit as a result of the determination; Into the insertion position. Here, the media file may be a streaming media file, and the method for inserting the replacement advertisement into the exemplary media file may further include receiving the media file from the media file providing server.

추가적인 예시에서, 상기 예시적인 미디어 파일에 대체 광고를 삽입하기 위한 방법은 상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있지 않는 경우, 상기 대체 광고의 파일로부터 적어도 하나의 프레임을 독출하여 상기 버퍼부에 저장하는 단계를 더 포함할 수 있다. 이 경우, 상기 미디어 중계 서버는 대체 광고 저장부를 더 포함할 수 있으며, 상기 대체 광고는 상기 대체 광고 저장부에 저장되어 있을 수 있다.In a further example, a method for inserting an alternate advertisement into the exemplary media file comprises: if the buffer does not store the corresponding frame of the alternate advertisement as a result of the determination, And storing the read data in the buffer unit. In this case, the media relay server may further include a replacement advertisement storage unit, and the replacement advertisement may be stored in the replacement advertisement storage unit.

추가적인 예시에서, 상기 예시적인 미디어 파일에 대체 광고를 삽입하기 위한 방법은, 상기 대체 광고의 파일로부터 독출된 상기 적어도 하나의 프레임이 원하는 형태인지를 판단하는 단계; 및 상기 적어도 하나의 프레임이 원하는 형태가 아닌 경우, 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하는 단계를 더 포함할 수 있다. 또한, 상기 방법은, 상기 적어도 하나의 프레임이 원하는 형태인 경우, 상기 적어도 하나의 프레임이 충분한 지를 판단하는 단계; 및 상기 적어도 하나의 프레임이 충분하지 않은 경우, 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하는 단계를 더 포함할 수 있다.In a further example, a method for inserting an alternate advertisement in the exemplary media file comprises: determining whether the at least one frame read from the file of the alternate ad is in a desired format; And if the at least one frame is not of a desired type, reading another at least one frame from the file of the replacement advertisement. The method may further include determining if the at least one frame is sufficient if the at least one frame is of a desired type; And if the at least one frame is not sufficient, reading another at least one frame from the file of the replacement advertisement.

다른 실시예에서, 미디어 파일 제공 서버로부터 수신된 스트리밍 미디어 파일을 중계하기 위한 미디어 중계 서버가 설명된다. 예시적인 미디어 중계 서버는, 미디어 파일 제공 서버로부터 미디어 파일을 수신하기 위한 파일 수신부; 대체 광고를 저장하기 위한 대체 광고 저장부; 상기 대체 광고의 적어도 하나의 프레임을 캐싱하기 위한 버퍼부; 상기 수신된 미디어 파일에 상기 대체 광고를 결합하기 위한 대체 광고 결합부; 및 상기 대체 광고가 결합된 미디어 파일을 적어도 하나의 사용자 장치로 전송하기 위한 파일 전송부를 포함할 수 있다.In another embodiment, a media relay server for relaying a streaming media file received from a media file providing server is described. An exemplary media relay server includes: a file receiving unit for receiving a media file from a media file providing server; An alternative advertisement storage unit for storing replacement advertisements; A buffer for caching at least one frame of the replacement advertisement; An alternative advertisement combining unit for combining the alternative advertisement into the received media file; And a file transmission unit for transmitting the media file combined with the backup advertisement to at least one user device.

추가적인 예시에서, 상기 대체 광고 결합부는, 상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있지 않는 경우, 상기 대체 광고 저장부에 저장된 상기 대체 광고의 파일로부터 적어도 하나의 프레임을 독출하여 상기 버퍼부에 저장할 수 있다. 또한, 상기 대체 광고 결합부는, 상기 대체 광고의 파일로부터 독출된 상기 적어도 하나의 프레임이 원하는 형태인지를 판단하고; 그리고 상기 적어도 하나의 프레임이 원하는 형태가 아닌 경우 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출할 수 있다. 나아가, 상기 대체 광고 결합부는, 상기 적어도 하나의 프레임이 원하는 형태인 경우 상기 적어도 하나의 프레임이 충분한 지를 판단하고; 그리고 상기 적어도 하나의 프레임이 충분하지 않은 경우 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출할 수 있다.In a further example, the alternative advertisement combining unit may include at least one frame from a file of the substitute advertisement stored in the substitute advertisement storage unit when the corresponding frame of the substitute advertisement is not stored in the buffer unit as a result of the determination And store it in the buffer unit. The alternative advertisement combining unit may determine whether the at least one frame read from the file of the replacement advertisement is in a desired format; And read another at least one frame from the file of the replacement advertisement if the at least one frame is not of a desired type. Further, the alternative advertisement combining unit may determine whether the at least one frame is sufficient if the at least one frame is in a desired format; And to read another at least one frame from the file of the replacement advertisement if the at least one frame is not sufficient.

또 다른 실시예에서, 컴퓨터 컴퓨터 실행 가능 명령어가 저장된 컴퓨터 판독가능 저장 매체가 설명된다. 예시적인 컴퓨터 실행 가능 명령어는 실행되는 경우, 컴퓨터로 하여금, 미디어 파일에서 대체 광고의 삽입 위치를 검출하는 단계; 버퍼부에 상기 대체 광고의 해당 프레임이 저장되어 있는지를 판단하는 단계; 상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있는 경우, 상기 버퍼부로부터 상기 해당 프레임을 독출하는 단계; 및 상기 독출된 해당 프레임을 상기 미디어 파일의 상기 대체 광고 삽입 위치에 삽입하는 단계를 포함하는 동작을 수행하도록 할 수 있다.In yet another embodiment, a computer-readable storage medium having computer-executable instructions stored thereon is described. Exemplary computer-executable instructions, when executed, cause the computer to: detect an insertion location of a replacement advertisement in a media file; Determining whether a corresponding frame of the substitute advertisement is stored in the buffer unit; If the corresponding frame of the substitute advertisement is stored in the buffer unit as a result of the determination, reading the corresponding frame from the buffer unit; And inserting the read-out corresponding frame into the substitute advertisement insertion position of the media file.

전술한 요약은 예시적인 것일 뿐이고, 어떤 방식으로든 제한을 의도한 것은 아니다. 상술한 예시적인 태양, 실시예 및 특징들에 더하여, 추가의 태양, 실시예 및 특징들이 도면과 이하의 상세한 설명을 참조함으로써 분명하게 될 것이다.The foregoing summary is exemplary only and is not intended to be limiting in any way. In addition to the exemplary aspects, embodiments, and features described above, additional aspects, embodiments, and features will become apparent by reference to the drawings and detailed description below.

본 개시의 전술한 특징들 및 기타 특징들은, 첨부 도면을 참조하여 이하의 설명으로부터 충분히 분명해질 것이다. 이러한 도면들은 본 개시에 따르는 단지 몇 가지의 실시예만을 도시한 것이고, 따라서 그 범위를 제한하는 것으로 간주되어서는 안되는 것을 이해하면서, 본 개시는 첨부된 도면의 사용을 통하여, 더 구체적이고 상세하게 기술될 것이다.
도 1은 본 개시의 적어도 일부 실시예에 따른 스트리밍 미디어 파일을 중계하기 위한 환경을 도시하는 전체 개략도이고;
도 2는 본 개시의 적어도 일부 실시예에 따른 예시적인 미디어 중계 서버를 도시하는 개략적인 블록도이고;
도 3은 본 개시의 적어도 일부 실시예에 따라, 미디어 중계 서버에서 수행되는 프로세스 흐름을 도시하는 흐름도이고;
도 4는 본 개시의 적어도 일부 실시예에 따른 대체 광고 삽입 처리에 이용될 수 있는 컴퓨터 프로그램 제품을 도시하며;
도 5는 본 개시의 적어도 일부 실시예에 따라 배열되는 컴퓨팅 장치의 예시적인 실시예의 블록도이다.
The foregoing and other features of the disclosure will become more fully apparent from the following description, taken in conjunction with the accompanying drawings. It is to be understood that the disclosure is not to be regarded as limiting the scope of the invention, which is set forth merely to illustrate only a few embodiments in accordance with the present disclosure, Will be.
1 is an overall schematic diagram illustrating an environment for relaying streaming media files in accordance with at least some embodiments of the present disclosure;
2 is a schematic block diagram illustrating an exemplary media relay server in accordance with at least some embodiments of the present disclosure;
3 is a flow diagram illustrating a process flow performed at a media relay server, in accordance with at least some embodiments of the present disclosure;
Figure 4 illustrates a computer program product that may be used for alternative advertisement insertion processing in accordance with at least some embodiments of the present disclosure;
5 is a block diagram of an exemplary embodiment of a computing device arranged in accordance with at least some embodiments of the present disclosure.

본 개시의 전술한 특징들 및 기타 특징들은, 첨부 도면을 참조하여 이하의 설명으로부터 충분히 분명해질 것이다. 이러한 도면들은 본 개시에 따르는 단지 몇 가지의 실시예만을 도시한 것이고, 따라서 그 범위를 제한하는 것으로 간주되어서는 안되는 것을 이해하면서, 본 개시는 첨부된 도면의 사용을 통하여, 더 구체적이고 상세하게 기술될 것이다.The foregoing and other features of the disclosure will become more fully apparent from the following description, taken in conjunction with the accompanying drawings. It is to be understood that the disclosure is not to be regarded as limiting the scope of the invention, which is set forth merely to illustrate only a few embodiments in accordance with the present disclosure, Will be.

본 개시는, 스트리밍 미디어 파일에 대체 광고를 삽입하는 것을 제어하기 위한 장치, 시스템, 방법, 컴퓨터 판독가능 저장매체에 관련된다.The present disclosure relates to an apparatus, system, method, computer-readable storage medium for controlling insertion of an alternative advertisement into a streaming media file.

도 1은 본 개시의 적어도 일부 실시예에 따른 스트리밍 미디어 파일을 중계하기 위한 환경을 도시하는 전체 개략도로서, 전체 시스템은 미디어 중계 서버(100), 미디어 파일 제공 서버(110), 네트워크(120) 및 네트워크(120)를 통해 미디어 파일 제공 서버(110)와 연결된 사용자 장치(130)를 포함할 수 있다.1 is an overall schematic diagram illustrating an environment for relaying streaming media files according to at least some embodiments of the present disclosure, wherein the overall system includes a media relay server 100, a media file serving server 110, a network 120, And a user device 130 connected to the media file providing server 110 through the network 120. [

미디어 파일 제공 서버(110)는 미디어 파일을 생성하거나 외부로부터 미디어 파일을 수신하여 미디어 중계 서버(100)에 이를 제공하도록 구성된다. 비제한적인 일 실시예에서, 미디어 파일 제공 서버(110)는 미디어 파일을 실시간 스트리밍 방식으로 미디어 중계 서버(100)에 제공할 수 있으며, 미디어 중계 서버(100)는 제공 받은 미디어 파일을 또한 실시간 스트리밍 방식으로 사용자 장치(130)에 중계할 수 있다. 미디어 파일은 영상 데이터 및 음성 데이터를 포함할 수 있으며, 각각의 영상 및 음성 데이터는 PTS(presentation time stamp)값을 포함할 수 있다. 미디어 파일 제공 서버(110)는 미디어 중계 서버(100)에 미디어 파일을 제공하기 이전에 스트리밍 미디어 데이터의 일정 부분에 광고 데이터를 삽입해 둘 수 있다. 삽입된 광고 데이터는 광고주의 요청에 따라 작성된 혹은 광고주로부터 제공 받은 광고에 관한 데이터를 포함할 수 있으며, 해당 광고는 미디어 파일의 일부로서 미디어 중계 서버(100)로 제공될 수 있다.The media file providing server 110 is configured to generate a media file or receive a media file from the outside and provide the media file to the media relay server 100. In a non-limiting embodiment, the media file providing server 110 may provide the media file to the media relay server 100 in a real-time streaming manner, and the media relay server 100 may also provide the received media file Lt; RTI ID = 0.0 > 130 < / RTI > The media file may include video data and audio data, and each video and audio data may include a presentation time stamp (PTS) value. The media file providing server 110 may insert the advertisement data into a predetermined portion of the streaming media data before providing the media file to the media relay server 100. [ The inserted advertisement data may include data related to an advertisement created according to an advertiser's request or provided from an advertiser, and the advertisement may be provided to the media relay server 100 as a part of a media file.

미디어 중계 서버(100)는 미디어 파일 제공 서버(110)로부터 제공 받은 미디어 파일을 처리하도록 구성된다. 미디어 중계 서버(100)는 버퍼부를 포함하는 메모리부를 구비할 수 있으며, 버퍼부는 미디어 파일에 삽입될 대체 광고의 적어도 일부를 캐싱하도록 구성될 수 있다. 미디어 중계 서버(100)의 구체적인 하드웨어 구현의 실시예는 도 2를 참조하여 아래에서 상세하게 설명된다. The media relay server 100 is configured to process a media file provided from the media file providing server 110. [ The media relay server 100 may include a memory unit including a buffer unit and the buffer unit may be configured to cache at least a part of the replacement advertisement to be inserted into the media file. An embodiment of a specific hardware implementation of media relay server 100 is described in detail below with reference to FIG.

미디어 중계 서버(100)는 미디어 파일에서 대체 광고를 삽입할 위치를 검출하고 난 후, 버퍼부에 대체 광고의 해당 프레임이 저장되어 있는지를 판단하도록 구성될 수 있다. 판단 결과, 버퍼부에 대체 광고의 해당 프레임이 저장되어 있는 경우, 미디어 중계 서버(100)는 버퍼부로부터 해당 프레임을 읽어 와서, 읽어 온 해당 프레임을 미디어 파일의 대체 광고 삽입 위치에 삽입하도록 구성될 수 있다. The media relay server 100 may be configured to determine whether a corresponding frame of the substitute advertisement is stored in the buffer unit after detecting a position to insert the substitute advertisement in the media file. If it is determined that the corresponding frame of the substitute advertisement is stored in the buffer unit, the media relay server 100 reads the corresponding frame from the buffer unit and inserts the read frame into the substitute advertisement insertion position of the media file .

또한, 위 판단의 결과 버퍼부에 대체 광고의 해당 프레임이 저장되어 있지 않는 경우, 미디어 중계 서버(100)는 대체 광고의 파일로부터 적어도 하나의 프레임을 읽어 와서 버퍼부에 저장하도록 구성될 수 있다. 나아가, 미디어 중계 서버(100)는 대체 광고의 파일로부터 읽어 온 적어도 하나의 프레임이 원하는 형태인지를 판단하고, 적어도 하나의 프레임이 원하는 형태가 아닌 경우, 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 읽어 오도록 구성될 수 있다. 한편, 미디어 중계 서버(100)는 적어도 하나의 프레임이 원하는 형태인 경우, 적어도 하나의 프레임이 충분한 지를 판단하고, 적어도 하나의 프레임이 충분하지 않은 경우, 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 읽어 오도록 구성될 수 있다.If it is determined that the corresponding frame of the substitute advertisement is not stored in the buffer unit, the media relay server 100 may read at least one frame from the file of the substitute advertisement and store the frame in the buffer unit. Further, the media relay server 100 determines whether at least one frame read from the file of the substitute advertisement is in a desired form, and if at least one frame is not a desired form, As shown in FIG. On the other hand, the media relay server 100 determines if at least one frame is sufficient, if at least one frame is a desired form, and if the at least one frame is not enough, As shown in FIG.

네트워크(120)는 사용자 장치(130)가 미디어 중계 서버(100)에 접속하는 것을 가능하게 해준다. 네트워크(120)는 미디어 중계 서버(100)와 사용자 장치(130)를 통신 가능하게 결합시키도록 구성되는 컴포넌트 또는 모듈일 수 있다. 제한적이지 않은 예시로써, 네트워크(120)는 LAN, WAN, VAN 등과 같은 유선 네트워크, 3G 또는 4G 모바일 네트워크와 같은 모바일 네트워크, 위성 네트워크, WiBro, 모바일 WiMAX, HSDPA 등과 같은 기타 통신 네트워크를 포함할 수 있다. 대안적으로, 네트워크(120)는 NFC, 블루투스, P2P 통신 프로토콜 등과 같은 근거리 무선 네트워크일 수 있다.The network 120 enables the user device 130 to connect to the media relay server 100. The network 120 may be a component or module configured to communicatively couple the media relay server 100 and the user device 130. By way of example, and not limitation, network 120 may include wired networks such as LAN, WAN, VAN, etc., mobile networks such as 3G or 4G mobile networks, satellite networks, WiBro, Mobile WiMAX, HSDPA, . Alternatively, the network 120 may be a short-range wireless network such as NFC, Bluetooth, P2P communication protocol, and the like.

사용자 장치(130)는 사용자 단말로서 데스크탑과 같은 고정형 사용자 장치는 물론, 랩탑, 태블릿, 스마트폰, PDA 등과 같은 휴대형 사용자 장치를 포함한다. 사용자 장치(130)는 미디어 중계 서버(130)로부터 중계되는 미디어 파일을 수신하여 이를 실행시킬 수 있으며, 이를 위해서는 미디어 플레이어 등과 같은 어플리케이션이 구비될 필요가 있다. 앞서 설명한 바와 같이, 미디어 중계 서버(130)로부터 중계되는 미디어 파일에는 미디어 중계 서버(130)에 의해 삽입된 대체 광고를 포함할 수 있다. 이러한 미디어 파일은 미디어 파일 제공 서버(110)로부터 미디어 중계 서버(100)를 거쳐 사용자 장치(130)로 실시간으로 제공되지만, 미디어 파일 제공 서버(110)의 오리지널 미디어 파일에 포함된 광고는 미디어 중계 서버(100)에 의해 대체 광고 소재로 교체되게 된다. 이와 같은 대체 광고 소재로 교체하는 프로세스에 관해 도 2를 참조하여 보다 구체적으로 설명한다.User device 130 includes a portable user device, such as a laptop, tablet, smart phone, PDA, etc., as well as a stationary user device such as a desktop as a user terminal. The user device 130 can receive the media file relayed from the media relay server 130 and execute the media file. For this purpose, it is necessary to provide an application such as a media player or the like. As described above, the media file relayed from the media relay server 130 may include a replacement advertisement inserted by the media relay server 130. [ The media files are provided from the media file providing server 110 through the media relay server 100 to the user device 130 in real time but the advertisements contained in the original media files of the media file providing server 110 are transmitted to the media relay server 100, The replacement advertisement material is replaced by the substitute advertisement material. A process for replacing such an alternative advertisement material will be described in more detail with reference to FIG.

도 2는 본 개시의 적어도 일부 실시예에 따른 예시적인 미디어 중계 서버(100)를 도시하는 개략적인 블록도이다. 예시적인 미디어 중계 서버(100)는 미디어 파일 제공 서버로부터 미디어 파일을 수신하기 위한 파일 수신부(210), 수신된 미디어 파일에 상기 대체 광고를 결합하기 위한 대체 광고 결합부(220), 대체 광고의 적어도 하나의 프레임을 캐싱하기 위한 버퍼부(230), 대체 광고를 저장하기 위한 대체 광고 저장부(240) 및 대체 광고가 결합된 미디어 파일을 적어도 하나의 사용자 장치로 전송하기 위한 파일 전송부(250)를 포함할 수 있다.2 is a schematic block diagram illustrating an exemplary media relay server 100 in accordance with at least some embodiments of the present disclosure. The exemplary media relay server 100 includes a file receiving unit 210 for receiving a media file from a media file providing server, an alternative advertisement combining unit 220 for combining the alternative advertisement into a received media file, A buffer unit 230 for caching one frame, an alternative advertisement storage unit 240 for storing an alternative advertisement, and a file transmission unit 250 for transmitting a media file combined with the alternative advertisement to at least one user device, . ≪ / RTI >

파일 수신부(210)는 미디어 파일 제공 서버(예컨대 도 1의 도면 부호 110의 미디어 파일 제공 서버)로부터 스트리밍 방식으로 미디어 파일을 수신할 수 있다. 수신된 미디어 파일은 파일 수신부(210)의 뒷 단에 연결된 대체 광고 결합부(220)에서의 처리를 위해 파일 수신부(210)에서 디코딩될 수 있다. 파일 수신부(210)는 디코딩된 미디어 파일은 실시간 스트리밍 방식으로 프레임 단위로 대체 광고 결합부(220)로 제공될 수 있다.The file receiving unit 210 may receive a media file from a media file providing server (e.g., a media file providing server 110 in FIG. 1) in a streaming manner. The received media file may be decoded in the file receiving unit 210 for processing in the alternative advertisement combining unit 220 connected to the rear end of the file receiving unit 210. The file receiving unit 210 may provide the decoded media file to the alternative advertisement combining unit 220 on a frame-by-frame basis in a real-time streaming scheme.

대체 광고 결합부(220)는 파일 수신부(210)로부터 제공된 미디어 파일에서 대체 광고가 삽입되어야 할 위치를 검출하도록 구성될 수 있다. 그 다음, 대체 광고 결합부(220)는 버퍼부(230)에 대체 광고의 해당 프레임이 저장되어 있는지를 판단하고, 판단의 결과 버퍼부(230)에 대체 광고의 해당 프레임이 저장되어 있는 경우 버퍼부(230)로부터 해당 프레임을 읽어 와서 이를 미디어 파일의 대체 광고 삽입 위치에 삽입하도록 구성될 수 있다.The alternative advertisement combining unit 220 may be configured to detect a position at which the replacement advertisement should be inserted in the media file provided from the file receiving unit 210. [ Then, the substitute advertisement combining unit 220 determines whether the corresponding frame of the substitute advertisement is stored in the buffer unit 230. If the corresponding frame of the substitute advertisement is stored in the buffer unit 230 as a result of the determination, And inserts the frame into the substitute advertisement insertion position of the media file.

만일 위 판단의 결과 버퍼부(230)에 대체 광고의 해당 프레임이 저장되어 있지 않는 경우, 대체 광고 결합부(220)는 대체 광고 저장부(240)에 저장된 대체 광고의 파일로부터 적어도 하나의 프레임을 읽어 와 버퍼부(230)에 저장하도록 구성될 수 있다.If the corresponding frame of the substitute advertisement is not stored in the buffer 230 as a result of the above determination, the substitute advertisement combining unit 220 extracts at least one frame from the file of the substitute advertisement stored in the substitute advertisement storage unit 240 And store the read data in the buffer unit 230. [

또한, 대체 광고 결합부(230)는, 대체 광고의 파일로부터 읽어 온 적어도 하나의 프레임이 원하는 형태인지를 판단하고, 적어도 하나의 프레임이 원하는 형태가 아닌 경우 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 읽어 오도록 구성되며, 만일 위 적어도 하나의 프레임이 원하는 형태인 경우 적어도 하나의 프레임이 충분한 지를 판단하고, 그리고 위 적어도 하나의 프레임이 충분하지 않은 경우 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 읽어 오도록 구성될 수 있다.Also, the alternative advertisement combining unit 230 determines whether at least one frame read from the file of the replacement advertisement is in a desired format, and if at least one frame is not a desired format, Determining if at least one frame is sufficient if the at least one frame is a desired type and if the at least one frame is not sufficient, As shown in FIG.

도 2에 도시된 블록들은 예시적인 것으로서 미디어 중계 서버(100)는 도 1 및 도 2에서 설명된 각 기능들을 수행하기에 충분하다면 그 구성에 어떠한 제약이 가해지지 않으며, 또한 도 2에 도시된 블록들은 하드웨어, 소프트웨어, 펌웨어 기타 기술의 발전에 따라 새롭게 등장하는 모든 가능한 수단에 기초하여 위 기능들을 구현할 수 있도록 구성될 수 있는 것이다.The blocks shown in FIG. 2 are illustrative, and if the media relay server 100 is sufficient to perform each of the functions described in FIGS. 1 and 2, there is no restriction on its configuration, May be configured to implement the above functions based on all possible means emerging along with the development of hardware, software, firmware, and other technologies.

도 3은 본 개시의 적어도 일부 실시예에 따라, 미디어 중계 서버에서 수행되는 프로세스 흐름을 도시하는 흐름도이다. 도 3에 도시된 제어명령의 프로세스는 블록(310, 320, 330, 340, 350, 360 및/또는 370)에 의해 도시된 바와 같은 하나 이상의 동작, 기능 또는 작용을 포함할 수 있다. 이러한 동작, 기능 도는 작용은 예컨대 도 1 및/또는 도 2를 참조하여 설명된 미디어 중계 서버(100) 상에서 수행될 수 있다. 다양한 블록은 설명된 실시예로 제한하려고 의도되지는 않는다. 예컨대, 당업자는 여기에서 개시된 본 프로세스에 대하여, 프로세스 및 방법에서 수행되는 기능이 상이한 순서로 구현될 수 있다는 것을 인정할 것이다. 또한, 개략적인 동작들은 예시로서만 제공되고, 개시된 실시예의 본질에서 벗어나지 않으면서, 동작들 중 일부가 선택적일 수 있거나, 더 적은 동작으로 조합될 수 있거나, 추가적인 동작으로 확장될 수 있다. 프로세스는 도면 부호 310의 블록에서 시작되어 도면 부호 320의 블록으로 계속될 수 있다.3 is a flow diagram illustrating a process flow performed at a media relay server, in accordance with at least some embodiments of the present disclosure. The process of the control command shown in FIG. 3 may include one or more actions, functions, or actions as illustrated by blocks 310, 320, 330, 340, 350, 360 and / or 370. Such operation, function, or action may be performed, for example, on the media relay server 100 described with reference to FIG. 1 and / or FIG. The various blocks are not intended to be limited to the embodiments described. For example, those skilled in the art will appreciate that, for this process disclosed herein, the functions performed in the processes and methods may be implemented in a different order. In addition, the outline operations are provided by way of example only, and some of the operations may be optional, combined with fewer operations, or extended with additional operations, without departing from the essence of the disclosed embodiments. The process may begin at a block 310 and continue with a block 320.

도면 부호 320의 블록에서, 미디어 중계 서버(예컨대, 도 1의 도면 부호 100의 미디어 중계 서버)는 미디어 파일 제공 서버(예컨대, 도 1의 도면 부호 110의 미디어 파일 제공 서버)로부터 스트리밍 방식으로 전송 받은 미디어 파일에 대체 광고를 삽입하게 될 때에 위 대체 광고의 해당 프레임이 미디어 중계 서버의 버퍼부에 저장되어 있는 지를 판단한다. 만일, 해당 프레임이 버퍼부에 저장되어 있는 경우, 도면 부호 330의 블록에서, 미디어 중계 서버는 버퍼부로부터 위 해당 프레임을 독출한다. 그 다음, 도면 부호 340의 블록에서, 미디어 중계 서버는 미디어 파일의 대체 광고 삽입 위치에 버퍼부로부터 독출된 대체 광고의 해당 프레임을 삽입함으로써 이를 미디어 파일과 결합시킨다. 대체 광고가 결합된 미디어 파일은, 예컨대 도 1의 도면 부호 120의 네트워크를 통해 해당 미디어 파일을 실행시킬 수 있는 미디어 플레이어가 설치된 사가 용자 장치(130)로 제공되어 재생될 수 있다.At a block 320, a media relay server (for example, a media relay server 100 in FIG. 1) receives a stream transmitted from a media file providing server (for example, a media file providing server 110 in FIG. 1) It is determined whether the corresponding frame of the substitute advertisement is stored in the buffer unit of the media relay server when inserting the substitute advertisement into the media file. If the corresponding frame is stored in the buffer unit, in the block 330, the media relay server reads the corresponding frame from the buffer unit. Then, at block 340, the media relay server inserts the corresponding frame of the replacement advertisement read from the buffer unit into the replacement advertisement insertion position of the media file, thereby combining it with the media file. The media file to which the substitute advertisement is combined may be provided to the user apparatus 130 provided with a media player capable of executing the corresponding media file through the network 120 of FIG. 1, for example.

도면 부호 320의 블록에서의 판단 결과, 대체 광고의 해당 프레임이 미디어 중계 서버의 버퍼부에 저장되어 있지 않은 경우, 프로세스는 도면 부호 340 내지 360의 블록으로 진행된다. 도면 부호 340의 블록에서, 미디어 중계 서버는 대체 광고의 파일로부터 적어도 하나의 프레임을 독출하여 버퍼부에 저장한다. If the corresponding frame of the replacement advertisement is not stored in the buffer unit of the media relay server as a result of the determination in block 320, the process proceeds to blocks 340 to 360. At block 340, the media relay server reads at least one frame from the file of the replacement advertisement and stores it in the buffer.

그 다음, 도면 부호 350의 블록에서, 미디어 중계 서버는 대체 광고의 파일로부터 독출된 적어도 하나의 프레임이 원하는 형태인지를 판단한다. 그 판단의 결과가 적어도 하나의 프레임이 원하는 형태가 아닌 경우, 프로세스는 도면 부호 340의 블록으로 분기하여 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하며, 그 판단의 결과가 적어도 하나의 프레임이 원하는 형태인 경우, 프로세스는 도면 부호 360의 블록으로 진행한다. Then, at block 350, the media relay server determines if at least one frame read from the file of the replacement advertisement is in the desired format. If the result of the determination is that at least one frame is not the desired type, then the process branches to block 340 to read another at least one frame from the file of the replacement advertisement, If this is the desired form, the process proceeds to block 360.

도면 부호 360의 블록에서, 미디어 중계 서버는 위 적어도 하나의 프레임이 충분한 지를 판단한다. 그 판단의 결과가 적어도 하나의 프레임이 충분하지 않은 경우, 프로세스는 도면 부호 340의 블록으로 분기하여 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출한다. 한편, 그 판단의 결과가 적어도 하나의 프레임이 충분한 경우, 프로세스는 도면 부호 330의 블록으로 분기하며, 도면 부호 330의 블록에서 미디어 중계 서버는 버퍼부로부터 위 해당 프레임을 독출하고, 도면 부호 340의 블록에서 미디어 중계 서버는 미디어 파일의 대체 광고 삽입 위치에 버퍼부로부터 독출된 대체 광고의 해당 프레임을 삽입함으로써 이를 미디어 파일과 결합시킨다. 이렇게 결합된 미디어 파일은 마찬가지로, 예컨대 도 1의 도면 부호 120의 네트워크를 통해 해당 미디어 파일을 실행시킬 수 있는 미디어 플레이어가 설치된 사가 용자 장치(130)로 제공되어 재생될 수 있다.At block 360, the media relay server determines if at least one frame above is sufficient. If the result of the determination is that at least one frame is not sufficient, the process branches to block 340 to read another at least one frame from the file of the replacement advertisement. On the other hand, if the result of the judgment is that at least one frame is sufficient, the process branches to block 330. In the block 330, the media relay server reads the corresponding frame from the buffer section, In the block, the media relay server inserts the corresponding frame of the substitute advertisement read from the buffer unit at the substitute advertisement inserting position of the media file, thereby combining it with the media file. The combined media files may also be provided to the user device 130, for example, where a media player capable of running the media file through the network 120 of FIG. 1 is provided.

도 4는 여기에서 제시된 적어도 일부 실시예에 따라 배열된, 컴퓨팅 장치 상에서의 컴퓨터 장치를 실행하기 위한 컴퓨터 프로그램을 포함하는 컴퓨터 프로그램 제품(400)을 도시하는 개략도이다. 예시적인 컴퓨터 프로그램 제품의 예시적인 실시예는 신호 포함 매체(402)를 이용하여 제공된다. 일부 실시예에서, 하나 이상의 컴퓨터 프로그램 제품(400)의 신호 포함 매체(402)는 컴퓨터 판독가능 매체(406), 기록 가능 매체(408) 및/또는 통신 매체(410)를 포함할 수 있다.4 is a schematic diagram illustrating a computer program product 400 including a computer program for executing a computer device on a computing device, arranged in accordance with at least some embodiments set forth herein. Exemplary embodiments of an exemplary computer program product are provided using signal embedding medium 402. [ In some embodiments, the signal-bearing medium 402 of one or more computer program products 400 may comprise a computer-readable medium 406, a recordable medium 408 and / or a communication medium 410.

명령어(404)는, 미디어 파일에서 대체 광고의 삽입 위치를 검출하는 명령어, 버퍼부에 대체 광고의 해당 프레임이 저장되어 있는지를 판단하는 명령어, 판단의 결과 버퍼부에 대체 광고의 해당 프레임이 저장되어 있는 경우 버퍼부로부터 해당 프레임을 독출하는 명령어 및 독출된 해당 프레임을 미디어 파일의 상기 대체 광고 삽입 위치에 삽입하는 명령어 중 적어도 하나를 포함할 수 있다.The command 404 includes a command for detecting the insertion position of the substitute advertisement in the media file, an instruction for determining whether the corresponding frame of the substitute advertisement is stored in the buffer unit, and a corresponding frame of the substitute advertisement in the buffer unit An instruction to read the corresponding frame from the buffer unit, and a command to insert the read frame into the substitute advertisement insertion position of the media file.

도 5는 본 개시의 적어도 일부 실시예에 따라 배열되는 예시적인 컴퓨팅 장치(500)를 도시하는 블록도이다. 일 예시적인 기본적인 구성(502)에서, 컴퓨팅 장치(500)는 하나 이상의 프로세서(504) 및 시스템 메모리(506)를 포함할 수 있다. 메모리 버스(508)는 프로세서(504) 및 시스템 메모리(506) 사이에서 통신하기 위하여 이용될 수 있다.5 is a block diagram illustrating an exemplary computing device 500 that is arranged in accordance with at least some embodiments of the present disclosure. In one exemplary basic configuration 502, computing device 500 may include one or more processors 504 and system memory 506. [ The memory bus 508 may be used to communicate between the processor 504 and the system memory 506.

요구되는 구성에 따라, 프로세서(504)는 마이크로 프로세서(μP), 마이크로 컨트롤러(μC), 디지털 신호 프로세서(DSP), 또는 그들의 임의의 조합을 포함하는 임의의 유형일 수 있으나, 이에 제한되지는 않는다. 프로세서(504)는 레벨 1 캐시(510), 레벨 2 캐시(512)와 같은 하나 이상의 레벨(level)의 캐시(cache), 프로세서 코어(514), 및 레지스터(516)를 포함할 수 있다. 프로세서 코어(514)는 산술 논리 연산장치(arithmetic logic unit; ALU), 부동 소수점 장치(floating point unit; FPU), 디지털 신호 처리 코어(DSP Core), 또는 그들의 임의의 조합을 포함할 수 있다. 메모리 컨트롤러(518)는 또한 프로세서(504)와 함께 사용될 수 있거나, 또는 일부 구현예에서 메모리 컨트롤러(518)는 프로세서(504)의 내적인 일부일 수 있다.Depending on the configuration desired, the processor 504 may be of any type, including, but not limited to, a microprocessor (uP), a microcontroller (uC), a digital signal processor (DSP), or any combination thereof. The processor 504 may include one or more levels of a cache, such as a level 1 cache 510, a level 2 cache 512, a processor core 514, and a register 516. The processor core 514 may comprise an arithmetic logic unit (ALU), a floating point unit (FPU), a digital signal processing core (DSP Core), or any combination thereof. The memory controller 518 may also be used with the processor 504 or, in some implementations, the memory controller 518 may be an internal portion of the processor 504. [

요구되는 구성에 따라, 시스템 메모리(506)는 (RAM과 같은) 휘발성 메모리, (ROM, 플래시 메모리 등과 같은) 비휘발성 메모리, 또는 그들의 임의의 조합을 포함하는 임의의 유형일 수 있으나, 이에 제한되지는 않는다. 시스템 메모리(506)는 운영 체제(520), 하나 이상의 어플리케이션(application)(522), 및 프로그램 데이터(524)를 포함할 수 있다. 프로그램 데이터(524)는, 제어 알고리즘(526)과 함께 이용하기 위한 데이터(528), 예컨대, 정적 네트워크 환경 등에 해당하는 데이터를 포함할 수 있다. 일부 실시예에서, 어플리케이션(522)은 최적의 전송 환경을 결정하기 위한 구현이 여기에서 설명된 바와 같이 제공될 수 있도록 운영 체제(520) 상에서 프로그램 데이터(524)로 동작하도록 배열될 수 있다. 이러한 기술된 기본적인 구성은 도 5에서 파선(502) 내의 그 구성요소들에 의해 도시된다.Depending on the configuration desired, the system memory 506 may be any type, including but not limited to volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof, Do not. The system memory 506 may include an operating system 520, one or more applications 522, and program data 524. The program data 524 may include data 528 for use with the control algorithm 526, e.g., data corresponding to a static network environment or the like. In some embodiments, application 522 may be arranged to operate with program data 524 on operating system 520 such that an implementation for determining an optimal transmission environment may be provided as described herein. This described basic configuration is illustrated by its components in dashed line 502 in FIG.

컴퓨팅 장치(500)는 기본적인 구성(502) 및 임의의 요구되는 장치 및 인터페이스(interface) 사이의 통신을 용이하게 하도록 추가적인 특징 또는 기능, 및 추가적인 인터페이스를 가질 수 있다. 예를 들어, 버스/인터페이스 컨트롤러(530)는 저장부 인터페이스 버스(534)를 통한 기본적인 구성(502) 및 하나 이상의 데이터 저장 장치(532) 사이의 통신을 용이하게 하도록 사용될 수 있다. 데이터 저장 장치(532)는 이동식 저장 장치(536), 고정식 저장 장치(538), 또는 그 조합일 수 있다. 이동식 저장 장치 및 고정식 저장 장치의 예를 몇 가지 들자면, 플렉서블 디스크 드라이브(flexible disk drive) 및 하드 디스크 드라이브(HDD)와 같은 자기 디스크 장치, 컴팩트 디스크(CD) 드라이브 또는 디지털 다목적 디스크(DVD) 드라이브와 같은 광 디스크 드라이브, 고체 상태 드라이브(SSD), 및 테이프 드라이브 등을 포함한다. 예시적인 컴퓨터 저장 매체는 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈(program module), 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술에서 구현되는 휘발성 및 비휘발성의 이동식 및 고정식 매체를 포함할 수 있다.The computing device 500 may have additional features or functionality and additional interfaces to facilitate communication between the basic configuration 502 and any desired devices and interfaces. For example, the bus / interface controller 530 may be used to facilitate communication between the basic configuration 502 and the one or more data storage devices 532 via the storage interface bus 534. [ The data storage device 532 may be a removable storage device 536, a fixed storage device 538, or a combination thereof. Examples of removable storage devices and fixed storage devices include magnetic disk devices such as flexible disk drives and hard disk drives (HDD), compact disk (CD) drives or digital versatile disk (DVD) drives, Optical disk drives, solid state drives (SSDs), and tape drives, and the like. Exemplary computer storage media includes volatile and nonvolatile removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data can do.

시스템 메모리(506), 이동식 저장 장치(536) 및 고정식 저장 장치(538)는 모두 컴퓨터 저장 매체의 예이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, 디지털 다목적 디스크(DVD) 또는 기타 광 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 요구되는 정보를 저장하도록 사용될 수 있고, 컴퓨팅 장치(500)에 의해 액세스될 수 있는 임의의 기타 매체를 포함하나, 이에 제한되지는 않는다. 임의의 그러한 컴퓨터 저장 매체는 컴퓨팅 장치(500)의 일부일 수 있다.The system memory 506, the removable storage device 536, and the fixed storage device 538 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, But is not limited to, any other medium which can be used to store the required information and which can be accessed by the computing device 500. Any such computer storage media may be part of the computing device 500.

컴퓨팅 장치(500)는 또한 버스/인터페이스 컨트롤러(542)를 통한 다양한 인터페이스 장치(예컨대, 출력 인터페이스, 주변 인터페이스, 및 통신 인터페이스)로부터 기본적인 구성(502)으로의 통신을 용이하게 하기 위한 인터페이스 버스(542)를 포함할 수 있다. 예시적인 출력 장치(542)는 그래픽 처리 유닛(548) 및 오디오 처리 유닛(550)을 포함할 수 있으며, 이는 하나 이상의 A/V 포트(552)를 통하여 디스플레이 또는 스피커와 같은 다양한 외부 장치로 통신하도록 구성될 수 있다. 예시적인 주변 인터페이스(544)는 직렬 인터페이스 컨트롤러(554) 또는 병렬 인터페이스 컨트롤러(556)를 포함할 수 있으며, 이는 하나 이상의 I/O 포트(558)를 통하여 입력 장치(예컨대, 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등) 또는 기타 주변 장치(예컨대, 프린터, 스캐너 등)와 같은 외부 장치와 통신하도록 구성될 수 있다. 예시적인 통신 장치(546)는 네트워크 컨트롤러(560)를 포함하며, 이는 하나 이상의 통신 포트(564)를 통한 네트워크 통신 상에서의 하나 이상의 다른 컴퓨팅 장치(562)와의 통신을 용이하게 하도록 배열될 수 있다. 통신 연결은 통신 매체의 일 예시이다. 통신 매체는 일반적으로 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈, 또는 반송파 또는 기타 수송 메커니즘(transport mechanism)과 같은, 변조된 데이터 신호에서의 기타 데이터에 의해 구현될 수 있고 임의의 정보 전달 매체를 포함할 수 있다. "변조된 데이터 신호"는 신호 내에 정보를 인코딩하는 방식으로 설정되거나 변경된 하나 이상의 특성을 갖는 신호일 수 있다. 예를 들어, 통신 매체는 유선 네트워크 또는 직접 유선 연결(direct-wired connection)과 같은 유선 매체, 및 음향, 라디오 주파수(RF), 적외선(IR) 및 기타 무선 매체와 같은 무선 매체를 포함할 수 있으나, 이에 제한되지 않는다. 여기에서 사용된 컴퓨터 판독가능 매체라는 용어는 저장 매체 및 통신 매체 둘 다를 포함할 수 있다.The computing device 500 also includes an interface bus 542 for facilitating communication from various interface devices (e.g., an output interface, a peripheral interface, and a communication interface) to the basic configuration 502 via a bus / ). Exemplary output device 542 may include a graphics processing unit 548 and an audio processing unit 550 which may be coupled to one or more A / V ports 552 to communicate with various external devices, Lt; / RTI > The exemplary peripheral interface 544 may include a serial interface controller 554 or a parallel interface controller 556 which may be coupled to an input device (e.g., a keyboard, a mouse, a pen, A voice input device, a touch input device, etc.) or other peripheral device (e.g., a printer, a scanner, etc.). Exemplary communication device 546 includes a network controller 560 that may be arranged to facilitate communication with one or more other computing devices 562 on a network communication via one or more communication ports 564. [ A communication connection is an example of a communication medium. Communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media can do. A "modulated data signal" may be a signal having one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared (IR) , But is not limited thereto. The term computer readable media as used herein may include both storage media and communication media.

컴퓨팅 장치(500)는 휴대 전화기, 개인 휴대용 단말기(PDA), 개인 미디어 재생 장치, 무선 웹워치 장치, 개인 헤드셋 장치, 특정 용도 장치, 또는 상기 기능 중 임의의 것을 포함하는 융합 장치와 같은 소형 폼팩터 휴대용(모바일) 전자 장치의 일부로 구현될 수 있다. 컴퓨팅 장치(500)는 또한 랩탑 컴퓨터나 랩탑이 아닌 컴퓨터 구성 둘 다를 포함하는 개인 컴퓨터로 구현될 수 있다. 또한, 컴퓨팅 장치(500)는 무선 기지국 또는 기타 무선 시스템 또는 장치의 일부로서 구현될 수 있다.The computing device 500 may be a small form factor portable device such as a cellular phone, a personal digital assistant (PDA), a personal media player, a wireless web watch device, a personal headset device, an application specific device, (Mobile) electronic device. The computing device 500 may also be implemented as a personal computer, including both a laptop computer or a non-laptop computer configuration. In addition, computing device 500 may be implemented as part of a wireless base station or other wireless system or device.

청구된 대상은 여기에서 기술된 특정 구현예로 범위가 제한되지 않는다. 예컨대, 일부 구현예는 장치 또는 장치의 조합 상에서 동작하도록 사용될 수 있는 것과 같은 하드웨어로 있을 수 있는 반면, 예컨대, 다른 구현예는 소프트웨어 및/또는 펌웨어로 있을 수 있다. 마찬가지로, 청구된 대상은 이러한 점에서 범위가 제한되지 않지만, 일부 구현예는 신호 베어링 매체, 저장 매체와 같은 하나 이상의 물품을 포함할 수 있다. CD-ROM, 컴퓨터 디스크, 플래시 메모리 등과 같은 이러한 저장 매체는, 예컨대, 컴퓨팅 시스템, 컴퓨팅 플랫폼 또는 기타 시스템과 같은 컴퓨팅 장치에 의하여 실행되면, 예컨대, 앞서 설명된 구현예 중 하나와 같은 청구된 대상에 따라 프로세서의 실행을 야기시킬 수 있는 명령을 저장할 수 있다. 하나의 가능성으로서, 컴퓨팅 장치는 하나 이상의 처리 유닛 또는 프로세서, 디스플레이, 키보드 및/또는 마우스와 같은 하나 이상의 입/출력 장치, 및 정적 랜덤 액세스 메모리, 동적 랜덤 액세스 메모리, 플래시 메모리 및/또는 하드 드라이브와 같은 하나 이상의 메모리를 포함할 수 있다.The claimed subject matter is not to be limited in scope to the specific embodiments described herein. For example, some implementations may be in hardware, such as may be used to operate on a device or combination of devices, while other implementations may be in software and / or firmware, for example. Likewise, although the claimed subject matter is not limited in scope in this respect, some embodiments may include one or more articles, such as signal bearing media, storage media. Such a storage medium, such as a CD-ROM, a computer disk, a flash memory, etc., may, for example, be executed by a computing device, such as a computing system, computing platform or other system, Thereby storing instructions that can cause the execution of the processor. As one possibility, a computing device may include one or more processing units or processors, one or more input / output devices such as a display, a keyboard and / or a mouse, and a static random access memory, a dynamic random access memory, a flash memory and / Lt; / RTI > memory.

시스템의 양상들의 하드웨어 및 소프트웨어 구현 사이에는 구별이 거의 없다; 하드웨어 또는 소프트웨어의 사용은 일반적으로 (그러나 어떤 맥락에서 하드웨어 및 소프트웨어 사이의 선택이 중요할 수 있다는 점에서 항상 그런 것은 아니지만) 비용 대비 효율의 트레이드오프(tradeoff)를 나타내는 설계상 선택(design choice)이다. 본 개시에서 기재된 프로세스 및/또는 시스템 및/또는 다른 기술들이 영향 받을 수 있는 다양한 수단(vehicles)(예를 들어, 하드웨어, 소프트웨어 및/또는 펌웨어)이 있으며, 선호되는 수단은 프로세스 및/또는 시스템 및/또는 다른 기술이 사용되는 맥락(context)에 따라 변경될 것이다. 예를 들어, 구현자가 속도 및 정확성이 가장 중요하다고 결정한다면, 구현자는 주로 하드웨어 및/또는 펌웨어 수단을 선택할 수 있으며, 유연성이 가장 중요하다면, 구현자는 주로 소프트웨어 구현을 선택할 수 있으며; 또는, 다른 대안으로서, 구현자는 하드웨어, 소프트웨어 및/또는 펌웨어의 어떤 결합을 선택할 수 있다.There is little distinction between hardware and software implementations of aspects of the system; The use of hardware or software is a design choice that generally represents a trade-off between cost-effectiveness (although not always in that the choice between hardware and software in some contexts may be important) . There are a variety of vehicles (e.g., hardware, software and / or firmware) in which the processes and / or systems and / or other technologies described herein may be affected and preferred means include processes and / And / or the context in which other technologies are used. For example, if the implementer decides that speed and accuracy are the most important, the implementer can chose mainly hardware and / or firmware means, and if flexibility is of paramount importance, the implementer can chose mainly the software implementation; Alternatively, as an alternative, the implementer may select any combination of hardware, software, and / or firmware.

전술한 상세한 설명은 블록도, 흐름도, 및/또는 예시를 통해 장치 및/또는 프로세스의 다양한 실시예를 설명하였다. 그러한 블록도, 흐름도, 및/또는 예시는 하나 이상의 기능 및/또는 동작을 포함하는 한, 당업자라면 그러한 블록도, 흐름도, 또는 예시 내의 각각의 기능 및/또는 동작은 하드웨어, 소프트웨어, 펌웨어, 또는 그들의 실질적으로 임의의 조합의 넓은 범위에 의해 개별적으로 및/또는 집합적으로 구현될 수 있다는 것이 이해할 것이다. 일 실시예에서, 본 개시에 기재된 대상의 몇몇 부분은 ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array), DSP(Digital Signal Processor) 또는 다른 집적의 형태를 통해 구현될 수 있다. 그러나, 당업자라면, 본 개시의 실시예의 일부 양상은, 하나 이상의 컴퓨터 상에 실행되는 하나 이상의 컴퓨터 프로그램(예를 들어, 하나 이상의 컴퓨터 시스템 상에 실행되는 하나 이상의 프로그램), 하나 이상의 프로세서 상에서 실행되는 하나 이상의 프로그램(예를 들어, 하나 이상의 마이크로프로세서 상에서 실행되는 하나 이상의 프로그램), 펌웨어 또는 이들의 실질적으로 임의의 조합으로써, 전체적으로 또는 부분적으로 균등하게 집적 회로에서 구현될 수 있다는 점, 소프트웨어 및/또는 펌웨어를 위한 코드의 작성 및/또는 회로의 설계는 본 개시에 비추어 당업자의 기술 범위 내라는 점을 알 수 있을 것이다. 또한, 당업자라면, 본 개시의 대상의 매커니즘(mechanism)들이 다양한 형태의 프로그램 제품으로 분배될 수 있음을 이해할 것이며, 본 개시의 대상의 예시는, 분배를 실제로 수행하는데 사용되는 신호 베어링 매체의 특정 유형과 무관하게 적용됨을 이해할 것이다. 신호 베어링 매체의 예는, 플렉서블 디스크, 하드 디스크 드라이브(HDD), CD, DVD, 디지털 테이프, 컴퓨터 메모리 등과 같은 기록 가능 유형의 매체, 디지털 및/또는 아날로그 통신 매체(예를 들어, 섬유 광학 케이블, 도파관, 유선 통신 링크, 무선 통신 링크 등)와 같은 전송 유형 매체를 포함할 수 있으나, 이에 제한되지는 않는다.The foregoing detailed description has described various embodiments of devices and / or processes by way of block diagrams, flowcharts, and / or illustrations. As long as such block diagrams, flowcharts, and / or illustrations contain one or more functions and / or operations, those skilled in the art will recognize that each function and / or operation in such block diagrams, flowcharts or illustrations may be implemented in hardware, software, firmware, It is to be understood that they may be implemented individually and / or collectively by virtually any of a wide range of combinations. In one embodiment, some portions of the subject matter described in this disclosure may be implemented in the form of an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Digital Signal Processor (DSP), or other integrated form. However, those skilled in the art will appreciate that some aspects of embodiments of the present disclosure may be implemented as a combination of one or more computer programs (e.g., one or more programs running on one or more computer systems) running on one or more computers, (I. E., One or more programs running on one or more microprocessors), firmware, or substantially any combination thereof, may be implemented in whole or in part in an integrated circuit, software and / And / or the design of the circuitry is within the skill of one of ordinary skill in the art in light of the present disclosure. It will also be understood by those skilled in the art that the mechanisms of the subject matter of the present disclosure may be distributed in various types of program products and examples of objects of the present disclosure may include certain types of signal bearing media ≪ / RTI > Examples of signal bearing media include recordable type media such as flexible disks, hard disk drives (HDD), CD, DVD, digital tape, computer memory, etc., digital and / or analog communication media But are not limited to, transmission-type media such as waveguides, wired communication links, wireless communication links, etc.).

특정 예시적 기법이 다양한 방법 및 시스템을 이용하여 여기에서 기술되고 도시되었으나, 청구된 대상에서 벗어나지 않고, 다양한 기타의 수정이 이루어질 수 있고, 등가물이 대체될 수 있음이 당업자에 의해 이해되어야 한다. 추가적으로, 여기에 기술된 중심 개념으로부터 벗어남이 없이 특정 상황을 청구된 대상의 교시로 적응시키도록 많은 수정이 이루어질 수 있다. 따라서, 청구된 대상이 개시된 특정 예시로 제한되지 않으나, 그러한 청구된 대상은 또한 첨부된 청구범위 및 그 균등의 범위 내에 들어가는 모든 구현예를 포함할 수 있음이 의도된다.Although specific example techniques have been described and illustrated herein using various methods and systems, it should be understood by those skilled in the art that various other modifications can be made, and equivalents may be substituted, without departing from the claimed subject matter. In addition, many modifications may be made to adapt a particular situation to the teachings of the claimed subject matter without departing from the central concept described herein. Accordingly, it is intended that the claimed subject matter is not limited to the specific examples disclosed, but that the claimed subject matter may also include all embodiments falling within the scope of the appended claims and their equivalents.

Claims (14)

미디어 파일에 대체 광고를 삽입하기 위한 방법으로서, 상기 방법은 미디어 중계 서버 상에서 수행되며, 상기 미디어 중계 서버는 메모리부를 포함하고, 상기 메모리부는 상기 대체 광고의 적어도 일부를 캐싱(caching)하는 버퍼부를 포함하며,
상기 방법은,
상기 미디어 파일에서 상기 대체 광고의 삽입 위치를 검출하는 단계;
상기 버퍼부에 상기 대체 광고의 해당 프레임이 저장되어 있는지를 판단하는 단계;
상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있지 않는 경우, 상기 대체 광고의 파일로부터 적어도 하나의 프레임을 독출하여 상기 버퍼부에 저장하는 단계;
상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있는 경우, 상기 버퍼부로부터 상기 해당 프레임을 독출(讀出)하는 단계; 및
상기 독출된 해당 프레임을 상기 미디어 파일의 상기 대체 광고 삽입 위치에 삽입하는 단계
를 포함하는, 미디어 파일에 대체 광고를 삽입하기 위한 방법.
A method for inserting an alternate advertisement into a media file, the method comprising the steps of: performing on a media relay server, the media relay server including a memory portion, the memory portion including a buffer portion for caching at least a portion of the replacement advertisement In addition,
The method comprises:
Detecting an insertion position of the substitute advertisement in the media file;
Determining whether a corresponding frame of the substitute advertisement is stored in the buffer unit;
If the corresponding frame of the substitute advertisement is not stored in the buffer unit as a result of the determination, reading at least one frame from the file of the substitute advertisement and storing the same in the buffer unit;
Reading the corresponding frame from the buffer unit when the corresponding frame of the substitute advertisement is stored in the buffer unit as a result of the determination; And
Inserting the read-out corresponding frame into the substitute advertisement insertion position of the media file
And inserting the replacement advertisement into the media file.
제1항에 있어서,
상기 미디어 파일은 스트리밍 미디어 파일인 것인, 미디어 파일에 대체 광고를 삽입하기 위한 방법.
The method according to claim 1,
Wherein the media file is a streaming media file.
제1항에 있어서,
상기 방법은,
상기 미디어 파일을 미디어 파일 제공 서버로부터 수신하는 단계
를 더 포함하는, 미디어 파일에 대체 광고를 삽입하기 위한 방법.
The method according to claim 1,
The method comprises:
Receiving the media file from a media file providing server
Wherein the method further comprises the step of inserting a replacement advertisement into the media file.
삭제delete 제1항에 있어서,
상기 미디어 중계 서버는 대체 광고 저장부를 더 포함하며, 상기 대체 광고는 상기 대체 광고 저장부에 저장되어 있는 것인, 미디어 파일에 대체 광고를 삽입하기 위한 방법.
The method according to claim 1,
Wherein the media relay server further comprises a replacement advertisement storage, wherein the replacement advertisement is stored in the replacement advertisement storage.
제1항에 있어서,
상기 방법은,
상기 대체 광고의 파일로부터 독출된 상기 적어도 하나의 프레임이 원하는 형태인지를 판단하는 단계; 및
상기 적어도 하나의 프레임이 원하는 형태가 아닌 경우, 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하는 단계
를 더 포함하는, 미디어 파일에 대체 광고를 삽입하기 위한 방법.
The method according to claim 1,
The method comprises:
Determining whether the at least one frame read from the file of the replacement advertisement is in a desired format; And
If the at least one frame is not of a desired type, reading another at least one frame from the file of the replacement advertisement
Wherein the method further comprises the step of inserting a replacement advertisement into the media file.
제6항에 있어서,
상기 방법은,
상기 적어도 하나의 프레임이 원하는 형태인 경우, 상기 적어도 하나의 프레임이 충분한 지를 판단하는 단계; 및
상기 적어도 하나의 프레임이 충분하지 않은 경우, 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하는 단계
를 더 포함하는, 미디어 파일에 대체 광고를 삽입하기 위한 방법.
The method according to claim 6,
The method comprises:
Determining if the at least one frame is sufficient if the at least one frame is a desired type; And
If the at least one frame is insufficient, reading another at least one frame from the file of the replacement advertisement
Wherein the method further comprises the step of inserting a replacement advertisement into the media file.
미디어 중계 서버로서,
미디어 파일 제공 서버로부터 미디어 파일을 수신하기 위한 파일 수신부;
대체 광고를 저장하기 위한 대체 광고 저장부;
상기 대체 광고의 적어도 하나의 프레임을 캐싱하기 위한 버퍼부;
상기 수신된 미디어 파일에 상기 대체 광고를 결합하기 위한 대체 광고 결합부; 및
상기 대체 광고가 결합된 미디어 파일을 적어도 하나의 사용자 장치로 전송하기 위한 파일 전송부
를 포함하고,
상기 대체 광고 결합부는, 상기 미디어 파일에서 상기 대체 광고의 삽입 위치를 검출하고; 상기 버퍼부에 상기 대체 광고의 해당 프레임이 저장되어 있는지를 판단하고; 상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있지 않는 경우, 상기 대체 광고 저장부에 저장된 상기 대체 광고의 파일로부터 적어도 하나의 프레임을 독출하여 상기 버퍼부에 저장하고; 상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있는 경우 상기 버퍼부로부터 상기 해당 프레임을 독출하고; 그리고 상기 독출된 해당 프레임을 상기 미디어 파일의 상기 대체 광고 삽입 위치에 삽입하도록 구성된 것인, 미디어 중계 서버.
As a media relay server,
A file receiving unit for receiving a media file from a media file providing server;
An alternative advertisement storage unit for storing replacement advertisements;
A buffer for caching at least one frame of the replacement advertisement;
An alternative advertisement combining unit for combining the alternative advertisement into the received media file; And
A file transfer unit for transferring the media file to which the backup advertisement is combined to at least one user device,
Lt; / RTI >
The replacement advertisement combining unit detects an insertion position of the replacement advertisement in the media file; Determining whether a corresponding frame of the substitute advertisement is stored in the buffer unit; If the corresponding frame of the substitute advertisement is not stored in the buffer unit as a result of the determination, reads at least one frame from the file of the substitute advertisement stored in the substitute advertisement storage unit and stores the same in the buffer unit; If the corresponding frame of the substitute advertisement is stored in the buffer unit as a result of the determination, reading the corresponding frame from the buffer unit; And insert the read-out corresponding frame into the substitute advertisement insertion position of the media file.
제8항에 있어서,
상기 미디어 파일은 스트리밍 미디어 파일인 것인, 미디어 중계 서버.
9. The method of claim 8,
Wherein the media file is a streaming media file.
삭제delete 삭제delete 제8항에 있어서,
상기 대체 광고 결합부는, 상기 대체 광고의 파일로부터 독출된 상기 적어도 하나의 프레임이 원하는 형태인지를 판단하고; 그리고 상기 적어도 하나의 프레임이 원하는 형태가 아닌 경우 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하도록 구성된 것인, 미디어 중계 서버.
9. The method of claim 8,
Wherein the alternative advertisement combining unit determines whether the at least one frame read from the file of the replacement advertisement is in a desired format; And to read another at least one frame from a file of the alternate advertisement if the at least one frame is not of a desired type.
제12항에 있어서,
상기 대체 광고 결합부는, 상기 적어도 하나의 프레임이 원하는 형태인 경우 상기 적어도 하나의 프레임이 충분한 지를 판단하고; 그리고 상기 적어도 하나의 프레임이 충분하지 않은 경우 상기 대체 광고의 파일로부터 또 다른 적어도 하나의 프레임을 독출하도록 구성된 것인, 미디어 중계 서버.
13. The method of claim 12,
Wherein the alternative advertisement combining unit determines if the at least one frame is sufficient if the at least one frame is in a desired form; And to read another at least one frame from the file of the replacement advertisement if the at least one frame is not sufficient.
컴퓨터 실행 가능 명령어가 저장된 컴퓨터 판독가능 저장 매체로서, 상기 컴퓨터 실행 가능 명령어가 실행되면 컴퓨터로 하여금,
미디어 파일에서 대체 광고의 삽입 위치를 검출하는 단계;
버퍼부에 상기 대체 광고의 해당 프레임이 저장되어 있는지를 판단하는 단계;
상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있지 않는 경우, 상기 대체 광고의 파일로부터 적어도 하나의 프레임을 독출하여 상기 버퍼부에 저장하는 단계;
상기 판단의 결과 상기 버퍼부에 상기 대체 광고의 상기 해당 프레임이 저장되어 있는 경우, 상기 버퍼부로부터 상기 해당 프레임을 독출하는 단계; 및
상기 독출된 해당 프레임을 상기 미디어 파일의 상기 대체 광고 삽입 위치에 삽입하는 단계
를 포함하는 동작을 수행하도록 하는, 컴퓨터 판독가능 저장 매체.
A computer-readable storage medium having computer-executable instructions stored thereon, the computer-
Detecting an insertion position of the replacement advertisement in the media file;
Determining whether a corresponding frame of the substitute advertisement is stored in the buffer unit;
If the corresponding frame of the substitute advertisement is not stored in the buffer unit as a result of the determination, reading at least one frame from the file of the substitute advertisement and storing the same in the buffer unit;
If the corresponding frame of the substitute advertisement is stored in the buffer unit as a result of the determination, reading the corresponding frame from the buffer unit; And
Inserting the read-out corresponding frame into the substitute advertisement insertion position of the media file
The computer program product comprising: a computer readable medium;
KR1020140077585A 2014-06-24 2014-06-24 Method, server and computer-readable storage medium for inserting substitutional advertisement into media file KR101579283B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140077585A KR101579283B1 (en) 2014-06-24 2014-06-24 Method, server and computer-readable storage medium for inserting substitutional advertisement into media file

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140077585A KR101579283B1 (en) 2014-06-24 2014-06-24 Method, server and computer-readable storage medium for inserting substitutional advertisement into media file

Publications (1)

Publication Number Publication Date
KR101579283B1 true KR101579283B1 (en) 2015-12-21

Family

ID=55083979

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140077585A KR101579283B1 (en) 2014-06-24 2014-06-24 Method, server and computer-readable storage medium for inserting substitutional advertisement into media file

Country Status (1)

Country Link
KR (1) KR101579283B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020101819A1 (en) * 2018-11-16 2020-05-22 Gracenote, Inc. Detection of mute and compensation therefor during media replacement event

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020019894A (en) * 1999-03-23 2002-03-13 추후제출 Selectively caching video to improve on-demand response time
KR20090019862A (en) * 2006-05-25 2009-02-25 콸콤 인코포레이티드 Target advertisement in a broadcast system
KR20130099187A (en) * 2010-11-30 2013-09-05 모토로라 모빌리티 엘엘씨 A method of targeted ad insertion using http live streaming protocol

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020019894A (en) * 1999-03-23 2002-03-13 추후제출 Selectively caching video to improve on-demand response time
KR20090019862A (en) * 2006-05-25 2009-02-25 콸콤 인코포레이티드 Target advertisement in a broadcast system
KR20130099187A (en) * 2010-11-30 2013-09-05 모토로라 모빌리티 엘엘씨 A method of targeted ad insertion using http live streaming protocol

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020101819A1 (en) * 2018-11-16 2020-05-22 Gracenote, Inc. Detection of mute and compensation therefor during media replacement event
US11245958B2 (en) 2018-11-16 2022-02-08 Roku, Inc. Detection of mute and compensation therefor during media replacement event
US11317144B2 (en) 2018-11-16 2022-04-26 Roku, Inc. Detection of mute and compensation therefor during media replacement event

Similar Documents

Publication Publication Date Title
US9026718B2 (en) Method and apparatus for fault tolerant FOTA update with single backup block write
US9294853B1 (en) Audio control process
KR101932395B1 (en) Activity continuation between electronic devices
US9706002B2 (en) Push notification via file sharing service synchronization
US10117047B1 (en) Location and time based application management
US20180075487A1 (en) Advertisement management
US20140006719A1 (en) Mobile memory cache read optimization
CN104471992A (en) Energy-efficient transmission of content over a wireless connection
JP6465652B2 (en) Method and apparatus for processing audio / video files
US20090156250A1 (en) Website theme changing using a mobile device
KR20140132386A (en) Remote direct memory access with reduced latency
JP2010198604A (en) Device, method and computer program
CN114579055B (en) Disk storage method, device, equipment and medium
KR20230014829A (en) Advertisement display method, advertisement display device, and advertisement display program
CN104601535A (en) Video processing method and system
KR101579283B1 (en) Method, server and computer-readable storage medium for inserting substitutional advertisement into media file
KR101521780B1 (en) Continuous data delivery with energy conservation
US20160019306A1 (en) Link preview management
US9998536B2 (en) Metered network synchronization
US20150134680A1 (en) Method and apparatus for prefetching content in a data stream
TWI599220B (en) Cache data management system and method
JP2019029801A5 (en)
US20130311859A1 (en) System and method for enabling execution of video files by readers of electronic publications
KR20100091248A (en) Method, apparatus and computer program product for providing improved memory usage
KR20140145879A (en) Apparatas and method for mounting a file system of virtual block device in an electronic device

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant