ffmpegでYouTubeライブのアーカイブ動画から切り抜きをつくる
結論を言うと、上手くいかなかった
前提
YouTubeライブをしている(マイクラ)
ライブのアーカイブがYouTubeに保存されており、mp4でDLできる
40分動画で400MBなど数百MBは行く
このアーカイブをDLし、ここから切り抜き用のmp4をつくりたい
コマンドラインでhh:mm~hh:mmを指定してそこだけ切り抜いたmp4がほしい
結論
切り抜きはできる
が、アスペクト比がいまいち
投稿してみると画質もいまいち
ここの原因がさっぱりわからんsta.icon
たぶん劣化してるんだと思う
-c:v libx264 -crf 20 -preset medium -c:a aac -b:a 128k -movflags +faststart
が、何が何やら
ちゃんと勉強しないとダメだなsta.icon
比較
従来どおりaviutlでちゃんと編集したもの
スケルトン「背後に回り込め!」 クリーパー「トドメは任せて!」 - YouTube
今回試したもの
洞窟照らし隊 - YouTube
以下はffmpegのスクリ
切り抜き
code:bat
@echo off
setlocal
set ffmpeg=D:\bin1\ffmpeg\bin\ffmpeg.exe
set infile=2
set stttime=2:44
set endtime=3:00
set overwritten=-y
set datebase=%date%
set timebase=%time%
set shortdate=%datebase:/=%
set shortdate=%shortdate:~2,6%
set shorttime=%timebase::=%
set shorttime=%shorttime:~0,6%
set shortdatetime=%shortdate%_%shorttime%
%ffmpeg% -ss 00:%stttime% -to 00:%endtime% -i %infile%.mp4 %overwritten% -c copy %shortdatetime%_%infile%.mp4
だがこれだけでは横長でshortにならないのでアスペクト比を修正する
code:dos
@echo off
setlocal
set ffmpeg=D:\bin1\ffmpeg\bin\ffmpeg.exe
set infile=251227_151207_水バケツ着地しくったけど何とか
rem %ffmpeg% -y -i %infile%.mp4 -vf "scale=720:-2,pad=720:1280:(ow-iw)/2:(oh-ih)/2" -c:v libx264 -crf 20 -preset medium -c:a aac -b:a 128k -movflags +faststart %infile%_SHORT.mp4
rem "crop=ih*9/16"
rem "crop=405:720:(in_w-405)/2:0,scale=1080:1920"
rem "scale=1080:-2,pad=1080:1920:(ow-iw)/2:(oh-ih)/2"
rem "scale=1080:-2,pad=1080:1280:(ow-iw)/2:(oh-ih)/2"
rem "scale=720:-2,pad=720:1280:(ow-iw)/2:(oh-ih)/2"
rem "scale=720:-2,pad=720:1080:(ow-iw)/2:(oh-ih)/2"
%ffmpeg% -y -i %infile%.mp4 -vf "scale=1080:-2,pad=1080:1280:(ow-iw)/2:(oh-ih)/2" -c:v libx264 -crf 20 -preset medium -c:a aac -b:a 128k -movflags +faststart %infile%_SHORT.mp4
色々粘ったけど、このやり方で余白マシマシにするしかないっぽいsta.icon
作業風景
https://gyazo.com/af9a9b0a631487bf89b1d3f257194879