0

vorbis コメントを読むためのクラスを実装したいと考えています。フィールドはフィールド名で始まり、その後に等号が続くことを知っています。しかし、それはどのように終わりますか?ドキュメンテーションでは、セミコロンでフィールドが終了すると思われますが、16 進エディターで ogg ファイルを確認しましたが、何も表示されません。

これは、ファイル内でどのように見えるべきだと思うかです:

TITLE=MY SUPER TITLE; 

フィールド名titleで、その後に等号が続き、値はMY SUPER TITLEです。最後に、フィールドを終了するセミコロンです。

しかし、代わりに私のファイル内では、フィールドは次のようになります:

TITLE=MY SUPER TITLE....

ほぼ上記のとおりですが、セミコロンはありません。は.表示できない文字です。ドットは「これでフィールドの終わりです!! 」という値を表しているようですが、ほとんどの場合は異なります。常に正確に 4 つのドットがあることに気付きました。最初のドットの値は常に異なります。他の無料の値は通常 0 です。ただし、常にではありません...

私の質問ですが、フィールドはどのように終了しますか? このコメントの読み方は?

また、そうです、ライブラリがあり、何度も何度も車輪を再発明するのではなく、それらを使用する必要があることも知っています。後でライブラリを使用しますが、最初に自分で行う方法を知りたいです。教育目的のみ。

4

1 に答える 1

2

各フィールドの前には、読み取るバイト数を示すリトル エンディアンの 32 ビット整数が続きます。次に、バイトを UTF8 経由で文字列に変換します。

詳細については、NVorbis の実装(LoadComments(...)) を参照してください。

于 2014-07-25T13:46:03.217 に答える