はじめに
実家に古いホームビデオが入っているDVDがあるが、このご時世、スマホで見られるようにしておいた方が良いと思い、ChatGPTの助けを借り、DVDからMP4ファイルへの変換にチャレンジ。備忘録として残しておく。
環境
・パソコン (M1 MacBook Air)
・USB DVDドライブ (今回は以下を使用)
事前準備 ffmpegインストール
はじめにffmpegというフリーの変換ソフトをインストールする。
brew install ffmpeg
事前準備 DVD内の変換対象ファイル確認
Macの場合、DVDの中のフォルダにアクセス権がない場合がある、その場合はパーミッションを追加する。
フォルダ内に.VROという拡張子のファイルがあるので、そのファイルに対して、ffprobeコマンドを実行する。
ffprobe VR_MOVIE.VRO
以下のような結果が出るので、これを後でGPTに渡せるように、コピーしておく。
Input #0, mpeg, from 'VR_MOVIE.VRO': Duration: 01:07:39.27, start: 2087.238833, bitrate: 9108 kb/s Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m, top first), 352x480 [SAR 20:11 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, start 2087.522067 Side data: cpb: bitrate max/min/avg: 4200000/0/0 buffer size: 1835008 vbv_delay: N/A Stream #0:1[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s, start 2087.238833
事前準備 GPTで変換コマンドの生成
今回は以下のようなプロンプトにした。```と```の間にffprobeの結果を貼り付けておく。
ffprobeの結果が以下となるVROファイルがある。M1 Macでffmpegを使用して、VROをMP4に変換するコマンドは?GPUを使用して高速化して。また、HEVCで元データの品質に合わせて、できるだけファイルサイズを小さくして。
```
Input #0, mpeg, from 'VR_MOVIE.VRO':
Duration: 01:07:39.27, start: 2087.238833, bitrate: 9108 kb/s
Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m, top first), 352x480 [SAR 20:11 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, start 2087.522067
Side data:
cpb: bitrate max/min/avg: 4200000/0/0 buffer size: 1835008 vbv_delay: N/A
Stream #0:1[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 256 kb/s, start 2087.238833
```
変換コマンドの実行
今回はGPTと相談して、以下のようなコマンドにした。
ffmpeg -hide_banner -hwaccel videotoolbox -i VR_MOVIE.VRO \ -map 0:v:0 -map 0:a:0 \ -vf "bwdif=mode=send_frame:parity=tff,scale=640:480,setsar=1/1,format=yuv420p" \ -c:v hevc_videotoolbox -tag:v hvc1 \ -b:v 1500k -maxrate 2000k -bufsize 3000k -g 300 \ -c:a aac -b:a 128k \ -movflags +faststart \ VR_MOVIE_hevc_gpu.mp4
元ファイルが4GBの時、変換時間は15分〜30分ほどだった。
もちろん、コピーガードがかかっているようなDVDでは変換不可。

![[新版 zsh&bash対応]macOS×コマンド入門 ──ターミナルとコマンドライン、基本の力 (WEB+DB PRESSプラスシリーズ) [新版 zsh&bash対応]macOS×コマンド入門 ──ターミナルとコマンドライン、基本の力 (WEB+DB PRESSプラスシリーズ)](https://m.media-amazon.com/images/I/51hwh4PB1hL._SL500_.jpg)
![[改訂第3版]Windowsコマンドプロンプトポケットリファレンス[上] (Pocket reference) [改訂第3版]Windowsコマンドプロンプトポケットリファレンス[上] (Pocket reference)](https://m.media-amazon.com/images/I/51rMSs27BXL._SL500_.jpg)












![徹底攻略Java SE Bronze問題集[1Z0-818]対応 徹底攻略Java SE Bronze問題集[1Z0-818]対応](https://m.media-amazon.com/images/I/51xlTxxWr8L._SL500_.jpg)







![カシオ スタンダード A700WM-7A 腕時計 メンズ レディース キッズ 子供 男の子 女の子 チープカシオ[並行輸入品] カシオ スタンダード A700WM-7A 腕時計 メンズ レディース キッズ 子供 男の子 女の子 チープカシオ[並行輸入品]](https://m.media-amazon.com/images/I/41VW8s85w0S._SL500_.jpg)
![[カシオ]カシオ スタンダード A700WMG-9A 腕時計 メンズ レディース キッズ 子供 男の子 女の子 チープカシオ チプカシ デジタル 日付 ゴールド 金 メッシュ 海外モデル [並行輸入品] [カシオ]カシオ スタンダード A700WMG-9A 腕時計 メンズ レディース キッズ 子供 男の子 女の子 チープカシオ チプカシ デジタル 日付 ゴールド 金 メッシュ 海外モデル [並行輸入品]](https://m.media-amazon.com/images/I/41actqmoUCL._SL500_.jpg)
![[カシオ] 腕時計 スタンダード A700W-1A メンズ レディース キッズ チープカシオ チプカシ デジタル 海外モデル [並行輸入品] [カシオ] 腕時計 スタンダード A700W-1A メンズ レディース キッズ チープカシオ チプカシ デジタル 海外モデル [並行輸入品]](https://m.media-amazon.com/images/I/41eu1+mf3LL._SL500_.jpg)











![[改訂第3版]Linuxコマンドポケットリファレンス [改訂第3版]Linuxコマンドポケットリファレンス](https://m.media-amazon.com/images/I/51ZPkoBGdZL._SL500_.jpg)







