主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。
記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます

スポンサーサイト

                
tags:
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

IronPython: XNA Frameworkを使って音楽再生

                
 メディアプレーヤーを作るとき、XNA Frameworkを使えばメディアライブラリのファイルに容易にアクセスして曲の再生ができる。ただし取得したメディアファイルのURIを返すようなメンバは用意されていない。

 MediaPlayerにはシークバーを実装するための機能がない。任意の時間から曲を再生することができない。これがWPFのMediaElementに劣る点だろう。

import clr
clr.AddReference('System')
clr.AddReference('Microsoft.Xna.Framework')
clr.AddReference("IronPython.Wpf")

import wpf
from System import EventHandler, TimeSpan
from System.Windows import Controls, Threading, Application, Window
import Microsoft.Xna.Framework

player = Microsoft.Xna.Framework.Media.MediaPlayer
albums = Microsoft.Xna.Framework.Media.MediaLibrary().Albums

class Music(Window):
def __init__(self):
self.Width = 10
self.Height = 10
self.timer = Threading.DispatcherTimer()
self.timer.Interval = TimeSpan.FromSeconds(0)
self.timer.Tick += self.play_music
self.timer.Start()

def play_music(self, target, e):
Microsoft.Xna.Framework.FrameworkDispatcher.Update()
print albums[4].Name, albums[4].Songs[0].Name
Microsoft.Xna.Framework.Media.MediaPlayer.Play(albums[4].Songs)
self.timer.Stop()

window = Music()
app = Application()
app.Run(window)
app.Run(window)

            

コメントの投稿

非公開コメント

プロフィール

hMatoba

Author:hMatoba
Github

最新記事
リンク
作ったものなど
月別アーカイブ
カテゴリ
タグリスト

検索フォーム
Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。