JP6454742B2 - Movie output device, movie output method, and movie output program - Google Patents

Movie output device, movie output method, and movie output program Download PDF

Info

Publication number
JP6454742B2
JP6454742B2 JP2017032144A JP2017032144A JP6454742B2 JP 6454742 B2 JP6454742 B2 JP 6454742B2 JP 2017032144 A JP2017032144 A JP 2017032144A JP 2017032144 A JP2017032144 A JP 2017032144A JP 6454742 B2 JP6454742 B2 JP 6454742B2
Authority
JP
Japan
Prior art keywords
moving image
data
image frames
video
frames
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2017032144A
Other languages
Japanese (ja)
Other versions
JP2017134844A (en
Inventor
パロット ジェイソン
パロット ジェイソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GREE Inc
Original Assignee
GREE Inc
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 GREE Inc filed Critical GREE Inc
Priority to JP2017032144A priority Critical patent/JP6454742B2/en
Publication of JP2017134844A publication Critical patent/JP2017134844A/en
Application granted granted Critical
Publication of JP6454742B2 publication Critical patent/JP6454742B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、動画出力装置に関する。   The present invention relates to a moving image output apparatus.

近年、サーバ―クライアント間において動画をクライアント端末で表示させる方法として、JavaScript(登録商標)のCanvasの機能を利用する方法がある(例えば特許文献1等)。Canvasでは、線分、孤、円、曲線等に関して所定の描画命令により指定し、クライアント端末上で描画データを所定のフレームレートで表示することにより動画を表示する。   In recent years, as a method of displaying a moving image between a server and a client on a client terminal, there is a method of using a JavaScript function of JavaScript (registered trademark) (for example, Patent Document 1). In Canvas, a line segment, arc, circle, curve, etc. are designated by a predetermined drawing command, and a moving image is displayed by displaying drawing data at a predetermined frame rate on the client terminal.

図7及び図8に、従来の方法により描画した“怒った顔”の描画データ(図7)が“笑った顔”の描画データ(図8)に変化する動画の各動画フレームを示す。従来は、図7に示す描画データを、図9に示すCanvasの機能を利用したコードにより描画する。すなわち図9の第21行の“ctx.moveTo(20,20)”により、図7の点P1を指定する。続いて図9の第22行の“ctx.quadraticCurveTo(120,20,70,−20)”により、図7の点P1を始点とし、点P2を終点とする曲線を指定する。また第23行の“ctx.quadraticCurveTo(120,120,160,70)”により、図7の点P2を始点とし点P3を終点とする曲線を指定する。また第24行の“ctx.quadraticCurveTo(20,120,70,160)”により、点P3を始点とし点P4を終点とする曲線を指定する。さらに第25行の“ctx.quadraticCurveTo(20,20,−20,70)”により、図7の点P4を始点とし点P1を終点とする曲線を指定する。このように図9の第21行から第25行により図7の顔の輪郭を指定する。   FIG. 7 and FIG. 8 show each moving image frame of a moving image in which the drawing data of “angry face” (FIG. 7) drawn by the conventional method changes to the drawing data of “laughing face” (FIG. 8). Conventionally, the drawing data shown in FIG. 7 is drawn by a code using the Canvas function shown in FIG. That is, the point P1 in FIG. 7 is designated by “ctx.moveTo (20, 20)” in the 21st line of FIG. Subsequently, “ctx.quadraticCurveTo (120, 20, 70, −20)” in the 22nd line in FIG. 9 designates a curve having the point P1 in FIG. 7 as the start point and the point P2 as the end point. Also, a curve having a start point P2 and an end point P3 in FIG. 7 is designated by “ctx.quadraticCurveTo (120, 120, 160, 70)” on the 23rd line. Further, a curve having the point P3 as the start point and the point P4 as the end point is designated by “ctx.quadricCurveTo (20, 120, 70, 160)” on the 24th line. Further, a “ctx.quadratic CurveTo (20, 20, -20, 70)” on the 25th line designates a curve having the point P4 in FIG. 7 as the start point and the point P1 as the end point. In this way, the face contour of FIG. 7 is designated by the 21st to 25th lines of FIG.

また、図9の第31行の“ctx.arc(30,110,5,0,Math.PI*2,false)”により、中心を図7の点P5とする半径5の円を指定する。また第32行の“ctx.arc(110,110,5,0,Math.PI*2,false)”により、中心を図7の点P6とする半径5の円を指定する。続いて第33行の“ctx.moveTo(30,30)”により、図7の点P7を指定する。続いて第34行の“ctx.quadraticCurveTo(30,110,70,70)”により、図7の点P7を始点とし、点P8を終点とする曲線を指定する。このように第31行から第34行により目と怒った口を指定する。以上の処理を行い、図7に示す描画データが生成される。   Further, a circle with a radius of 5 having the center as the point P5 in FIG. 7 is designated by “ctx.arc (30, 110, 5, 0, Math.PI * 2, false)” in the 31st line of FIG. Also, a circle with a radius of 5 having the center at the point P6 in FIG. 7 is designated by “ctx.arc (110, 110, 5, 0, Math.PI * 2, false)” on the 32nd line. Subsequently, the point P7 in FIG. 7 is designated by “ctx.moveTo (30, 30)” in the 33rd line. Subsequently, “ctx.quadraticCurveTo (30,110,70,70)” on the 34th line designates a curve having the point P7 in FIG. 7 as the start point and the point P8 as the end point. Thus, the eyes and the angry mouth are designated by the 31st to 34th lines. The above processing is performed to generate the drawing data shown in FIG.

図8の描画データについては、図10のコードに基づき生成する。すなわち図10の第21行の“ctx.moveTo(20,20)”により、図8の点P1を指定する。続いて第22行の“ctx.quadraticCurveTo(120,20,70,−20)”により、図8の点P1を始点とし、点P2を終点とする曲線を指定する。また第23行の“ctx.quadraticCurveTo(120,120,160,70)”により、図8の点P2を始点とし点P3を終点とする曲線を指定する。また第24行の“ctx.quadraticCurveTo(20,120,70,160)”により、図8の点P3を始点とし点P4を終点とする曲線を指定する。さらに第25行の“ctx.quadraticCurveTo(20,20,−20,70)”により、図8の点P4を始点とし点P1を終点とする曲線を指定する。このように図10の第21行から第25行により図8の顔の輪郭を指定する。   The drawing data in FIG. 8 is generated based on the code in FIG. That is, the point P1 in FIG. 8 is designated by “ctx.moveTo (20, 20)” in the 21st line of FIG. Subsequently, by “ctx.quadraticCurveTo (120, 20, 70, −20)” on the 22nd line, a curve starting from the point P1 and ending at the point P2 in FIG. 8 is designated. In addition, a curve starting from the point P2 and ending at the point P3 in FIG. 8 is designated by “ctx.quadraticCurveTo (120, 120, 160, 70)” on the 23rd line. In addition, a curve having the point P3 in FIG. 8 as the start point and the point P4 as the end point is designated by “ctx.quadraticCurveTo (20, 120, 70, 160)” on the 24th line. Further, a “ctx.quadraticCurveTo (20, 20, -20, 70)” on the 25th line designates a curve having the point P4 in FIG. 8 as the start point and the point P1 as the end point. In this way, the face contour of FIG. 8 is designated by the 21st to 25th lines of FIG.

また、図10の第31行の“ctx.arc(30,110,5,0,Math.PI*2,false)”により、中心を図8の点P5とする半径5の円を指定する。また第32行の“ctx.arc(110,110,5,0,Math.PI*2,false)”により、中心を図8の点P6とする半径5の円を指定する。続いて第33行の“ctx.moveTo(30,30)”により、図8の点P7を指定する。続いて第34行の“ctx.quadraticCurveTo(30,110,70,−10)”により、図8の点P7を始点とし、点P8を終点とする曲線を指定する。このように第31行から第34行により図8の目と笑った口を指定して描画する。以上の処理を行い、図8に示す描画データが生成される。そして図7及び図8を所定の時間間隔(フレームレート)で表示することにより動画を表示していた。   Further, a circle having a radius of 5 having the center at the point P5 in FIG. 8 is designated by “ctx.arc (30, 110, 5, 0, Math.PI * 2, false)” in the 31st line of FIG. Further, a circle with a radius of 5 having the center as the point P6 in FIG. 8 is designated by “ctx.arc (110, 110, 5, 0, Math.PI * 2, false)” on the 32nd line. Subsequently, the point P7 in FIG. 8 is designated by “ctx.moveTo (30, 30)” in the 33rd line. Subsequently, “ctx.quadraticCurveTo (30,110,70, −10)” on the 34th line designates a curve having the point P7 in FIG. 8 as the start point and the point P8 as the end point. In this way, the eyes and the laughing mouth in FIG. 8 are designated and drawn from the 31st line to the 34th line. The above processing is performed to generate the drawing data shown in FIG. 7 and 8 are displayed at a predetermined time interval (frame rate) to display a moving image.

特開2013−37447号公報JP 2013-37447 A

従来の動画出力方法は、各動画フレームに対応する描画指示データを逐一計算して各動画フレームに対応する描画データを作成して動画を出力しているが、動画出力を高速化することが望まれている。   In the conventional video output method, drawing instruction data corresponding to each video frame is calculated step by step to create drawing data corresponding to each video frame and output the video. However, it is desirable to speed up video output. It is rare.

従って、上記のような問題点に鑑みてなされた本発明の目的は、動画出力の高速化を図ることができる動画出力装置を提供することにある。   Accordingly, an object of the present invention made in view of the above problems is to provide a moving image output apparatus capable of increasing the speed of moving image output.

上記課題を解決するために本発明に係る動画出力装置は、
各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶する記憶部と、
前記各動画フレームのうち前記画像データ以外の描画部分の描画データを生成し、前記画像データと前記描画データとを合成して前記各動画フレームを生成する制御部と、
前記各動画フレームに基づき動画を出力する出力部と、
を有することを特徴とする。
In order to solve the above problems, a moving image output apparatus according to the present invention provides:
A storage unit for storing image data in which drawing portions common to at least two moving image frames among the moving image frames are generated in advance ;
A controller that generates drawing data of a drawing portion other than the image data among the moving image frames, and generates the moving image frames by combining the image data and the drawing data;
An output unit for outputting a video based on each video frame;
It is characterized by having.

本発明における動画出力装置によれば、動画出力の高速化を図ることができる。   According to the moving image output apparatus of the present invention, it is possible to increase the speed of moving image output.

本発明の一実施形態に係る動画出力システムのブロック図である。1 is a block diagram of a moving image output system according to an embodiment of the present invention. 本発明の一実施形態に係る動画出力装置における各動画フレームの描画データの概要を示す図である。It is a figure which shows the outline | summary of the drawing data of each moving image frame in the moving image output device which concerns on one Embodiment of this invention. 第一描画指示データの一例を示す図である。It is a figure which shows an example of 1st drawing instruction | indication data. 第二描画指示データの一例を示す図である。It is a figure which shows an example of 2nd drawing instruction | indication data. UniformFunctionテーブルの一例を示す図である。It is a figure which shows an example of a UniformFunction table. 本発明の一実施形態に係る動画出力装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the moving image output device which concerns on one Embodiment of this invention. 従来技術における、ある動画フレームの描画データを示す図である。It is a figure which shows the drawing data of a certain moving image frame in a prior art. 従来技術における、図7とは別の動画フレームの描画データを示す図である。It is a figure which shows the drawing data of the moving image frame different from FIG. 7 in a prior art. 従来技術において図7の描画データを生成するコードである。FIG. 8 is a code for generating the drawing data of FIG. 7 in the prior art. FIG. 従来技術において図8の描画データを生成するコードである。9 is a code for generating the drawing data of FIG. 8 in the prior art.

以下、本発明の実施の形態について説明する。   Embodiments of the present invention will be described below.

(実施の形態)
図1は本発明の一実施形態に係る動画出力装置1を含む動画出力システムのブロック図である。図1に示す動画出力システムは、動画出力装置(サーバ)1と、クライアント端末2とを備える。動画出力装置1は、通信部11と、記憶部12と、制御部13と、出力部14とを備える。クライアント端末2は携帯電話、スマートフォン、PC等の通信端末である。図1では3つ例示しているがこれに限られず2つ以下でもよく、4つ以上であってもよい。
(Embodiment)
FIG. 1 is a block diagram of a moving image output system including a moving image output apparatus 1 according to an embodiment of the present invention. The moving image output system shown in FIG. 1 includes a moving image output device (server) 1 and a client terminal 2. The moving image output apparatus 1 includes a communication unit 11, a storage unit 12, a control unit 13, and an output unit 14. The client terminal 2 is a communication terminal such as a mobile phone, a smartphone, or a PC. Although three are illustrated in FIG. 1, the number is not limited to this and may be two or less, or four or more.

動画出力装置1の通信部11は、クライアント端末2と、ネットワークを介して無線又は有線の少なくとも一方により通信する。具体的には通信部11は、クライアント端末2から動画送信要求を受信する。また通信部11は、出力部14が出力した動画データをクライアント端末2に送信する。   The communication unit 11 of the video output device 1 communicates with the client terminal 2 by at least one of wireless or wired via a network. Specifically, the communication unit 11 receives a moving image transmission request from the client terminal 2. Further, the communication unit 11 transmits the moving image data output from the output unit 14 to the client terminal 2.

記憶部12は、本動画出力システムにおいて必要な各種情報を記憶する。また制御部13は、動画出力装置1に係る各種制御を行う。   The storage unit 12 stores various information necessary for the moving image output system. The control unit 13 performs various controls related to the moving image output apparatus 1.

制御部13は概略として、各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分に係る画像データ(以下、第一描画データという。)を予め生成しておき、記憶部12に記憶する。そして制御部13は、各動画フレームのうち他の動画フレームと共通しない描画部分、すなわち相違する描画部分に係るデータ(以下、第二描画データという。)を生成し、第一描画データ及び第二描画データを合成して各動画フレームに係る描画データを生成する。   As a rough outline, the control unit 13 generates in advance image data (hereinafter referred to as first drawing data) related to a drawing portion common to at least two moving image frames of each moving image frame, and stores the image data in the storage unit 12. And the control part 13 produces | generates the data (henceforth 2nd drawing data) concerning the drawing part which is not common with another moving image frame among each moving image frame, ie, a different drawing part, and is referred to as 1st drawing data and 2nd drawing data. Drawing data associated with each moving image frame is generated by combining the drawing data.

図2に、本発明の一実施形態に係る動画出力装置1における各動画フレームの生成に係る概要図を示す。図2では“怒った顔”の描画データ(図2(d))と、“笑った顔”の描画データ(図2(e))に係る動画フレームを生成する手順を示している。図2(a)は、第一描画データを示す。“笑った顔”と“怒った顔”とで共通する、顔の輪郭及び目の部分が第一描画データとなる。図2(b)(c)は、第二描画データを示す。図2(b)(c)に示すように、“怒った顔”と“笑った顔”とで相違する、口の部分が第二描画データとなる。   FIG. 2 is a schematic diagram relating to generation of each moving image frame in the moving image output apparatus 1 according to an embodiment of the present invention. FIG. 2 shows a procedure for generating a moving image frame relating to the drawing data of “angry face” (FIG. 2D) and the drawing data of “laughing face” (FIG. 2E). FIG. 2A shows the first drawing data. The face outline and the eye part common to the “laughing face” and “angry face” are the first drawing data. 2B and 2C show the second drawing data. As shown in FIGS. 2B and 2C, the mouth portion that differs between the “angry face” and the “laughing face” becomes the second drawing data.

そして図2(a)の第一描画データ及び図2(b)の第二描画データを合成して“怒った顔”の描画データ(図2(d))が生成され、また図2(a)の第一描画データ及び図2(c)の第二描画データを合成して“笑った顔”の描画データ(図2(e))が生成される。   Then, the first drawing data shown in FIG. 2A and the second drawing data shown in FIG. 2B are combined to generate drawing data (FIG. 2D) of “angry face”. ) And the second drawing data of FIG. 2C are combined to generate the drawing data of the “smiling face” (FIG. 2E).

以下、記憶部12に記憶される情報、及び制御部13による制御について詳細に説明する。   Hereinafter, information stored in the storage unit 12 and control by the control unit 13 will be described in detail.

記憶部12は、第一描画指示データ121と、第二描画指示データ(描画指示データ)122と、UniformFunctionテーブル123とを記憶する。   The storage unit 12 stores first drawing instruction data 121, second drawing instruction data (drawing instruction data) 122, and a uniform function table 123.

第一描画指示データ121は、第一描画データを描画するためのデータであり、具体的には線分、孤、又は曲線等を描画するための各種パラメータ等から構成されるデータである。好適には第一描画データはCanvasの仕様に基づくデータである。以下本実施の形態では、第一描画データはCanvasの仕様に基づくデータであり、動画出力装置1は、Canvasの機能を利用できる環境、例えばWebサーバ(Apache等)、Javascript(登録商標)ライブラリ(Jquery)等を備えるものとして説明する。図3に第一描画指示データ121の一例を示す。第一描画指示データ121は、描画命令毎に、識別子、時間、タイプ、X、Y、CPX、CPY、rが対応付けられて格納されている。ここで識別子とは、各描画命令を一意に特定するための識別番号である。時間とは、当該描画命令が格納された時間を示す。タイプとは、描画命令の種類を示し、具体的には、Moveto(線分又は曲線の始点)、Lineto(線分の終点)、arc(孤)、quadraticCurveTo(曲線)等である。X、Y、CPX、CPY、rは、各描画命令におけるパラメータである。X、Yは、Moveto、Lineto、及びquadracitcCurveToにおける始点、終点の座標、又はarcにおける中心点等の座標を示す。CPX、CPYは、quadraticCurveToにおける制御点の座標を示す。rは、arcにおける半径を示す。   The first drawing instruction data 121 is data for drawing the first drawing data. Specifically, the first drawing instruction data 121 is data including various parameters for drawing a line segment, arc, curve, or the like. Preferably, the first drawing data is data based on the specifications of Canvas. Hereinafter, in the present embodiment, the first drawing data is data based on the Canvas specification, and the moving image output apparatus 1 is an environment that can use the Canvas function, such as a Web server (such as Apache), a JavaScript (registered trademark) library ( Jquery) and the like. FIG. 3 shows an example of the first drawing instruction data 121. The first drawing instruction data 121 stores an identifier, time, type, X, Y, CPX, CPY, and r in association with each drawing command. Here, the identifier is an identification number for uniquely specifying each drawing command. The time indicates the time when the drawing command is stored. The type indicates the type of drawing instruction, and specifically, Moveto (starting point of line segment or curve), Lineto (end point of line segment), arc (arc), quadratic CurveTo (curve), and the like. X, Y, CPX, CPY, r are parameters in each drawing command. X and Y indicate the coordinates of the start point and end point in Moveto, Lineto, and quadraticCurveTo, or the coordinates of the center point in arc. CPX and CPY indicate the coordinates of control points in quadratureCurveTo. r represents the radius at arc.

例えば第一描画指示データ121は、識別子“1”、時間“2013:04:10 11:00”、タイプ “Moveto”、X“20”、Y“20”、CPX“−”、CPY“−”、r“−”を含み、これにより図2(a)の点P1を指定する。また第一描画指示データ121は、識別子“2”、時間“2013:04:10 11:01”、タイプ “quadraticCurveto”、X“120”、Y“20”、CPX“70”、CPY“−20”、r“−”を含み、これにより図2(a)の点P1を始点、点P2を終点とする曲線を指定する。同様にして識別子3から7のデータにより、それぞれ点P2を始点及び点P3を終点とする曲線、点P3を始点及び点P4を終点とする曲線、点P4を始点及び点P1を終点とする曲線、点P5を中心とする半径5の円、点P6を中心とする半径5の円を指定する。以上のように、図3に示す第一描画指示データ121により、図2(a)に示す第一描画データが生成される。   For example, the first drawing instruction data 121 includes identifier “1”, time “2013: 04: 10 11:00”, type “Moveto”, X “20”, Y “20”, CPX “−”, CPY “−”. , R "-", thereby specifying the point P1 in FIG. The first drawing instruction data 121 includes an identifier “2”, a time “2013: 04: 10 11:01”, a type “quadratic Curve”, X “120”, Y “20”, CPX “70”, and CPY “−20”. "," And "r"-, thereby specifying a curve having the point P1 in FIG. 2A as the start point and the point P2 as the end point. Similarly, based on the data of identifiers 3 to 7, a curve with point P2 as the start point and point P3 as the end point, a curve with point P3 as the start point and point P4 as the end point, and a curve with point P4 as the start point and point P1 as the end point, respectively. , A circle with a radius of 5 centered on the point P5 and a circle with a radius of 5 centered on the point P6 are designated. As described above, the first drawing data shown in FIG. 2A is generated by the first drawing instruction data 121 shown in FIG.

具体的には制御部13は、通信部11を介してクライアント端末2から動画送信要求を受信すると、まず記憶部12の第一描画指示データ121を読み込み、第一描画データを生成する。そして制御部13は、第一描画データを記憶部12に記憶する。好適には制御部13は、ビットマップ形式、JPEG形式、PNG形式、TiFF形式等の汎用的な画像フォーマットにより第一描画データを記憶部12に記憶する。   Specifically, when receiving a moving image transmission request from the client terminal 2 via the communication unit 11, the control unit 13 first reads the first drawing instruction data 121 in the storage unit 12 and generates first drawing data. Then, the control unit 13 stores the first drawing data in the storage unit 12. Preferably, the control unit 13 stores the first drawing data in the storage unit 12 in a general-purpose image format such as a bitmap format, JPEG format, PNG format, TiFF format or the like.

第二描画指示データ122は、第二描画データを描画するためのデータであり、具体的には線分、孤、円、曲線等を描画するための各パラメータ等から構成されるデータである。好適には第二描画データはCanvasの仕様に基づくデータである。以下、本実施の形態では、第一描画データはCanvasの仕様に基づくデータであるものとして説明する。図4に第二描画指示データ122の一例を示す。第一描画指示データ121は、描画命令毎に、識別子、時間、タイプ、X、Y、CPX、CPY、rが対応付けられて格納されている。   The second drawing instruction data 122 is data for drawing the second drawing data, and is specifically data including parameters for drawing line segments, arcs, circles, curves, and the like. The second drawing data is preferably data based on the specifications of Canvas. In the following description of the present embodiment, the first drawing data is assumed to be data based on the Canvas specification. FIG. 4 shows an example of the second drawing instruction data 122. The first drawing instruction data 121 stores an identifier, time, type, X, Y, CPX, CPY, and r in association with each drawing command.

例えば第二描画指示データ122は、識別子“8”、時間“2013:04:10 11:06”、タイプ “Moveto”、X“30”、Y“30”、CPX“−”、CPY“−”、r“−”を含み、これにより図2(b)及び図2(c)の点P7を指定する。また第二描画指示データ122は、識別子“9”、時間“2013:04:10 11:07”、タイプ “quadraticCurveTo”、X“30”、Y“110”、CPX“70”、CPY“$uniform”、r“−”を含み、これにより図2(b)及び図2(c)の点P7を始点、点P8を終点とする曲線を指定する。   For example, the second drawing instruction data 122 includes an identifier “8”, a time “2013: 04: 10 11:06”, a type “Moveto”, X “30”, Y “30”, CPX “−”, and CPY “−”. , R "-", thereby specifying the point P7 in FIGS. 2B and 2C. The second drawing instruction data 122 includes an identifier “9”, a time “2013: 04: 10 11:07”, a type “quadric CurveTo”, X “30”, Y “110”, CPX “70”, and CPY “$ uniform”. "," R "-" are included, thereby designating a curve having the point P7 in FIGS. 2B and 2C as the start point and the point P8 as the end point.

ここで第二描画指示データ122における“$uniform”は、動画フレーム毎に相違する値を格納する変数である。そしてUniformFunctionテーブル123は、各動画フレームに対応する“$uniform”の値を記憶する。   Here, “$ uniform” in the second drawing instruction data 122 is a variable for storing a value that differs for each moving image frame. The UniformFunction table 123 stores the value of “$ uniform” corresponding to each moving image frame.

図5に、UniformFunctionテーブル123の一例を示す。UniformFunctionテーブル123は、動画フレーム番号と、各動画フレーム番号に対応する$uniformの値とを含む。動画フレーム番号は、本システムにおいて動画フレームを一意に特定するための番号であり、例えば動画フレーム番号が小さい順に動画フレームを合成することにより動画を生成される。したがって本システムでは、図4に示す第二描画指示データ122及び図5に示すUniformFunctionテーブル123により、図2(b)(c)に示す第二描画データが生成される。   FIG. 5 shows an example of the UniformFunction table 123. The UniformFunction table 123 includes a moving picture frame number and a value of $ uniform corresponding to each moving picture frame number. The moving image frame number is a number for uniquely specifying a moving image frame in the present system. For example, a moving image is generated by combining moving image frames in ascending order of the moving image frame number. Therefore, in this system, the second drawing data shown in FIGS. 2B and 2C is generated by the second drawing instruction data 122 shown in FIG. 4 and the Uniform Function table 123 shown in FIG.

具体的には制御部13は、記憶部12の第二描画指示データ122を読み込む。続いて制御部13は、記憶部12のUniformFunctionテーブル123を読み込む。続いて制御部13は、第二描画指示データ122における“$uniform”の値を、各動画フレームのフレーム番号毎に、UniformFunctionテーブル123に基づき決定する。例えば制御部13は、動画フレーム番号が“1”については、UniformFunctionテーブル123に基づき“$uniform”の値は“70”と決定する。そしてこの場合、制御部13は、第二描画指示データ122に基づき、図2(b)に示す第二描画データを生成する。また例えば制御部13は、動画フレーム番号が“2”については、UniformFunctionテーブル123に基づき“$uniform”の値は“−10”と決定する。そしてこの場合、制御部13は、第二描画指示データ122に基づき、図2(c)に示す第二描画データを生成する。   Specifically, the control unit 13 reads the second drawing instruction data 122 in the storage unit 12. Subsequently, the control unit 13 reads the uniform function table 123 of the storage unit 12. Subsequently, the control unit 13 determines the value of “$ uniform” in the second drawing instruction data 122 based on the uniform function table 123 for each frame number of each moving image frame. For example, the control unit 13 determines that the value of “$ uniform” is “70” based on the uniform function table 123 for the moving image frame number “1”. In this case, the control unit 13 generates second drawing data shown in FIG. 2B based on the second drawing instruction data 122. For example, the control unit 13 determines that the value of “$ uniform” is “−10” based on the uniform function table 123 for the moving image frame number “2”. In this case, the control unit 13 generates second drawing data shown in FIG. 2C based on the second drawing instruction data 122.

また制御部13は、記憶部12に記憶した第一描画データと、生成した第二描画データを合成して、各動画フレームに係る描画データを生成する。具体的には制御部13は、第一描画データ(図2(a))と、図2(b)に示す第二描画データを合成して、図2(d)の描画データを生成する。また制御部13は、第一描画データ(図2(a))と、図2(c)に示す第二描画データを合成して、図2(e)の描画データを生成する。   The control unit 13 combines the first drawing data stored in the storage unit 12 and the generated second drawing data to generate drawing data related to each moving image frame. Specifically, the control unit 13 combines the first drawing data (FIG. 2A) and the second drawing data shown in FIG. 2B to generate the drawing data shown in FIG. Further, the control unit 13 synthesizes the first drawing data (FIG. 2A) and the second drawing data shown in FIG. 2C to generate the drawing data shown in FIG.

そして出力部14は、各動画フレームに係る描画データに基づき動画を出力する。具体的には出力部14は、各動画フレームに係る描画データに基づき、所定のフレームレートの動画データを生成し、通信部11を介して当該動画データをクライアント端末2に送信する。   And the output part 14 outputs a moving image based on the drawing data concerning each moving image frame. Specifically, the output unit 14 generates moving image data having a predetermined frame rate based on drawing data related to each moving image frame, and transmits the moving image data to the client terminal 2 via the communication unit 11.

次に、本発明の一実施形態に係る動画出力装置1について、図6に示すフローチャートによりその動作を説明する。   Next, the operation of the moving picture output apparatus 1 according to the embodiment of the present invention will be described with reference to the flowchart shown in FIG.

はじめに動画出力装置1の通信部11は、クライアント端末2から動画送信要求を受信する(ステップS1)。   First, the communication unit 11 of the video output device 1 receives a video transmission request from the client terminal 2 (step S1).

続いて動画出力装置1の制御部13は、記憶部12の第一描画指示データ121を読み込み、第一描画データを生成する(ステップS2)。そして制御部13は、第一描画データを記憶部12に記憶する(ステップS3)。   Subsequently, the control unit 13 of the video output device 1 reads the first drawing instruction data 121 of the storage unit 12 and generates first drawing data (step S2). And the control part 13 memorize | stores 1st drawing data in the memory | storage part 12 (step S3).

続いて制御部13は、記憶部12の第二描画指示データ122を読み込む(ステップS4)。続いて制御部13は、第二描画指示データ122における“$uniform”の値を、各動画フレームのフレーム番号毎に、UniformFunctionテーブル123に基づき決定する(ステップS5)。そして制御部13は、第二描画データを生成する(ステップS6)。   Subsequently, the control unit 13 reads the second drawing instruction data 122 in the storage unit 12 (step S4). Subsequently, the control unit 13 determines the value of “$ uniform” in the second drawing instruction data 122 for each frame number of each moving image frame based on the UniformFunction table 123 (step S5). And the control part 13 produces | generates 2nd drawing data (step S6).

続いて制御部13は、記憶部12に記憶した第一描画データと、生成した第二描画データを合成して、各動画フレームに係る描画データを生成する(ステップS7)。   Subsequently, the control unit 13 combines the first drawing data stored in the storage unit 12 and the generated second drawing data to generate drawing data related to each moving image frame (step S7).

続いて出力部14は、各動画フレームに係る描画データに基づき動画を出力する。具体的には出力部14は、各動画フレームに係る描画データに基づき、所定のフレームレートの動画データを生成し、通信部11を介して当該動画データをクライアント端末2に送信する(ステップS8)。そして処理が終了する。   Subsequently, the output unit 14 outputs a moving image based on the drawing data related to each moving image frame. Specifically, the output unit 14 generates moving image data of a predetermined frame rate based on the drawing data related to each moving image frame, and transmits the moving image data to the client terminal 2 via the communication unit 11 (step S8). . Then, the process ends.

このように本発明によれば、制御部13が、各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分に係る第一描画データを予め生成して記憶部12に格納しており、各動画フレームにおいて相違する描画部分のみを生成して合成するため、各動画フレームの描画処理のスピードを上げることにより、動画出力の高速化を図ることができる。   As described above, according to the present invention, the control unit 13 previously generates the first drawing data related to the drawing portion common to at least two moving image frames among the moving image frames and stores the first drawing data in the storage unit 12. Since only different drawing portions in the moving image frame are generated and combined, the speed of moving image output can be increased by increasing the drawing processing speed of each moving image frame.

なお、本実施の形態では、動画フレームが2つである例を示したがこれに限られず、動画フレームは3以上備えていてもよい。この場合、少なくとも2つの動画フレームで共通する描画部分を、第一描画データとする。   In this embodiment, an example in which there are two moving image frames has been described. However, the present invention is not limited to this, and three or more moving image frames may be provided. In this case, a drawing portion common to at least two moving image frames is set as the first drawing data.

ここで、動画出力装置1として機能させるために、コンピュータを好適に用いることができ、そのようなコンピュータは、動画出力装置1の各機能を実現する処理内容を記述したプログラムを、当該コンピュータの記憶部に格納しておき、当該コンピュータの中央演算処理装置(CPU)によってこのプログラムを読み出して実行させることで実現することができる。   Here, in order to function as the moving image output apparatus 1, a computer can be preferably used. Such a computer stores a program describing processing contents for realizing each function of the moving image output apparatus 1 in the storage of the computer. This program can be realized by reading out and executing this program by a central processing unit (CPU) of the computer.

また、本実施の形態では、ステップS1においてクライアント端末2から動画送信要求を受信することで、ステップS2及びステップ3に遷移していたが、クライアント端末2から動画送信要求を受信しなくても、ステップS2及びステップ3に遷移してもよい。   Moreover, in this Embodiment, it has changed to step S2 and step 3 by receiving a moving image transmission request from the client terminal 2 in step S1, but even if a moving image transmission request is not received from the client terminal 2, You may change to step S2 and step 3.

たとえば、クライアント端末2から動画送信要求を受信する以前に、ステップS2及びステップ3を予め処理しておき、クライアント端末2から動画送信要求をすることで、ステップS4に遷移してもよい。すなわち、本実施の形態では、動画出力装置1において第一描画データを予め生成するので、第一描画データを処理する時間が省かれるので、より高速に描画処理を行うことができる。   For example, before receiving the moving image transmission request from the client terminal 2, Step S <b> 2 and Step 3 may be processed in advance, and a moving image transmission request may be made from the client terminal 2, and the process may transit to Step S <b> 4. That is, in the present embodiment, since the first drawing data is generated in advance in the moving image output apparatus 1, the time for processing the first drawing data is saved, so that the drawing process can be performed at a higher speed.

本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各手段、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の手段やステップ等を1つに組み合わせたり、或いは分割したりすることが可能である。
以下に、本願の原出願の出願当初の特許請求の範囲に記載された発明を付記する。
[1]
各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶する記憶部と、
前記各動画フレームのうち前記画像データ以外の部分を描画する描画データを生成し、前記画像データと前記描画データとを合成して前記各動画フレームを生成する制御部と、を有する動画フレーム生成装置。
[2]
前記画像データは、3以上の動画フレームを含む動画の各動画フレームのうち、全フレーム数以下の動画フレームにおいて共通する描画部分を予め生成したものであることを特徴とする、[1]に記載の動画フレーム生成装置。
[3]
前記制御部は、前記描画データを、描画指示データに基づき生成することを特徴とする、[1]又は[2]に記載の動画フレーム生成装置。
[4]
前記描画指示データは、Canvasの仕様に基づくデータであることを特徴とする、[3]に記載の動画フレーム生成装置。
[5]
前記動画フレーム生成装置は、該動画フレーム生成装置上のJavaScript(登録商標)ライブラリを介して、Canvasの仕様に基づく前記データを処理することを特徴とする、[4]に記載の動画フレーム生成装置。
[6]
各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶するステップと、
前記各動画フレームのうち前記画像データ以外の部分を描画する描画データを生成し、前記画像データと前記描画データとを合成して前記各動画フレームを生成するステップと、を含む動画フレーム生成方法。
[7]
動画フレームを生成する動画フレーム生成装置として機能するコンピュータに、
各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶するステップと、
前記各動画フレームのうち前記画像データ以外の部分を描画する描画データを生成し、前記画像データと前記描画データとを合成して前記各動画フレームに係る描画データを生成するステップと、を実行させる動画フレーム生成プログラム。
Although the present invention has been described based on the drawings and examples, it should be noted that those skilled in the art can easily make various modifications and corrections based on the present disclosure. Therefore, it should be noted that these variations and modifications are included in the scope of the present invention. For example, the functions included in each means, each step, etc. can be rearranged so that there is no logical contradiction, and a plurality of means, steps, etc. can be combined or divided into one. .
The invention described in the scope of claims at the beginning of application of the original application of the present application will be appended below.
[1]
A storage unit for storing image data in which drawing portions common to at least two moving image frames among the moving image frames are generated in advance;
A moving picture frame generating device comprising: a control unit that generates drawing data for drawing a portion other than the image data in each moving picture frame, and generates the moving picture frames by combining the image data and the drawing data .
[2]
[1], wherein the image data is generated in advance in a moving image frame including three or more moving image frames, and a drawing portion common to moving image frames equal to or less than the total number of frames is generated. Video frame generator.
[3]
The moving image frame generating apparatus according to [1] or [2], wherein the control unit generates the drawing data based on drawing instruction data.
[4]
The moving picture frame generation device according to [3], wherein the drawing instruction data is data based on a Canvas specification.
[5]
The moving image frame generating device according to [4], wherein the moving image frame generating device processes the data based on the specification of the Canvas via a JavaScript (registered trademark) library on the moving image frame generating device. .
[6]
Storing image data in which drawing portions common to at least two moving image frames of each moving image frame are generated in advance;
Generating a drawing data for drawing a portion of each moving image frame other than the image data, and generating the moving image frame by combining the image data and the drawing data.
[7]
In a computer functioning as a video frame generation device that generates video frames,
Storing image data in which drawing portions common to at least two moving image frames of each moving image frame are generated in advance;
Generating drawing data for drawing a portion of each moving image frame other than the image data, and generating the drawing data for each moving image frame by combining the image data and the drawing data. Movie frame generation program.

1 動画出力装置(サーバ)
2 クライアント端末
11 通信部
12 記憶部
13 制御部
14 出力部
121 第一描画指示データ
122 第二描画指示データ
123 UniformFunctionテーブル
1 Video output device (server)
2 Client terminal 11 Communication unit 12 Storage unit 13 Control unit 14 Output unit 121 First drawing instruction data 122 Second drawing instruction data 123 UniformFunction table

Claims (8)

各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶する記憶部と、
前記各動画フレームのうち共通しない描画部分の描画データを生成し、前記画像データと前記描画データとを合成して前記各動画フレームを生成する制御部と、
クライアント端末からの動画送信要求を受信した場合に前記各動画フレームに基づき動画を出力する出力部と、を有し、
前記制御部は、前記描画データを、各動画フレーム間の相違を表す変数を含む描画指示データに基づき生成する動画出力装置。
A storage unit for storing image data in which drawing portions common to at least two moving image frames among the moving image frames are generated in advance;
A controller that generates drawing data of a drawing portion that is not common among the moving image frames, and generates the moving image frames by combining the image data and the drawing data;
An output unit that outputs a video based on each video frame when a video transmission request is received from a client terminal;
The moving image output device, wherein the control unit generates the drawing data based on drawing instruction data including a variable representing a difference between moving image frames.
前記画像データは、3以上の動画フレームを含む動画の各動画フレームのうち、全フレーム数未満の動画フレームにおいて共通する描画部分を予め生成したものであることを特徴とする、請求項1に記載の動画出力装置。   2. The image data according to claim 1, wherein a drawing portion common to moving image frames of less than the total number of moving image frames including three or more moving image frames is generated in advance. Video output device. 前記制御部は、前記動画送信要求を受信する以前に、予め前記画像データを生成して前記記憶部に記憶することを特徴とする、請求項1又は2に記載の動画出力装置。   The moving image output apparatus according to claim 1, wherein the control unit generates the image data in advance and stores the image data in the storage unit before receiving the moving image transmission request. 前記画像データは、所定の汎用画像フォーマットにより前記記憶部に記憶され、前記所定の汎用画像フォーマットは、JPG形式、PNG形式、及びTiFF形式のうち少なくとも一つを含むことを特徴とする請求項1〜3のいずれか1項に記載の動画出力装置。   The image data is stored in the storage unit according to a predetermined general-purpose image format, and the predetermined general-purpose image format includes at least one of a JPG format, a PNG format, and a TiFF format. The moving image output device according to any one of? 前記描画指示データは、Canvasの仕様に基づくデータであることを特徴とする、請求項1〜4のいずれか1項に記載の動画出力装置。   The moving image output apparatus according to claim 1, wherein the drawing instruction data is data based on a Canvas specification. 前記動画出力装置は、JavaScript(登録商標)ライブラリを介して、Canvasの仕様に基づく前記データを処理することを特徴とする、請求項5に記載の動画出力装置。   The moving image output apparatus according to claim 5, wherein the moving image output apparatus processes the data based on the specification of Canvas via a JavaScript (registered trademark) library. 各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶するステップと、
前記各動画フレームのうち共通しない描画部分の描画データを生成し、前記画像データ
と前記描画データとを合成して前記各動画フレームを生成するステップと、
クライアント端末からの動画送信要求を受信した場合に前記各動画フレームに基づき動画を出力するステップと、を含み、
前記各動画フレームを生成するステップは、前記描画データを、各動画フレーム間の相違を表す変数を含む描画指示データに基づき生成する動画出力方法。
Storing image data in which drawing portions common to at least two moving image frames of each moving image frame are generated in advance;
Generating drawing data of a drawing portion that is not common among the moving image frames, and generating the moving image frames by combining the image data and the drawing data;
Outputting a video based on each video frame when receiving a video transmission request from a client terminal,
The step of generating each moving image frame generates the drawing data based on drawing instruction data including a variable representing a difference between the moving image frames.
動画フレームを生成する動画フレーム生成装置として機能するコンピュータに、
各動画フレームのうち少なくとも2つの動画フレームにおいて共通する描画部分を予め生成した画像データを記憶するステップと、
前記各動画フレームのうち共通しない描画部分の描画データを生成し、前記画像データと前記描画データとを合成して前記各動画フレームを生成するステップと、
クライアント端末からの動画送信要求を受信した場合に前記各動画フレームに基づき動画を出力するステップと、を実行させ、
前記各動画フレームを生成するステップは、前記描画データを、各動画フレーム間の相違を表す変数を含む描画指示データに基づき生成する動画出力プログラム。
In a computer functioning as a video frame generation device that generates video frames,
Storing image data in which drawing portions common to at least two moving image frames of each moving image frame are generated in advance;
Generating drawing data of a drawing portion that is not common among the moving image frames, and generating the moving image frames by combining the image data and the drawing data;
Outputting a video based on each video frame when a video transmission request from a client terminal is received, and
The step of generating each moving image frame is a moving image output program for generating the drawing data based on drawing instruction data including a variable representing a difference between the moving image frames.
JP2017032144A 2017-02-23 2017-02-23 Movie output device, movie output method, and movie output program Active JP6454742B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017032144A JP6454742B2 (en) 2017-02-23 2017-02-23 Movie output device, movie output method, and movie output program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017032144A JP6454742B2 (en) 2017-02-23 2017-02-23 Movie output device, movie output method, and movie output program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015119572A Division JP6286393B2 (en) 2015-06-12 2015-06-12 Movie output device, movie output method, and movie output program

Publications (2)

Publication Number Publication Date
JP2017134844A JP2017134844A (en) 2017-08-03
JP6454742B2 true JP6454742B2 (en) 2019-01-16

Family

ID=59502773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017032144A Active JP6454742B2 (en) 2017-02-23 2017-02-23 Movie output device, movie output method, and movie output program

Country Status (1)

Country Link
JP (1) JP6454742B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003037826A (en) * 2001-07-23 2003-02-07 Alpine Electronics Inc Substitute image display and tv phone apparatus
JP2013045401A (en) * 2011-08-26 2013-03-04 Mitsubishi Electric Corp Animation drawing device

Also Published As

Publication number Publication date
JP2017134844A (en) 2017-08-03

Similar Documents

Publication Publication Date Title
CN110288614B (en) Image processing method, device, equipment and storage medium
JP2016065939A (en) Image display program, image display method, and image display system
CN109874048B (en) Video window assembly semitransparent display method and device and computer equipment
JP6454742B2 (en) Movie output device, movie output method, and movie output program
JP6286393B2 (en) Movie output device, movie output method, and movie output program
JP5940487B2 (en) Movie output device, movie output method, and movie output program
CN110288523B (en) Image generation method and device
WO2017119191A1 (en) Terminal device, information processing method, and recording medium
JP2006215766A (en) Image display device, image display method and image display program
US8947436B2 (en) Method, apparatus and system for dense graph simplification, and recording medium for the same
JP2012191362A (en) Image processing system and image processing method
US8619124B2 (en) Video data processing systems and methods
JP2017016511A (en) Distortion correction image processor and program
CN112051974A (en) Electronic price tag information transmission method and system, electronic price tag and server
US5726716A (en) Perspective representation system for displaying portions of an original picture in a displayable picture
US10104333B2 (en) Vector data conversion output device, vector data conversion output method, and vector data conversion output program
JP2015053601A (en) Image projection device, control method therefor, and program
CN115904085A (en) Face capture data processing method and device
KR20240022677A (en) Method for creating a metaverse stage-based motion character
KR20240022676A (en) Method for creating motion animation on 3d character data
JP2012249061A (en) Run length coding device, run length decoding device, run length coding method, and run length decoding method
JP5891530B2 (en) Video display processing method and image display apparatus for realizing the method
CN116977607A (en) Cultural relic model display method and system based on pixel flow
CN116645434A (en) Motion blur rendering method and device, electronic equipment and storage medium
CN115588063A (en) Picture obtaining method and device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180327

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180511

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181217

R150 Certificate of patent or registration of utility model

Ref document number: 6454742

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250