Q: アプリケーションで、ビデオトラックの「High Quality(高品質)」環境設定のオン/オフを切り替えるオプションをユーザに提示し、その後ムービーが開かれたときに QuickTime プレーヤーがその設定を遵守するようにしたいのですが、 SetMoviePlayHints を使っても、これが行われていないようです。
A: これを行うには、次の 4 つの API があります。 SetMediaPlayHints、GetTrackLoadSettings、SetTrackLoadSettings および UpdateMovieInStorage(または Windows では UpdateMovieResource)です。 リスト 1. 「High Quality(高品質)」のオン/オフ
// HQ オン/オフの切り替え - 設定を保存するためには Movie ストレージを更新する必要があります
void ToggleHighQualityOnOff(Track inTrack)
{
long trackHints;
long ignore1, ignore2, ignore3;
GetTrackLoadSettings(inTrack, &ignore1, &ignore2, &ignore3, &trackHints);
trackHints ^= hintsHighQuality; // オンまたはオフ
SetTrackLoadSettings(inTrack, ignore1, ignore2, ignore3, trackHints);
SetMediaPlayHints(GetTrackMedia(inTrack), trackHints, hintsHighQuality);
}
上記のリストは、再生時の「High Quality(高品質)」ヒントの設定を切り替え、読み込まれている設定を変更しますが、保存はしません。 設定を実際に保存するには、この関数の呼び出し後、適宜、アプリケーションに適切な方法で UpdateMovieInStorage または UpdateMovieResource を使います。 ドキュメントの改訂履歴
掲載日: 2004-09-14
|