chunkにゃに幾つサンプルが含まれるにゃ? どのデコード使うにゃ? Sample-to-chunk atom(stsc)

chunkにゃの定義ですにゃ。
これにゃには、chunkが幾つのサンプルで構成されてるにゃのかと、それらのサンプルにゃのデコード方法が書かれてますですにゃ。

これまたにゃ〜、わかりづらかったですにゃ。

テーブルにゃには、{First chunk(4bytes) *1, Samples per chunk(4bytes) *2,Sample description ID(4bytes) *3 }って感じにゃににゃってますですにゃ。
First chunkってにゃのは、これが適応されるにゃ最初のchunkってことにゃで、次の項目のFirst chunkの1個前のチャンクまで同じのが適応されるにゃですにゃ。

たとえば、テーブルにゃが、{1,3,23}, {3,1,23}, {5,1,24}だったらにゃ。

chunkにゃ番号 サンプル数 デコードのインデックス
1 3 23
2 3 23
3 1 23
4 1 23
5 1 24

chunk2にゃは、{1,3,23}の項目が使われてにゃ、サンプル数は3個で、デコードにゃは23のを使うってことにゃににゃるのですにゃ。
chunk4にゃも同じにゃで、{3,1,23}が使われるのですにゃ。

サンプル数にゃを加算していってにゃ、チャンクとサンプルにゃの変換表にゃを作るとです*4にゃ。
そうするにゃと、サンプル番号にゃからchunkへの変換がわかるのですにゃ。

chunkにゃ番号 サンプル数 デコードのインデックス サンプル番号
1 3 23 1,2,3
2 3 23 4,5,6
3 1 23 7
4 1 23 8
5 1 24 9

再生時間からにゃサンプル番号を見つけてにゃ、で、このテーブルにゃを使って、属するチャンクを見つけてにゃ。
で、にゃっとサンプルにゃのデコード方法がわかるにゃのですにゃ。

ちにゃみに、サンプル5にゃは、chunk2に属しててにゃ、デコード方法にゃは、23ってにゃのがわかりますにゃね。

*1:最初にゃのchunk番号

*2:サンプル数

*3:デコードのインデックス

*4:どこにお住いにゃの猫にゃ?