« 「H.264/AVCのFLV」を「FLV5」と呼んではいけない理由 | トップページ | FLV4(On2 VP6)の仕様や、VP6-E、VP6-Sプロファイル等について »

2009年10月26日 (月)

FLV1(Sorenson H.263)の仕様等について

今回はFLV1(Sorenson H.263)についての話です。

 
■FLV1(Sorenson H.263)の仕様

  FlashMX(Flash Player 6)で、初めてFlashに動画データが採用されました。
  その際に採用された映像コーデックが、Sorenson Media社(現在はSorenson Communications社)が
  開発した「Sorenson H.263」です。「Sorenson Spark」というコーデック名でも知られているようです。

  (ちなみにWikipedia(英語版)の「Flash Video」の項目によると、
   Flash Player 6では映像データはSWFファイルへの埋め込みのみ対応しており、
   FLVファイル単体での再生はFlash Player 7から対応されたようです。)

  Adobe社の「SWF Technology Center」で公開されいる
    「SWF File Format Specification Version 10」
  のp.235に、この「Sorenson H.263」についての詳しい記述があります。
  それによると、このコーデックは、1996年5月にITUから発行された
  ドラフト版のH.263規格(H.263v1と呼ばれるらしい)を元にして作られたもののようです。
  通常、「ITUのH.263規格」というと、1998年2月に発行されたH.263v2(H263+)を指すらしいので、
  ドラフトベースの「Sorenson H.263」は、標準のH.263とはちょっと違った実装になるわけですね。

  そんなわけで、DirectShow等でこのFLVの映像ストリームを再生するためには、
  通常のH.263とは別に「Sorenson H.263」専用のFourCCを決める必要があり、
  それでつけられたFourCCが、「FLV1」なのでしょう。
  (命名は「ffmpeg」「fdshow」「FLV Splitterを開発したGabest氏」のいずれかかな?)

 
■「FLV1」の命名経緯についての推測

  「FLV1」は、「FLV version 1」を意味してるのかな・・・?
  一応FLVコンテナは、ファイルの先頭から4バイト目にバージョン番号を入れるようになってます。
  ただ、このバージョン番号は現在まで更新されておらず、最新のFLVでも1が入っています。
  FLVが実装された当初は、このバージョン番号が更新されていくものと思われていて、
  そのため、最初のコーデックである「Sorenson H.263」のFourCCは「FLV1」になったのかな?

  その次にFlash Player 8から実装された「On2 VP6」のFourCCについては、
  FLVの仕様書で規定されているVP6のCodecID(4)を元にして
  「FLV4」と命名されたと推測していますが、「Sorenson H.263」のCodecIDは2なので、
  「FLV1」はCodecIDを元に決めたわけではなさそうです。

  そうなると、やっぱりFLVコンテナのバージョン番号が元になったというのが有力な気がします。
  まあただの推測ですし、そんなとこを突き詰めても仕方ないんですけれども、なんとなく書いてみました。

|

« 「H.264/AVCのFLV」を「FLV5」と呼んではいけない理由 | トップページ | FLV4(On2 VP6)の仕様や、VP6-E、VP6-Sプロファイル等について »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: FLV1(Sorenson H.263)の仕様等について:

« 「H.264/AVCのFLV」を「FLV5」と呼んではいけない理由 | トップページ | FLV4(On2 VP6)の仕様や、VP6-E、VP6-Sプロファイル等について »