夜が明けてきた そろそろ寝よう
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


【YouTube】アップロードが失敗する特殊事例
以前、必要にせまられ、圧縮しづらい映像をわざと作る実験をしたことがありました。
その際、あまりに圧縮しづらい映像だとアップロードが失敗することがわかったので、ここに紹介します。



この大量の歯車がひたすら回転を続けるアニメを作りました。ちょっと意外かもしれませんが、とても圧縮しづらい映像になります。詳しくないですが、輝度が大きく変わる(明滅が激しい)映像は圧縮が困難らしいです。ここでは歯車をタイル模様にし、黒ぶちにすることで、わざと輝度の変化を大きくしました。
そうやって作った動画ですが、なぜか必ずアップロードが失敗します。アップロード画面を見ていると、YouTube側で行われる再エンコードが最後まで行ったところでエラーになります。エンコードしてはみたものの、生成された映像がひどすぎるとか、生成されたファイルのサイズが大きすぎるとかの理由でエラーになるのかと想像してます。

アップロード画面のエラーメッセージは
この動画を処理できませんでした。アップロードしている動画がサポート対象のファイル形式であることを確認してください。
となってます。
動画管理ツールのエラーメッセージは
失敗しました (動画ファイルを変換できません)
となってます。

どちらのエラーメッセージを見ても、原因が、圧縮しづらい映像にあるとは想像もつかないでしょう。しかし、私の場合は動機が特殊で、圧縮しづらい映像を作るところからスタートしてたのでなんとかわかりました。
裏を取るため、映像の一部を黒くぬりつぶし、圧縮しやすくしたところ、アップに成功しました。それが以下の動画です。



動画の作成環境は変えず、動画フォーマットも同じにしています。違うのは映像だけですから、映像のせいでエラーになったとしか考えられません。

以上から、圧縮しづらすぎる映像はエラーになる、と自分的には結論づけました。

それはそれとして、苦労して作ったアニメを全画面で表示できないのは残念だということで、何とか全画面で表示できないかと工夫した結果が、次の動画です。



後ろ半分を真っ黒な映像にしました。これでアップに成功します。前半部はエラーレベルの圧縮しづらさだけど、後半部がむちゃくちゃ圧縮効くので、トータルではエラーを回避するのだと思います。
そしたらこの真っ黒な後半部分を動画加工ツールでカットする(捨て去る)とどうなるんでしょう?全画面アニメの部分だけが残る?結果はよくわからないことになりました。
動画加工ツールでカットし、「別の名前で保存」を選ぶと編集は失敗に終わりました。動画管理ツールのエラーメッセージは前回同様、
失敗しました (動画ファイルを変換できません)
でした。これは妥当な結果に思えます。
一方、動画加工ツールで「別の名前で保存」せずに単に「保存」、つまり上書きした場合は編集が成功してしまい、全画面アニメの部分だけの動画ができました。謎です。

まとめ




【YouTube】旧動画のDASH化の際に起きる障害のまとめ
YouTubeのDASH化については以前別エントリで説明しましたが、ビットレート大幅削減による画質劣化という、なかなか厳しい仕様変更となっています。新規アップロード動画だけでなく、昔の動画も順次DASH化されており、その結果、昔よりも劣化した画質で見させられるという時代を逆行するような辛い事態になってますが、一部の動画ではそれだけで済まずに障害が起きています。このエントリではそれら障害で私の知っているものをまとめます。

旧動画のDASH化時系列



DASH化は'13年5月頃に始まりました。それ以降の新規アップ動画は全てアップ時にDASH化されるのでわかりやすいですが、旧動画はどうかというと、全てを一気にDASH化するのは無理です。重いエンコード処理が必要ですから。なので、図の赤線で示すように、徐々にDASH化されています。その順番ははっきりしませんが、傾向としては再生数の多い動画から順にやってるようです。そして、'14年1月現在、まだ全ての動画のDASH化は完了していません。その完了をおとなしく待っててくれたら良かったんですが…
'13年10月頃から、従来版1080p、480pの削除が始まりました。そしてあっというまに終わりました。削除するだけなので速攻です。
この従来版1080p、480pの削除がスケジュール通りだったのか、ディスクの逼迫で前倒しされたのかわかりませんが、DASH化が完了しないうちに行われたため、問題が起きています。

DASH化による障害
(1)あったはずの1080p、480pがいつのまにかなくなっている
図の②の部分が該当します。DASH化されてない(DASH版が作られてない)のに従来版の1080p、480pが削除されたため、この障害となります。
(2)あったはずの解像度がいつのまにかなくなっている
症状は(1)に似てますが原因が違うケースです。図の①の一部ってことになりますかね、敢えて言えば。
一応DASH化されてるものの、DASH版の作成が不完全で一部欠けていると、この障害になります。
私の動画(元々は720pの動画)では、DASH版の480pだけが作られ、720p、360p、240p、144pが作られてないものがありました。この場合プレーヤーでは480pしか選べません。
運が悪いと、DASH版の144pだけ作られて、結果、プレーヤーで144pしか選べないこともあるようです。元々1080pの動画がこんな事態になったら愕然とするでしょうね。
(3)音が出ない
原因的には(2)と一緒です。
DASH版の作成が不完全で、映像ファイルはあるけど音声ファイルがない場合、この障害になります(DASHでは映像と音声を別ファイルで用意しています)。
(4)大きなブロックノイズ発生
「wmv形式でアップした動画」で、「不幸にも'13年8月前半にDASH化」され、「フェードイン、フェードアウト処理がある」場合、そのフェードイン、フェードアウトに大きめのブロックノイズが発生することがあるようです。
海外のYouTubeフォーラムのこちらのトピック(1)で議論されていますが、簡単にまとめます。
YouTube側で行われる再エンコード処理に問題があり、'13年8月前半、wmvのエンコードがブロックノイズまみれとなっていたようです(特にフェード処理で多発)。半月程度で正常に戻ったようです。この間にアップロードしてブロックノイズまみれになってしまった動画は、前記トピックに動画リンクを記せば担当者の方で対処(再々エンコード)するという、日本のYouTubeフォーラムではありえない処置がなされます。
しかし、この問題にひっかかるのは8月にアップした動画だけではありません。アップが大昔でも、DASH化が8月に行われれば、同様の事態に見舞われます。そして被害は、より甚大です。今更アップし直しなんてできないでしょうから。ということでそういう動画を救済するためのトピック(2)も作られました。でもあまり活用されてないようです。気づかない人、気づいても途方に暮れるだけの人が多いのかもしれません。

原因の確認方法
上記障害が起きても、その症状だけを見てDASH化のせいとは決め付けられません。特に音が出ないなんて他の原因の方が多そうです。というわけで、上記障害が起きた時にDASH化が原因か否かを確認する方法を説明します。主に動画再生ページのソース(HTML表記)を確認することになります。
(1)あったはずの1080p、480pがいつのまにかなくなっている
HTMLをdashで検索していき、
"dash": "1"
"dashmpd"
これら記載があれば、その動画はDASH化されています。記載がなければまだDASH化されてません。
記載がないなら、1080pと480pがないのはある意味当たり前、最初の図で説明したとおり、YouTube側の処理順がちょっとおかしいせいです。
(2)あったはずの解像度がいつのまにかなくなっている
HTMLをdashで検索していき、
"dash": "1"
"dashmpd"
これら記載があること(つまりDASH化されてること)を確認します。次にHTMLを itag= で検索していきます。itag=xx というのはサーバ側に用意されてる動画フォーマットの一つ一つに対応しています。例えばHTML中に itag=134 という表記があった場合、それは360pのDASH版映像が用意されてることを意味します。以下にitagの表記とDASH版映像フォーマットの対応をまとめます。

HTML中のitag表記 映像フォーマットの種別
itag=160 144p
itag=133 240p
itag=134 360p
itag=135 480p
itag=136 720p
itag=137 1080p

元々が720pの動画だったとすると、HTML中に「itag=160」「itag=133」「itag=134」「itag=135」「itag=136」の全てがあればDASH化は(映像については)正常に完了しています。それでもプレーヤーに表示される解像度がおかしい場合はDASH化以外の原因があるはずです。
元々が720pの動画なのに「itag=160」しかないなど、HTML中の映像フォーマットに不足があるなら、それはDASH化が不完全ということになります。HTMLにない映像フォーマットは当然プレーヤーにも出てきません。
なお動画フォーマットは上記以外にも3D、HTML5用など多々ありますが、ここでは触れません。全てのフォーマットとitagの関係はYouTubeのwikipediaに記載されてます。
(3)音が出ない
HTMLをdashで検索していき、
"dash": "1"
"dashmpd"
これら記載があること(つまりDASH化されてること)を確認します。次にHTMLを itag= で検索していき、音声が正しく作られているか確認します。itagとDASH版音声ビットレートの対応は以下の通りです。

HTML中のitag表記 音声ビットレートの種別
itag=140 128k

元々は3種類の音声があったんですが、一年たたないうちに2つ消えて1つになってしまいました。表の意味がない。
上記音声(つまりitag=140)がHTML中にないようなら、DASH化が不完全なせいで音声が出ないことになりそうです。
itag=140がHTMLにあり、それでも音が出ないなら、DASH化以外の原因を探ることになります。
(4)大きなブロックノイズ発生
これがDASH化によるものかの確認は難しいです。
「wmv形式でアップした動画」か否かは動画管理ツールで動画情報を確認すれば、「元のファイル」として表記があるのでわかります。
「フェードイン、フェードアウト処理がある」か否かは目視確認ですね。
真っ黒の画面から映像がフェードインするとか、映像がホワイトアウトするとか、
映像A→映像Aと映像Bの混在→映像B
とゆっくり変わる時にブロックノイズが出るようです。フェード処理してるところに限らず広範囲にブロックノイズが出る場合は別原因になります。
「不幸にも'13年8月前半にDASH化」の確認ですが、まずDASH化されてるか否かは既に記載したとおり、HTML中に
"dash": "1"
"dashmpd"
があるか否かでわかります。
DASH化時期を確認するには、まずDASH版の映像ファイルをダウンロードします。その映像ファイルのヘッダにはエンコード日時が記載されているので、Mediainfoなどのツールで確認可能です。ただ、ダウンロードは正規の手続きでできない、ってか違法なんですよね。なので、ダウンロード方法を詳しく書けません。なお、動画管理ツールに「MP4でダウンロード」のメニューがありますが、これでダウンロードできるのはDASH版ではなく従来版なので、本確認には使えません。

対処方法

(1)はDASH版が作られるのを待つんでしょう。いつになるかわかりませんが。
(4)は既に記したようにトピック(2)に申し立てれば対処してくれるのかもしれません。ただあまり使われてる形跡がないのと、何より、英語なのが厳しい。
(2)~(4)の障害に対する正攻法として、再生画面下の「フィードバックを送信」から苦情を申し立てる手があります。相手が見えない手続きなので、どれだけやってくれてるか疑問なところはありますが、私の動画は対処してくれました(間に一週間ほど挟んで2回フィードバックを送信しました)。
(1)~(4)共通の対処として、「動画加工ツール」での空編集が考えられます。空編集とは、ツールで用意された編集操作(カットやフィルタ適用など)を一切せずに単に「保存」することです。これにより再エンコードが行われるので正しいDASH化がなされる可能性は高いです。ただ、空編集とはいえ動画加工ツールを通すことで余計な画質劣化があるかもしれません。また、DASH化の処理はまだ枯れてないので、空編集契機によるDASH化でも障害を起こす可能性は無いとは言えず、場合によっては現状より悪い状態になるかもしれません(ってくらい保険をかけておこう)。
動画のURLが別になり、再生数や評価をリセットしても良いなら、より安全な空編集として、「保存」ではなく「名前をつけて保存」を選ぶ手があります。「保存」だと上書きですが、「名前をつけて保存」だと、元の動画はそのまま残されて、空編集した別動画が新たに作られます。これなら、失敗した場合は元動画を継続使用、成功した場合は新たな動画を採用すればよいことになります。ただ、この方法にも若干の難があって、元動画の再生画面で変な表記が出てきます。下記イメージがそれで、「元になった動画 読み込んでいます」という謎の表記が出ます。まぁ表示されるだけで悪さはしないですが、目触りではあります。「名前をつけて保存」にはそういう厄介事があります。


 
ちなみに、「保存」で上書きした場合はこの謎表記は出ません。
「動画加工ツール」はこのように意味不明な挙動があるので、いきなり公開済みの歴史ある動画に適用するのではなく、テスト用動画でテストして、動きを理解してからにした方がいいと思います。


千葉県道57号 千葉鎌ケ谷松戸線の夕景


千葉北西部の内陸寄りの賑やかな所を走る道です。
北西部は混雑が激しいので、基本的にはあまり寄りたくない地域です。特に鎌ケ谷は県内で1,2位を争う混雑っぷりだと思います。そんな鎌ケ谷からスタートしてますが、やはりカオスな状態です。道の両側に商業施設が多く、そこへ出入りする車が多いので流れが悪いです。
船橋に入っても最初は似たようなもんですが、県道288号を越えると様相が変わります。地形に起伏が出てきて、土の露出も増え、北総台地を走ってることを実感します。それまでとの落差もあって、やや寂寥を覚えます。とても良いです^^。特に打ちっ放しのあるあたりは味があります。
八千代に入るとまた賑やかな地域になりますが、県道61号との合流、国道296号との合流でかなり待たされることが多いです。通過目的のドライバーは八千代に入る手前で脇道に入ってしまい、八千代は回避してるような気がします。
国道296号は自衛隊の駐屯地が隣接していて、ありふれた国道風景を回避してます。
習志野は京成の実籾駅周辺を通りますが、私鉄駅周辺にありがちな、生活感溢れる賑やかさが元来田舎者の私には心地よいです。実籾駅を過ぎると京葉道路のインターまで混むことが多いですが、この時は空いてました。
武石ICの先は最近片道二車線になって流れが良くなりました。

音楽は煉獄庭園さんにお借りしました。クオリティの高い曲を使わせていただき感謝します。



山梨県道36号


山梨県中南部、甲府盆地と富士五湖の間あたりのあまり目立たない?地域を走る道です。
動画の前半部、国道に合流するまでの道は過去数回走ったことがあって、落ち着いた景観が割と気に入ってました。春は桜も綺麗だった記憶があります。ただ、かなり山が高い(あるいは深い谷底のような)ところを走るので、日差しがあまりないです。
という記憶があったのと、私のカメラは日差しがないとしみったれた映像になることから、事前に露出を明るめに補正にして撮影しました。そのかいあったか、そこそこ見られる映像になったと思います。ただ、日差しのあるとこは若干飛び気味かも(ってあたりまえか)。
まぁ、色の白いは七難隠すというし、暗くてじめっとした映像よりこっちの方がなんぼかましでしょう。


YouTubeにアップした動画(生)のダウンロード
こちらは内容が古いので、修正記事のほうをご覧ください。



「動画の管理」画面では、かつて自分がアップした動画を「mp4形式でダウンロード」することができます。しかし、このmp4というのは自分がアップした動画そのものではなく、サーバ側でエンコードした後の動画になるので劣化しています。まぁそんなものだろうと何とも思ってなかったですが、Googleのサービスで、自分がアップした動画そのものをダウンロードできる!(図の黄色点線部が可能になる)という話を聞いたので試してみました。あ、先に結論言っとくと、うまくいかないケースが多そうです。

さて、そのサービスはGoogle Takeoutです。パスワード認証後に次のような画面になります。



Google関連の各種サービスにアップしたデータをまとめてダウンロードできるようです。右上にある「アーカイブを作成」と「マイアーカイブ」がメニューになります。「アーカイブを作成」を選ぶと次の画面になります。



ここで対象のサービスを選びます。複数選んでいいと思いますが試してません。とりあえずYouTubeを選択します。
データはGoogle側で圧縮(アーカイブ)され、それをダウンロードすることになります。圧縮形式は選べます。zipならWindowsのみで解凍できますが2Gごとに分割されるそうです。別の形式tgzなら50Gごとの分割だそうですが、解凍ソフトが必要ですね。
赤い四角枠の「アーカイブを作成」をクリックすると次の画面になります。



ファイルの圧縮作業の進捗が青いプログレスバーで表示されます。ダウンロードするファイルのサイズによりますが、YouTubeの動画なんかだと、じっと待ってるのは馬鹿らしい程の時間がかかると思います。それを想定して、「このページを離れても大丈夫だよ」とか、「準備できたらメールで教えようか」などの案内が出ています。なので、ブラウザを閉じようが、PCをシャットダウンしようが問題ないです。サーバ側では圧縮作業が継続されます。
右上を見るとわかりますが、この画面は「マイアーカイブ」の画面になってます。ログイン直後の画面の右上にありました、「マイアーカイブ」。ってかどの画面にもありますね。いつでも好きなタイミングで右上の「マイアーカイブ」を選ぶことで、この画面に来れて、アーカイブ作業の進捗状況が確認できます。十分な時間を空けるか、完了メールを受け取ってから「マイアーカイブ」画面に行くと次のような表示になります。



準備完了、ダウンロードできまっせ、ってことですね。
で、ダウンロードしたファイルを確認しました。まさにアップロードしたファイルでした。
すばらしい。
たいして再生数も稼がず、サイズばかり喰ってるファイルをよくも残しているものですね。

さて、上記は私のサブアカウントでテストした結果です。本アカウントは2桁は違うサイズになるはずです。ということで、本アカウントで試しましたが…、うまく行きません。アーカイブ作成が失敗します。何度やっても同じです。
残念。
原因ははっきりしませんが、2Gを越えるファイルがあると駄目という説があるようです。単に、総量が大きすぎなのかもしれません。アーカイブの途中でちらっと確認した時は、サイズが300Gくらいに膨れ上がってました。300Gってw
まぁ私はそんなにダウンロードしたかったわけではないのでいいです、負け惜しみではなく。
YouTubeが動画のオリジナルを残しているというのが実感できただけでもよかったです。





上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。