%#!platex -kanji=%k %#DVIPDF dvipdfmx -f ipa.map \documentclass{jsbook} %\pagestyle{empty} \usepackage[dvipdfmx]{graphicx} %\usepackage{listings, jlisting} %\usepackage[sectionbib]{chapterbib} %\usepackage{ascmac} \usepackage{geometry} \usepackage{url} \usepackage{hyperref} \geometry{textwidth=160mm, textheight=225mm} \renewcommand{\bibname}{参考文献} \begin{document} \begin{titlepage} \title{オンライン授業の準備を円滑に進めるための動画編集サポートシステム} \author{広瀬研究室3年 C1182493 高橋歩} \date {令和2年1月11日} \maketitle \thispagestyle{empty} \end{titlepage} \newpage \newpage \begin{center} {\bfseries 概要} \end{center} コロナ禍によってオンライン授業が増え、生徒にZoomや学内システムの説明の為に動画を作る機会が増えた。しかし、日々の授業の準備に加えて動画編集をするのには時間を取られてしまう。そこでFFmpegを用いて、動画編集に時間を取られないようなサポートシステムを作る。 \newpage \newpage \maketitle \setcounter{tocdepth}{2} \tableofcontents \chapter{はじめに}\label{sec:st} 本章では,研究を行なっていく上での背景や目的について説明する。 \section{背景} コロナ渦によってオンライン授業が増え、それに比例してオンライン授業に使用するソフトの導入動画などを作る機会が増えた。しかし、動画ができる流れとして全体の構成を考え、そして実際に撮影し納得のいくような動画を撮影できてから、映像や音声に何らかの効果を加えるエフェクト\footnote{動画に雷や雨といった天候の映像を重ねるなど動画に与える効果のこと}や編集時に動画の一部分切り取るカット\footnote{1つの動画を分割して必要なところだけを利用したり、前後の不要な部分を削除したりする作業のこと}など必要な編集を加えて最後に問題がないか最終確認をするというのが一連の流れである。しかし日々の授業の準備に合わせてそのような動画を用意するには非常に時間をとられてしまう。動画編集ソフトにも様々な種類があり、有料ソフト・無料ソフト・最低限の機能だけ備わっているもの・エフェクトの種類が豊富で高度な編集が出来るものなど多種多様なものが存在していてどれを使えばいいか迷ってしまう。さらに、多くのエフェクトやトランジション\footnote{動画を編集する際に、カットとカットの動画のつなぎ目に挿入する切り替え効果のこと}が存在していて、その中から場面にあったものを選ぶのにも手間がかかり、1つ1つ試さないと分からないものもある。また、生徒に分かりやすく伝えるにはどういった構成にすればいいのかというように全体構成を考えるのが必要で、満足のいくような動画にするためにも撮り直しをすることも考え得る。このように日々の授業の準備をしつつ動画を作るのは非常に困難であることが分かる。そこでFFmpegを使用して編集の部分の負担を軽くしてスムーズに動画編集が出来るようなサポートシステムの開発を目指す。 \chapter{先行事例} \chapter{FFmpegでの動画編集サポートシステム} \chapter{FFmpegでの動画制作} \section{FFmpegとは} FFmpegは、動画と音声を記録・変換・再生するためのオープンソース\footnote{ソースコードを使用・再利用・再配布等が可能なもの}のソフトウェアである。既知のオーディオフォーマットおよびビデオファイルフォーマットに対してエンコード\footnote{動画の容量を圧縮する作業のこと}およびデコード\footnote{圧縮された動画を元に戻すこと}できるコーデック\footnote{エンコードとデコードを双方向にすることができる機器・ソフトウェアのこと}が含まれているため、多くのフォーマット\footnote{コンピューターに入力する際のデータ配列の構成・型のこと}にも対応できる。 \section{FFmpegでの動画の結合} FFmpegでの動画の結合は以下の手順で行える。 \begin{figure}[htbp] \begin{center} \includegraphics[bb=123 5 592 594,clip,scale=0.48]{zu1.pdf} \caption{動画の結合方法の図} \end{center} \end{figure} \begin{figure}[htbp] \begin{center} \includegraphics[bb=35 35 792 560,clip,scale=0.4]{filelist.pdf} \caption{filelistの内容の図} \end{center} \end{figure} \begin{figure}[htbp] \begin{center} \includegraphics[bb=35 35 675 560,clip,scale=0.5]{ketugou.pdf} \caption{動画の結合の図} \end{center} \end{figure}\\ この作業で7秒と8秒の動画を結合して15秒の動画を作成した。 \clearpage \section{FFmpegでの動画のカット} FFmpegでの動画のカットは以下のコマンドで行える。 \begin{verbatim} ffmpeg -ss 0 -i output.MOV -t 7 out.MOV FFmpeg -ss 「開始地点(秒)」 -i 「入力する動画パス」 -t 「切り出す秒数」「出力する動画パス」 \end{verbatim} \begin{figure}[htbp] \begin{center} \includegraphics[bb=166 141 623 512,clip,scale=0.6]{cut.pdf} \caption{動画のカット方法} \end{center} \end{figure} このコマンドはカットの開始地点を決め、そこから切り出す秒数を決めて動画をその秒数だけカットするものである。カットには他にも指定した時間までカットし、指定した再生時間までを出力するなどの方法がある。 \newpage \section{FFmpegでのテロップの表示} FFmpegでのテロップ\footnote{テレビカメラを通さずにテレビ画面や動画画面上に映し出された文字情報のこと}の表示方法は以下のコマンドで行える。 \begin{verbatim} ffmpeg -i 7s.MOV -filter_complex "drawtext=fontfile=C\\://WINDOWS/Fonts/msgothic.ttc: text='テキストです':fontsize=100:fontcolor=white: x=300: y=300:" text.MOV ffmpeg -i 元動画ファイル名 -filter_complex "drawtext=fontfile=フォントのパス: text='テロップの内容':fontsize=フォントサイズ:fontcolor=フォントの色: x=x座標の位置: y=y座標の位置:" 完成動画ファイル名 \end{verbatim} \begin{figure}[htbp] \begin{center} \includegraphics[bb=35 126 806 560,clip,scale=0.6]{text.pdf} \caption{実際のテロップの図} \end{center} \end{figure} 文字を直接コマンドに記述したり、ファイルを読み込んで描写するdrawtextフィルタを用いてテロップを表示している。文字を動かしたり、内容を変更したり、色を変えることが出来る。日本語は日本語に対応したフォントでないと描写できないので注意が必要である。 \section{FFmpegでの画像の出力方法} \begin{verbatim} ffmpeg -i inputvideo.mp4 -vf "movie=watermarklogo.png [watermark];[in][watermark] overlay=main_w-overlay_w-40:main_h-overlay_h-40 [out]" outputvideo.mp4 \end{verbatim} 上記は動画の右下隅から水平方向と垂直方向それぞれに40ピクセルのマージンを取って画像を入れるコマンドである。 ここまでの機能を組み合わせることで以下のオープニングのような動画を作ることが出来る。 \href{run:kan.mp4}{https://www.yatex.org/gitbucket/HiroseLabo./2020-Ayumu/raw/master/paper/kan.MOV} \chapter{結論} ffmpegで動画編集の基本となる作業を行うことができた。今後は今までやってきた作業をスクリプトやSinatraを用いて一部分の作業を自動化してボタン1つでカットなどの動作を行えるようにすることでさらに動画編集の時間を短縮することを目指す。 \begin{thebibliography}{} \bibitem{}反転授業を継続的に行うためのスクリプトによる動画作成システムの開発 \url{https://ipsj.ixsq.nii.ac.jp/ej/?action=pages_view_main&active_action=repository_view_main_item_detail&item_id=206017&item_no=1&page_id=13&block_id=8}.(参照 2020-11-05). \bibitem{}学習動画を視覚的に構造化して提供する学習教材の提案 \url{https://ipsj.ixsq.nii.ac.jp/ej/?action=pages_view\_main&active\_action=repository\_view\_main\_item\_detail&item\_id=181837&item\_no=1&page\_id=13&block\_id=8}.(参照 2020-11-05). \bibitem{}動画教材を活用した授業の受容度に影響を与える要員の検討:大学生の動画教材を活用したオンライン教育の受容度調査報告 \url{https://shizuoka.repo.nii.ac.jp/?action=pages\_view\_main&active\_action=repository\_view\_main\_item\_detail&item\_id=12310&item\_no=1&page\_id=13&block\_id=21}.(参照 2020-11-05). \end{thebibliography} \end{document}