MIDITrail
MIDI player with 3D visualization
OSDN Ticket Archive
Ticket #26987
Ticket List
再生スピード制御対応
登録:
2011-12-21 23:30
最終更新:
2011-12-25 14:21
報告者:
yknk
担当者:
yknk
チケットの種類:
機能リクエスト
状況:
完了
コンポーネント:
MIDITrail Ver.1.1.x for Mac OS X
マイルストーン:
Version 1.1.3 for Mac OS X (完了済み)
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし
詳細
ユーザーの操作によって、再生スピードを変更できるようにする。
チケットの履歴
2011-12-21 23:30 更新者: yknk
新しいチケット "再生スピード制御対応" が作成されました
2011-12-22 00:02 更新者: yknk
コメント
対策方針
playbackメニューに"Speed Down","Speed Up"を追加。
カウンタに再生スピードを表示する(例:"SPEED:120%")。ただし100%の場合は表示しない。
キーボードからの操作は"4"(down),"5"(up)キーで実現する。
MIDIファイル読み込み後は、いつでもスピード変更を可能とする。
MIDIファイル読み込み時点で、スピードを100%に設定する。
スピードの変更単位は1%とする。最小値は1%、最大値は400%とする。
スピードの変更単位と最大値は設定ファイルで変更可能とする。(Player.ini)
2011-12-24 22:22 更新者: yknk
コメント
修正内容
MainMenu.xib
Playbackメニューに項目を追加。-> Speed Down, Speed Up
MTMenuCtrl
メニュー選択時のイベントハンドラを追加。
MIDITrailAppのスピード制御変更メソッド(OnMenuPlaySpeedDown, OnMenuPlaySpeedUp)を呼び出す。
MIDItrailApp
起動時の初期化処理に、プレーヤー設定ファイル Player.ini の読み込み処理 _LoadPlayerConf を追加。スピード変化間隔と最大値を取得する。
メンバ変数に再生スピード m_PlaySpeedRatio を追加する。100 = 100%
MIDIデータ読み込み時に、再生スピードを100%で初期化する。
再生スピード変更イベント発生時に m_PlaySpeedRatio を更新し、シーケンサのスピード変更メソッド(SetPlaySpeedRatio)を呼び出す。
MTMainView
キー押下イベント発生時に、4,5キー(またはテンキーの4,5)が押されたときの処理を追加。
メニュー制御のメニュー実行メソッド(performActionPlaySpeedDown, performActionPlaySpeedUp)を呼び出す。
SMSequencer
メンバ変数に再生スピード m_PlaySpeedRatio を追加する。100%を1.0で管理する。
再生スピード設定メソッド SetPlaySpeedRatio を追加する。
演奏位置更新メソッド _UpdatePlayPosition にて、前回からの経過時間を計算するとき、実際の経過時間に再生スピードを掛ける。
リソースファイル
Resources/conf/Player.ini を追加。
2011-12-25 14:21 更新者: yknk
解決法
が
なし
から
修正済み
に更新されました
状況
が
オープン
から
完了
に更新されました
チケット完了時刻
が
2011-12-25 14:21
に更新されました
添付ファイルリスト
添付ファイルはありません
ユーザーの操作によって、再生スピードを変更できるようにする。