SDL_PropertiesID MIX_GetAudioProperties(MIX_Audio *audio);
| MIX_Audio * | audio | 問い合わせるオーディオデータ |
SDL_mixerは自身でいくつかのプロパティを提供しているが, アプリケーション固有のデータを持たせる便利な場所としても使用できる.
SDL_PropertiesIDはMIX_Audioに対してこの関数を最初に呼んだとき必要ならば生成される.
SDL_mixerから次の読取専用プロパティが提供されている:
MIX_PROP_METADATA_TITLE_STRING: オーディオデータのタイトル ("Smells Like Teen Spirit")
MIX_PROP_METADATA_ARTIST_STRING: オーディオデータのアーティストの名前 ("Nirvana")
MIX_PROP_METADATA_ALBUM_STRING: オーディオデータのアルバムの名前 ("Nevermind")
MIX_PROP_METADATA_COPYRIGHT_STRING: オーディオデータの著作権情報 ("Copyright (c) 1991")
MIX_PROP_METADATA_TRACK_NUMBER: オーディオデータのアルバムのトラック番号 (1)
MIX_PROP_METADATA_TOTAL_TRACKS_NUMBER: アルバムの総トラック数 (13)
MIX_PROP_METADATA_YEAR_NUMBER: オーディオデータの発表年
MIX_PROP_METADATA_DURATION_FRAMES_NUMBER: このオーディオデータのPCMデータのサンプルフレーム数. これはデコーダが期間を時間単位でしか知らない場合, 少ない方にずれる場合がある
MIX_PROP_METADATA_DURATION_INFINITE_BOOLEAN: 真のときオーディオデータは音声の生成が終わることがない. しかし これはSDL_mixerが必ず知っている必要はない
他のプロパティは, 提供されているならばMIX_LoadAudioWithProperties()に記述がある.
メタデータはSDL_mixerが見つけたID3タグのような様々なものから得ていて, それは標準化された形式ではなく, 存在しない場合もあり, 元データが(例えばP2P共有サービスのMP3のような)信頼できない場合は完全に間違っていることもありうるので注意すること.
この関数はどのスレッドからも安全に呼べる.