YouTubeに投稿するゲーム動画ファイルの作成
USBキャプチャーを使ってパソコンで録画したマリオカート8のリプレイをYouTubeに投稿して60fpsで再生できることを確認した(マリオカート8のリプレイをパソコンで録画)。
後は、好きな動画、マリオカートでもなんでも好きなものを好きなだけ投稿するだけである。
しかし、ものすごく気になることが一つあった。
YouTubeで動画を再生すると、再生した動画の傾向から、類似すると思われる動画が関連動画・おすすめとしてページ内の脇にずらっと並ぶのだが、
ゲームの画面が見たくてゲーム動画を再生しているのに、いつごろからか明らかにゲームの内容に直接関係しない要素が前面に出ている動画がいくつも表示されるようになった。
ユーザースタイルシートなどを使用して、URLを指定していくらブロックしても次々に投稿され、ある程度期間が経っても一向に止む様子がなく、いつ利用しても消えていることがない。
TVゲーム動画と、TVゲームを扱ったタレント活動のような動画は、もはや別ジャンルではないだろうか。
せっかく動画を見てくれる人がいても、そういう動画を見ることになるのはもうしわけない。
TVゲームの画面だけを収録した動画のほうを「Game Video Only」とでもすればいいのか。
そこで、先日、動画の再生のためにインストールしたGoogle Chromeで、何か解決法がないか検索してみた。
「YouTube TVゲームの動画なのにTVゲームを愛好する人の需要に沿うとは思えない印象を受けるような心証が芳しくないこと極まりない表情をした配信者の顔が前面に出ている、ks・・・凄まじく歓迎する気持ちを持てない動画 非表示」
というような意味の言葉でいろいろ検索していったところ、 「もしかして:○○」というのは出てこなかったが、特定の配信者の動画を非表示処理する方法が見つかった。
参考サイト:Youtubeおさるフィルタ
ユーザーJavaScriptを使用したフィルタースクリプトである。
対応したウェブブラウザーで使用できる。Google ChromeやFirefoxで使用する場合は、Tampermonkeyや、Greasemonkeyなどのブラウザー拡張機能を使用して動作させる。
導入したところ、見違えるほどにきれいさっぱり消えた。
しかしまだ充分ではない。動画の再生が終了したとき、プレイヤー内にも案内がでる。これはFlashプレイヤーで表示されているので、そのスクリプトの効果が及ばない。
※この記事のフィルタースクリプトの箇所を別のブログに転記しました。
そこで、投稿する動画の映像本編の後に、約一分間の無音の黒背景映像を追加して動画ファイルを作成し、投稿した後、YouTubeのアノテーションという機能を使って、メッセージを記入した。
「再生が終了すると、様々な動画への案内が出ます」というようなメッセージである。
加えて、映像がいきなり黒画面になると、目に優しくないと思うのでフェードアウト処理を行った。
参考サイト:サンプルスクリプト/フェードアウト - AviSynth.info
動画に無音の黒背景映像を追加する方法は次のサイトを参考にした。
今回はYouTubeの機能で文字を記入したが、以下の方法で文字列を入れることもできることがわかった。
以下は動画ファイル作成に使用しているAviSynthファイルのサンプル。
PluginDir = "E:\bin\movie\AviSynth_plugins\" CaptureDir = "I:\Capture\" SuffixStr = ".avi" AVISource( CaptureDir + "amarec(20141111-1848)" + SuffixStr ) ###### 4.フィールドオーダーの指定 ##### #//--- トップファースト ---// AssumeFrameBased().ComplementParity() #//--- ボトムファースト ---// #AssumeFrameBased() #//--- クロップ 左, 上, -右, -下 ---// #Crop(0, 0, -0, -0) ###### 6.インターレース解除 ##### #0 #Bob() #1 #LoadPlugin(PluginDir + "TDeint.dll") #TDeint(mode=1) #2 LoadPlugin(PluginDir + "yadifmod.dll") LoadPlugin(PluginDir + "nnedi3.dll") interp=nnedi3(field=-2) yadifmod(mode=1, order=1, edeint=interp) #3 #LoadPlugin(PluginDir + "TDeint.dll") #LoadPlugin(PluginDir + "nnedi3.dll") #LoadPlugin(PluginDir + "TMM.dll") #interp=nnedi3(field=-2) #TDeint(mode=1, order=1, edeint=interp, emask=TMM(mode=1, order=1)) #//--- サイズ変更 ---// #BilinearResize(縮小に良い) #BicubicResize(Bilinearよりシャープ) #Lanczos3Resize #SimpleResizeを使用する場合 #LoadPlugin(PluginDir + "SimpleResize.dll") #SimpleResize(1264,720) #SimpleResize(844,480) #Lanczos4Resize(1264,720) Lanczos4Resize(844,480) #LoadPlugin(PluginDir + "nnedi3.dll") #http://pedantic.jp/movie/?siid=avisynth_size #nnedi3_rpow2(rfactor = 2, nsize = 4, nns = 0, qual = 1, cshift = "LanczosResize", fwidth = 844, fheight = 480, ep0 = 4) #http://freesoft.tvbok.com/movie_encode/avisynth/hd_1.html #nnedi3_rpow2( rfactor = 2, nsize = 4, nns = 0, qual = 1, cshift = "BilinearResize", fwidth = 844, fheight = 480 ) #nnedi3_rpow2( rfactor = 2, nsize = 4, nns = 0, qual = 1, cshift = "BicubicResize", fwidth = 844, fheight = 480, ep0 = 0, ep1 = 0.75) #Addborders(左,上,右,下)・黒縁を追加して、1280×720のサイズにする Addborders(0,240,436,0) # 16:9=x:480 x=16*480/9 # 720:712=x:x1 x1=16*480*712/(9*720=6480) = 843.8518518518519 844(4の倍数) # 720:712=1280:x2 x2=1265.777777777778 1264(4の倍数) # 844*480*60*0.225*/1000=5469.12 kbps # 1264*720*60*0.225*/1000=12286.08 kbps # 開始位置・終了位置の指定 Trim(378, 10524) # フェードイン(フレーム数) #FadeIn0(60) # フェードアウト(フレーム数) FadeOut0(180) # 無音声の黒画面を3600フレーム(約一分)追加 last ++ BlankClip( length=3600, width=1280, height=720, pixel_type="YUY2", fps=60000, fps_denominator=1001, audio_rate=48000, channels=2, color=$000000 ) # テロップ付きで黒背景映像を追加する場合 # vmain = last # BlankClip( length=3600, width=1280, height=720, pixel_type="YUY2", fps=60000, fps_denominator=1001, audio_rate=48000, channels=2, color=$000000 ) #str = """ #この動画は、映像本編の後に約一分間の無音声の黒画面を追加しています。\n #再生が終了しますと、様々な動画への案内が表示されます。 #""" #Subtitle( str, font="メイリオ", text_color=$CCCCCC,lsp=0 ) #FadeIn0(30) #FadeOut0(30) # vmain ++ last ###### 8.おわり ##### return last
関連:はてなブログでpreタグ内での自動リンクを回避する方法 - あずまや