30年前の8mmビデオを無料でDVDディスクへ変換。

Linux (CentOS、RockyLinux)

5月の連休に整理していたら、30年以上前の8mmビデオテープが出てきました。
長男が生まれた時期で、初めてビデオカメラ買った時だと思います。
懐かしくなって、見てみようを思いましたが、すでにビデオカメラは壊れています。
ビデオカメラのレンタルも考えましたが、デジタル化してくれるサービスもあるようです。
いろいろ、探して、一本300円だったので、ここにしました。
https://www.digital-dubbing.com/estimate/
約一か月かかりました。安い分、時間がかかりましたが、MP4へデータ化してもらえました。
データ化と送料は、当然、無料ではありませんが、
MP4データからDVD-Videoメディアを作成するのが今回のテーマです。

MP4データを、DVD-Videoデータにするには?

懐かしい映像が盛りだくさんだったので、知り合いにも見てもらいたいと思いましたが
MP4だと、PCやスマホなら見れますが、古いTVだと対応していない機種もあります。
昔は、ほとんどDVDデッキで見ていましたが、それもMP4には対応していない場合が多いです

PCの中に、古いオーサリングソフトが入っていましたが、私のこいつはMP4に対応していません。
MP4 ⇒ Mpeg ⇒ DVD-Video の変換が必要になりそうです。
ネットで検索すると、無料版や体験版のWindowsソフトもあるみたいですが、
Unix系生まれの、「FFmpeg」を見つけました。(https://ffmpeg.org/
「FFmpeg」は、Windowsでも動作するみたいですが、結局コマンドライン動作のようです
コマンドラインであれば、筆者の自宅環境では、CentOS系が動いているので、これでやってみました。

RHEL(Red Hat Enterprise Linux)系に「FFmpeg」をインストール

Rocky Linux にインストール

筆者は、バックアップとして、ミラー環境を立ち上げています

centOS8 で構築しましたが、centOS8が2021年末でサポートが終了したため
Rocky Linux 8 へ移行しました。

FFmpeg インストール

こちらを参考にしました
https://qiita.com/naoh16/items/f9bd1094b93ce47fefeb
https://pentan.info/server/linux/ffmpeg_dnf_install.html
こちらによると、「EPELリポジトリ」「RPM Fusionリポジトリ」が必要なようです
追加されているリポジトリの一覧は下記のコマンドで表示できます。

dnf repolist all

一覧に、「epel」と「rpmfusion-free」がない場合には、追加します。

dnf install epel-release
dnf install --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm -y

追加されたリポジトリは、そこのソフトを使用する時のみ有効にするほうがいいようです。
したがって、使用後は無効にするために、「yum-utils」もあったほうが、便利になるようです。

rpm -qa | grep yum-utils

このコマンドで、インストールされていない場合には、インストールします。

dnf install yum-utils

centOS8系の場合には、PowerToolsのリポジトリも有効にしたほうがいいようです。
このリポジトリには、epel パッケージに必要な開発ツールが含まれているようです。

ここまでで、必要なリポジトリが有効になっているかの確認をします

dnf repolist all | grep epel
dnf repolist all | grep rpmfusion-free
dnf repolist all | grep powertools

有効になっていない場合、有効にし更新しておきます

dnf config-manager --set-enabled epel
dnf config-manager --set-enabled rpmfusion-free-updates
dnf config-manager --set-enabled powertools
dnf update

さて、いよいよ、「FFmpeg」をインストールします。
まずは、パッケージ有効の確認し、インストールを実行します。

dnf search FFmpeg
・・
dnf install ffmpeg ffmpeg-devel

インストールの確認を行い、インストール済みであれば、rpmfusionのリポジトリを無効にしておきます。

dnf list installed | grep ffmpeg
・
dnf config-manager --set-disabled rpmfusion-free-updates
dnf repolist all | grep rpmfusion

FFmpeg で、MP4をDVD-Video形式に変換

FFmpeg はかなり豊富な機能があるみたいです。
今回の変換は、このサイトを参考にしました

Windows PC から、linux PC へMP4データ送信

筆者のメインは、Windows10です。
linux PCは、サーバ目的なので、ほとんどwindows PCから「ssh」でリモート接続です

したがって、私の環境では、WindowsのMP4データを、linuxPCへ送信する事から始めます。
「Tera Term」では、File ⇒ SSH SCP… から、ダイアログでコピーできます。

連番のファイル名を、別の連番のファイル名に変更する

取り込んだ、「mp4」データのファイル名を変更したい事があります。
video01.mp4 ~ のファイル名を、mp01.mp4 ~ に変換するコマンドです。

$ ls | grep video | awk '{printf "mv %s mp%02d.mp4\n",$0,NR}' | sh

動画をリストファイルをもとに連結する

複数個の動画ファイルを一つに連結したい場合には、動画リストのファイルを作成しそのファイルをもとに連結されたほうが簡単です。
まず、リストファイルを作成します

$ vi list.txt
・
file './mp01.mp4'
file './mp02.mp4'
file './mp03.mp4'
file './mp04.mp4'
file './mp05.mp4'
・
・
$ ffmpeg -f concat -safe 0 -i list.txt -c copy all.mp4

MP4形式を、DVD-Video形式へ変換

コピーが完了すると、linux側のホームディレクトリへ保存させていますので
「FFmpeg」で変換します。

ffmpeg -i all.mp4 -target ntsc-dvd -aspect 16:9 all.mpg

連番の「mp4」データを、連番の「mpg」に連続変換するスクリプトを作成します
次のスクリプトを作成してみました。
同じディレクトリ内の、「mp01.mp4 ~」のデータを「mp01.mpg ~」に変換します。

$ for i in `ls | grep -e mp[0..9] | sed s/.mp4//`; do name=$i; ffmpeg -i $name.mp4 -target ntsc-dvd -aspect 16:9 $name.mpg; done

これで、DVD-Videoに使えるmpegファイルができましたが、DVDディスクを作成するには「dvdauthor」というオーサリングツールが必要なようです。
「dvdauthor」は、centOS7も8もEPELリポジトリに保管されています
https://rhel.pkgs.org/8/epel-x86_64/dvdauthor-0.7.2-16.el8.x86_64.rpm.html
https://rhel.pkgs.org/7/epel-x86_64/dvdauthor-0.7.2-1.el7.x86_64.rpm.html
この記事では、上記で「EPELリポジトリ」はインストールしてあるので
インストールされていなければ「dvdauthor」はすぐにインストールできます
インストール状態を確認後、インストールされていなければ、インストールします

rpm -qa | grep dvdauthor
・
dnf install dvdauthor

「dvdauthor」を使い、DVD-Videoを作成するのに必要な映像データが入った
ディレクトリを作成します。
まずは、上記で「FFmpeg」で作成した「output.mpg」と同じディレクトリに
DVD用のディレクトリを作成し、その中に「dvdauthor」により、必要データを格納します。

mkdir ./DVD_DIR
dvdauthor -t -o DVD_DIR -f output.mpg
dvdauthor -o DVD_DIR -T

次に、作成されたDVD用ディレクトリで、DVD用イメージファイルを作成します。
イメージファイルは、「mkisofs」コマンドを使用します。
mkisofsがインストールされていない場合には、「genisoimage」をインストールします。

$ sudo dnf install genisoimage
$ mkisofs -dvd-video -o output.iso ./DVD_DIR/

作成された、DVDイメージファイル「.iso」をDVDに書き込んで終了ですが
筆者の環境では、DVD書き込みデバイスは、Windows PCなので、再度「ssh/scp」で
WIndows PCへコピーして、WindowsPCで書き込みますが
もし、LinuxPCにDVDデバイスが利用可能な場合には、「brasero」をインストールする事で、Linuxマシンで、DVD書き込みが可能になります。

これで、「MP4」ファイルを、「DVD-Video」形式のイメージファイルが作成できました。
後は、このイメージファイルを、DVDメディアへ書き込めば、終了です。
Windows10では、エクスプローラーで、ISOファイルを右ボタンで、
「ディスクイメージの書き込み」でDVDドライブへ書き込みができます

完成

今回は、mpeg作業環境が出来ていなかったため、面倒な作業が必要でしたが、
環境ができあがっていれば、大した作業ではないです。
・MP4をmpegファイルに変更
・DVD-Video用のディレクトリ作成
・mpegファイルを、作成したディレクトリにDVD-Video用タイトルを作成
・タイトルを目次ファイルに変換
・DVD-Videoのイメージファイル(.iso)作成

ffmpeg -i 1993.mp4 -target ntsc-dvd -aspect 16:9 output.mpg
mkdir ./DVD_DIR
dvdauthor -t -o DVD_DIR -f output.mpg
dvdauthor -o DVD_DIR -T
mkisofs -dvd-video -o output.iso ./DVD_DIR/

イメージファイルが完成すれば、そのまま再生したり、ディスクへ書き込んだりが可能となります

コメント

タイトルとURLをコピーしました