2016-12-22 7 views
0

私のカーオーディオはいくつかのタグの内容に問題(表示とは無関係)があるため、TagLib#をMP3のタグのソートに使用しようとしています。確かに、タグを並べ替えるだけで、新しいタグを生成したり、既存のタグを置き換えたりする必要はありません。理想的なケースでは、mp3ファイル内のタグのシーケンスのみを変更する必要があるため、ファイルサイズは変更されません。TagLib:TDRCを設定するときにTDAT TIME TYERタグを作成しないようにするには

残念ながら私はTDRCタグ(録画日の新しい定義)を移動する方法を見つけることができません:私が設定すると、TagLibは互換性のために何かをすることを決定し、TYERタグとTDATタグも生成します。 TDRC内に存在する場合、TIMEタグも生成する。

TDRCを設定するときにこれらのタグの自動生成を無効にする方法はありますか?私は運がないだけTextInformationFrameとしてTDRCをコピーしようとしました。

私は最新のTagLibを使用し、id3v2.3タグでMP3ファイルを処理しています。

+0

id3バージョン(ex 2.3または2.4)とフォーマット(ex UTF-16?)を使用してタグを保存しますか? – PeterCo

+0

id3v2.3、UTF16。 id3v2タグバージョン3のみが不要なタグフレームを作成するTextInformationFrame.Renderメソッドをオーバーロードしているため、ここではエンコードは関係ありません。 – Vasilich

+0

TDRCは正式にid3v2.4でのみ利用可能です。あなたがid3v2.3でそれを使用する場合は、公式標準の外にタグを作成します。 – PeterCo

答えて

1

UTF16でId3v2.3を使用する情報を追加しました。

TDRCはid3v2.4でのみ正式に利用可能です。あなたがid3v2.3でそれを使用する場合は、公式標準の外にタグを作成します。

id3.orgはid3v2.4のために言う:

TDAT - 日付/時刻 - タイム/ TYER - 年
このフレームはTDRCフレームに置き換えられ、 '時間を記録する' [F:4.2.5 ]

TDRC
'Recording time'フレームには、音声が記録された時刻を示すタイムスタンプが含まれています。タイムスタンプ形式は、ID3v2 構造体ドキュメント[ID3v2-strct]に記述されています。


タイムスタンプフィールド時間列のできるだけ正確 通りであるフォーマットが YYYY-MM-DDTHHある場合は、ISO 8601のサブセットに基づいている:MM:SS(年、「 - 」 (: 24)、 ":"、分、 ":"、秒)が含まれますが、精度は、 によって、必要な数の時間インジケータを削除することで減少させることができます。
有効なタイムスタンプ は、
yyyy、yyyy-MM、yyyy-MM-ddTHH、yyyy-MM-ddTHH:mmおよび yyyy-MM-ddTHH:mm:ssです。すべてのタイムスタンプはUTCです。継続時間については、 を8601で説明されているようにスラッシュ文字で、複数の非 連続した日付で使用する場合は、フレーム の定義で許可されている複数の文字列を使用してください。

関連する問題