Flash 動画 (.flv)

Adobe 標準

Flash Video(FLV)は、Adobe Flash Player ブラウザプラグインを介してウェブ上で同期された動画と音声を配信するために、Macromedia および Adobe によって開発されたコンテナ形式です。

調査とメタデータ

オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してFLVファイルを識別します:

ファイルを選択するか、ここにドロップしてください

プライベート - ファイルがデバイスの外に出ることはありません

または貼り付け Ctrl+V
ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

バイトレベルのヘッダーシグネチャ (マジックバイト)

オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してFLVファイルを識別します:

16進数シグネチャ(オフセット0):

46 4C 56 01

ASCII表現: FLV

標準化: Adobe Systems Flash Videoファイル形式仕様

技術仕様

コンテナアーキテクチャ音声、動画、スクリプトデータのタグを交互に格納するタグベースのストリーミングコンテナ
圧縮Sorenson Spark、VP6、またはH.264動画とMP3またはAAC音声
バイトエンディアンビッグエンディアンのビット/バイト順序
色空間YUV 4:2:0
チャンネルと構造動画ストリームとモノラルまたはステレオ音声
最大寸法一般的な上限は1080p
透過性VP6動画ストリームでアルファチャンネルによる透明度に対応
ストリーミングとプログレッシブRTMP(Real-Time Messaging Protocol)のライブストリーミングに標準対応

技術比較表:FLVと競合製品

技術属性FLV (現在)MP4WEBMMKV
今日のブラウザサポート0%(すべてのモダンブラウザから完全に削除済み)100%(すべてのブラウザに対応)100%(最新のブラウザでサポート)デスクトップメディアプレイヤーが必要
標準化Adobe 独自のプロプライエタリ仕様ISO/IEC 国際オープン標準W3C / WebM オープン標準オープンソースの Matroska 標準
モバイルデバイスでの再生iOS および現代の Android でネイティブ非対応ネイティブハードウェアサポートネイティブハードウェアサポートVLC / サードパーティアプリ経由でサポート
アルファ透明度On2 VP6 コーデック経由でサポート限定的(canvas または WebCodecs が必要)ネイティブアルファチャンネルサポート(VP9)VP9/ProRes ストリームでサポート

一般的な破損モードと16進数リカバリガイド

ダウンロードした FLV 動画の総再生時間が「不明」と表示され、スクラブ(早送り・巻き戻し)できない。

根本原因: キーフレームのタイムスタンプとファイルサイズテーブルを含む 'onMetaData' スクリプトタグが欠落しているため。

復旧: 'yamdi'(Yet Another MetaData Injector)を使用して欠落しているキーフレームテーブルをインジェクションするか、File2File.app を使用して MP4 に変換します。

セキュリティ分析とパーサー攻撃ベクトル

ActionScript および FLV 解析におけるメモリ破損バグのため、Flash Player プラグインはコンピュータの歴史において最も悪用されたソフトウェアコンポーネントの 1 つでした。

既知の攻撃ベクター

  • ActionScript 3 FLV 解析エンジンにおける Use-After-Free およびヒープオーバーフロー(例:CVE-2015-5122)。
  • 不正な AMF0/AMF3 メタデータパケットは、脆弱なパーサーでメモリ破損を引き起こす可能性があります。
  • レガシーの Sorenson Spark 解凍ルーチンにおけるバッファオーバーフロー。

防御的ベストプラクティス: ネイティブの Flash Player プラグインを実行しないでください。サンドボックス化された FFmpeg を使用して、アーカイブされた FLV ファイルを直接 MP4 にトランスコードしてください。

歴史的背景とマイルストーン

2020Adobe が 2020年12月31日をもって Flash Player のサポートを正式に終了し、FLV のアクティブな利用が引退となる。
2005YouTube が唯一の動画配信フォーマットとして FLV を採用してサービスを開始。
2003Macromedia が Flash Player 7 と共に Flash Video を導入。

主なメリット

  • 普及しているオンライン動画の歴史的パイオニア:スタンドアロンのデスクトッププレイヤーなしでのウェブ動画再生を可能にした。
  • On2 VP6 コーデックを使用した動画ストリームでのアルファ透明度をサポート。
  • 低遅延の RTMP ライブ動画配信に最適化された低いパケットオーバーヘッド。

技術的な制限とデメリット

  • Flash Player のサポート終了に伴い、すべてのモダンなウェブブラウザで完全に廃止され、サポートされていない。
  • iOS、Android、およびスマート TV で再生するには、MP4 への再エンコードまたはコンテナの切り替えが必要。
  • マルチトラック音声やレスポンシブなアダプティブビットレートストリーミングなどの、モダンなコンテナ機能が欠けている。

興味深い技術トリビア

  • YouTubeにアップロードされた最初の動画(2005年4月の「Me at the zoo」)は、FLVファイルとしてエンコードおよび配信されました。
  • Flash Video のマジックバイトシーケンス「46 4C 56 01」は、ASCII の「FLV」とコンテナのバージョン 1 を表しています。
  • Steve Jobs は 2010年に有名なオープンレター「Thoughts on Flash」を公開し、業界が FLV から HTML5 の MP4 へ移行するのを加速させました。

よくある技術的な質問

コンピュータで FLV ファイルをもう再生できないのはなぜですか?

Adobe およびすべての主要なウェブブラウザは、セキュリティ上の脆弱性のため、2020 年 12 月に Flash Player のサポートを正式に終了しました。現在 FLV ファイルを再生するには、VLC メディアプレーヤーを使用するか、MP4 に変換してください。

画質を落とさずに FLV を MP4 に変換できますか?

互換性のあるH.264とAACのストリームは再エンコードせずにFLVからMP4へ再多重化できます。処理時間はファイルとデバイスによって異なります。

FLV動画では当初どのコーデックが使われていましたか?

初期の FLV ファイルは、Adobe が 2007 年に標準の H.264 のサポートを追加する前は、Sorenson Spark(H.263 のバリアント)やその後 On2 VP6 を使用していました。