Flash Video

マルチメディアコンテナ形式

Flash Videoフラッシュ ビデオ)は、主にFlash Player 6以降を利用してインターネット上で動画を配信するために利用されるコンテナ型のファイルフォーマットで、元はマクロメディアが開発していたものを、アドビシステムズ(現アドビ)が会社ごと買収した。

Flash Video
拡張子.flv, .f4v, .f4p, .f4a, .f4b
MIMEタイプvideo/x-flv, video/mp4, video/x-m4v, audio/mp4a-latm, video/3gpp, video/quicktime, audio/mp4
マジック
ナンバー
FLV
開発者アドビ
種別メディアコンテナ
包含物音声動画
包含先FLV, F4V, MP4, QuickTime

特徴 編集

Flash Videoは広範囲で利用可能なFlash Playerとウェブブラウザプラグインや、サードパーティーによるプログラム等を通じて、ほとんどのオペレーティングシステムで観ることができた。作成には、FFmpegなどを使う。

Adobe Flash(旧Macromedia Flash)ではFlash Videoを他のメディアタイプと同様に扱うことができ、ファイル内の他のオブジェクトと同様に重ね合わせ、スクリプト処理、制御を行うことができる。

Flash VideoはSWFファイルの内部に埋め込まれる場合もある。なお、アドビによって定義され、Flash Playerが対応している動画ファイルフォーマットには異なる「FLV」と「F4V」の2つが存在する。FLVファイル内の動画および音声のデータはSWFファイルと同じ方法でエンコードされる。後者のF4VファイルフォーマットはISOベースのメディアファイルフォーマットを基にしており、これはFlash Player 9の「update 3」以降で対応を開始した。

Flash Videoコンテナフォーマットそのものが開かれる際に利用される圧縮形式のほとんどは、特許によって保護されており、一般にはSorenson SparkまたはVP6コーデックによって映像データがエンコードされている。

影響 編集

Flash Videoの普及以前、HTML上での動画表現ではWindows Media VideoQuickTimeムービー、Real PlayerDivXなどが利用されていたが、ユーザーはファイルのコーデック毎に不安定なプラグインやプレーヤーのインストールが必要だった。

そんな中、2002年のFlash MX(バージョン6)からFlash Video(Sorenson H.263の調整版)がサポートされた。当時リッチコンテンツの主流でシェアが高かったFlashプラグイン上で再生・表示できることが大きな利点となり、2005年以降、YouTubeGoogleビデオニコニコ動画などの大手動画投稿サイトでFlash Videoフォーマットが採用されたことで、インターネット上での動画再生のインフラ構築にも大きく貢献をした。Yahoo! Video、ロイターを始めとした多くのニュース提供元などで次々に採用された。

Flash VideoはWeb上における埋め込み動画の形式として、すぐにその地位を確立し、これにより従来のテキスト静止画ベースであったインターネットインフラが動画ベースへとシフトし、Webの表現方法が革新される一因となった。

しかし、2010年代に入るとHTML5の登場とAdobe Flashの終了決定に伴い、これらはHTML5に移行した。

仕様 編集

FLVファイルフォーマットはFlash MX (Flash Player 6) から規定され、映像コーデック「Sorenson Spark(H.263派生)」、音声コーデック「PCM」「ADPCM」「MP3」「Nellymoser」に対応した。最新のFlash PlayerではH.264の映像とHE-AACの音声にも対応している。

その後、Flash Player 8から、より高画質な映像を扱えるOn2テクノロジー英語版社の映像コーデック「VP6」を追加。同時にVP6を利用して映像のアルファチャンネルを保持できる「VP6 with alpha channel」にも対応した。また、映像コーデック「ScreenVideo」「ScreenVideo v2」にも対応した。

Flash Player 9 update 3 (9,0,115,0) からは更に映像コーデック「AVC (H.264)」、音声コーデック「AAC」に対応したが、アドビ社は「H.264/AVCとAACをフルに活用したい場合はFLVではなくF4Vファイルフォーマットの利用を推奨する」としている。また、同バージョンではHD映像用のVP6コーデックの新たなプロファイル「VP6-S」にも対応。従来のVP6との再生互換性を保ちつつ、低データレートかつ低負荷でのHD映像再生をサポートしている。なお、これにともない従来のVP6は「VP6-E」プロファイルと呼ばれている。

また、Flash Player 10からは音声コーデック「Speex」に対応している。

F4Vファイルフォーマットは、従来のFLVファイルフォーマットとは別にFlash Player 9 update 3から規定されたフォーマットであり、「ISO/IEC 14496-12: ISO base media file format」(MPEG-4 Part 12) をベースとして規定されている。F4Vがサポートする映像コーデックは「H.264/AVC」、音声コーデックは「MP3」「AAC」のみとなっているが、上記の通りH.264/AVCとAACをフルに活用できるように設計されており、H.264/AVCとAACを扱う場合は、FLVではなくF4Vの利用が推奨されている。

また、2007年8月20日、開発元のアドビシステムズはFlash Player 9 betaからFlash VideoとしてMPEG-4 (H.264, AAC, HE-AAC) をサポートする予定であることを発表、2007年12月3日にリリースされたFlash Player 9 update 3 (9,0,115,0) から正式に対応した。これは従来のFLVコンテナとは別に、H.264/AVC映像とAAC音声を含んだMPEG-4派生のコンテナフォーマットの再生をある程度サポートするということであり、MP4、M4A、MOV、MP4V、3GP、3G2といったコンテナの再生がサポートされている。F4Vコンテナもその1つと言える。

エンコードにはAdobe Flashに含まれているエンコーダ以外にも、VP6コーデックでFLVファイルへのエンコードをサポートしているOn2 Flix, Sorenson Squeezeなどサードパーティー製の製品も使用される。書き出すためのMac OS X QuickTime用コーデックがAdobe Flashに付属するため、Mac OS Xならば、QuickTimeを利用するアプリケーション群全てで書き出し等が可能である。なお、FLVファイルは1ファイルあたり1つのビデオと1つのオーディオストリームに制限される。

また、FLVファイルはFLV ExtractHugFlash等のフリーウェアを用いて無劣化でAVIMOV等に変換することが可能(器であるコンテナフォーマットを換えるだけであるため)。

ストリーミングにはAdobe Flash Media Server(旧Macromedia Flash Communication Server)を利用したRTMP (RTMPT/RTMPS) プロトコルが使用されるが、通常のHTTPプロトコルを利用可能のためFlash Videoのストリーミングとして後者が多く用いられる(厳密にはストリーミングではなくプログレッシブダウンロードでありウェブブラウザキャッシュに保存したファイルを元に再生する。キャッシュが残っている場合はページ移動時の再読み込みが速くなる)。

なお、RTMPプロトコルの仕様書は現在Adobeのサイト上より入手することが可能[1]。一方、RTMPの仕様書が公開される以前よりRed5というオープンソースプロジェクトにより解析が進められており、無料で使用できるFlash Videoストリーミングサーバが提供されている(Red5によるドキュメント)。

FLVファイルをDirectShowなどで再生する場合は、FourCCとして「FLV1」(Sorenson Spark)、「FLV4/VP6F」(On2 VP6) がよく用いられる(FFmpegffdshow、FLV Splitter等)。

F4Vのファイル形式 編集

拡張子 MIMEタイプ 説明
.f4v video/mp4 Video for Adobe Flash Player
.f4p Protected Video for Adobe Flash Player
.f4a audio/mp4 Audio for Adobe Flash Player
.f4b Audio Book for Adobe Flash Player

Codec support 編集

FLVコンテナで対応するメディアフォーマット
F4Vコンテナで対応するメディアフォーマット
  • Video: H.264
  • Images (still frame of video data): GIF, PNG, JPEG
  • Audio: AAC, HE-AAC, MP3

上記および下記、AACと書かれた物は、AAC-Main, AAC-LC, AAC v1, AAC v2, HE-AAC v1(AAC+), HE-AAC v2に対応している。

Flash PlayerとFlash Videoのビデオ・オーディオ形式[2][3]
Flash Player version リリース ファイル形式 ビデオ形式 オーディオ形式
6 2002 SWF Sorenson Spark, Screen video MP3, ADPCM, Nellymoser
7 2003 SWF, FLV
8 2005 On2 VP6, Sorenson Spark, Screen video, Screen video 2
9.0.115.0 2007 On2 VP6, Sorenson Spark, Screen video, Screen video 2, H.264[*] MP3, ADPCM, Nellymoser, AAC[*], HE-AAC
SWF, F4V, ISO base media file format H.264 AAC, HE-AAC, MP3
10 2008 SWF, FLV On2 VP6, Sorenson Spark, Screen video, Screen video 2, H.264[*] MP3, ADPCM, Nellymoser, Speex, AAC[*], HE-AAC
SWF, F4V, ISO base media file format H.264 AAC, HE-AAC, MP3

  •  H.264とAACを使う場合、FLV形式ではいくつかの制約事項があるため、プレイヤー開発者は新しいF4V形式を使うことを強く推奨する。

脚注 編集

  1. ^ Adobe 2009 Real-Time Messaging Protocol (RTMP) specification
  2. ^ Adobe ActionScript 3.0 * ビデオ形式について
  3. ^ Adobe (2007-12-03) List of codecs supported by Adobe Flash Player, Retrieved on 2009-08-10

関連項目 編集

Flash Videoを利用していた動画共有サービス

外部リンク 編集