--- perldocjp/docs/modules/MIDI-Perl-0.8/MIDI/Score.pod 2003/05/15 14:32:49 1.2 +++ perldocjp/docs/modules/MIDI-Perl-0.8/MIDI/Score.pod 2003/05/18 10:51:33 1.3 @@ -6,7 +6,7 @@ =head1 概要 - # 話せば長くなるので、下をみよ。it's a long story; see below + # 話せば長くなるので、下をみよ。 =head1 説明 @@ -17,7 +17,8 @@ このモジュールはMIDIスコアを扱うための機能を提供する。 MIDI::Simpleの全ての機能の基として利用されている。 -ちなみに、MIDI::Opusのdraw()メソッドもこのモジュールの機能の一部を利用している。 +ちなみに、MIDI::Opusのdraw()メソッドもこのモジュールの機能の +一部を利用している。 Whereas the events in a MIDI event structure are items whose timing is expressed in delta-times, the timing of items in a score is @@ -25,32 +26,33 @@ Moreover, pairs of 'note_on' and 'note_off' events in an event structure are abstracted into a single 'note' item in a score structure. -MIDIイベント構造の中に入っている各イベントは、デルタタイムで表される時間間隔を -持った要素である。これに対してスコアの中の要素が持つ時間間隔は、そのトラックの -開始時間から計ったティックの絶対値として表現される。さらに、イベント構造内の -'note_on'と'note_off'は、スコアの中では単体の'note'へと抽象化される。 - +MIDIイベント構造体の中に入っている各イベントは、デルタタイムで表される +時間間隔を持った要素である。これに対してスコアの中の要素が持つ時間間隔は、 +そのトラックの開始時間から計ったティックの絶対値として表現される。 +さらに、イベント構造内で対になっているノートオン('note_on')と +ノートオフ('note_off')は、スコアの中では単体のノート('note')へと +抽象化される。 'note' takes the following form: -'note'は次の形式をとる: +ノート('note')は次の形式をとる: - ('note_on', I, I, I, I, I) + ('note', I, I, I, I, I) The problem that score structures are meant to solve is that 1) people definitely don't think in delta-times -- they think in absolute times or in structures based on that (like 'time from start of measure'); 2) people think in notes, not note_on and note_off events. -スコア構造によって次の問題が解決する。 -(1)人々は明らかにデルタタイムでは考えない。絶対時間か上に述べたような構造 -(スタートからの時間)でもって考える。 -(2)人々はノート(音符)で考えるのであって、ノートオンやノートオフでではない。 - +スコア構造体によって次の問題が解決する。 +(1)人々は明らかにデルタタイムでは考えない。絶対時間か、上に述べた +ような構造(スタートからの時間)でもって考える。 +(2)人々はノート(音符)で考えるのであって、ノートオンやノートオフで +ではない。 So, given this event structure: -そこで、次のようなイベント構造があるとする: +そこで、次のようなイベント構造体があるとする: ['text_event', 0, 'www.ely.anglican.org/parishes/camgsm/chimes.html'], ['text_event', 0, 'Lord through this hour/ be Thou our guide'], @@ -91,7 +93,7 @@ here is the corresponding score sctructure: -これに対応するスコア構造は: +これに対応するスコア構造体は: ['text_event', 0, 'www.ely.anglican.org/parishes/camgsm/chimes.html'], ['text_event', 0, 'Lord through this hour/ be Thou our guide'], @@ -140,7 +142,8 @@ where two (or more) score items happen I and where one affects the meaning of the other. -二つ以上のスコア要素が同時に発生し、かつ、一つが他方の意味に影響を与える場合。 +二つ以上のスコア要素が同時に発生し、かつ、一つが他方の意味に +影響を与える場合。 =head1 スコアの中に何があるのか @@ -153,7 +156,7 @@ from the start of the track. (先に述べた)C以外に、スコア構造体が持ちうる構成要素をもとめると: -イベント構造に現れるものは何でもスコア構造に現れうるということだ。 +イベント構造体に現れるものは何でもスコア構造体に現れうるということだ。 要素が保持する第二パラメータはティックで表現されるデルタタイムではなく、 トラック開始からの絶対的なティックの数を意味している。 @@ -162,9 +165,10 @@ not they are actually C commands. This leaves "event" to unambiguously denote items in an event structure. -"スコア構造の要素"などという回りくどい言い方は避けたいので、私はしばしば -これを"notes"と呼ぶ。それが本当にC命令なのかどうかは関係ない。 -"event"の方は、明確にイベント構造の要素を意味するよう、そのままにしておく。 +「スコア構造体の要素」などという回りくどい言い方は避けたいので、 +私はしばしばこれをノート("notes")と呼ぶ。それが本当にCコマンド +なのかどうかとは関係ない。"event"の方は、明確にイベント構造体の要素を +意味するよう、そのままにしておく。 These, below, are all the items that can appear in a score. This is basically just a repetition of the table in @@ -174,10 +178,11 @@ As far as order, the first items are generally the most important: 以下はスコアに登場する全項目である。 -基本的にLにあった表の繰り返しでしかない。デルタタイムの代わりに -スタート時からのタイムに置き換わってはいるが。だから、データタイプ -("velocity"や"pitch_wheel"など)の説明はLを参照して欲しい。 -順番に限っていえば、一般的に最初のほうに出てくるものが最も重要である。 +基本的にLにあった表の繰り返しでしかない。デルタタイムの +代わりにスタート時からのタイムに置き換わってはいるが。だから、 +データタイプ("velocity"や"pitch_wheel"など)の説明はLを +参照して欲しい。順番に限っていえば、一般的に最初のほうに出てくるものが +最も重要である。 =over @@ -282,18 +287,18 @@ structure takes to play (i.e., the end-time of the temporally last item). -この関数はスコア構造体へのリファレンスを引数にとってイベント構造体に変換し、 -そのリファレンスを返す。リストコンテキストでは、二つ目の値も返す。これは -その構造体が演奏に要するティックの総数(時間的に最後の項目の終了時間) -である。 +この関数はスコア構造体へのリファレンスを引数にとってイベント構造体に +変換し、そのリファレンスを返す。リストコンテキストでは、二つ目の値も +返す。これはその構造体が演奏に要するティックの総数(時間的に最後の +項目の終了時間)である。 =item $score2_r = MIDI::Score::sort_score_r( $score_r) This takes a I to a score structure, and returns a I to a sorted (by time) copy of it. Example usage: -この関数はスコア構造体へのリファレンスを引数にとり、(時間によって)ソート -されたコピーへのリファレンスを返す。例えば: +この関数はスコア構造体へのリファレンスを引数にとり、(時間によって) +ソートされたコピーへのリファレンスを返す。例えば: @sorted_score = @{ MIDI::Score::sort_score_r( \@old_score ) }; @@ -307,10 +312,10 @@ structure takes to play (i.e., the end-time of the temporally last item). -この関数はイベント構造体へのリファレンスを引数にとってスコア構造体に変換し、 -そのリファレンスを返す。リストコンテキストでこの関数を呼び出すと、 -その構造体が演奏に要するティックの総数(時間的に最後の項目の終了時間) -を返す。 +この関数はイベント構造体へのリファレンスを引数にとってスコア構造体に +変換し、そのリファレンスを返す。リストコンテキストでこの関数を +呼び出すと、その構造体が演奏に要するティックの総数(時間的に最後の項目の +終了時間)を返す。 =item $ticks = MIDI::Score::score_r_time( $score_r ) @@ -326,8 +331,8 @@ This dumps (via C) a text representation of the contents of the event structure you pass a reference to. -この関数は(Cを通じて)イベント構造体の中身をテキスト表記で -ダンプする。 +この関数は(Cを通じて)リファレンス先のイベント構造体 +[訳補足:スコア構造体の間違い?]の中身をテキスト表記でダンプする。 =back