KR20080104415A - System and method of editing moving picture and recording medium having the method embodied program - Google Patents

System and method of editing moving picture and recording medium having the method embodied program Download PDF

Info

Publication number
KR20080104415A
KR20080104415A KR1020070029051A KR20070029051A KR20080104415A KR 20080104415 A KR20080104415 A KR 20080104415A KR 1020070029051 A KR1020070029051 A KR 1020070029051A KR 20070029051 A KR20070029051 A KR 20070029051A KR 20080104415 A KR20080104415 A KR 20080104415A
Authority
KR
South Korea
Prior art keywords
template
data
icon
video
original video
Prior art date
Application number
KR1020070029051A
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 KR1020070029051A priority Critical patent/KR20080104415A/en
Publication of KR20080104415A publication Critical patent/KR20080104415A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/125Page layout or assigning input pages onto output media, e.g. imposition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Television Signal Processing For Recording (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

A system and method for editing a moving picture and a recording medium in which a program for implementing the method is recorded are provided to enable a user to insert/delete/edit a template at the desired position or time of an original moving picture. A method for editing an original moving picture which is being reproduced on a display unit comprises the following steps of: receiving template data(S311) and generating/storing raw data(S313); recording the time when the reproduction of the original moving picture is temporarily stopped as the time of starting to edit the original moving picture(S318); discriminating/recording a selected template icon(S321); recognizing the movement position of the selected template icon(S322); and synthesizing template data corresponding to the template icon recorded with the original moving picture corresponding to the editing start time which is recorded at the recognized position(S323).

Description

동영상 편집 시스템 및 방법과 그 방법을 구현한 프로그램이 기록된 기록매체{SYSTEM AND METHOD OF EDITING MOVING PICTURE AND RECORDING MEDIUM HAVING THE METHOD EMBODIED PROGRAM}Recording system on which a video editing system and method and a program implementing the method are recorded {SYSTEM AND METHOD OF EDITING MOVING PICTURE AND RECORDING MEDIUM HAVING THE METHOD EMBODIED PROGRAM}

도 1은 본 발명의 실시예에 따른 동영상 편집 시스템을 나타낸 구성 블록도이다.1 is a block diagram showing a video editing system according to an embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 레이어 매니저(Layer Manager)에서 처리되는 레이어들의 예를 나타낸 도면이다.2 is a diagram illustrating an example of layers processed in a layer manager according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 동영상 편집 방법을 나타낸 순서도이다.3 is a flowchart illustrating a video editing method according to an exemplary embodiment of the present invention.

도 4는 본 발명의 실시예에 따른 디스플레이(Display) 상에 표시되는 원본 동영상과 템플릿(Template)의 예를 나타낸 도면이다.4 is a diagram illustrating an example of an original video and a template displayed on a display according to an exemplary embodiment of the present invention.

도 5는 본 발명의 실시예에 따른 디스플레이 상에 표시되는 원본 동영상에 템플릿을 마우스 드래그(Mouse Drag)하는 예를 나타낸 도면이다.FIG. 5 is a diagram illustrating an example of a mouse dragging a template to an original video displayed on a display according to an exemplary embodiment of the present invention.

본 발명은 동영상 편집 시스템 및 방법과 그 방법을 구현한 프로그램이 기록된 기록매체에 관한 것으로, 특히 모든 사용자가 간단하게 동영상 편집을 수행하도 록 한 동영상 편집 시스템 및 방법과 그 방법을 구현한 프로그램이 기록된 기록매체에 관한 것이다.The present invention relates to a recording medium on which a video editing system and method and a program implementing the method are recorded. In particular, the video editing system and method for allowing all users to perform video editing simply and a program implementing the method are provided. It relates to a recorded recording medium.

일반적인 동영상 편집 과정을 간략하게 살펴보면 다음과 같다.The general video editing process is briefly described as follows.

기본적으로 캠코더 등과 같은 동영상 입력 장치로부터 PC(Personal Computer), 데스크톱(Desktop) 등과 같은 사용자 단말기로 동영상을 입력하게 되면, 사용자 단말기가 동영상 입력 장치로부터 입력되는 동영상을 캡쳐(Capture)하여 동영상 파일을 만든다. 이때, DV(Digital Video) 코덱을 사용하여 비디오를 압축한 것을 AVI(Audio Video Interleaving)라는 동영상 파일 포맷으로 저장하게 된다.Basically, when a video is input from a video input device such as a camcorder to a user terminal such as a personal computer or a desktop, the user terminal captures a video input from the video input device and creates a video file. . At this time, the compressed video using the DV (Digital Video) codec is stored in a video file format called AVI (Audio Video Interleaving).

이렇게 캡쳐된 동영상 파일을 적당한 시간적 길이로 잘라 다수 개의 영상 클립(Clip)을 만든다. 여기서, 영상 클립은 동영상 파일을 임의의 시간적 길이로 자른 각각의 동영상 구간을 의미한다.The captured video file is cut to a suitable length of time to create a plurality of video clips. Here, the video clip refers to each video section in which the video file is cut to an arbitrary temporal length.

그런 후에, 각 영상 클립을 붙이거나, 삭제하거나, 이동시켜 순서를 섞는 등과 같은 단순 편집을 수행하는데, 단순 편집 방식에는 사용자 환경에 따라 크게 타임-라인(Time-line) 방식과 썸네일(Thumbnail) 방식이 있다. 타임라인 방식은 동영상을 시간 축으로 하여 가로축으로 막대 형태로 놓고, 중첩되는 영상들은 세로축으로 겹쳐 놓는 형태를 취하도록 한다. 썸네일 방식은 영상 클립을 하나의 썸네일 아이콘으로 표시하고, 시간 순서대로 늘어놓은 형태를 취하는데, 카메라 필름을 연상케 하는 모습을 하고 있다.After that, simple editing such as pasting, deleting, or moving each video clip is performed. The simple editing method includes a time-line method and a thumbnail method according to a user's environment. There is this. In the timeline method, a video is set as a bar on a horizontal axis with a time axis, and overlapping images are stacked on a vertical axis. The thumbnail method displays video clips as one thumbnail icon and arranges them in chronological order, reminiscent of camera films.

또한, 영상 클립의 일부 혹은 전체 구간에 대해 글씨를 삽입하거나, 특수한 영상 효과를 첨가하는 특수 효과 적용을 수행한다. 특수 효과 적용은 자막, 필터 장면 효과의 세 가지 특수 효과 과정을 거칠 수 있다. 다르게는, 영상 클립의 일부 또는 전체에 대해 음향 믹싱 기능을 통해 배경 음악, 음향 혹은 음성을 첨가한다. 이때, 음향 믹싱 기능은 타임라인 방식을 따르며, 음향이라는 콘텐츠의 특성과 타임라인 방식의 특성 때문에 영상 편집보다도 훨씬 어렵고 시간이 많이 투입된다.In addition, a special effect is applied to insert a character or add a special image effect to a part or the entire section of the image clip. Applying the special effects can go through three special effects processes: subtitles and filter scene effects. Alternatively, background music, sound, or voice is added to the sound clips by some or all of the video clips. At this time, the sound mixing function follows the timeline method, and it is much more difficult and time-consuming than the video editing due to the characteristics of the content of sound and the timeline method.

이에 따라, 최종적으로 가공된 동영상 파일로 출력해 주는 렌더링 동작을 수행함으로써 이루어진다. 렌더링은 특정한 용도에 맞는 적절한 영상 코덱을 사용하여 동영상을 출력한다. 이때, 동영상의 화면 크기(해상도), 화질의 정보, 파일의 예상 용량, 동영상의 활용용도 등 수많은 변수들을 사용자가 직접 선택해야 하며, 활용의 목적에 따라 각기 다른 코덱을 사용하고 코덱에 맞는 따른 설정을 수행해야 한다.Accordingly, this is accomplished by performing a rendering operation that outputs the finally processed video file. Rendering outputs a video using the appropriate video codec for a specific purpose. At this time, the user must select a number of variables such as the screen size (resolution) of the video, the information of the image quality, the estimated capacity of the file, the usage of the video, etc., and use different codecs according to the purpose of use and set them according to the codec. Should be done.

이와 같은 동영상 편집 과정은 업무적 특성상으로 사용자가 동영상 편집에 대한 기술적 이해가 필요하므로, 전문적인 지식이나 경험을 갖추고 있거나, 전문 교육을 받아야 한다는 특성이 있다. 따라서 지식이나 경험이 부족한 사용자들은 각각의 단계별 기능의 이해는 물론이고 전반적인 활용의 단계를 이해하기 매우 어려운 단점이 있다.This video editing process has a characteristic that a user needs to have a technical understanding of video editing due to a business characteristic, and thus has professional knowledge or experience, or needs to receive professional training. Therefore, users who lack knowledge or experience have a very difficult disadvantage to understand the function of each step as well as the overall step of utilization.

즉, 기존의 동영상 편집 기술의 경우에는, 사용자가 매뉴얼을 완전히 습득해야 사용할 수 있어 사용상에 많은 어려움이 있었다.That is, in the case of the existing video editing technology, the user has to learn the manual completely before using it, which causes a lot of difficulties in use.

본 발명이 이루고자 하는 기술적 과제는, 모든 사용자가 간단하게 동영상 편 집을 수행하도록 한 동영상 편집 시스템 및 방법과 그 방법을 구현한 프로그램이 기록된 기록매체를 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in an effort to provide a video recording system and method for allowing all users to perform video editing simply and a recording medium on which a program implementing the method is recorded.

이러한 과제를 해결하기 위해, 본 발명에 따르면, 사용자 단말기 또는 웹에서 디지털 비디오를 빠르고 쉽게 편집하여 이를 사용자 단말기 또는 웹에서 출력할 수 있도록 한다. 또한, 본 발명은 비디오 캡처링(Capturing)에서부터 편집, 최종 프로젝트 출력에 이르기까지 디지털 비디오 편집 과정 등의 사용자 요구사항을 최대한 반영하며, 일반 사용자가 어려움 없이 자신의 디지털 비디오를 쉽게 편집하도록 한다. 또한, 본 발명은 디지털 비디오 원본을 가져오기(Import)를 수행하여 모션이나 필터, 전환 효과를 적용시켜 디지털 비디오 원본을 색다르게 연출하며, 가져오기로 높은 대역폭의 스트리밍 비디오를 제작하고 윈도우 미디어 플레이어 등으로 재생하도록 한다.In order to solve this problem, according to the present invention, it is possible to quickly and easily edit the digital video on the user terminal or the web to output it on the user terminal or the web. In addition, the present invention fully reflects user requirements such as digital video editing process from video capturing to editing to final project output, and enables the general user to easily edit his digital video without difficulty. In addition, the present invention performs the import of digital video original (Import) to apply the motion, filter, transition effect to produce a different digital video original, create a high-bandwidth streaming video by importing, such as Windows Media Player Play it back.

본 발명의 하나의 특징에 따르면, 디스플레이 상에서 재생 중인 원본 동영상을 편집하는 방법에 있어서, 템플릿 데이터를 수신받아 로우 데이터로 생성시켜 저장하는 단계, 상기 템플릿 데이터의 아이콘을 상기 템플릿 데이터의 종류별로 디스플레이하는 단계, 상기 원본 동영상을 일시 정지하는 경우에, 일시 정지한 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하는 단계, 상기 템플릿 아이콘을 선택하는 경우에, 선택된 템플릿 아이콘을 식별하여 기록하는 단계, 상기 선택된 템플릿 아이콘을 상기 원본 동영상으로 이동하는 경우에, 상기 선택된 템플릿 아이콘의 이동 위치를 인식하는 단계, 그리고 상기 인식된 위치에 상기 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 기록된 템플릿 아이콘에 대응하는 템플릿 데이터를 합성하는 단계를 포함하는 동영상 편집 방법을 제공한다. 여기서, 상기 이동 위치를 인식하는 단계는, 마우스를 이용하여 상기 선택된 템플릿 아이콘을 드래그하여 상기 원본 동영상으로 이동하는 경우에, 상기 원본 동영상 상의 마우스 드래그된 위치를 인식한다.According to one aspect of the invention, in the method for editing the original video being played on the display, receiving the template data, generating and storing as raw data, displaying the icon of the template data for each type of template data In the case of pausing the original video, recording the paused time as an edit start time of the original video, and in the case of selecting the template icon, identifying and recording the selected template icon. Recognizing a moving position of the selected template icon when the template icon is moved to the original moving picture, and corresponding to the recorded moving image data and the original moving picture data corresponding to the edit start time recorded at the recognized location. Sum template data It provides a video editing method comprising the steps of. Here, in the recognizing the moving position, when dragging the selected template icon by using a mouse to move to the original video, it recognizes the mouse dragged position on the original video.

그리고 이러한 동영상 편집 방법은, 상기 템플릿 데이터의 업그레이드 요청 시에, 템플릿 서버에 접속하여 템플릿 데이터를 수신받는 단계, 상기 수신받은 템플릿 데이터를 로우 데이터로 생성시켜 상기 리스트에 업데이트하는 단계, 그리고 상기 수신받은 템플릿 데이터의 아이콘을 상기 수신받은 템플릿 데이터의 종류별로 상기 다스플레이에 업데이트하는 단계를 더 포함한다.The video editing method may include receiving template data by accessing a template server, generating template data as raw data and updating the list when the template data is upgraded. The method may further include updating an icon of template data on the display for each type of the received template data.

본 발명의 다른 특징에 따르면, 디스플레이 상에서 재생 중인 원본 동영상을 편집하는 시스템에 있어서, 템플릿 데이터를 수신받아 로우 데이터로 생성시키는 디코더, 상기 로우 데이터를 상기 템플릿 데이터의 종류 별로 정의된 리스트에 저장하는 메모리, 상기 원본 동영상의 일시 정지, 템플릿 아이콘의 선택, 템플릿 아이콘의 이동을 인식하는 유저 인터페이스, 상기 인식된 일시 정지의 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하고, 상기 인식된 선택 템플릿 아이콘을 기록하고, 상기 인식된 이동 위치에 상기 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 템플릿 아이콘에 대응하는 템플릿 데이터를 합성하는 합성기, 그리고 상기 템플릿 아이콘을 상기 템플릿 데이터의 종류별로 디스플레이하고, 상기 합성기에서 합성된 동영상을 디스플레이하는 뷰어 컨트롤러를 포함하는 동영상 편집 시스템을 제공한다.According to another aspect of the invention, in the system for editing the original video being played on the display, a decoder for receiving the template data to generate the raw data, a memory for storing the raw data in a list defined for each type of the template data A pause of the original video, selection of a template icon, a user interface for recognizing movement of a template icon, recording the recognized pause time as an edit start time of the original video, and recording the recognized selection template icon And a synthesizer for synthesizing the original moving picture data corresponding to the editing start time and the template data corresponding to the template icon to the recognized moving position, and displaying the template icon for each type of the template data, and synthesizing the synthesizer in the synthesizer. Old movies It provides a video editing system that includes a controller that displays the viewer.

그리고 상기 합성기는, 상기 인식된 일시 정지의 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하고, 상기 인식된 선택 템플릿 아이콘을 기록하고, 상기 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 템플릿 아이콘에 대응하는 템플릿 데이터를 레이어로 처리하는 레이어 매니저, 그리고 상기 인식된 이동 위치에 상기 원본 동영상 데이터의 레이어와 상기 템플릿 데이터의 레이어를 압축 합성시키는 압축 매니저를 포함한다.The synthesizer records the recognized pause time as the edit start time of the original video, records the recognized selection template icon, and corresponds to the original video data and the template icon corresponding to the edit start time. And a layer manager configured to process the template data into layers, and to compress and synthesize the layer of the original video data and the layer of the template data at the recognized moving position.

본 발명의 또 다른 특징에 따르면, 디스플레이 상에서 재생 중인 원본 동영상을 편집하는 기능을 구현한 프로그램이 기록된 기록매체에 있어서, 템플릿 데이터를 수신받아 로우 데이터로 생성시켜 저장하는 기능, 상기 템플릿 데이터의 아이콘을 상기 템플릿 데이터의 종류별로 디스플레이하는 기능, 상기 원본 동영상을 일시 정지하는 경우에, 일시 정지한 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하는 기능, 상기 템플릿 아이콘을 선택하는 경우에, 선택된 템플릿 아이콘을 식별하여 기록하는 기능, 상기 선택된 템플릿 아이콘을 상기 원본 동영상으로 이동하는 경우에, 상기 선택된 템플릿 아이콘의 이동 위치를 인식하는 기능, 그리고 상기 인식된 위치에 상기 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 기록된 템플릿 아이콘에 대응하는 템플릿 데이터를 합성하는 기능을 구현한 프로그램이 기록된 기록매체를 제공한다.According to still another aspect of the present invention, in a recording medium on which a program that implements a function of editing an original video being played on a display is recorded, a function of receiving and storing template data as raw data and storing the icon of the template data A function of displaying the template data according to the type of the template data, a function of recording the paused time as an edit start time of the original video when the original video is paused, and a selected template icon when the template icon is selected. A function of identifying and recording a function, a function of recognizing a moving position of the selected template icon when the selected template icon is moved to the original video, and an original video corresponding to the recorded editing start time at the recognized location. Data and the recorded template And it provides a recording medium corresponding to the implementation of the function to synthesize the template data record to the program icon.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세 히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "…모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when a part is said to "include" a certain component, it means that it can further include other components, without excluding other components unless specifically stated otherwise. In addition, the terms “… unit”, “… unit”, “… module” described in the specification mean a unit that processes at least one function or operation, which may be implemented by hardware or software or a combination of hardware and software. Can be.

이제 본 발명의 실시예에 따른 동영상 편집 시스템 및 방법과 그 방법을 구현한 프로그램이 기록된 기록매체에 대하여 도면을 참고로 하여 상세하게 설명한다.Now, a video recording system and method according to an embodiment of the present invention and a recording medium on which a program implementing the method are recorded will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 동영상 편집 시스템의 구성 블록도이다. 여기서, 본 발명의 실시예는 모든 사용자가 동영상 편집을 간단하게 구현할 수 있는 시스템에서 모션이나 필터, 전환, 자막 넣기, 아이콘 넣기, 저장하기, 열기 등의 기능을 제공하도록 한다. 또한, 본 발명의 실시예는 사용자가 손수 제작하여 저장해 둔 별도의 메모리(설명의 편의상으로 도면에는 도시하지 않음)로부터 판독하거나 캠코더 등과 같은 동영상 입력 장치(설명의 편의상으로 도면에는 도시하지 않음)로부터 입력받은 원본 동영상 자료에 아이콘, 동영상, 자막, 플래쉬 등과 같은 모든 템플릿(Template)을 추가하고, 사용자가 마우스 드래그(Mouse Drag)를 이용하여 템플릿을 원하는 위치나 시간에 삽입, 삭제, 편집 등을 수행할 수 있도록 한다.1 is a block diagram illustrating a video editing system according to an exemplary embodiment of the present invention. Here, an embodiment of the present invention is to provide a function such as motion or filter, switching, subtitles, inserting icons, saving, opening, etc. in a system in which all users can easily implement video editing. In addition, the embodiment of the present invention can be read from a separate memory (not shown in the drawings for convenience of description) stored by the user by hand or from a video input device (not shown in the drawings for convenience of description) such as a camcorder Add all templates such as icons, videos, subtitles, flashes, etc. to the original video data input, and insert, delete, or edit templates at the desired location or time by using mouse drag. Do it.

도 1에 도시한 바와 같이, 본 발명의 실시예에 따른 동영상 편집 시스템은, 디코더(Decoder)(110), 메모리(120), 유저 인터페이스(User Interface)(13), 합성기(Synthesizer)(140), 뷰어 컨트롤러(View Controller)(150), 디스플레이(160)를 포함한다.As shown in FIG. 1, a video editing system according to an exemplary embodiment of the present invention includes a decoder 110, a memory 120, a user interface 13, and a synthesizer 140. , A viewer controller 150, and a display 160.

디코더(110)는 편집용 템플릿의 모든 자료(즉, 정지영상(Image), 동영상, 텍스트, 플래쉬 등의 템플릿 데이터)를 각 데이터의 종류에 대응하는 디코딩(Decoding)을 각각 수행하여 로우 데이터(Raw Data)로 생성시켜 메모리(120)에 저장한다. 이때, 디코더(110)는 편집용 템플릿이 아이콘 형태로 디스플레이(16)의 화면 창에 표시될 수 있도록 편집용 템플릿의 아이콘 정보를 뷰어 컨트롤러(150)로 전달한다. 여기서, 템플릿 데이터는, 각 데이터의 종류(즉, 아이콘(정지영상(Image)), 동영상, 자막, 플래쉬 등)별로 디스플레이(160) 상에 편집용 템플릿으로 표시하기 위한 다수 개의 템플릿의 아이콘 정보, 각 템플릿의 컨텐츠(Contents) 내용(예를 들어, 동영상 데이터, 이미지 데이터, 텍스트 데이터, 플래쉬 데이터 등)을 포함하며, 템플릿 서버(설명의 편의상으로 도면에는 도시하지 않음)로부터 수신받는다.The decoder 110 decodes all data of the template for editing (ie, template data such as still images, videos, texts, flashes, etc.) corresponding to each type of data, respectively, to perform row data (Raw). Data) and store it in the memory 120. In this case, the decoder 110 transmits the icon information of the editing template to the viewer controller 150 so that the editing template may be displayed in the screen window of the display 16 in the form of an icon. Here, the template data may include icon information of a plurality of templates for displaying as an editable template on the display 160 for each type of data (ie, icons (still images, videos, captions, flashes, etc.), Contents of each template includes contents (eg, video data, image data, text data, flash data, etc.), and are received from a template server (not shown in the drawings for convenience of description).

메모리(120)는 디코더(110)로부터 입력되는 템플릿 데이터를 각 데이터의 종류 별로 정의된 리스트에 저장한다.The memory 120 stores template data input from the decoder 110 in a list defined for each type of data.

유저 인터페이스(130)는 마우스나 키보드 등과 같은 입력 장치(설명의 편의 상으로 도면에는 도시하지 않음)를 통해 입력되는 사용자의 일시정지 명령키를 인식하여 해당 인식된 정보(즉, 사용자의 일시정지 명령)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달한다. 다르게는, 유저 인터페이스(130)는 입력 장치를 통해 입력되는 시간이나 마우스 드래그된 재생경과 표시 바 상의 위치에 해당되는 시간을 인식하여 해당 인식된 정보(즉, 사용자의 일시정지 시간)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달한다. 또한, 유저 인터페이스(130)는 입력 장치를 통해 선택된 템플릿을 인식하여 해당 인식된 정보(즉, 선택된 템플릿)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달한다. 또한, 유저 인터페이스(130)는 입력 장치를 통해 선택된 템플릿의 이동 위치(예를 들어, 마우스에 의해 선택된 템플릿의 드래그 위치)를 인식하여 해당 인식된 정보(즉, 합성 위치)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달한다.The user interface 130 recognizes the user's pause command key input through an input device (not shown in the drawing for convenience of description) such as a mouse or a keyboard, and recognizes the corresponding information (that is, the user's pause command). ) Is transmitted to the synthesizer 140 and the viewer controller 150. Alternatively, the user interface 130 recognizes the time input through the input device or the time corresponding to the mouse dragged playback scene and the position on the display bar, and synthesizes the recognized information (ie, the pause time of the user). ) And to the viewer controller 150. In addition, the user interface 130 recognizes the selected template through the input device and transfers the recognized information (ie, the selected template) to the synthesizer 140 and the viewer controller 150. In addition, the user interface 130 recognizes the moving position (eg, the dragging position of the template selected by the mouse) of the selected template through the input device, and synthesizes the recognized information (ie, the synthesis position) with the synthesizer 140 and Transfer to the viewer controller 150.

합성기(140)는 유저 인터페이스(130)로부터 전달되는 사용자의 일시정지 명령을 감지하여 일시 정지시킨 원본 동영상에 해당되는 편집 시작 시간을 별도의 내부 메모리(설명의 편의상으로 도면에는 도시하지 않음)에 기록하며, 유저 인터페이스(130)로부터 전달되는 선택된 템플릿을 감지하여 선택된 템플릿을 별도의 내부 메모리에 기록한다. 그런 후 합성기(140)는 유저 인터페이스(130)를 통해 인가되는 선택된 템플릿의 이동 위치(즉, 합성 위치)를 감지하여 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터와 기록된 템플릿에 대응하는 템플릿 데이터를 레이어로 처리하여 합성하며, 합성된 동영상 데이터를 뷰어 컨트롤러(150)에게 전달한다. 또한, 합성기(140)는 레이어 매니저(Layer Manager)(141), 압축 매니저(142)를 포 함한다.The synthesizer 140 detects the user's pause command transmitted from the user interface 130 and records the edit start time corresponding to the original paused video in a separate internal memory (not shown in the drawing for convenience of description). The controller detects the selected template transmitted from the user interface 130 and records the selected template in a separate internal memory. Then, the synthesizer 140 detects the moving position (ie, the composite position) of the selected template applied through the user interface 130, and the original video data corresponding to the recorded editing start time and the template data corresponding to the recorded template. Process the image into a layer and synthesize the image data, and deliver the synthesized video data to the viewer controller 150. The synthesizer 140 also includes a layer manager 141 and a compression manager 142.

여기서, 레이어 매니저(141)는 유저 인터페이스(130)로부터 전달되는 사용자의 일시정지 명령(또는, 일시정지 시간)을 감지하여 원본 동영상의 식별 정보 및 편집 시작 시간을 별도의 내부 메모리(설명의 편의상으로 도면에는 도시하지 않음)에 기록하며, 유저 인터페이스(130)로부터 전달되는 선택된 템플릿을 감지하여 합성하고자 하는 템플릿(즉, 선택된 템플릿)을 내부 메모리에 기록한다. 그런 후 레이어 매니저(141)는 유저 인터페이스(130)를 통해 인가되는 선택된 템플릿의 이동 위치(즉, 합성 위치)를 감지하는 경우에 도 2에 도시된 바와 같이, 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터를 기본적인 레이어(즉, 레이어 1)로 처리함과 동시에, 기록된 템플릿에 대응하는 템플릿 데이터(예를 들어, 동영상, 이미지, 텍스트)를 하위 레이어(예를 들어, 레이어 2, 레이어 3, 레이어 4)로 처리하여 처리된 각 레이어들을 압축 매니저(142)에게 전달한다. 또한, 레이어 매니저(141)는 처리된 각 레이어들의 타입, 삽입 시간과 삭제 시간, 각 레이어들 간의 우선순위(Priority) 관계, 효과 등에 관한 정보를 관리한다.Here, the layer manager 141 detects a user's pause command (or a pause time) transmitted from the user interface 130 and stores the identification information and the edit start time of the original video in a separate internal memory (for convenience of description). (Not shown in the drawing), the template to be synthesized by detecting the selected template transmitted from the user interface 130 is recorded in the internal memory. Then, when the layer manager 141 detects a moving position (ie, a composite position) of the selected template applied through the user interface 130, as shown in FIG. 2, the original corresponding to the recorded editing start time is shown. While processing video data as a basic layer (ie, layer 1), template data (e.g., video, image, text) corresponding to the recorded template can be processed in lower layers (e.g., layer 2, layer 3, Each layer processed by the layer 4) is transferred to the compression manager 142. In addition, the layer manager 141 manages information on types of processed layers, insertion time and deletion time, priority relationship between the layers, effects, and the like.

압축 매니저(142)는 레이어 매니저(142)에서 처리된 각 레이어들을 하나의 출력으로 압축시켜 합성 동영상 데이터를 생성하며, 생성된 합성 동영상 데이터를 뷰어 컨트롤러(150)에게 전달한다.The compression manager 142 compresses each layer processed by the layer manager 142 into one output to generate composite video data, and transmits the generated composite video data to the viewer controller 150.

뷰어 컨트롤러(150)는 디코더(110)로부터 전달되는 템플릿의 아이콘 정보를 각 데이터의 종류 별로 구분하여 디스플레이(160)의 화면 창에 표시해 준다. 뷰어 컨트롤러(150)는 유저 인터페이스(130)로부터 전달되는 사용자의 일시정지 명령을 확인하여 사용자가 편집하고자 원하는 장면에 현재 재생되고 있는 원본 동영상을 일시 정시시켜 준다. 다르게는, 뷰어 컨트롤러(150)는 유저 인터페이스(130)로부터 전달되는 사용자의 일시정지 시간을 확인하고 디스플레이(160)의 동작을 제어하여 사용자가 편집하고자 원하는 시간에 일시 정지된 원본 동영상을 표시해 준다. 또한, 뷰어 컨트롤러(150)는 유저 인터페이스(130)로부터 전달되는 선택된 템플릿을 확인하고 디스플레이(160)의 동작을 제어하여 선택된 템플릿을 표시해 준다. 또한, 뷰어 컨트롤러(150)는 유저 인터페이스(130)를 통해 인가되는 선택된 템플릿의 이동 위치(예를 들어, 드래그 위치)를 확인하고 합성기(140)로부터 합성 동영상 데이터를 인가받아 디스플레이(160)의 동작을 제어하여 합성 동영상을 표시해 준다.The viewer controller 150 divides the icon information of the template transmitted from the decoder 110 for each type of data and displays the icon information on the screen window of the display 160. The viewer controller 150 checks the pause command of the user transmitted from the user interface 130 to temporarily pause the original video currently being played in the scene that the user wants to edit. Alternatively, the viewer controller 150 checks the pause time of the user transmitted from the user interface 130 and controls the operation of the display 160 to display the original paused video at the time that the user wants to edit. In addition, the viewer controller 150 identifies the selected template transmitted from the user interface 130 and controls the operation of the display 160 to display the selected template. In addition, the viewer controller 150 confirms a moving position (eg, a drag position) of the selected template applied through the user interface 130 and receives the composite video data from the synthesizer 140 to operate the display 160. To display the composite video.

디스플레이(160)는 뷰어 컨트롤러(150)의 제어에 따라 템플릿의 아이콘, 원본 동영상, 합성 동영상 등을 화면에 표시한다.The display 160 displays an icon of the template, an original video, a composite video, and the like on the screen under the control of the viewer controller 150.

아래에서는 본 발명의 실시예에 따른 동영상 편집 방법에 대해서 도 3의 순서도를 참조하여 상세하게 설명한다.Hereinafter, a video editing method according to an exemplary embodiment of the present invention will be described in detail with reference to the flowchart of FIG. 3.

우선, 사용자는 자신의 단말기를 이용하여 웹을 통해 템플릿 서버에 접속한 후에, 템플릿 서버로부터 동영상, 정지영상, 텍스트, 플래쉬 등의 템플릿 데이터(즉, 템플릿의 아이콘 정보와 컨텐츠 내용)를 수신받는다(S311).First, after a user accesses a template server through the web using his terminal, the user receives template data (ie, icon information and content content of a template) such as a video, still image, text, and flash from the template server ( S311).

이때, 템플릿 서버로부터 템플릿 데이터를 수신받는 경우, 수신받은 템플릿 데이터 중에서 컨텐츠 내용(예를 들어, 동영상 데이터, 이미지 데이터, 텍스트 데이터, 플래쉬 데이터 등)을 각 데이터의 종류에 따라 이에 적합한 디코더(110)를 통과하여 로우 데이터로 생성하게 된다(S312). 또한, 이렇게 생성된 로우 데이터는 각 데이터의 종류 별로 정의된 메모리(120) 내의 리스트에 저장되며(S313), 추후에 사용자의 입력에 따라 합성기(140)로 보내어진다.In this case, when the template data is received from the template server, the decoder 110 suitable for the content content (for example, video data, image data, text data, flash data, etc.) among the received template data according to each type of data. The data is passed through to generate row data (S312). In addition, the generated raw data is stored in a list in the memory 120 defined for each type of data (S313), and later sent to the synthesizer 140 according to a user's input.

여기서, 본 발명의 실시예는 예를 들어, 데이터의 종류가 텍스트인 경우에 텍스트를 디코딩하기에 적합한 디코더를 사용하도록 하며, 데이터의 종류가 동영상인 경우에 동영상을 디코딩하기에 적합한 디코더를 사용하도록 하는 등과 같이, 각 데이터의 종류에 따라 별도의 디코더를 사용할 수 있음을 잘 이해해야 한다.Here, an embodiment of the present invention allows, for example, to use a decoder suitable for decoding text when the type of data is text, and to use a decoder suitable for decoding video when the type of data is video. It should be well understood that a separate decoder can be used according to each type of data.

그리고 동영상, 아이콘, 자막, 플래쉬 등을 나타내는 템플릿의 아이콘 정보는, 뷰어 컨트롤러(150)에 의해서 각 데이터의 종류별로 디스플레이(160) 상에 표시된다(S314). 이때, 도 4에 도시된 바와 같이, 디스플레이(160) 상에 표시되는 템플릿의 아이콘(410)은, 각 데이터의 종류별로 아이콘, 동영상, 자막, 플래쉬로 분류되어 표시된다.The icon information of the template representing the video, icon, caption, flash, etc. is displayed on the display 160 by the type of each data by the viewer controller 150 (S314). In this case, as shown in FIG. 4, the icon 410 of the template displayed on the display 160 is classified into an icon, a video, a caption, and a flash for each type of data.

다르게는, 추후에 사용자가 템플릿 서버에 접속하여 템플릿 데이터를 업그레이드(Upgrade)하는 경우에도, 상술한 단계 S311에서 S314까지의 과정을 유사하게 반복 수행함으로써, 메모리(120) 내에 저장된 로우 데이터를 업데이트(Update)해 줌과 동시에 다스플레이(160)상에 표시되는 템플릿의 아이콘도 업데이트해 준다.Alternatively, even when the user later accesses the template server and upgrades the template data, the above-described steps S311 to S314 are similarly repeated to thereby update the raw data stored in the memory 120 ( Update) and at the same time update the icon of the template displayed on the display (160).

그런 후에, 뷰어 컨트롤러(150)의 제어에 따라 사용자가 손수 제작하여 저장해 둔 별도의 메모리로부터 판독하거나 캠코더 등과 같은 동영상 입력 장치로부터 입력받은 원본 동영상 데이터를 도 4에 도시된 바와 같은 디스플레이(160) 상의 동영상 플레이 창(420)을 통해 재생시키고 있는 도중에(S315), 사용자가 편집하고자 원하는 장면에서 마우스나 키보드 등과 같은 입력 장치를 통해 원본 동영상을 일시 정지시키기 위한 일시정지 명령키를 입력하는 경우에, 유저 인터페이스(130)는 입력 장치를 통해 입력되는 사용자의 일시정지 명령키를 인식하여(S316) 해당 인식된 정보(즉, 사용자의 일시정지 명령)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달해 준다.Thereafter, under the control of the viewer controller 150, original video data read from a separate memory, which is manually manufactured and stored by the user, or input from a video input device such as a camcorder, is displayed on the display 160 as shown in FIG. During playback through the video play window 420 (S315), when the user inputs a pause command key for pausing the original video through an input device such as a mouse or a keyboard in a scene desired to be edited, the user The interface 130 recognizes the user's pause command key input through the input device (S316) and transmits the recognized information (that is, the user's pause command) to the synthesizer 140 and the viewer controller 150. .

이에, 뷰어 컨트롤러(150)는 유저 인터페이스(130)로부터 전달되는 사용자의 일시정지 명령을 확인하고 디스플레이(160)의 동작을 제어하여 사용자가 편집하고자 원하는 장면에 현재 재생되고 있는 원본 동영상을 일시 정지시켜 준다(S317).Accordingly, the viewer controller 150 checks the pause command of the user transmitted from the user interface 130 and controls the operation of the display 160 to pause the original video currently being played in the scene that the user wants to edit. (S317).

이와 동시에, 합성기(140) 내의 레이어 매니저(141)는 유저 인터페이스(130)로부터 전달되는 사용자의 일시정지 명령을 감지한 경우에, 상술한 단계 S317에서 원본 동영상을 일시 정지시킨 시간을 확인하여 원본 동영상의 편집 시작 시간으로 별도의 내부 메모리에 기록한다(S318). 즉, 합성기(140)가 어떤 원본 동영상이 어느 시간에 편집되어야 하는지를 기록함으로써, 추후에 기록된 정보(예를 들어, 상술한 단계 S317에서 일시 정지시킨 원본 동영상의 식별 정보 및 편집 시작 시간)가 최종 합성 동영상을 생성할 때에 사용되도록 한다.At the same time, when the layer manager 141 in the synthesizer 140 detects a user's pause command transmitted from the user interface 130, the layer manager 141 checks the time at which the original video is paused in step S317 described above. The recording start time is recorded in a separate internal memory (S318). That is, the synthesizer 140 records which original video is to be edited at what time, so that the information recorded later (for example, the identification information and the edit start time of the original video paused in step S317 described above) is final. Used to create a composite video.

다르게는, 원본 동영상을 재생시키거나, 재생시키지 않거나, 일시정지 중이거나 상관없이 사용자가 입력 장치를 이용하여 편집하고자 원하는 원본 동영상을 선택하고 편집하고자 원하는 시간을 입력하거나, 사용자가 마우스를 이용하여 편집하고자 원하는 원본 동영상을 선택하고 재생경과 표시 바 상에서 편집하고자 원하는 시간에 해당되는 위치로 마우스 드래그하는 경우에, 유저 인터페이스(130)는 입력 장치를 통해 선택된 원본 동영상과, 입력되는 시간이나 마우스 드래그된 재생경 과 표시 바 상의 위치에 해당되는 시간을 인식하여 해당 인식된 정보(즉, 원본 동영상의 식별 정보 및 일시정지 시간)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달해 준다.Alternatively, the user can use the input device to select the original movie that he or she wants to edit and enter the desired time for editing, whether the original movie is playing, not playing, or paused, or the user edits using the mouse. In the case of selecting a desired original video and dragging the mouse to a position corresponding to the desired time to be edited on the playback time display bar, the user interface 130 may play the selected original video through the input device and the input time or mouse dragged playback. It recognizes the time corresponding to the position on the progress display bar and transmits the recognized information (ie, identification information and pause time of the original video) to the synthesizer 140 and the viewer controller 150.

이에, 뷰어 컨트롤러(150)는 유저 인터페이스(130)로부터 전달되는 원본 동영상의 식별 정보 및 일시정지 시간을 확인하고 디스플레이(160)의 동작을 제어하여 사용자가 편집하고자 원하는 시간에 일시 정지된 원본 동영상을 표시해 준다. 이와 동시에, 합성기(140) 내의 레이어 매니저(141)는 유저 인터페이스(130)로부터 전달되는 원본 동영상의 식별 정보 및 일시정지 시간을 감지하여 원본 동영상의 식별 정보 및 편집 시작 시간으로 별도의 내부 메모리에 기록하고 추후에 이것들이 최종 합성 동영상을 생성할 때에 사용되도록 한다.Accordingly, the viewer controller 150 checks the identification information and the pause time of the original video transmitted from the user interface 130 and controls the operation of the display 160 to display the original video paused at a desired time for editing by the user. Mark it. At the same time, the layer manager 141 in the synthesizer 140 detects identification information and pause time of the original video transmitted from the user interface 130 and records them in a separate internal memory as identification information and edit start time of the original video. Later, they will be used when generating the final composite video.

그리고 도 5에 도시된 예와 같이, 사용자가 마우스를 이용하여 상술한 단계 S317에서 일시 정지시킨 원본 동영상(520)과 합성하고자 하는 템플릿의 아이콘(511, 512)을 선택하는 경우에, 유저 인터페이스(130)는 입력 장치를 통해 선택된 템플릿을 인식하여(S319) 해당 인식된 정보(즉, 선택된 템플릿 아이콘(511, 512))를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달해 준다.As shown in the example of FIG. 5, when the user selects icons 511 and 512 of a template to be synthesized from the original video 520 paused in the above-described step S317 by using a mouse, the user interface ( 130 recognizes the selected template through the input device (S319) and delivers the recognized information (that is, the selected template icons 511 and 512) to the synthesizer 140 and the viewer controller 150.

이에, 뷰어 컨트롤러(150)는 유저 인터페이스(130)로부터 전달되는 선택된 템플릿 아이콘(511, 512)을 확인하고 디스플레이(160)의 동작을 제어하여 선택된 템플릿 아이콘(511, 512)을 다른 템플릿 아이콘과 구별될 수 있도록 짙은 색, 점선 등과 같은 마킹(Marking)으로 표시해 준다(S320).Accordingly, the viewer controller 150 identifies the selected template icons 511 and 512 transmitted from the user interface 130 and controls the operation of the display 160 to distinguish the selected template icons 511 and 512 from other template icons. In order to be able to display the marking (dark), such as a dotted line (S320).

이와 동시에, 합성기(140) 내의 레이어 매니저(141)는 유저 인터페이스(130) 로부터 전달되는 선택된 템플릿 아이콘(511, 512)을 감지하여 상술한 단계 S317에서 일시 정지시킨 원본 동영상(520)과 합성하고자 하는 템플릿(즉, 선택된 템플릿)을 별도의 내부 메모리에 기록한다(S321). 즉, 합성기(140)는 상술한 단계 S317에서 일시 정지시킨 원본 동영상(520)과 합성하고자 하는 템플릿이 어떤 것인지를 기록하고 해당 기록된 정보가 최종 합성 동영상을 생성할 때에 사용되도록 한다.At the same time, the layer manager 141 in the synthesizer 140 detects the selected template icons 511 and 512 transmitted from the user interface 130 and synthesizes the original video 520 paused in step S317 described above. The template (that is, the selected template) is recorded in a separate internal memory (S321). In other words, the synthesizer 140 records the original video 520 paused in step S317 and the template to be synthesized, so that the recorded information is used when generating the final synthesized video.

그런 다음에, 사용자가 입력 장치를 통해 선택된 템플릿 아이콘을 상술한 단계 S317에서 일시 정지시킨 원본 동영상(520) 상에서 합성하고자 하는 위치로 이동하는 경우, 유저 인터페이스(130)는 선택된 템플릿 아이콘의 이동 위치를 인식하여(S322) 해당 인식된 정보(즉, 합성 위치)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달한다.Then, when the user moves the selected template icon through the input device to the position to be synthesized on the original video 520 paused in step S317 described above, the user interface 130 adjusts the moving position of the selected template icon. In operation S322, the recognized information (that is, the synthesis position) is transmitted to the synthesizer 140 and the viewer controller 150.

예를 들어, 도 5에 도시된 바와 같이, 사용자가 마우스를 이용하여 선택된 템플릿 아이콘(511, 512)을 드래그하여, 상술한 단계 S317에서 일시 정지시킨 원본 동영상(520) 상의 사용자가 원하는 위치에 선택된 템플릿 아이콘(511, 512)을 가져다 놓는 경우에, 유저 인터페이스(130)는 마우스를 통해 입력되는 드래그된 위치를 인식하여 해당 인식된 정보(즉, 합성 위치)를 합성기(140) 및 뷰어 컨트롤러(150)에게 전달해 준다.For example, as shown in FIG. 5, the user drags the selected template icons 511 and 512 using a mouse, and is selected at a desired position on the original video 520 paused in step S317. In the case of dropping the template icons 511 and 512, the user interface 130 recognizes the dragged position input through the mouse and displays the recognized information (ie, the synthesized position) by the synthesizer 140 and the viewer controller 150. To).

이에, 합성기(140)는 유저 인터페이스(130)를 통해 인가되는 선택된 템플릿 아이콘의 이동 위치(예를 들어, 드래그 위치)를 감지하여 상술한 단계 S318에서 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터와 상술한 단계 S321에서 기록된 템플릿에 대응하는 템플릿 데이터를 레이어로 처리하고 처리된 각 레이어들을 합성하여(S323) 합성된 동영상 데이터를 뷰어 컨트롤러(150)에게 전달한다.Accordingly, the synthesizer 140 detects a moving position (for example, a drag position) of the selected template icon applied through the user interface 130, and the original video data corresponding to the editing start time recorded in step S318 described above. The template data corresponding to the template recorded in the above-described step S321 is processed as a layer, and the processed layers are synthesized (S323), and the synthesized moving image data is transmitted to the viewer controller 150.

다시 말해서, 합성기(140)는 상술한 단계 S318에서 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터를 별도의 메모리나 동영상 입력 장치로부터 판독함과 동시에, 상술한 단계 S321에서 기록된 템플릿에 대응하는 템플릿 데이터를 메모리(120)로부터 판독한 후에, 판독된 원본 동영상 데이터와 템플릿 데이터 각각을 레이어로 처리하며, 처리된 원본 동영상 데이터의 레이어 상의 감지된 위치에 처리된 템플릿 데이터의 레이어를 압축 합성시키며, 압축 합성된 동영상 데이터를 뷰어 컨트롤러(150)에게 전달한다.In other words, the synthesizer 140 reads the original moving picture data corresponding to the editing start time recorded in the above-described step S318 from a separate memory or the moving picture input device, and at the same time, the template corresponding to the template recorded in the above-mentioned step S321. After reading the data from the memory 120, each of the read original video data and template data is processed into a layer, compressing and compositing a layer of processed template data at a detected position on the layer of processed original video data, and compressing The synthesized video data is transmitted to the viewer controller 150.

이에 따라, 뷰어 컨트롤러(150)는 유저 인터페이스(130)를 통해 인가되는 선택된 템플릿 아이콘의 이동 위치(예를 들어, 드래그 위치)를 확인하고 합성기(140)로부터 합성 동영상 데이터를 인가받아 디스플레이(160)의 동작을 제어하여 합성 동영상을 표시해 준다(S324).Accordingly, the viewer controller 150 checks the moving position (eg, the dragging position) of the selected template icon applied through the user interface 130, receives the composite video data from the synthesizer 140, and displays the display 160. Controlling the operation to display a composite video (S324).

이때, 뷰어 컨트롤러(150)는 향후 다른 종류의 디스플레이로 변경하여 사용할 수 있도록 MVC(Model View Controller) 구조를 이용하여 디스플레이와의 인터페이스 부분의 교체를 용이하도록 한다. 이런 경우에 디스플레이를 손쉽게 교체할 수 있도록 실제 작업을 수행하는 부분, 즉 합성기(140)와 분리하여 구현할 수 있음을 잘 이해해야 한다.At this time, the viewer controller 150 facilitates the replacement of the interface portion with the display by using a model view controller (MVC) structure so that it can be changed to another type of display in the future. In this case, it should be understood that the display can be easily separated from the synthesizer 140 to perform the actual work so that the display can be easily replaced.

한편, 상술한 바와 같은 로우 데이터를 만들어 놓고 합성하는 동작을 보다 상세하게 살펴보면 다음과 같다.Meanwhile, the operation of creating and synthesizing the row data as described above will be described in detail as follows.

유저 인터페이스(130)를 통해 인가되는 선택된 템플릿의 이동 위치(예를 들 어, 드래그 위치)를 감지한 경우에, 합성기(140) 내의 레이어 매니저(141)는 원본 동영상 데이터를 기본 레이어로 처리하고 각각 다른 템플릿 데이터들을 하위 레이어로 처리하며, 합성기(140) 내의 압축 매니저(142)는 레이어 매니저(142)에서 처리된 각 레이어들을 하나의 출력으로 압축 합성시켜 합성 동영상을 생성한다.When detecting the moving position (eg, the drag position) of the selected template applied through the user interface 130, the layer manager 141 in the synthesizer 140 processes the original video data as the base layer, respectively. The other template data is processed as a lower layer, and the compression manager 142 in the synthesizer 140 compresses and synthesizes each layer processed by the layer manager 142 into one output to generate a composite video.

이때, 원본 동영상이 재생되고 있는 동안에, 사용자가 클립 리스트(Clip List)(즉, 템플릿들)에서 원하는 템플릿을 선택하고 선택된 템플릿을 마우스 드래그하여 레이어로 추가하면, 레이어 매니저(141)는 이를 감지하여 어떤 템플릿이 어느 시간에 합성되어야 하는지를 기록하고, 기록된 정보(즉, 편집 시작 시간과 템플릿)를 최종 결과로 생성할 때에 이용되도록 한다.At this time, while the original video is being played, if the user selects a desired template from a clip list (ie, templates) and drags the selected template to the layer, the layer manager 141 detects this. Record which template is to be synthesized at what time and allow it to be used in generating the recorded information (ie, edit start time and template) as the final result.

다시 말해서, 레이어 매니저(141)는 도 2에 도시된 바와 같이, 상술한 단계 S318에서 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터를 기본적인 레이어(즉, 레이어 1)로 처리함과 동시에, 상술한 단계 S321에서 기록된 템플릿에 대응하는 템플릿 데이터(예를 들어, 동영상, 이미지, 텍스트 등)를 하위 레이어(예를 들어, 레이어 2, 레이어 3, 레이어 4 등)로 처리한다.In other words, as shown in FIG. 2, the layer manager 141 processes the original moving picture data corresponding to the editing start time recorded in the above-described step S318 into a basic layer (ie, layer 1), and at the same time, Template data (eg, moving pictures, images, text, etc.) corresponding to the template recorded in step S321 is processed as a lower layer (eg, layer 2, layer 3, layer 4, etc.).

또한, 레이어 매니저(141)는 각 레이어들의 타입뿐만 아니라, 삽입 시간과 삭제 시간, 각 레이어들 간의 우선순위 관계, 효과 등에 관한 정보도 관리한다.In addition, the layer manager 141 manages not only the types of the layers, but also information on insertion time and deletion time, priority relationship between the layers, effects, and the like.

예를 들어, 도 2에 도시된 바와 같이, 각 레이어들 간의 우선순위를 동영상 레이어, 이미지 레이어, 텍스트 레이어 순으로 미리 설정할 수 있으며, 이때 이미지와 텍스트가 겹쳐지는 부분이 있는 경우에 겹쳐지는 부분은 이미지 위에 텍스트만 보이도록 레이어가 형성된다.For example, as shown in FIG. 2, priorities between the layers may be preset in the order of a video layer, an image layer, and a text layer. In this case, when there is an overlapping portion of the image and the text, the overlapping portion may be The layer is formed so that only text is visible on the image.

그런 후에, 압축 매니저(142)는 레이어 매니저(142)에서 처리된 각 레이어들을 하나의 출력으로 압축 합성시켜 합성 동영상 데이터를 생성하며, 생성된 합성 동영상 데이터를 실시간으로 사용자가 확인할 수 있도록 뷰어 컨트롤러(150)에게 전달한다.Thereafter, the compression manager 142 compresses and synthesizes each layer processed by the layer manager 142 into one output to generate composite video data, and generates a viewer controller (eg, a user controller) to check the generated composite video data in real time. 150).

이상, 본 발명의 실시예는 마우스 드래그를 이용하여 템플릿 서버에서 제공하는 모든 템플릿 정보를 원하는 영상의 위치로 편집하도록 함으로써, 모든 사용자가 쉽고 빠르게 동영상을 편집하는 것에 대해 설명하였다.In the above-described embodiment of the present invention, all the template information provided by the template server is edited to the desired position of the image by dragging the mouse, so that all users can easily and quickly edit the video.

그러나 본 발명의 실시예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.However, the embodiment of the present invention is not implemented only by the above-described apparatus and / or method, but is implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention, a recording medium on which the program is recorded, and the like. Such implementations may be readily implemented by those skilled in the art from the description of the above-described embodiments.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also provided. It belongs to the scope of rights.

이와 같이 본 발명의 실시예에 의하면, 사용자가 마우스 드래그를 이용하여 원본 동영상 자료에 템플릿을 원하는 위치나 시간에 삽입, 삭제, 편집 등을 수행하도록 함으로써, 일반 사용자가 어려움 없이 사용자 단말기 또는 웹에서 동영상을 빠르고 쉽게 편집할 수 있다.As described above, according to an exemplary embodiment of the present invention, a user inserts, deletes, or edits a template in an original video material at a desired position or time by using a mouse drag, thereby allowing a general user to make a video on a user terminal or web without difficulty. Can be edited quickly and easily.

Claims (11)

디스플레이 상에서 재생 중인 원본 동영상을 편집하는 방법에 있어서,In the method of editing the original video being played on the display, 템플릿 데이터를 수신받아 로우 데이터로 생성시켜 저장하는 단계,Receiving the template data and generating the raw data and storing the raw data; 상기 템플릿 데이터의 아이콘을 상기 템플릿 데이터의 종류별로 디스플레이하는 단계,Displaying an icon of the template data for each type of the template data; 상기 원본 동영상을 일시 정지하는 경우에, 일시 정지한 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하는 단계,Recording the paused time as an edit start time of the original video when the original video is paused; 상기 템플릿 아이콘을 선택하는 경우에, 선택된 템플릿 아이콘을 식별하여 기록하는 단계,When selecting the template icon, identifying and recording the selected template icon, 상기 선택된 템플릿 아이콘을 상기 원본 동영상으로 이동하는 경우에, 상기 선택된 템플릿 아이콘의 이동 위치를 인식하는 단계, 그리고Recognizing a moving position of the selected template icon when moving the selected template icon to the original video, and 상기 인식된 위치에 상기 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 기록된 템플릿 아이콘에 대응하는 템플릿 데이터를 합성하는 단계Synthesizing the original video data corresponding to the recorded editing start time and the template data corresponding to the recorded template icon at the recognized position; 를 포함하는 동영상 편집 방법.Video editing method comprising a. 제1항에 있어서,The method of claim 1, 상기 로우 데이터는, 상기 템플릿 데이터의 종류 별로 정의된 리스트에 저장되는 동영상 편집 방법.The raw data is stored in a list defined for each type of template data. 제2항에 있어서,The method of claim 2, 상기 템플릿 데이터의 업그레이드 요청 시에, 템플릿 서버에 접속하여 템플릿 데이터를 수신받는 단계,At the request for upgrading the template data, accessing a template server and receiving template data; 상기 수신받은 템플릿 데이터를 로우 데이터로 생성시켜 상기 리스트에 업데이트하는 단계, 그리고Generating the received template data as row data and updating the list data; and 상기 수신받은 템플릿 데이터의 아이콘을 상기 수신받은 템플릿 데이터의 종류별로 상기 다스플레이에 업데이트하는 단계Updating an icon of the received template data on the display for each type of the received template data; 를 더 포함하는 동영상 편집 방법.Video editing method comprising more. 제1항에 있어서,The method of claim 1, 상기 이동 위치를 인식하는 단계는, 마우스를 이용하여 상기 선택된 템플릿 아이콘을 드래그하여 상기 원본 동영상으로 이동하는 경우에, 상기 원본 동영상 상의 마우스 드래그된 위치를 인식하는 동영상 편집 방법.The recognizing the moving position may include recognizing a mouse dragged position on the original video when the selected template icon is moved to the original video by using a mouse. 제1항에 있어서,The method of claim 1, 상기 합성하는 단계는,The synthesizing step, 상기 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터를 판독하는 단계,Reading original moving picture data corresponding to the recorded editing start time; 상기 기록된 템플릿 아이콘에 대응하는 템플릿 데이터를 판독하는 단계,Reading template data corresponding to the recorded template icon; 상기 판독된 원본 동영상 데이터와 템플릿 데이터를 레이어로 처리하는 단 계,Processing the read original video data and template data as a layer; 상기 인식된 위치에 상기 원본 동영상 데이터의 레이어와 상기 템플릿 데이터의 레이어를 압축 합성시키는 단계, 그리고 Compressing and combining the layer of the original video data and the layer of the template data at the recognized position; and 상기 압축 합성된 동영상 데이터를 디스플레이하는 단계Displaying the compressed and synthesized moving image data. 를 포함하는 동영상 편집 방법.Video editing method comprising a. 제1항에 있어서,The method of claim 1, 상기 레이어로 처리하는 단계는, 상기 원본 동영상 데이터를 기본 레이어로 처리하고 상기 템플릿 데이터를 기 설정된 우선순위에 따라 하위 레이어로 처리하는 동영상 편집 방법.The processing of the layer may include processing the original video data as a base layer and processing the template data as a lower layer according to a preset priority. 디스플레이 상에서 재생 중인 원본 동영상을 편집하는 시스템에 있어서,In a system for editing the original video being played on the display, 템플릿 데이터를 수신받아 로우 데이터로 생성시키는 디코더,A decoder that receives template data and generates the raw data; 상기 로우 데이터를 상기 템플릿 데이터의 종류 별로 정의된 리스트에 저장하는 메모리,A memory for storing the row data in a list defined for each type of the template data; 상기 원본 동영상의 일시 정지, 템플릿 아이콘의 선택, 템플릿 아이콘의 이동을 인식하는 유저 인터페이스,A user interface for recognizing pause of the original video, selection of a template icon, and movement of a template icon, 상기 인식된 일시 정지의 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하고, 상기 인식된 선택 템플릿 아이콘을 기록하고, 상기 인식된 이동 위치에 상기 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 템플릿 아이콘에 대응하 는 템플릿 데이터를 합성하는 합성기, 그리고Record the recognized pause time as the edit start time of the original video, record the recognized selection template icon, and record the original video data corresponding to the edit start time and the template icon at the recognized moving position. A synthesizer that synthesizes corresponding template data, and 상기 템플릿 아이콘을 상기 템플릿 데이터의 종류별로 디스플레이하고, 상기 합성기에서 합성된 동영상을 디스플레이하는 뷰어 컨트롤러A viewer controller for displaying the template icon according to the type of the template data and displaying a video synthesized by the synthesizer 를 포함하는 동영상 편집 시스템.Video editing system that includes. 제7항에 있어서,The method of claim 7, wherein 상기 디코더는, 상기 템플릿 데이터의 업그레이드 요청 시에, 템플릿 서버에 접속하여 템플릿 데이터를 수신받고, 수신받은 템플릿 데이터를 로우 데이터로 생성시켜 상기 메모리의 리스트에 업데이트하는 동영상 편집 시스템.And the decoder is further configured to access a template server to receive template data, generate template data as row data, and update the received template data in the memory list when the template data is upgraded. 제7항에 있어서,The method of claim 7, wherein 상기 합성기는,The synthesizer, 상기 인식된 일시 정지의 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하고, 상기 인식된 선택 템플릿 아이콘을 기록하고, 상기 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 템플릿 아이콘에 대응하는 템플릿 데이터를 레이어로 처리하는 레이어 매니저, 그리고Record the recognized pause time as the edit start time of the original video, record the recognized selection template icon, and layer the source video data corresponding to the edit start time and the template data corresponding to the template icon A layer manager, and 상기 인식된 이동 위치에 상기 원본 동영상 데이터의 레이어와 상기 템플릿 데이터의 레이어를 압축 합성시키는 압축 매니저A compression manager for compressing and combining the layer of the original video data and the layer of the template data at the recognized moving position 를 포함하는 동영상 편집 시스템.Video editing system that includes. 제9항에 있어서,The method of claim 9, 상기 레이어 매니저는, 상기 각 레이어의 타입, 삽입 시간과 삭제 시간, 각 레이어 간의 우선순위 관계, 효과에 관한 정보를 관리하는 동영상 편집 시스템.And the layer manager manages information about the type of each layer, insertion time and deletion time, priority relationship between each layer, and effects. 디스플레이 상에서 재생 중인 원본 동영상을 편집하는 기능을 구현한 프로그램이 기록된 기록매체에 있어서,In a recording medium on which a program that implements a function of editing an original video being played on a display is recorded, 템플릿 데이터를 수신받아 로우 데이터로 생성시켜 저장하는 기능,Receive template data and save it as raw data 상기 템플릿 데이터의 아이콘을 상기 템플릿 데이터의 종류별로 디스플레이하는 기능,A function of displaying an icon of the template data for each type of the template data; 상기 원본 동영상을 일시 정지하는 경우에, 일시 정지한 시간을 상기 원본 동영상의 편집 시작 시간으로 기록하는 기능,A function of recording the paused time as an edit start time of the original video when the original video is paused; 상기 템플릿 아이콘을 선택하는 경우에, 선택된 템플릿 아이콘을 식별하여 기록하는 기능,When selecting the template icon, a function of identifying and recording the selected template icon, 상기 선택된 템플릿 아이콘을 상기 원본 동영상으로 이동하는 경우에, 상기 선택된 템플릿 아이콘의 이동 위치를 인식하는 기능, 그리고A function of recognizing a moving position of the selected template icon when the selected template icon is moved to the original video, and 상기 인식된 위치에 상기 기록된 편집 시작 시간에 대응하는 원본 동영상 데이터와 상기 기록된 템플릿 아이콘에 대응하는 템플릿 데이터를 합성하는 기능Synthesizing the original video data corresponding to the recorded editing start time and the template data corresponding to the recorded template icon at the recognized position; 을 구현한 프로그램이 기록된 기록매체.Recording medium that records the program that implements the program.
KR1020070029051A 2007-03-26 2007-03-26 System and method of editing moving picture and recording medium having the method embodied program KR20080104415A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070029051A KR20080104415A (en) 2007-03-26 2007-03-26 System and method of editing moving picture and recording medium having the method embodied program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070029051A KR20080104415A (en) 2007-03-26 2007-03-26 System and method of editing moving picture and recording medium having the method embodied program

Publications (1)

Publication Number Publication Date
KR20080104415A true KR20080104415A (en) 2008-12-03

Family

ID=40366033

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070029051A KR20080104415A (en) 2007-03-26 2007-03-26 System and method of editing moving picture and recording medium having the method embodied program

Country Status (1)

Country Link
KR (1) KR20080104415A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101245149B1 (en) * 2011-07-12 2013-03-19 (주)마인스코퍼레이션 Method and apparatus for providing moving pictures by producing in real time
WO2017051955A1 (en) * 2015-09-25 2017-03-30 이정빈 Apparatus and method for applying video effect
KR20180003012A (en) * 2016-06-30 2018-01-09 전동혁 System and method for editing digital contents based on web
CN114363712A (en) * 2022-01-13 2022-04-15 深圳迪乐普智能科技有限公司 AI digital person video generation method, device and equipment based on templated editing
WO2024099280A1 (en) * 2022-11-07 2024-05-16 北京字跳网络技术有限公司 Video editing method and apparatus, electronic device, and storage medium

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101245149B1 (en) * 2011-07-12 2013-03-19 (주)마인스코퍼레이션 Method and apparatus for providing moving pictures by producing in real time
WO2017051955A1 (en) * 2015-09-25 2017-03-30 이정빈 Apparatus and method for applying video effect
KR20180003012A (en) * 2016-06-30 2018-01-09 전동혁 System and method for editing digital contents based on web
CN114363712A (en) * 2022-01-13 2022-04-15 深圳迪乐普智能科技有限公司 AI digital person video generation method, device and equipment based on templated editing
CN114363712B (en) * 2022-01-13 2024-03-19 深圳迪乐普智能科技有限公司 AI digital person video generation method, device and equipment based on templated editing
WO2024099280A1 (en) * 2022-11-07 2024-05-16 北京字跳网络技术有限公司 Video editing method and apparatus, electronic device, and storage medium

Similar Documents

Publication Publication Date Title
US8363058B2 (en) Producing video and audio-photos from a static digital image
US7836389B2 (en) Editing system for audiovisual works and corresponding text for television news
US9754625B2 (en) Generation and use of user-selected scenes playlist from distributed digital content
KR101317204B1 (en) Method for generating frame information on moving image and apparatus thereof
US20070067707A1 (en) Synchronous digital annotations of media data stream
CN112291627A (en) Video editing method and device, mobile terminal and storage medium
US20080034278A1 (en) Integrated interactive multimedia playing system
JP2008141746A (en) System and method for playing moving images
KR20210082232A (en) Real-time video special effects systems and methods
US9812169B2 (en) Operational system and architectural model for improved manipulation of video and time media data from networked time-based media
Brenneis Final Cut Pro 3 for Macintosh
WO2023030270A1 (en) Audio/video processing method and apparatus and electronic device
US20060126088A1 (en) Information processing apparatus and method, and program
KR20080104415A (en) System and method of editing moving picture and recording medium having the method embodied program
US20120251081A1 (en) Image editing device, image editing method, and program
US20240146863A1 (en) Information processing device, information processing program, and recording medium
US11503148B2 (en) Asynchronous short video communication platform based on animated still images and audio
CN113711575A (en) System and method for instantly assembling video clips based on presentation
JP2001209361A (en) Multimedia display device
JP4129162B2 (en) Content creation demonstration system and content creation demonstration method
KR20070094055A (en) Thumbnail recording method and terminal using the same
CN113038014A (en) Video processing method of application program and electronic equipment
KR100459668B1 (en) Index-based authoring and editing system for video contents
JP2005167822A (en) Information reproducing device and information reproduction method
JP2005285076A (en) Method for producing image information

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application