ホーム ] 筆者の音楽ライフ変遷 ] gigabeat 60V ] WMP概要 ] 全体システム ] 評価/再生リスト ] メデイア情報の設定 ] コードによるライブラリ管理 ] ライブラリによるアプリケーション ] 音楽データベース ]

上へ
基本事項
media オブジェクト
レイティング管理
プレイリスト

コードによるライブラリ管理

基本事項

最終更新日:2006/07/20 新規

 昔のTipsでは、WMAファイルのタグの読み書きの初歩を紹介していたが、WMPも進化し、ライブラリ管理機能が強化されたため、旧Tips の方法では上手く行かない。ここでは、WMP10で管理されたライブラリを正しくコードからアクセスし、それらの参照、更新を行う方法を紹介している。ここでは、コンテンツ(メディア)として、音源ファイル(WMAファイル)に限定している。

●原理

 指定された複数のフォルダに存在する音源ファイルをWMPは管理する。管理とは、

  • ライブラリとして対象を限定する。音源ファイルの追加、削除を行う。
  • 音源ファイル(ソースファイル)は、コピーではなく、リンク情報で管理される。
  • 音源ファイルをタグで分類し、表示する。音源ファイルの外側にも追加情報をライブラリ内で管理。
  • タグを更新する。
  • プレイリストを作成し、再生する。
  • ポータブル・オーディオと同期化する。

などである。これらの殆どの機能はオブジェクトを通じてコードで実行でき、その場合は、ライブラリは正しく維持される。オブジェクトを介さずアクセスすると破綻する可能性がある(旧Tips など)。

●基本オブジェクト

 WindowsMediaPlayer オブッジェクトが基本となる。これは、.NET オブジェクトではないが、参照設定すれば、自動的にラッパーが被せられ、.NETからアクセス可能となる。以下のように参照設定する。

  • 参照の追加にて COM オブジェクトを指定し、その中から、WindowsMediaPlayer の内、wmp.dll を選択する。
  • すると、参照設定にて、WMplib が表示される。

●アクセス手順

 概ね、以下の手順を踏めば、正しく管理される。

  1. WMP のインスタンス mp を生成する。

    Dim mp As New WMplib.WindowsMediaPlayer()
    mp.settings.autoStart = False                               '念のため自動再生を止めておく
     
  2. その mp にて、mediaCollection から、目的のサブセット プレイリスト pl を確保する。
  3. pl のItem が、メディア(ここでは一つの音源ファイル)を参照する。
  4. pl あるいは、Item に対して、目的の処理を施す。(参照、更新、演奏など)
  5. 処理が完了し、pl が不要であればこれを破棄する。破棄しないと、WMPのUIで、プレイビューに残る。

    mp.playlistCollection.remove(pl)     'プレイリストを破棄