てひひひひ〜。田村ゆかりが
>>2 ゲットっス〜!
______
___/ \_
/ .| \ヽ 飯塚雅ゆ
>>3 オバQはすっこんでろ
,| _| __l┴┴┴┴┴┴┴| | 桑
>>4 ま法子 一生ヲタ相手に朗読会でもやってろ(プ
| l `| | ヽ.___/ヽ__/| | 川澄綾
>>5 顔カンナで削って丸くしてこい、まずはそれからだ
| ヽ6|| ( ・) || ( ・)l | | 沢し
>>6 みゆき 木谷に何回抱かれた?
,| |` 〈  ̄ | |  ̄ .〉 | 水樹
>>7 演歌の次は声優か、おめでてーな
| .|| ヽ__,/(` ´)ヽノ | は
>>8 し原めぐみ もうてめーの時代は終わりだよ
| |. l {ヽ `─´/| | 井上喜
>>9 子 オバサン、無理すんな(藁
,| | ヽ ヽ/=====ヽ/ |
| .| \. ヽ=====/,| |
>>10 以下 まとめて氏ね
.| .| \_________/ ,| | _____
| .| // \ /ヽ\|____/ /
.| | / \ ∞ノ / iBook / カタカタカタ
| | | \  ̄ ̄ ̄ミつ_/_____/
.| | /  ̄ ̄ ̄ ̄ | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| || | ̄
>>1 いつかは
Visionを越す
素晴らしいシーケンサーを作ってくれ。
6 :
1 :03/08/10 20:32 ID:WuJJPKIw
>>3 おぅ!Vision使った事無いけどどんな利点がある?
>>4 最近Macいじってないんで地震ないけど頑張る!
>>5 ごめん、、、
8 :
3 :03/08/10 20:36 ID:y0Yj39CQ
>>1 に期待。
とりあえず、
ピアノロールで使いやすいのキボンヌ。
必要な機能か。う〜ん…。 logicでいいや…。
10 :
名無しサンプリング@48kHz :03/08/10 20:47 ID:Uo9igncM
>>1 レコポ&sted系のをがんばって作ろうとしてる椰子です。
私もプラプラ始めたばかりですがお互いがんばりませう。
まだstedの解読を試みようとしてる段階ですが…。
将来的には右ピアノロール左リストみたいなチェリー風にしたいです。
11 :
1 :03/08/10 20:48 ID:WuJJPKIw
>>7 通常のオーディオトラックと別にACIDやLIVEみたいなタイムストレッチを作りたい
んだけどグラニュラーがわかんなくて、、、
>>8 Visionのピアノロールそんな使いやすいの?
12 :
1 :03/08/10 20:49 ID:WuJJPKIw
アプレットで作って、皆でリアルタイム入力しあって共同で打ち込みできるシーケンサがあればおもしろいんじゃないかと思うんだが。(ファイルはサーバ上) で、そーいうスレ立てて遊ぶ。 考えてみたけどJavaのスキル無いからわからん。誰か作って
14 :
名無しサンプリング@48kHz :03/08/10 21:33 ID:1g4d2aEB
へ〜すげーなシーケンサーなんて作れるもんか でもそういえば俺が使ってるmidigraphyも個人が作ったのだし がんばってくれ
15 :
10 :03/08/10 21:55 ID:Uo9igncM
JAVAはMIDI関連に向かないとウチのとこの教授に聞きましたぜ。(私は素人 お遊びで音をならすこととかできそうですけれど…JAVAで真剣なヤツは難しいじゃあないでしょうかねえ。 シーケンス画面のみJAVAとかはできるとかどっかに書いてあったような。 漏れが作ろうとしているsted系打ち込みシーケンサーっていうのソースがあるから一から作るよりは楽かもしれない。 ただそのままなおして流用ではなく参考にさせてもらって別物を作る予定です。 しつこいながら、プログラミングは春に始めたばかりでド素人ですが…。
>>1 シーケンサーを自作ですか、すごいですね。
ネットで良質な情報をあつめられるといいですね。
糞みたいなソフトのくせに、値段だけは高いものが多いですからね
スバラシイやつを作ってくれることを期待します。MIDIだけじゃなく
レコーディングもできてオーディオも扱えるのがいいですね。あとは
立ち上がりが早いと言うか、動作の軽さが問題になりそうです。言うだけなら簡単なのもわかっ
てるんですが、やはりあれこれ機能は欲しくなってしまいます。あと
>>8 さんの言うようにピアノロー
ルは私も欲しいです。慣れの部分が大きいのですが。。
ながくなってすいません。ではがんばってください。( ゚∀゚)アヒャ
>>1 ピアノロールはCherryをそのまんまパクってくれ
18 :
名無しサンプリング@48kHz :03/08/10 21:58 ID:/Jy1zgJh
あぼーん
20 :
1 :03/08/10 22:20 ID:WuJJPKIw
>>10 STedのソースどこっすか?漏れも参考にしたいっす!ピアノロールもつけるけど
数値入力しやすいソフトを作りたいんで。
>>16 ありがとうございます!16さんのおっしゃるとおり軽くてオーディオも扱えるもの
を作りたいと思ってます。ただオーディオトラックをつけるのはムズい、、、どうしても
重くなります。あと
>>11 で書いたようにどうしてもタイムストレッチを付けたいっす。
皆さんなんかいい情報あったら教えてください!
23 :
名無しサンプリング@48kHz :03/08/11 07:07 ID:qHKvjsm6
24 :
10 :03/08/11 07:07 ID:qHKvjsm6
↑ 10です。
25 :
_ :03/08/11 08:10 ID:sMTEEjBJ
26 :
_ :03/08/11 08:22 ID:sMTEEjBJ
>>16 縦読みにはそんな子供じみた煽りよりもユーモアのほうが合う。
お子様は早く宿題すませましょうね。
>>1 頑張ってください!
MacOS9.xで動けばなお嬉しいのですが…
>27 0てん
システムエクスクルーシブメッセージをシーケンサー側に格納し、 プロジェクト毎に自由に呼び出して使えるようにして欲しい。 (CakewalkのSysxバンクがシーケンサー側にある感じ) セットアップ小節と演奏部分を分離して編集、保存出来るようにして欲しい。 SMFに書き出すときに結合するような感じです。 あとはイベントリストで±キーで数値の増減。 イベントの種類ごとに表示、非表示出来るようにして欲しい。 ショートカットキーの設定とGUIの配色を自由に出来るようにして欲しい。
イベントリストの表示がST/GT系とVisionみたいなカタチとの切替ができれば
多少はユーザーを選ばなくなるかな。とっつきやすさが違うと言うか。
>>30 さんの言うように、カスタマイズ出来るととてもありがたい。
オーディオはCubaseとかSonarを使えばいいです。 打ち込み専用の軽快なソフトにして欲しい。 でも複数ファイルの同時編集は出来るようにして下さい。
midiに関してなら
ソフトはVision、パフォ、ロジクのいいとこどり
ハードはQY、MCのいいとこどり
オーディオは
>>32 さんの言う通り
SH101→MC202→SK-1→QY20→XP50→MIDIGRAGHY→VISION→CUBASE
と歴代シーケンサーを使ってきたが答えは
>>1 と一緒。
システムレベルで自分の都合のイイように
カスタマイズできるシーケンサーがあればいいのに、、、
34 :
1 :03/08/13 02:40 ID:st8hkx79
皆さんありがとうございます!今MC-50のリズムトラックをまんま真似たような
物を作ったところです(まだバグだらけ、、、)。なもんで気長に待ってて下さい。
僕はソフトはCUBASEとLOGICしか使った事ないですがVisionとDPの利点を教えて
いただきたいです(特にMIDI周り)。
>>28 押し入れに眠ってるMacが7300/166/OS8.6なんで上手く移植できれば、、、。
>>32 ,
>>33 そういっていただけると少しは気が楽です(w)。特に
>>33 さんのおっしゃった
自分の都合のいいようにカスタマイズ、っていいですよね!プラグイン的に出来る
か考えてみます!
35 :
28 :03/08/13 08:51 ID:96Vb4NmB
>>32 さん、ごもっとも。
>>1 さん、Vision/Studio Vision Proは今フリーで落とせますよ。
ttp://www.opcode.com/ ただちょっとでかい、、、、
MIDIまわりでの利点は、ピアノロールが使いやすい、って言われてますが。
DP,Cubaseはさわったことがないので比べられません。
PM7300/166でそこそこ動くソフトになれば、すげー使いやすいと思います。
OMS対応、忘れないでね(w
36 :
山崎 渉 :03/08/15 16:18 ID:c3cZsm7w
(⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
37 :
名無しサンプリング@48kHz :03/08/16 15:39 ID:EDu8ckEu
保守age
38 :
名無しサンプリング@48kHz :03/08/16 15:46 ID:wBOXgGd1
期待アゲ! ピアノロールではダブルクリックでノートを置くcherry方式を採用して欲しい。 これがないと打ち込めないです。
CherryのVCC機能は最強 ピアノロールはキーボードショートカットで[選択]とか[ノートを置く]とか切り替えられるのがいい
作ってるの?
41 :
名無しサンプリング@48kHz :03/08/22 14:07 ID:+OZZc8+e
自分もC++の勉強かねてトライしてみよう
まさかこんなスレがあるとは……
自分もMC-8 = MC-500 = MC-50mk2ときて
データ管理のためにWinではXGworks,Sonar、MacではVisonと使ってみましたが
どうにもなじめずMC-50mk2を使い続けています。
PCシーケンサーは余計な機能あり過ぎと思う。
MC-50のスピーディーな作業性――というか、RythmRecをPC上でできないかと
数年前から思っているのですが、プログラミング初心者には敷居が高く…。
最近、別の理由でLinuxを導入して再びCをやり直そうとか思っていたんですが、
このスレ見たら何だかやる気が出てきました。
>>1 さんも、皆さんも頑張ってください。
自分は作ろうとしているのが完全にMC-50クローンなのでアレですが、
ちょっと頑張ってみようと思います。
>>42 MC-50クローン期待大!!
テンキーだけでバリバリ打ち込めるなら絶対速いしね
44 :
42 :03/08/24 20:50 ID:j7WSEGe4
ちなみに、自分が作ろうとしているシーケンサーの基本仕様はこんな感じ。 使い安さと一緒に「作りやすさ」を重視。 1)基本はリアルタイム入力+レコポ的数値編集のプレーンなシーケンサー 2)普通のWinアプリ程度の編集機能(Cut,C&P) 3)プラグイン的に録音機能を追加 (欲しいもの:MCライクRythmRec,MMLコンパイラ,個別機種ライブラリアン,etc) ※これらはプラグイン・トラックに小節単位で張り付け 4)オーディオ、VST等のプラグイン非対応 5)MIDIポートに対してPC内部接続 (=4)のデメリット対策) MIDIアプリの一番難しいのはリアルタイム性だと思うので、 上記の基本設計で、大分楽になると思う。 といっても、自分まだまだ何もできてません(;_;)
>>44 Qです。
拍の観念はどうしますか?
古いMC、レコポ等ではステップタイムをその都度自由に設定できて
都合のいい所に終止線を入力出来るのが魅力的だったのですが。
それとも1拍を48〜960とかの固定ステップなのでしょうか?
46 :
名無しサンプリング@48kHz :03/08/24 22:36 ID:qohd3zGR
rm1xのように、midiフレーズをボタンに振り分けて、サンプラーみたいに 使える機能つけてください。 結構使えるのに、採用してるソフトのシーケンサーないので。
>>46 visonもlogicもあるよ。
鍵盤にアサインできる。
なんなら1曲まるまるとか、
パート毎とか。
48 :
名無しサンプリング@48kHz :03/08/25 15:39 ID:3FcjIjCm
フリーでお願いします
Javaでもmidi鳴らせるけど、クソ重くてだめぽ、って聞いたことある。
51 :
名無しサンプリング@48kHz :03/08/25 15:56 ID:rp+fOQ0/
既存のシケンサーにVisionやdpのリストエディダ−組み込む香具師 がいましたよね?その後プログラム改ざんすな!などいわれれて、表にはでなくなったそうだけど。。
StormってJavaで作られてるから、そこそこいけそうだな
54 :
42=44 :03/08/25 23:48 ID:pZlfTOPc
>45 拍の概念は4分音符=960固定…というか、これは「分解能」であって、 この値を決めないとシーケンサー内部で制御するMIDI Clockの概念が作れない。 ただし、リアルタイム・クオンタイズなどはせず、 960/480/240...というような値に合わせこまなければ自由度はあるかと。 あと、MCとかではステップ入力時のデフォルト・ゲートタイムが、 Globalにパーセンテージ設定できるのでそうしたい。 (4部音符のとき85%でゲートタイム816->820に成形、とか) で、ステップ入力時には、カーソル移動で、 そのデフォルトゲートタイムから変更できるようにする、と。 (Step入力開始->発音位置入力->NoteNo.入力->ベロシティー入力->GateTime入力 「->」はENTER押して確定して次項目、左右カーソルで編集対象移動、という感じ) 問題になるのは「スコア表示」で、音符として表示するためには ゲートタイムを認識したあと、しきい値判断して音符に変換しなきゃいけなくて、 そこで編集したら発音タイミングからゲートタイムから、 全て成形しなおさなきゃいけなくなるので微妙な発音ニュアンスが消えてしまう。 自分は楽譜って演奏のときしか使わないから、作曲用シーケンサーには実装しないつもり。 小節の概念は別トラックで記録するのがベスト。(MC-50使っててつくづく思う) テンポと拍子の形式を特定のトラックに、デフォルトの値から違う時だけ記録する。 「4分音符=960」で考えているのはMC-50の分解能が96だから。(^^)
>>54 >値を決めないとシーケンサー内部で制御するMIDI Clockの概念が作れない
詳しい説明ありがとうございます。
納得しました。
>>45 の質問は以下ような事です。
4分=480分解能
3/4拍子
音符 4分 4分 4分 終止線
ステップ 480 500 460 ー
ゲート 460 480 440 ー
私としてはROLND CV/GATEシーケンサーの
拍の概念を再現して貰えたら嬉しいと思い書き込みました。
実際ソフトシーケンサ−で出来なくは無いのでしょうが?
手間が掛かる事必至です。
>「4分音符=960」で考えているのはMC-50の分解能が96だから。
私も4分=96が慣れているので賛成ですが
多くの人に対応してもらいたいので
4分=48〜1920まで自由に設定出来ると嬉しいです。
ステップ中心の打ち込みの人には4分=1〜16とかあると意外に便利だったりするのですが
これを実現しているシーケンサーを知りません。
加えてトラックごとに分解能設定ができるのも技術的には難しいでしょうが面白いと思います。
プログラムに関しては全くの素人なので勝手な意見しか言えませんが応援しています。
頑張ってください。
尚、当方MacOS9なので首を長〜くして愉しみにしています。(w
56 :
42 :03/08/27 00:32 ID:0AJeQVM/
>55 > 私としてはROLND CV/GATEシーケンサーの > 拍の概念を再現して貰えたら嬉しいと思い書き込みました MIDIだとソングポジションポインタ(小節の頭)を入れるので、 可変長じゃない方が作りやすいというのはあります。 アナログMCの作り方って、シーケンサーというよりアルペジェータに近いんですよね。 あと「内部分解能は高めで、見かけ上分解能の数値を変える」ことは可能です。 MC-500〜MC-50mk2までのRolandシーケンサーにあったRythmRecがまさにそれ。 これはトラックどころか、インストルメント単位で分解能を設定できるというスゴイ仕様。 あと、Win95時代に「ドレミキャンバス」というおもちゃシーケンサーを見つけたのですが、 これはピアノロール画面の分解能がボタン一つで4分音符=1>4>8と可変するスグレモノでした。
>>56 なるほどソングポジションポインタと言うのは理解できました。
MC(CV/GATE)からQY(初MIDI)に移行した時にすごく違和感を感じたのはそのせいだったのですね。
MCシリーズ(MIDI)は使った事が無いのでRythmRecなんて便利な機能を知りませんでした。
ところでそのRythmRec機能をソフトで再現してるシーケンサーはあるのでしょうか?
ドレミキャンパスのボタンひとつで分解能可変は凄いですね(w
ありがちなシーケンサーを作ってもパケッージやシェア、フリーを使っているのが殆どだと思うので
ReCycleデビュー時の様にある一部にしか特化してないけど使わずにはいられない魅力的なモノを作って欲しいです。
リサイクル使いたいが為にPCを買ったくらいですから、、、
いつも勝手な事ばかりすみませんね。
では。
emacsみたく、本体はインタプリタという実装してくれるとおもしろいんだけど。 といいつつ、俺もちょこっと弄りはじめてます。for OSX。 objective-C+coreMIDIは結構触る気になる。おもしろい。
59 :
名無しサンプリング@48kHz :03/09/07 07:57 ID:xFn48gJZ
作ってみないとなんとも胃炎。 ただ、全ての開発ツールがAppleから無料で手に入るってことが魅力 ドキュメントは当然全部英語だけどね。
61 :
名無しサンプリング@48kHz :03/09/08 22:07 ID:qkJ/lQX1
>>1 さん がんばってください。自分は力になれなさそうなんで申し訳ないんですが
応援してます。希望だけですいませんが、ピアノロールはMusic Studio シリーズが
使いやすいです。XG worksは全くつかいづらくて…。
62 :
名無しサンプリング@48kHz :03/09/08 22:11 ID:qkJ/lQX1
>>13 の方いますでしょうか?
自分はそういうのとても面白いと思います。自分もそういうのがしたいです。
同じく全くの初心者でちょろっとJava興味もちだしたところですが。
63 :
名無しサンプリング@48kHz :03/09/08 22:32 ID:Y0Q3iP7X
そんなもん作らなくてもWINのサウンドレコーダで作曲出来るのにねW
>>63 サウンドレコーダが無くても作曲できるのにねW
・・・頭わる
65 :
名無しサンプリング@48kHz :03/09/09 14:42 ID:Z6WaOnk7
>>63 の言う意味がよくわからん。
引っかかったおれがばか?
いつのまにか良いスレが立ってるな!! midiは思い切ってコントロール専用にするとかはどうかな?
脳内にあるフレーズを念じるだけでmidiデータにしてくれる ソフト作ってください。
69 :
名無しサンプリング@48kHz :03/09/12 01:38 ID:xOJ9pgx8
デザインが気になるからうpしれ!
70 :
名無しサンプリング@48kHz :03/10/13 22:51 ID:A4K75x0/
保守
シーケンサをモジュールソフトで作ろうとしたんだがこれだけでも難しいな。 1から作れるやつ凄いよ。
フロッピー内のmidiデータを指定通りにMIDI OUTに流すハードシーケンサー作ってくれ。
73 :
名無しサンプリング@48kHz :03/11/01 13:34 ID:cagZ5v1W
そういうのはヤマハにでも言った方が良いのではないかと
74 :
無しサンプリング@48kHz :03/11/01 14:14 ID:29Rs/e2V
>71 昔Virtuosoというアタリのシーケンスソフトはまさにモジュールソフトだった。 このソフトもノーテータ-SLもピアノロールが横向きだった。 横向きは、キーボードと平行だから操作しててすごく楽だった。 このピアノロール付きのMIDIだけの軽快なソフトがあったら絶対買う! 今の市販のソフトのピアノロールは縦だから、不快だな、 まるで本の背表紙のペーバーバックのタイトルを無理やり読まされてる感じ。
76 :
名無しサンプリング@48kHz :03/11/01 16:00 ID:f73itQyL
>>1 いつかは、世界に認められるC検査〜を作ってけろ! スポンサーになるからさ!!
77 :
名無しサンプリング@48kHz :03/11/01 17:52 ID:gvjfDfWb
>>1 シーケンサーの作り方を伝授してさしあげます。 まず最初に! どうゆうシーケンサーにするのかを大雑把に構成! 用意するもの パソコン(なるべく強いものがいいです) 飲み物(なるべく低カロリー、スポーツ飲料などがいいでしょう) この辺があれば簡単にできます。 なぜ、ドリンクが必要かって!? それはね!のどが渇くからだよ! それから、まずは基礎のプログラムを完成させなくてはならない! まあこの位は簡単にできるので省略。 次に いよいよメインとなる部分をチョメチョメ作っていきましょう! ここは人それぞれなので、自分らしい構成を打ってください。 続きはまた来週! 次回からは火曜日の放送です。(一部地域を除く)
78 :
名無しサンプリング@48kHz :03/11/01 19:12 ID:AiAIU8nB
agesagekibisiiyo
79 :
名無しサンプリング@48kHz :03/11/02 08:29 ID:UzSjVTal
age
80 :
名無しサンプリング@48kHz :03/11/02 16:34 ID:CD0sjUsj
プログラマーに成らないと無理だろ。 素人には、てきとーシーケンサーぐらいしか作れないよ。 一人では無理、2人ぐらいいないと。。。
81 :
名無しサンプリング@48kHz :03/11/03 11:55 ID:f1uqOZyR
プログラマー板にでも以来しるか?
・一人か複数人かのそれぞれの利点 一人で作るのはプロジェクト管理が楽 自分の思い通りの方向性を設定できる 複数人で作るなら一人当たりの割り当てが少なくできる アイディアについて相談できる、助け合える てとこか?ちなみに'95年ごろのMIDIオンリーのギタ次郎対応SSW3.0で 4人のPGだったらしい。将来PGとか目指してる学生さんとか だったらプロになってからのことを考えて、複数人で組んで 仕様書とかのプロジェクト管理の実践的なお勉強も兼ねてみたら、と思う。
84 :
名無しサンプリング@48kHz :03/11/04 09:24 ID:vp63hK99
age
85 :
名無しサンプリング@48kHz :03/11/05 07:14 ID:Xi2+acXe
MC-500のリズム作成をPCでできたら最高。 テンキーで入力できるのって無いよね? 作ってください!
86 :
名無しサンプリング@48kHz :03/11/05 09:46 ID:1tBbkeTw
どんな操作法よ?
88 :
名無しサンプリング@48kHz :03/11/06 10:32 ID:YWk/XduQ
俺俺サギ
89 :
名無しサンプリング@48kHz :03/11/08 14:37 ID:ZR1bL4JT
>>87 最初に音符を選ぶんよ。
例えば、16分音符を選んだら、16個のマス目が出てきて、
そこにテンキーで必要なところに打っていく(各パート毎)
テンキーの1〜9までのベロシティはあらかじめ決めておくわけ。
おれはデフォルトのままで使うが・・・。
説明が悪いよな。わかりづらくてスマソ。
90 :
名無しサンプリング@48kHz :03/11/11 01:10 ID:gRAwA+zx
age
91 :
名無しサンプリング@48kHz :03/11/14 01:17 ID:qsaaGMYu
頼む! 早くMC-500系のPCシーケンサーを開発してくれ! 買う!絶対買う!
説明がわかりづらいんだが MC-500はエイトを打ち込むとき 90058000 Kick 32423242 HiHat 00600060 Snare こんな感じで打ち込むん? タム回しとか打ちにくそうだけど?
93 :
名無しサンプリング@48kHz :03/11/15 02:06 ID:dySUZiiQ
>>92 そういう感じ。
それぞれの最小拍を変えることができる。
例)4つ打ち系
BD 四分音符 6666
SD 四分音符 0606
CHH 八分音符 04040404
で、1小説づつ作ってナンバリング。
あとから小説に対して何番のパターンかを当てていって、
ドラムトラックの完成。
94 :
名無しサンプリング@48kHz :03/11/16 14:36 ID:Rzx784r3
95 :
名無しサンプリング@48kHz :03/11/23 16:39 ID:16gMrv6n
Digital Cugicer 2004 ウルトラダイヤモンドゴールデ(略) プロ v1.0 ・DirectX , VSTプラグイン対応。 ・ドライバは WDM , ASIO に対応。 ・MIDI分解能48-960に対応。 ・内部32bit浮動小数点演算のミキサーがホスイ ・オーディオ、MIDIトラック数に制限なし ・各chにコンプレッサー/リミッターとリニアフェーズEQ搭載。 ・時代を先取りしてDSD、384kHz/32bitに対応 ・譜面作成ソフト並のスコアリングに対応 ・HyperThreadingで動作は軽々。当然Pen3やAthlonでも軽々。 ・10.2chサラウンドも可能 ・CD-R/DVDライティングエンジン搭載 ・インターネットを通じてのオンライン・レコーディング/リアルタイムセッションが可能 ・ReWire対応 ・FireWireケーブル一本で別のPCと完全同期が可能な「FireSession」搭載 ・何気にSDIIファイルを読める ↓よろしく
96 :
名無しサンプリング@48kHz :03/11/24 01:12 ID:bKGmXyC2
たのむ! 早く作ってくれ!MC系のやつを〜!!
97 :
1 :03/11/25 20:24 ID:NIr5xyl7
お久しぶりです!!MC系の打ち込み(テンキー)+MPCのクォンタイズ(%)を兼ね備えた ものにしょうと思ってます。普通のピアノロールもつけたい&バグ取りのためもう ちょっとお時間ください!!GUIどんなのがいいですか?僕はLiveやTracktionみた いにしようと思っているんですがどうでしょう?
99 :
1 :03/11/25 23:13 ID:NIr5xyl7
>>98 是非そうしたいんですがMac持ってないんで、、、。近々G4買うんで挑戦しますが
ソースの移植どうしよう、、、誰かいい本とか知ってますか?
100 :
名無しサンプリング@48kHz :03/11/25 23:14 ID:P2pVZkag
GUIはもろMCでも良いかと・・・。 リズムトラックに関しては、あの、それぞれのパートを打ち込んでいく流れを 縦のつながり(各パート)を見ることができる感じと、 それ以外のものに関しても、縦の関係が見れるようなつくりであれば何でもいい!! よろしく!
>>99 Macでプログラミング初めてならMacOS X(Cocoa)が簡単でイイ
んだけど音関係のAPIはCarbonの方が揃っているのが現実
Cocoa本はObjectiveCとJavaが乱立しているので購入前に
立ち読みをお勧めする
>>97 ピアノロールはCubase風に、そのノートの情報をパッっと見れるようなのがいい。
Cubaseのピアノロールこそは糞なのだが、、、 DP風をキボン なんて難しい事は言わないから Cubaseのマトリクスウィンドウ(碁盤の目) は欲しいね。
104 :
名無しサンプリング@48kHz :03/11/29 02:15 ID:RqvJi//E
あ〜、待ち遠しい〜。 早くベータ版でもいいから公開してよ。 完成したら買う!絶対買う!
105 :
名無しサンプリング@48kHz :03/11/29 04:17 ID:tD2L1yPA
多くは望まない。掲示板で五線譜をかけるようにして暮れ! 話はメールでも良いが、譜面はどうしようもない。 ぜひ、お絵かき掲示板をちょっくら改造して、五線譜を欠けるようして暮れ〜〜〜
>>105 あの〜、代表的なイベント表示方法の中で
五線譜入出力に対応するのが一番大変だと思うんですけど・・
多くは望んでなくても、深く望んでる感じです。
でも、アイディアは面白い。
107 :
名無しサンプリング@48kHz :03/11/29 14:46 ID:QheaVigb
いや、俺は105はシーケンサを別のものと勘違いしているような気がする。 かくいう俺もWinでレコポ系の軽いやつを画策中。MIDIオンリー。 RCPファイルの解析は終わったけど、結構カツカツなつくりで、 ファイル互換はめんどくさそう(読み込みくらいは実装できるけど)。 自然消滅するかもしれないけど、ゆっくりつくっていきます。
108 :
名無しサンプリング@48kHz :03/12/04 01:47 ID:xwJp3/uq
109 :
108 :03/12/04 12:53 ID:Ln/rJs+R
110 :
名無しサンプリング@48kHz :03/12/07 11:20 ID:jlPiry+o
まだか?
111 :
名無しサンプリング@48kHz :03/12/07 21:19 ID:SV8EWYia
Linux用の CoreMIDI CoreAudio みたいなのって、無いの?
でも、Linuxで打ち込みなんてしてる人いるの?
シーケンサ作ろうと思うなら ポール・メシック著 C++ MIDIプログラミング は読んでみる価値あると思う。マルチトラック管理の部分とか。
114 :
107 :03/12/07 23:35 ID:EImZ6LYb
>>113 既読です。今となってはちょっと内容が古いかも。
あと、洋物ということで、リアルタイム入力が前提になってる感があり、
ST/GT系を考えている自分にとってはちょっと目指しているものが
違うかな、と読んだ当時思いました(もう2・3年前)。
最終的に著者の自作ドライバ中心の話題になるしね。
最近だと(買ってないけど)、
「Windowsサウンドプログラミング―音の知識×プログラミングの知識」
は要点が抑えられていてそれなりに参考になると思いました。
ただ、必要な知識は結構Webでも手に入るから、お金を出してまで...
となると微妙だったり。
APIまわりとか割込といった技術面も大事だけど、
抑えるべき機能面とか、内部データ構造をどう考えるか、
みたいな本があると面白いんだけど。
こんなこと書いてる間に、とっととコード書けよな<自分。
115 :
名無しサンプリング@48kHz :03/12/10 10:45 ID:8vwMUf8w
こんなスレがあるんか、と思ったらハイーキョ 1画面くらいでnote onだけ出力するBCC developer対応のソースきぼん あとは少し勉強して、それから質問なり解答なりするYO
言い直し includeとlib : windows.hとmmsystem.hくらい 流れ : WinMainで note on, MessageBoxで入力待ち, note off, 程度 動作確認 : BCC5.5+BCC developerで くらいの1画面プログラムきぼん MSとかwebとかそれなりに調べるけど, マンドーなので
書く前にスレ読めば良かった… シーケンサーといっても MIDI mesを時間管理して出力する装置を win環境で作りたいだけなんで, スレ違い気味 既出参考書籍2冊は立ち読みで済ませたけど win用のコードは1行も書いてません もしこのネタに付き合ってくれる人がいるなら乗っ取るけど 他の板・スレも探しますわ
119 :
名無しサンプリング@48kHz :04/01/02 22:44 ID:RVxg/Yww
できた >#include <windows.h> >HMIDIOUT hMidiOut; >int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int cmdShow){ > midiOutOpen(&hMidiOut,(UINT) MIDI_MAPPER, NULL, 0L, 0L); > midiOutShortMsg(hMidiOut, 0x007f3c90); // Note On > MessageBox(NULL, "hello, world", "hello", MB_OK); > midiOutShortMsg(hMidiOut, 0x00003c90); // Note Off > midiOutClose(hMidiOut); > return 0; >} BCC5.5.1でmmsystem.hのincludeが不要だったようだけど, 理由調べるのマンドー もっと低レベルかstreamがらみを使いたいので情報きぼん as isな時間管理を組むのでさえ, まだ勉強が足りねえや
120 :
名無しサンプリング@48kHz :04/01/03 02:37 ID:TeiQ2NLP
>>119 お!結構簡単にイベント送出できるんだね、
ちなみにcygwinでもコンパイル&動作した
$ gcc sample.c -DWIN32 -lwinmm -o sample
$ ./sample.exe
ストリームってと midiStreamOut あたりかな?
MIDIHDR->lpData にイベントポインタぶち込んで
呼ぶっっぽい。MSDNに載ってるけど使えない?
とりあえず良スレage
121 :
名無しサンプリング@48kHz :04/01/03 04:48 ID:mNc8OndM
イキナリ、眠れる獅子たちが・・・・ッ
おお、わずか数時間でレスが。情報激しくありがとん
as isな時間管理できた
>#include <windows.h>
>void foo(){
> HMIDIOUT hMidiOut;
> MMRESULT rslt;
> DWORD dwData[] = { 0x643790, 0x003790, 0x643890, 0x003890, 0x643A90, 0x003A90 },
> lTm;
> int i;
> rslt = midiOutOpen( &hMidiOut, MIDI_MAPPER, NULL, NULL, CALLBACK_NULL );//open
> if ( rslt == MMSYSERR_NOERROR ){
> for (i=0; i<6; i+=2){
> lTm = GetTickCount();
> midiOutShortMsg( hMidiOut, dwData[i] );
> while ( GetTickCount() - lTm <= 1000 ){ ; }//wait
> midiOutShortMsg( hMidiOut, dwData[i+1] );
> }
> midiOutReset( hMidiOut ); midiOutClose( hMidiOut );//close
> }
>}
>int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int cmdShow){
>foo();
>return 0;
>}
MSDN見た。日本語だと
ttp://yokohama.cool.ne.jp/chokuto/urawaza/api/midiStreamOpen.html が参考になりそう
n個バッファ持ってcallbackされたらmidiStreamOut()ってとこ?
コードサイズ膨らんで1画面プログラムに収まらなそうな気配。
ちょっとティーブレイクしてMIDI INほかで遊ぶかも。
やっべindent腐った。全角spaceだと読む側がコンパイル時置換必要だし、迷うとこ
124 :
名無しサンプリング@48kHz :04/01/03 18:49 ID:TeiQ2NLP
基準時間生成で QueryPerformanceCounter とやらを 使うと結構精度よさそうな感じ、1_秒以下の精度が出るらしいよ QueryPerformanceFrequency - CPUのカウンタ周波数を得る QueryPerformanceCounter - 現在のカウンタの値を取得 ちなみに古いマシンでは使えないらしい、Pentium以降なら大丈夫 とか言う未確認情報あり NT系のMMタイマがいい加減と聞いたので参考程度に
125 :
名無しサンプリング@48kHz :04/01/03 18:55 ID:hunAtcx6
Cとか使ってまともにタイミング出るの?
>NT系のMMタイマがいい加減と聞いたので参考程度に よく聞く話だけどホント?
midiInOpen()でloging関数のポインタ渡してcallbackさせようと思ったけど callback概念への理解が足りなくて進捗遅れぎみ streamもだけど、そろそろ1画面プログラムじゃ無理?
129 :
名無しサンプリング@48kHz :04/01/03 23:33 ID:w3Oqbd9j
GetTickCountはともかくとして、 素直にtimeGetTimeでいいような気がするんですが。
userから演奏精度の不満が来てから対処しても間に合う類の問題なので、気にしてない
131 :
名無しサンプリング@48kHz :04/01/04 00:09 ID:SrdZ7nW3
うおお!!!! ピンポイントに必須コードを書いてくださって、激しく感謝。 手元BCC developerのデフォ設定だとstdio.hとハンドラの明示キャッシュ (midiOutとmidiStreamで別定義されているため)が必要だったけど、 無事build+runできました。 有難く利用させていただきます。これを元手にいろいろやって理解を深めるぜ。
GetTickCount及び、timeGetTimeの精度は、
>>127 のページにも書いてあるけど、timeBeginPeriod timeEndPeriodで解決できます。
たまに昔のゲームがNTで遅かったりするのは、この処理やってないせいだったりする。
136 :
保守ageついで :04/01/13 23:47 ID:+gPnAC1L
VSTのSDKって知らない間に2.3になってたのね。 ASIOの方は2.0から特にアップデートされてないのかな? あと、ReWireのSDKとかって、ちゃんとした会社じゃないと 手に入らないのかしら。フリーではあるみたいなんだけど。 Reasonはすご〜く良いソフトウェアだと思うけど、 そーゆー閉鎖的な姿勢ってどうかと思う>プロペラ頭
保守感謝。VSTiの話にはものすごく釣られる性質なんだけど、自分でスレ荒らすことになるので黙っとく
138 :
名無しサンプリング@48kHz :04/01/16 00:48 ID:q3WUlxjp
まだ完成しないのですか? 楽しみにしてます。
139 :
133 :04/01/16 11:09 ID:mCrx1Tev
期待してくれるとはありがてぇ。
ごめん。
>>133 から先に進んでねえ…
midiNotesがどの関数にどのように与えられているかが脳内トレースできてなくて。
はやいとこmidiStreamの癖を把握しきって、安心してmidiOutShortMsg/midiOutLongMsgに進みたいです。
140 :
名無しサンプリング@48kHz :04/01/16 11:54 ID:LzFWSFdJ
142 :
名無しサンプリング@48kHz :04/01/31 01:03 ID:zBMgKkrV
一つあった気がするけどVC.NETが必須だったかな。開発も止まっていたと思った 演奏制御、バッファ編集、編集用のユーザーインターフェイス、 この三点をそれぞれ別のスタッフが作ることができて しかも必要なのはフリーの開発環境だけでいい、なんて理想は夢どまりなのかなー
144 :
107 :04/01/31 01:28 ID:VtBClW9V
>>142 MIDIで検索すると結構ばらばら出てきますね。
そういう僕は一人でちまちま作ってます。
やっと内部データ構造が固まってRCP/SMF読み込んでるとこ。
無事フリーの環境だけでbuildできたよ。こんな有難いソースを公開してるなんて偉いぜ
昨晩からOSXのCocoaJavaでシーケンサ制作にとりかかりました新参者です。 とりあえずJavaSoundAPI使ってMIDIファイルの解析してリストエディタ表示まで。 エディットのメインはリストとMMLにしようかと思ってます。 CoreAudioもJavaからいじれるんでAUとかもいけそう。でも先は長いなぁ。 まだ全然やってないんで心配なんだけど、タイマー関係がうまくいくといいなぁ。 まえにリズムボックス作ろうと思ってObj-CでNSTimer使って泣きを見たので いろいろ試行錯誤して見ようと思ってます。以上です。
>>147 お、Cocoa開発者登場。
このスレのシーケンサが全部完成したら
マルチプラットフォームですな。
とりあえずガナゲ
つくりたい
レコポのキーアサインだれか晒してくれんか。 マニュアルがもう無い。 /:スペシャルコントローラ x:expand z:値のセット *:小節終了 shift+数字:そのトラックへ p:演奏 m:小節演奏 くらいしか思い出せない。
レコポスレがあるから、そこで質問すれば?俺は使ってないので答えられんすまん
152 :
150 :04/02/20 02:56 ID:Q0TsI0FF
153 :
名無しサンプリング@48kHz :04/03/02 21:45 ID:EoDWpxJf
あげ
154 :
名無しサンプリング@48kHz :04/03/17 18:12 ID:pS4Hvac9
MC-500のRythmRec使ってみたけど分かりやすい。 期待あげ
155 :
名無しサンプリング@48kHz :04/03/17 18:15 ID:ykaNNv+m
MC-500等は,PCベースに比べ格段に3倍くらいのタイミング精度があがりますよ
156 :
名無しサンプリング@48kHz :04/03/17 18:21 ID:wUeTHPF3
ガンバレ挑戦者age
157 :
名無しサンプリング@48kHz :04/03/18 21:09 ID:fUFPYAhb
マジでPC上でMC-500ライクなリズムの打ち込みできたら最高。 期待age
一応保守age 製作者さん、ガンガッテ。
159 :
名無しサンプリング@48kHz :04/04/13 00:37 ID:socj2mWc
上がってなかった…(汗)
SY99内蔵シーケンサーのソフト版がホスィ!
MMLによる入力も可能なシーケンサがほしい! 数値入力より早く入力できる
>>160 ヤマハのマニュアルライブラリからSY99の取説拾ってきた。
シーケンサは基礎編に載ってるね。暇があったら作るかも。
MMLでまともにつくれるわけないっちゅーの。 せいぜい8オンポリくらいの世界でがんばってくれ。
MMLである程度のイベントを一方通行で入力するだけなら実用例はある 補助入力UIを後から追加できるシステムは、ある程度大規模になったら つけておくほうが良いだろうね 各種ビューについても同じ プレイヤー、演奏ビュア、編集内容ビュア(+エディタ) それぞれを切り分けて作っておけばさほど難しくもないだろう が、使う側どころか作る側も混同していることが多い
165 :
名無しサンプリング@48kHz :04/04/19 10:17 ID:OmQt5b9n
やはりまとめページが必要なんじゃ?
166 :
名無しサンプリング@48kHz :04/04/26 08:52 ID:eOvhSvX1
確かにソフトウエアシーケンサーの操作性って終わってるよね....。
ハードのシーケンサーマンセー派なら USB接続の10キーとかMIDIコントローラーとか使えるようにすれば?
168 :
名無しサンプリング@48kHz :04/04/27 01:36 ID:FDWd9dVH
内部ロジックは任せた! GUIだけやらせてくれ。 ちなみにVC++。
169 :
名無しサンプリング@48kHz :04/04/27 02:29 ID:9oyv2c67
>>167 人と共有して使う環境で設定が変わるし接続しっぱなしというわけにもいかないので
毎回不便すぎてアイディア飛ぶと思います
170 :
名無しサンプリング@48kHz :04/04/27 13:37 ID:1TjTSYNi
けっこう期待してるのですけど、ちゃくちゃくと出来てるのかなぁ〜・・・
期待
気体
期待age
ほしゅ
セットアップと演奏部が分かれていて別々に保存して各プロジェクトで使いまわすことが出来る。 それぞれタイムベースを設定することが出来、SMFに変換するときは大きいほうのタイムベースになる。 エクスクルーシブは名前をつけて個別に保存出来、各プロジェクトで使いまわすことが出来る。 トラック、ピアノロール、スコアロールは一つのウィンドウに格納され、表示はタブで切り替える。 複数のプロジェクトを同時に編集できる。 相対値でCC、テンポを変更できる。
ホシュ
178 :
名無しサンプリング@48kHz :04/07/26 01:09 ID:h1q8pTtR
シーケンサーつくるので必要な情報があるWEBをおしえてください
179 :
名無しサンプリング@48kHz :04/07/26 01:26 ID:ffUbdeNj
いろいろ集めてたけど PC再インストールしたら消してしまった・・・・ バックアップに入ってるかもしれないからあったら書き込むよ
180 :
名無しサンプリング@48kHz :04/07/26 01:53 ID:iGS1IGRe
181 :
名無しサンプリング@48kHz :04/07/26 12:13 ID:h1q8pTtR
OS : Windows NT ~ XP 言語 : C, C++ 開発環境 : VC++ です よろしくおねがいします//
182 :
名無しサンプリング@48kHz :04/07/26 12:36 ID:fQXSj1zb
MC-500等は,PCベースに比べ格段に3倍くらいのタイミング精度があがりますよ
183 :
名無しサンプリング@48kHz :04/07/26 13:08 ID:iGS1IGRe
>>178 よっく考えたらさ、自分で検索した方が早くない?特にI/O関係なんかは。
トラックの管理、データの挿入削除とかの話になると書籍しかないと思ってよいね。
その書籍でさえ多くの期待を抱いてはいけない気がするよ。
184 :
名無しサンプリング@48kHz :04/07/27 09:13 ID:b5SMZ8NP
VISIONが塩漬けになってるんだから ぜひこいつを利用して うまく進化させて欲しいよなあ。 どう考えても使い勝手からいってこれが最高。 大体、ロジックでキーボード触った時点からレコーディングが走るという機能 ついてないって致命的。リアルレコーディング→編集 というのがやぱ基本だろ。 打ち込みだけでやってたら時間かかってしょうがない。 DPはいいけどやぱVISONの軽さとスピード、使い易さには確実にまける。 VISONのアップグレードあれば100%買う。
古漬けsage
186 :
名無しサンプリング@48kHz :04/08/07 21:46 ID:nb8D+AGv
age
187 :
名無しサンプリング@48kHz :04/08/08 04:27 ID:3nshmnSC
結局計画は頓挫?
ん?何か計画があったのか?
unixで動くオプソなシーケンサがあるといいんだが、 unixの場合はOSによってはカーネルに手を入れないと 時間精度を得ることすらままならん。orz
unixなら有名どころが複数あるんじゃない?unix持ってないので知らないが、ときどき見かけるような
192 :
名無しサンプリング@48kHz :04/08/30 21:10 ID:QmJMt92w
すっごい高レベルなスレでつね。。。
Cherryより高機能なソフトを目指すなら 良いかもしれない。
向こうは使い手が贅沢な絵空事を言いまくり、作るほうもいろいろ言うが実現しない こっちは低機能でも実際に動くものを作って積み重ねていく そうやって住み分ければいいんじゃね?
>>192 統合しない方がいい。技術的にもアイデア的に参考にならん。
というか
>>193 の本音に激しく同意。
それがどうかしたのか?あれだけ読めば程度もわかる。参考になるスレじゃないだろ。
>>198 いや、>作るほうもいろいろ言うが実現しない
ってスレ出来たばっかりだからあたりまえじゃないかという意味
別に参考にはせんでいい
ほしゅ
ほしゅ
ほしゅ
203 :
名無しサンプリング@48kHz :04/10/29 01:18:07 ID:rBU96NC7
visionを98以降のwindows対応に!! 1万円なら買う 2万円でも買うかも
うんこSXのためにステップ入力onlyの超小さいソフトでも作ろうかな タイ入力できるやつ(w
MSPのシーケンサーにドラムマップ付きのものがあればカンペキっす VSTとかいらないっす
206 :
名無しサンプリング@48kHz :04/11/23 02:46:54 ID:o76omfaF
SuperColliderでさっくり作りたい。 SC 2は、一時はまって16ステップの1ループ程度のシーケンサーは作ったけど もうすっかり忘れたし、今からもう一度やるんならSC 3 OS Xだけど こっちは、もう全然解らんし。
age
ほしゅ
209 :
名無しサンプリング@48kHz :04/12/08 11:12:28 ID:kI52hzKC
ドラムモジュール付のシーケンサで、 パラメータ操作に特化したやつが欲しいなぁ。 ノイズ系のドラムループが簡単に作れそうな
ほしゅ
ほしゅ
212 :
名無しサンプリング@48kHz :05/01/17 20:09:07 ID:jo2N2GbB
グルーブのあるシーケンサー作ってます。
>>212 Winだったら、マルチメディアタイマー使ったら、ほんとに演奏に「溝」が出来るぞ。
演奏中にブラウザをスクロールさせたりすると、悶えるほどのグルーブがGetできる。
ぬるぽ
アナログシーケンサーって自作できるかな。
アナログモデリングシーケンサーか。どんなのか想像が難しいな。
8chパラレルで1万ステップ(縦スクロール)とかなら、実用になるんじゃない?
ほしゅ
リアルアナログ 希望
ターゲッティング
222 :
名無しサンプリング@48kHz :05/02/28 16:28:51 ID:w+YY+6Oh
223 :
名無しサンプリング@48kHz :05/02/28 18:33:16 ID:6pmC0c7t
6音ポリなのかな。6ハム。
なるほど。こいつはアナログっぽい。
>>222 こりゃイイ!! 禿ワロ
かなり維持メンテ大変だな。
ほしゅ
リアルタイムって難しいな。orz
ほしゅ
230 :
名無しサンプリング@48kHz :2005/04/03(日) 18:49:03 ID:HUJl/0xN
保守
231 :
名無しサンプリング@48kHz :2005/04/03(日) 19:09:25 ID:FlU8eWZK
俺ね,TB303しか無いと思ってる、シーケンサは。303の事ならなんでもしってるから。
ほしゅ
233 :
まさお :2005/04/29(金) 16:21:12 ID:HBu35/YJ
俺ね,TB303しか無いと思ってる、シーケンサは。303の事ならなんでもしってるから。
234 :
名無しサンプリング@48kHz :2005/04/29(金) 16:22:29 ID:0x1ZlQEh
TB303操作性がヤバイよ。音が良いだけかと
235 :
%82?%b3%82%a8 :2005/04/29(金) 17:19:49 ID:HBu35/YJ
231 :名無しサンプリング@48kHz:2005/04/03(日) 19:09:25 ID:FlU8eWZK 俺ね,TB303しか無いと思ってる、シーケンサは。303の事ならなんでもしってるから。 232 :名無しサンプリング@48kHz:2005/04/16(土) 09:16:42 ID:ZYhDsnj0 ほしゅ 233 :まさお :2005/04/29(金) 16:21:12 ID:HBu35/YJ 俺ね,TB303しか無いと思ってる、シーケンサは。303の事ならなんでもしってるから。
ほしゅ
ほしゅ
SMFプレーヤだとルート→トラック軸→時間軸でもなんとかなるけど… シーケンサはルート→時間軸→トラック軸が定番の構造なのかな? イベントリストの構成だけでも奥が深いね(;´Д`)
ニフティのMIDIツールフォーラムにあった資料って 今でも入手可能ですか?
まだあったんだこのスレ。 自分も以前チャレンジして挫折したんだけど、 それなりにノウハウを掴んだので晒しておく。 まず、効率よく演奏データを作りつつ、 SMFにも対応したいという考えから、 4バイト(演奏データとCCなど)+時間という構造。 要はMIDIメッセージとデルタタイムを一まとめにしておく。 つまり、演奏データのみならSMFからベタに変換できる。 それを構造体でもリストでもオブジェクトでもSTLのVectorでもいいけど、 演奏+時間のまとまりを1列に繋がるようにする。 また、そのデータ類は演奏のみならず、演奏データにはMIDI規格で 使われていないようなデータに「データ開始、終端」といったようなものを 用意しておくこと。 ただ、このままだと複数トラックの扱いが出来ないのだが、保留。 で、演奏時にはそのリストなり演奏データの列を受け取り、 データを処理したら時間分をウェイト、その後次のデータに移り…としていく。 で、そこまでは良かったんだけど、 演奏させるさいに良いタイマの例を見つけられず挫折。
続いて表示、UIに関して。 通常のアプリならユーザに見える情報と 内部での扱いの違いはあって当たり前。 むしろ、同じことなどまず無い。 (この辺、VBとかDelphiのサンプルプログラムのメモ帳もどきが誤解を与える) イベントリストに表示させるには、 ノートデータのみデータ2つ分必要なので、 表示コンポーネント上でのオブジェクトでは該当データへのポインタ つまりMIDIメッセージ+デルタタイムへの2つ参照できるようにしておく。 で、ノートデータ以外なら片方の余ったポインタ変数にnullを入れておく。 削除時は前イベントの時間に消すデータに含まれる時間を足せばいいし、 挿入時は逆を再現すればいい。 この辺、編集に関するものも、内部でコマンド化しておいて実現、でなく それらの編集用の操作をするオブジェクトをリスト構造でどこかに収めておけばいい。 これを応用すれば、後からマクロの実装も夢じゃないw
で、気づいたのは、どれもこれもプログラミングの世界では セオリー化されている手法ばかり。 リスト構造、ツリー、再帰的処理、イテレータ あたりを研究しておけばかなり役立つはず。 あと、処理の高速化ならデータベースソフトの ソースコードでも眺めて見るのもいいかも。 スレッド分割のみに頼らず処理の高速化と CPUへの負担を大幅に削減できるノウハウが…
すごいなぁ。それでも挫折しちゃうんだ。。。大変なんだな。
このスレもう終わっちゃったんですかね?期待してたんですけど…
どうもそうらしいよ
いつかは作りたいけどねぇ
作る暇があったらVISIONをXPに移植してくれ。
RCDをWinに移植できたらいいな
最初のハードルはSMFプレーヤの実装かなぁ。 PCでの実装は時間精度の確保がしんどい。
それさえ作ってあとは外部とのインターフェイスさえ整えれば、 あとは人海戦術っぽくなんとかなりそうな気もするが、実際のとこは大変だろうな
編集できないままで良ければSMFをメモリイメージとして演奏する実装は可能。 format 1をformat 0相当にマージする処理はリアルタイムで行えばいい。 ファイルをロードする時点でformat 0に変換するより簡単に実装できると思う。 演奏できるようになったら、演奏性を崩さないように編集できるデータ 構造を考える。演奏エンジンを修正して、さらにSMFを読み込んで データ構造を生成するローダを組み経てる。そうすればSMFプレーヤと しての機能が復元する。実データで演奏できれば演奏エンジンのバグは だいたい除けるから、編集エンジンの実装に取り掛かれると思う。 仮にここで頓挫してもSMFプレーヤとしての成果は手もとに残る。 編集できるようになったらファイルとして保存できるようにして、 あとは好きなように育てればいいんじゃないかなぁ。と未完成なのに 偉そうなことを書く漏れがいるw
note onイベントとその対になるnote offイベントの管理の仕方で悩む。 note onイベントとdurationを組として編集中は管理して、再生時にduration分はなれた位置に note offイベントを作成するのがいいかなあ?
ベロシティ0入れるほうがポピュラーだったような気もする。 トラックごとに選択出来るようにするのも良いかもな。
>>254 あーじゃなくて、note onがあればnote offが必要になるけど、SMFみたいに時間軸上にただ
ならべてあると、何かにつけ相方になるnote offを一々検索する必要があるのは無駄が多いよな、って話。
このnote onに対応するnote offはここにありますってのが分かってた方がいいはず。
でもコピーとか切り取りのときにデータを分断する可能性があることを考えると、
SMFライクに単純に出現順に並べて、相方であるnote onがないnote offイベントを探すの方が楽なんだよね。
あーなるほど。意味が解った。ゴメソゴメソ。
仕様上は、noteon と noteoff って一対一対応じゃないけど、いいのかな…
noteonとnoteoffを融合してゲートタイム経過後に必ずノートオフするもの として1つのイベントで扱うのが伝統的な方法だね。イベントにステップ タイムを付加するとレコポでお馴染みのST/GT表現になる。 ノートイベントが来てノートオンしたら、そのイベントをノートオフ待ち 行列に突っ込んでおいて、ゲートタイムを監視しつつ演奏を進めて、 ゲートタイムの尽きたノートをキューから取り出してノートオフを送れば 良いかな。
再生中よりも編集中が問題かなぁ
mewlistさんみたいな大物がこんな場末のスレ来ねーだろ… とかいってみる
262 :
名無しサンプリング@48kHz :2005/09/23(金) 21:55:13 ID:cn7SpYFo
ほしゅ
演奏しながら編集できる設計とする場合、演奏側をロックして待たせる わけにはいかないから、演奏性優先でデータ構造を考えないとダメか。 いやいや、マルチコアCPUを考えるとロックは避けられないか。 なかなか奥が深いね。
ほしゅ
ほしゅ
DirectMusicでバッファ再生させてるサンプルってみたことないけど,無理なのかな?
test
てst
270 :
名無しサンプリング@48kHz :2005/12/17(土) 22:52:03 ID:T2qV+ZkJ
機能をCOMコンポーネントとかdll、インターフェイスデザインとかに分けて 得意な部分でできたものを持ち寄るやり方で2chシーケンサ作ってみない? と酔った勢いで言ってみる
2chじゃ足りないだろ
272 :
270 :2005/12/19(月) 13:00:55 ID:4xP6XhwM
>>271 そっちの2chかw
ツールキットやSDK的にイベント管理とかMIDII/Oとかの基礎部分だけ提供して
GUIはご自由にってのもありかなっと思った。
でもフリーウェアの部品を組み合わせてシーケンサが簡単にできるようになると
既存ソフトハウスが商売あがったりになってよくないかな。
思いあがんな馬鹿
なるほど海外にはあるんだな。じゃあ日本でも誰かがそのうちやるかもな。 俺も場合によってはやってみたいが。
ハードウェアタイマとOSのプロセススケジューラを奪って動作するような 実時間の精度を極限まで高めたシーケンサがあったら欲しいね。 OSに対する深い理解が必要なので漏れには手の届かない世界だ。orz
ドライバ1個作って、それをシーケンサが使って、とかじゃだめなん?そのあたりよくしらない
PC-9801でINT5を引っかけて2203を叩けば自由にタイマが使えたなんて 時代じゃないからね。 PCで使えるタイマはi8254の1つしかないべ? それはOSというかカーネルが プロセスのタイムスライスを切り刻むために既に使ってるべ? だもんでPCで タイマ割り込みは一筋縄ではいかないと思うのよ。PCIバスに専用の タイマの乗ったカード挿せるなら「ドライバ書いて〜」でいけるかも 知れないのだけども。 Unixだったらhzを増やせばとりあえずタイムスライスが薄くなるから、 その分だけselectなりnanosleepできる精度が増すんだな。OS全体が 重たくなるけどね。
タイマー割り込みをフックしてしまえw MIDI処理が終わった後Winの処理に飛ばせばおk 実際 INtime、RTX なんかは、 そうやって動作してるっぽいぞ
>>276 のような超絶シーケンサがもしできたら、
いろんな音楽エディタにそれが組み込めるといいなとか思ってみる
でも、音楽エディタごとにシーケンサ(プレイヤ)にのぞむ機能が異なるから、そうもいかんか
>>274 TSEってPlatforms:Win32 under development とある。
主体はLinuxらしい。
Windowsが絡んでくるとタイマは難しいんかねぇ。
WindowsでもUnixでもタイマが難しいのはいっしょ。マルチメディアタイマ とか言われるAPIが使えるだけ、Windowsの方がプログラミング上は有利で ないかと思う。 Unix系にはAPIとしてselectやnanosleepがあるんで、APIレベルでマイクロ秒 単位の時間管理ができる。だけど実際はカーネルのタイムスライス単位しか 動作上の粒度を期待できないので、期待できそうな分解能は通常で10ms、 チューンして1msとかそんな世界。それ以上はデバイスドライバの助けが要る
DOSみたいに 電源ONで数秒以内で起動するシンプルOSで動く シーケンスソフトが欲しい。 それでいて、VSTiやVSTプラグインもすべて動くものが。 専用機的環境がほしいんだよね。 ウィンドウシステム上でソフト使うのはちょっと飽きたし。 余計なものにパワー使いすぎ
>>283 nanoloopとかLSDJみたいに携帯ゲーム機なんかでできるといいよな
PDAみたいなハードシーケンサー出たらいいなぁ。オーディオ取り扱えたらさらにいい。
P/ECEとかPSPとかにはありそうだな いや需要あっても作ってる人少なすぎか
MIDIはZ80世代でもなんとかなりそうな気もするけど(いや苦しいか)、 オーディオは32bit級のCPU持ってこないと辛いでしょう。 メモリ足りなそうだけど、最近のザウはHDD載ってるから適任かも試練。 CPUも400MHz程度ならまあオーディオも辛うじて扱える…か? Rosegardenあたりが動いてそうな気がしなくもないけどザウ持ってない からよくわからん…。
ほしゅ
ほす
hogiu
292 :
名無しサンプリング@48kHz :2006/02/12(日) 12:20:02 ID:jqb2f6nM
今はじめてきたのに おわってんのかよぉ 1もっとがんばれよボケ
293 :
味 :2006/03/03(金) 06:52:56 ID:NehkVySy
あーつまんねーなにこれ氏ね
マルチ偽装乙
ほしゅ
音楽関係のソフトならなんでもいい なら使うんだがなこのスレ
hoshu
さびれたな
書いてはいるが、晒せる段階にはないな…。 シンセ内蔵シーケンサのパリッとしたリズムを聴くと、 時間制御は専用ハードに任せたい気分だねぇ。
どんだけリズム感良いんだよ
303 :
名無しサンプリング@48kHz :2006/04/13(木) 20:55:15 ID:pq4QZuRi
お願いだから、だれかmc-50のPCバージョンを作ってくれ! あの、ドラムの打ち込みがとってもやりやすい。
どんなのか教えてよ
305 :
名無しサンプリング@48kHz :2006/04/13(木) 22:37:53 ID:NmmMbVxq
>>303 その気持ちわかる。mc-50は触ったこと無いんだけど、俺はmc-500派なんだけど、
確かにドラムパターンを創って、それを小節に組み込んでいくっていうのを、
PC上で出来たらいいよね。
個人的には、そういうドラムツールがvstiとしてあるといいなって感じかな。
306 :
名無しサンプリング@48kHz :2006/04/13(木) 22:39:36 ID:Os7hCnbA
今のPCシーケンサはあまりにもひどいので 頑張っていいのが出来たら買うよ。 売り物じゃなくてもお金を払わせて >>MC50 いいかも
当方Cocoa開発者だが、このスレ見て急にシーケンサが作りたくなった。 とりあえず、MIDIに特化したガレバンっぽいソフトが目標 (リアルインストゥルメントとかループシーケンサ機能削除、 ステップ入力機能を追加等)。
309 :
305 :2006/04/14(金) 06:50:19 ID:NtMWxUXv
>>308 どんな資料があればいいんでしょうか?
mc-500のマニュアルならありますが・・・。
310 :
名無しサンプリング@48kHz :2006/04/14(金) 06:58:32 ID:nzgORKGj
Tie機能つけてくれると更に神。
>>309 いったい何が欲しいのか漠然としてわかりません
mc-50とやらをシミュレートすればいいのかな?
なぁなぁ、今シーケンサーの内部データ構造考えてるんだけど 時間管理はトラックごとに相対時間でやるのがベストなんかなあ?
313 :
303 :2006/04/14(金) 12:36:51 ID:kZ7ke3BU
>>311 そうですね。シュミレートしたものがあると大変重宝します。
少々遠回りかも知れんが、思いつく複数の方法で仮組みしてみて 良いと思ったデータ構造を選べばいいと思う。 SMFをそのままメモリイメージに抱える方法でも, 演奏だけなら 実装できる。
サンクス そうだな、最初から良い方法探すより回数重ねて欠点補っていった方が早いかも ちなみに内部データは出来るだけSMFに近い構造にしておくと演奏が楽になりそうだと思ってる それで、全トラックのイベントをリストで一列に並べる方法でやってたんだけど、 1トラックのステップ値変更が全トラックに影響することに気づいて断念した なかなかスマートな方法は見つからないもんだね
二律背反だからな。どこで楽したいかだよ
全部のソング、トラック、イベントでデータ構造が共通である必要も ないし。 PostgreSQLのようなRDBMSでデータを保持してもいいだろうしw
Tie機能って 最小基準音符(タイムベース480の16beatなら120とか) × TieキーでGTを入力。 みたいな感じ?
319 :
名無しサンプリング@48kHz :2006/04/16(日) 13:53:20 ID:QkYfKQ/o
age
320 :
名無しサンプリング@48kHz :2006/04/16(日) 18:26:25 ID:JghQhTOj
例えば今8分音符で和音とか打ち込んで、 Tieボタンを押すと 今入力した全部のゲートタイムが8分音符づつ伸びていくんですよ。 コレは便利!
なるほど
なんていってる私もソフトだった頃は 和音入力後マウス3回引っ張ってゲートタイム伸ばしてたよ (コレがまたカーソルがぴったり止まらないんだ) こんな作り方だから1曲仕上げるのに1ヶ月ぐらいかかって、 やっぱこれってどこかオカシイなって思い始めて ネットやらツテやらザクザク探っていったらQY700を発見。 いいもん作る為には中古でもQY700を一回イジっておいた方がいいと思います。 QY700の値段よりある程度作ったソフトを作り直す手間方が コスト的にもすごいし、 QY700の負の部分を完全に取り去ったソフトが出来れば市場独占できますよ。
僕も正座して待つので 有志の方々がんばってください。 もうこのスレだけが頼りです。
324 :
名無しサンプリング@48kHz :2006/04/18(火) 00:12:24 ID:HqTk0OAJ
QY700は使ったこと無いからわからないけど、 mc-50や特にkawaiのQ-80なんかは多くの人に支持されていたから、 そのあたりの流れをくんだものがソフトで出たら、かなり反響があるのでは?
再生エンジンやらデータ構造を考えるのは楽しいけど、 UIを作る段階になるとだいたいここで挫折してしまう…
325と326で組めばよいのでは?
328 :
名無しサンプリング@48kHz :2006/04/19(水) 00:51:55 ID:3U2WskQV
>>327 その案いいね。
俺としては、mcシリーズのドラムトラック作成だけで充分です。
符割の基準を選択して、後はその升目的な部分に、ベロシティの数値を
打っていくっていうあの使い勝手が良い。
テンキー1〜9までのベロシティは、
プリファレンスで設定っていう感じでしょうか。
レコンポーザーが似た感じでドラムトラックを作成できるように見えて
使ったが、全然だめだった。
329 :
名無しサンプリング@48kHz :2006/04/19(水) 01:13:04 ID:LfPsK39s
MSIだっけか? あれはTIE機能使いやすくてQY-700に一番近いかなと思う。 あれがホストじゃなくてプラグインだったら良いのになぁ。
330 :
326 :2006/04/19(水) 20:05:24 ID:7MhBcnqA
>>328 あ、いや、絶対的なデザインくおりちぃが高いわけではないっすよ。
QY-700のマニュアル落としてステップレコーディングのとこ読んだけど、改善の余地ありまくりじゃん。 軽く1.5倍くらい打ち込み速度上げられるよ。 MSPもお話にならんとしか感じられんし、レコポンはさすがに時代遅れだし、 これは俺に超速シーケンサを作れという使命が与えられたと思ってよいのか。
333 :
名無しサンプリング@48kHz :2006/04/28(金) 23:51:37 ID:r7+UvqbB
進んでいるんでしょうか?
このスレこーゆーのの繰り返しだよ。 大体MC厨が出てきてぶち壊す。
ほしゅっとく
336 :
名無しサンプリング@48kHz :2006/05/25(木) 15:35:14 ID:lYpUsMNy
携帯アプリでシーケンサー作ってくれよ!MIDIで吐き出せる奴 携帯の作曲機能でいいじゃんなんていうなよ!
>>336 甘えんな。ここは「作りたい」人のスレだ
うわSafari使ってるのわすれてた チルダは半角にしてね
方針 ・ハードのシミュレートはやらない それやるぐらいならさっさとハード使った方が早い。 PCの利点はキーボード(not鍵盤)と画面の広さだと思う。 ・楽譜、ピアノロールはやらない 面倒だし商用ソフトに腐るほどあるでしょう。 ・統合しない 単機能ソフトを連発しよう ・極力バイナリは使わない 書き出しぐらいで。awkなんかのテキストフィルタをバリバリ使いたい。
そんなことよりC++のクラスで素敵なデータ構造を考えようぜ
C++は知らなゃい
343 :
名無しサンプリング@48kHz :2006/06/09(金) 00:33:34 ID:7mlAdp2J
javax.sound.midi をヒントに C++ で実装するってのはどーだ
>>340 単機能のコマンド一杯作ってパイプでつないでいく感じかw
345 :
名無しサンプリング@48kHz :2006/06/09(金) 01:14:27 ID:3C14ReUh
どなたかアナログで作ってる方、居りませんでしょうか。
>>344 その通り!
コマンドラインでbars&pipesしたいな、と
>>346 漏れも、そんな感じの考えて
「折角だから単機能に小さなGUIを作って線を引いて…」
と、妄想してたらMax/MSPに行き着いて急激に萎えた('A`)
ST/GT方式でイベントを保持するとき、絶対時間指定でイベントを取り出したい場合はどうすればいいのかなあ・・・ Cherryとかどうやってるんだろ
先頭から走査してると思う。所詮MIDIだからコスト的に問題ないと思われ。
そういうもんなのか! プログラム初心者なんでポインタ辿ってくのは凄く時間がかかると思い込んでた。感謝する。
単機能のコマンド一杯作るのも それらをバッチ組むのも どっちも嫌いじゃないんで、そういう方向の安価なソフツで遊びたいもんだ 友人にMax/MSPすすめられたけど大掛かりくさくて食指動かん
もの凄くお手軽に人間が演奏しているようなニュアンスを付ける機能を思いついたYO!! SSWとかXGworksなどとはまるで次元が違うものをね。 ちょっとC++で組んでみる。これうまくいけばすごいモノが出来そう。
いちいち書かなくていいから
>>352 おじさんに言ってごらん
みんなには内緒にしておくから
このスレこーゆーのの繰り返しだよ。 大体MC厨が出てきてぶち壊す。
そうか
358 :
名無しサンプリング@48kHz :2006/06/21(水) 02:55:30 ID:ND66yJOT
ふつう音楽ソフトってどんな言語で作ってるのかな? C? C++?
359 :
名無しサンプリング@48kHz :2006/06/21(水) 09:50:10 ID:A4CYK1Kw
わしの時代は一部asm大部分Cじゃったのう…ゴホゴホ…
富士通のFACOMってやつ?
362 :
名無しサンプリング@48kHz :2006/07/05(水) 19:09:06 ID:Xnp5hekw
ミサイル記念age
363 :
ギモソ :2006/07/08(土) 19:38:59 ID:BfmTPiCS
シーケンサの再生エンジンはどうするん?大麻ー使えば安定した再生望めないし。 安定した再生にすると今度は操作不能になるし・・・案キボンヌ。
364 :
名無しサンプリング@48kHz :2006/07/08(土) 20:11:53 ID:BfmTPiCS
おまいら、REALbasicを進め松!BASICだが、Mac,Winはもちろん、Linux向けの C検査がつくれそうw。ちなみに漏れはToolbox(いまだにSoundManager・・・orz)を 浸かって制作中。。。ただMIDIのI/Oでは、Δタイムでつまづいているので研究中。 楽譜表示(ちょーテキトー)やグラフィック表示、独自のファイルタイプの読み書き まではうまくいった!
一瞬、C力検査を作ってどうするのかと思ってしまった。だがそれもアリだ。 遊びで作った頃が懐かしいな
>>363 マルチスレッドかなあ?Windowsなら、スレッドかマルチメディアタイマー?
367 :
名無しサンプリング@48kHz :2006/07/09(日) 21:57:19 ID:988adEif
>>366 Macは知ってる?全然API検討がつかないのだが・・・QuickTimeとかかねぇ。
368 :
名無しサンプリング@48kHz :2006/07/09(日) 22:02:09 ID:988adEif
370 :
でつまつ調 :2006/07/10(月) 16:52:56 ID:Nm4QjreC
371 :
名無しサンプリング@48kHz :2006/07/10(月) 16:55:15 ID:Nm4QjreC
油age
windows用のvisonを触ってvisionを判ったつもりになるのはイクナイ! カメオにも見放され,会社崩壊に導いた最悪のアプリ。 Mac版とは全く違うよ。
なんで富士通はつぶれないの?
夏のうちにしっかり働いたからさ
電気製品は冬の方がちゃんと働きそうだけどなぅぇ
376 :
363 364 :2006/07/11(火) 01:11:36 ID:4NbFaFr1
うーむ、シークエン酸、演奏だけならなんとかなりそうだが再生中のバーとか 現在位置を標示するディスプレイとかつけるとなると、むずかスウィ。だんだん もたついてきて最後はメチャズレてとてもシークエン酸とはおもえないこの出来栄え。 ほんとVISIONとかSSWとかはどうして軽いんだろう。やっぱCとかじゃないとマルチトラック は無理? スレ若干永くてスマソ。
オマイ、スレの長さに責任持とうとしてるのか?
奇跡の保守
重たさのせいでズレるのか、それ以外のせいでズレるのか、どっちかはっきりさせるんだ 重たさのせいでズレるなら、重たいときでもズレないようにするんだ
380 :
376 :2006/07/11(火) 22:13:20 ID:p+Luh49y
>>377 やらかθ。レスとスレ。
>>379 なんていうか、描画が重いっぽい。透くロールとか。それで全体のパフォ
萬酢が落ちてあららって感じ。
そうそう、激しい運動するとズレちゃうんだよ
ヘアフォーライフ、相当激しくてもずれないよ
383 :
名無しサンプリング@48kHz :2006/07/13(木) 00:12:42 ID:igrlGK3w
age玉転がし
>>382 動悸クロックでも使ってcぷパワーが余ったときなどにあわせてんジャマイカ?
S-age
Macネタ。やっぱりage. WaitNextEventをループ中に使えば他のアプリは自由っぽいよ(cぷを 他のアプリにもわけあたえられる-操作不能に奈良ナイ)。 ループでMIDIを鳴らせばもたつかなかった(描画シソクロは不明だが). これを有効に使えば・・・
連ガキスマソ。ループ= Do ... Loop の琴。
カーネルおじさんにMIDIタイマのアビリティを与えておく
388 :
386 :2006/07/14(金) 20:24:32 ID:hPMrlRsz
MIDIシーケソサがむづかしかったらまずはウェーブのループ シーケソサを作ってあとからMIDIを扱えるようにするのも 手と考えた(といふのも、MIDIC検査計画が暗礁にのりage たから・・・いろいろめんどくさくなってキターーーー)
そう、色々考えてるとめんどくさくなるんだよ・・・・ 何日も掛かる制作は 小規模でもいいから とりあえず完成させる事が最優先。
最近シーケンサー頭栗に没頭しすぎて曲作れねーじゃねーかこのやりー
スレッド使え。スレッド。
return ( "糞スレ立てんな!!" );
while(1) { Zidane->Headbutt( gPlayers.GetPlayer("Materazzi") ); Sleep(1000); }
Sub Function DoPlay() Do If UserCancelled Then //コマンド+ピリオドで中断されたか判断 Exit ElseIf If ○○ Then //ここにはマウヌが停止ボタン上にあるか判断→ //→(長いので省略) If Button() Then //Toolboxを使ってマウヌクリックを判定 Exit End If End If End If //ここから演奏などを実行する。 Loop End Function /*これが漏れのC検査エソジソ(REALbasic)・・・ これなら、ある程度藻足らない。*/
すごく・・・重そうです・・・
>>395 何がダメって、演奏の為のループが一回回るごとに
マウスの動きとかをチェックしてるだろ。
そんなに重い処理じゃないから入れておきたいのも分かるが、
1秒間に100回も200回もそんなチェックする必要が無いだろ?
お前のマウス操作はそんなに早いのか?
だから、演奏を実行する処理の部分は別スレッドを立ち上げたほうがいい。
それによってGUIの処理が詰まったせいで演奏が遅れるとかそういう事が減らせる。
演奏部分は、他の処理と独立させる。これ重要よ。
>>397 無限ループだからスレッドに回しても操作が効かなくなるっていう罠。
399 :
398 :2006/07/16(日) 01:27:00 ID:RPKo9Kia
あ、そうか、無限ループを複数つくる・・・いやどっちみち、処理内容は同じだから 変わらないか・・・。しかたない、この際は演奏部分をあらかじめバッファリングして しまおうか。 煉瓦キスマソ
400 :
ハーピィ :2006/07/16(日) 01:55:42 ID:yjZmhN3a
E・∇・ヨノシ <400ゲット♫
A A ( a_a) <唐age
CPUの速さによって曲のスピードが変わる癖のある場合、 マシンのTickを利用汁!
オーディオのコールバック関数でMIDIタイマを同期汁!! ってそれじゃDAWになってしまうぉ
やっぱり、Tickはイイ!これ使えば(ある程度のスピード出るマシンなら)最新機種 とおんなじスピードで演奏できる。描画遅くても、Tickを計算し、差分を求めること によってしっかりシンクロできた。エンジンもさらに改良すれば良質シーケンサが・・・ (まだ、計画中)。
再生エンジンよりもデータ構造が大変だよ
>>405 それは・・・(゚∀゚;)[絶句]
この際、ソートするなり、マシンがわかりやすい(というかパースしやすい)
書式でやるしかナイ。
MIDIイベント基底クラスを作ってメッセージの種類ごとに派生させられればカッコいいよね 俺には難しいけど
いやコピーカットペースト他編集まで考えた上でのデータ構造 ここらへんが泥臭くて大変。表示にも反映させないといけない。
データ構造についてはむしろ組み込み系のRDB使って実現するっていうのが楽かもしんない 論理的にはフラットに全イベント持っちゃって時間軸上の範囲指定で持ってくるとか 演奏しながら編集っていうのを捨てればsqliteみたいんでもいけるか
全トラックのイベントを一次元的に並べる方法はStep値の扱いが面倒なんだよなあ 或いは思い切ってStepの概念をなくしてみるか
.pmdというファイルはsmfと互換性あるみたい。Revolutionという
HyperCardに似た開発環境がMacOS,Windows,Linuxで動かせれて、
数十種類のプラットフォームにビルド可能・・・(インタープリター乙、
遅すぎ)。それで、そのRevolutionでsmfとpmdを変換でき、演奏が
できるサンプルがアリマーシタ。
ttp://homepage.mac.com/udi/stack/tool.html それにしても、レスポンス悪い・・・重いsmfはまったくトラック同士
があわせようという意志が欠けてる。ってしかたないか。
412 :
411 :2006/07/17(月) 08:47:49 ID:p763svtk
おかしな日本語を訂正: 動かせれて:動かすことができ インタープリター乙(の後):演奏・変換遅すぎ
C検査は、論より実行じゃ絶対にできないことが分かった・・
一歩前進やね。
喝age
417 :
名無しサンプリング@48kHz :2006/07/22(土) 02:39:10 ID:IVe3afDS
データ構造で失敗したら最悪、泥沼。で、ゼロからやり直し。
まーデータ構造を見直しつつ新シーケンサを作るなんてことも趣味の範囲ならいいんじゃね 最良のデータ構造なんてものが最初にあるわけでもないだろうし
一週間ブリのレスか。 とりあえず、NoteOnとNoteOffを一つの二次元配列にしてみた。けど構造は自分の サイセーエンジンに最適なものがいいんではないかと思われ。
( _,, -''" ', __.__ ____ わ ( l ',____,、 (:::} l l l ,} / \ は ( .', ト───‐' l::l ̄ ̄l l │ │ ( .', | l::|二二l | わ こ .| ( /ィ h _,;'┴─-┴ニヽ.、 | は や │ ⌒⌒⌒ヽ(⌒ヽ/ ', l.l /レ'´ `ヽ、 | │ つ │  ̄ ', fllJ. //● / , ,、 ヽ ヽヽ ト、 | ! め │ ヾ ル'ノ |ll /7O j_ノ_/ハHl、_j l lN l | 〉vw'レハノ l.lll 〈7イ ´|/l/ `ヘノ} jrく)jヽ ____/ l_,,, =====、_ !'lll r‐ヶハl c⌒r─ォ⌒c,ハヽ〉 )ノ _,,ノ※※※※※`ー,,, Y//,ハ>、j>l、_ノ.イレ1l レ′ -‐'"´ ヽ※※※※※_,, -''"`''ー-、\l l//` ` ̄´ j l レ'  ̄ ̄ ̄ ̄ ̄ `''ー-、′r。~。ヽ レ'´
421 :
名無しサンプリング@48kHz :2006/08/10(木) 00:46:36 ID:En5FUw+0
C#でmidi系API使うのめんどいな
cherry1.5.2のReleaseNote.txtより ------------------------------------------------------------------------------- ○Road Map ------------------------------------------------------------------------------- ・Visual C++ + OwlNext版バージョンでのリリース ↓ (OWL依存部分の撤去) ↓ ・Visual C++版でのリリース ↓ (ソースコードの整理など) ↓ ・Visual C++ 2005 Express Editionでのリリース(OpenSource) ↓ ↓ 随時、不具合修正や簡単な機能強化はするつもりです。 このRoadmapはあくまで予定であり、プロジェクトの進行具合により随時Road mapの内容は変更になると思います。
>>422 [DllImport("winmm.dll")]
public static extern int midiOutOpen(ref int lphMidiOut, int uDeviceID, int dwCallback, int dwInstance, int dwFlags);
[DllImport("winmm.dll")]
public static extern int midiOutShortMsg(int hMidiOut, int dwMsg);
[DllImport("winmm.dll")]
public static extern int midiOutClose(int hMidiOut);
[DllImport("winmm.dll")]
public static extern int midiOutReset(int hMidiOut);
これじゃ駄目なの?チンチン
MIDIかぁ、全くMIDIについて知らんけど、面白そうだな。
要はmidiOutShortMsgを時間通りにタイミング良く連続して出力しまくれば
和音だろうがドラムだろうが出来るってことで無理やり考えると、
C#のタイマの精度が問題か。
テンポと時間の関係も勉強しなきゃなぁ。ららら無人くんららら無人くんらららら
426 :
425 :2006/08/22(火) 21:20:56 ID:Um73nwzC
static void Main() { TimerCallback timerDelegate = new TimerCallback(MyClock); timer = new System.Threading.Timer(timerDelegate, null , 0, (int)(1000 * 60 / tempo) / 2); Application.Run(new Form1()); } public static void MyClock(object o) { if(c == 2) { midiOutShortMsg(hMIDI, MidiMsg(0x9,0x9,38,70)); } if(c == 4) { level = 120; c=0; midiOutShortMsg(hMIDI, MidiMsg(0x9,0x9,49,level)); } else { level = 50; } c++; midiOutShortMsg(hMIDI, MidiMsg(0x9,0x9,45,level)); }
427 :
425 :2006/08/22(火) 21:28:02 ID:Um73nwzC
ふむふむtempo=120としておけば、 大体8分音符のドラムがなるねぇ。合っているか知らんけどw 要はまずはMIDIプレイヤーを作れないと話にならないのね。 んで、それから自分でtickの時間管理とかごにょごにょするわけですね。 まぁやりとげる人は相当の物好きで、途中で逃げるのも仕方がないか。 MIDIのMも知らない俺にはほぼムリポ。ついでにシーケンサーソフト使ったことないから、ソフトの布石を知らんからなぁ。 フリーソフトで、声を録音してフーリエ変換して、音階に直してリズムも付ける機能(鼻歌機能?)を実現したら、有名になれそうだな。 まぁ鼻歌機能はネタだけどねw でもキラー機能があれば、有名ソフトに勝てるかもしれんし、風呂入りながら色々と考えてみるか。
428 :
425 :2006/08/22(火) 23:33:10 ID:zwCYYVqv
色々とスレ汚しすんますぇーん。今日からここは俺のblogに…美和何するやめ(ry 無勉強だったので、色々と馬鹿なことを書いていますが 全く反省する気はありません。 ってかちゃっかりMIDI再生機構であれば、たくさんプログラムが公開されていると言う事実! マルティメディアタイマとか、色々とキーワードが湧き出てきましたぉ。 結構面白そうだなぁ。MIDIシーケンサーか。ふむふむ。
429 :
425 :2006/08/23(水) 22:17:04 ID:LPEOQYAh
今日も作業日記をつけるとするか。 C#でMIDIの再生は出来るようになった。 あぁ今はフォーマット0限定ね。ただしフォーマット1もすぐに再生は出来るようになりそう。 MIDIのフォーマット解析し始めて2日目でここまでこれば上出来上出来。 C#の便利な機能を利用しようとしたら、アダとなってバグったorz 難しいなぁ。 俺みたいな物好きのために、勝手に補足。マルチメディアタイマーを使うときは 以下のコードを参考にしてくれればオッケー これを貼り付けて、コールバック関数を作ってやって、 あとはその中でタイマー消して作って消して作ってハァ楽しいなぁーってやればええよ。 マルチメディアタイマは精度はまぁまぁあるので、C#の機能を使うよりは全然良い。 聞き比べても分からない程度。 //マルチメディアタイマ用宣言 public delegate void TimerDelegate(int uiID, int uMsg, int dwUser, int dwNo1, int dwNo2); [DllImport("winmm.dll")] public static extern int timeSetEvent(int uDelay, int uResolution, TimerDelegate lpFunction, int dwUser, int uFlags); [DllImport("winmm.dll")] public static extern int timeKillEvent(int uID); public const int TIME_ONESHOT = 0; public const int TIME_PERIODIC = 1; //連続してタイマ割り込み発生
スレでの話題を見てると鬼門になりそうなのは ・再生ルーチン ・データ構造 ・GUI ここら辺か。 全部乗り越えるのは大変だ・・・
431 :
425 :2006/08/23(水) 23:15:54 ID:ANGUKums
432 :
425 :2006/08/24(木) 16:05:51 ID:I7xshiMo
さてさて、今日も独り言。ブログでも作って書くかな。自己マンだしな。 とりあえずフォーマット0及び1のファイル再生は出来るになった。 行数は780程度。まぁプロトタイプだから、後100行は減らせるだろうが。 【C#でシステムイクスクルーシヴメッセージを渡したいときのヒント】 [DllImport("winmm.dll")] public static extern int midiOutLongMsg(int hMidiOut, ref MIDIHDR lpMidiOutHdr, int uSize); [DllImport("winmm.dll")] public static extern int midiOutPrepareHeader(int hMidiOut, ref MIDIHDR lpMidiOutHdr, int uSize); [DllImport("winmm.dll")] public static extern int midiOutUnprepareHeader(int hMidiOut, ref MIDIHDR lpMidiOutHdr, int uSize); [StructLayout(LayoutKind.Sequential)] public struct MIDIHDR { //public byte [] lpData; public IntPtr lpData; public uint dwBufferLength; public uint dwBytesRecorded; public IntPtr dwUser; public uint dwFlags; public IntPtr lpNext; public uint reserved; public uint dwOffset; public IntPtr dwReserved; //public IntPtr [] dwReserved; }
433 :
425 :2006/08/24(木) 16:11:51 ID:I7xshiMo
コメントは、失敗した例をあえてそのまま添付しています。IntPtrにしないと、怒られます。
ネットを探しても、構造体の定義は無かったので、自分でやったん。まぁwaveOut系使ったときと同じだしな。
んで
public static GCHandle SysExHandle;
っていうのを使って
public byte [] datadesu;
datadesu = new byte[送信したいデータ数];
んで、
SysExHandle = GCHandle.Alloc(SysEx, GCHandleType.Pinned);
midihdr.lpData = SysExHandle.AddrOfPinnedObject();
ってな感じ。dwReservedに関しても同様に要素数8のbyte型を用意して同様な手法を使う。
んで、
ret = midiOutPrepareHeader(hMIDI, ref midihdr, Marshal.SizeOf(midihdr));
とかして、retの値を見て、後はメッセージを送って、アンプリペアして終わり。
送った結果はC#の場合はウィンドウメッセージでは受け取れないようなので、無限ループでフラグを見ています。
あまり良い手法ではないので、そこは改善どころでしょう。
ってかこいつ送る意味あるんだろうかと思ったり。まぁ一応送ってやるかって感じだが。
さて、次はMIDIライトクラスでも作ってみるか。
>>430 やるだけやってみることは悪くないと思いまっせ。
深く考えると、どんなソフトも作る気が失せます。
しょぼくても動くと案外面白いものですし、なんにせよやってみることをお勧めしますよ。
・再生ルーチン こいつを考えるのが一番楽しい
・データ構造 フォーマット0の再生なら、構造は無くてもほとんどおっけー。編集まで考えると色々とあるけどね。
・GUI 見栄えとか操作性なんてのは後からついてくるもんでっせ。
VBでもHSPでもActiveBasicでも何でも自分の使いやすいものを使うといいんじゃないっすか。
今は無料でコンパイラが手に入る時代ですし。なんていい時代だ(;_;)
434 :
425 :2006/08/24(木) 16:16:38 ID:I7xshiMo
なんだかでしゃばってすいません。2時間ほど吊って来る。
いや普通にGJだと思う 全然人いないしシーケンサ作りに役立つ情報なら大歓迎だよ
ここはおまえの日記
437 :
425 :2006/08/25(金) 20:30:09 ID:5zHIJOhC
結局丸一日吊ったようだ。
>>435 それはどーもっす。
今後何かあれば、また書きます。
でも難しいのは、これくらいじゃないかなーと思います。
とりあえずMIDIの再生という観点からすればってことですが。
>>436 やったー、俺の日記だぁ!じゃねーww
そろそろ俺は書き込みを控えます。
第一、ここの1みたいに作れずに消える可能性だってあるわけで。
MIDIの仕様を探索していて思ったのが、結構幅広くて、
仕様も案外めちゃめちゃだなぁということです。
フォーマット自体は簡単なんだけど、例えばメタイベントは実機でも利用されているのかどうか、
システムイクスクルーシブメッセージの使用すべき範囲など、
実機などを通じて学ばなければならない事も結構あるなぁという感じがしました。
上の疑問に関する答えは見つけましたが、どうも仕様が無理やりな感じがして、
ファイルを作成する側からしたら、結構大変だなぁという印象を受けました。
テンポなんていうのは演奏に重大な影響力があるのに、メタイベントに入れている疑問とかね。
という、完全な俺ブログな内容ですが、すいません。
とりあえずGMってのに対応すれば、それなりに使えそうだと言う印象。
今はMIDI統合操作用のクラスの作成をしています。
とりあえず数値直打ちのシーケンサモドキさえ作れれば、後は外見だからなぁ。
こうやって過去の俺らが苦労した道を通ってる人を見るのもなかなか味があるな 気楽にガンガレ、あと ここはおまえの日記
439 :
425 :2006/08/28(月) 01:31:55 ID:uMKfzXQw
お久しぶりです。 あら、もう消えたかと思われてもいいけど、 まぁ一応まだやっているということで、カキコ。 とりあえず今日MIDI再生クラスを使って、再生が可能となりました。 再生自体は以前から出来ていたけど、クラスにまとめることで、 分かりやすくしたつもりであります。 ふと再生時間の取得という面を考えたのですが、これが結構厄介な気がしました。 そこら辺はゆっくりと考えていきますけどね。 とりあえずこれでMIDIプレイヤーは、一応作れるでしょう。 まだ手直しすべき場所がいくらかありますが。 次はMIDIファイルを生成する方のクラスを作成していくつもりです。 MIDIイベントデータの保持方法は再生の場合とは違ったものになるので、 データ構造の設計から行うため、多分かなり時間が掛かるでしょう。 よって、そのまま消える可能性が結構あったりするわけです。 一切期待をしないでいることが正解でしょう。 明日から学校が始まるし、時間が取りにくくなるしなぁ。 まっ、そんなところです。
応援してるぜ
C#でmidiOutGetDevCaps使うときの2つ目の引数はどうやって渡したらよいのだろう? 構造体作ってその中でデバイス名を保持する配列を宣言してもうまく名前を取得できず、 結局charで30文字分程度を1文字ずつ宣言するという頭の悪いやりかたしちゃったよ。 C#の知識の問題なんだろうけど
yyy
普通に MIDIOUTCAPS mic; みたいに宣言しといてポインタで渡してやればイケないか? ret = midiInGetDevCaps(i,&mic,sizeof(MIDIINCAPS)); 後は mic.szPname で呼んでやればデバイスネーム取り出せると思う。 C++だとこんなカンジだけど・・・実はC#はよくワカラんのですゴメンナサイ。
シークァーサーを作りたいのかと・・・。
このスレこーゆーのの繰り返しだよ。
大体
>>445 みたいなのが出てきてぶち壊す。
海の検査でシーケンサだと思った!
おまいらもっとシーケンにやれ
おっ 意味分からん
cherryみたいなシーケンサーが作りてえよ でもGDIでチョビチョビ矩形貼り付けて・・・って超大変じゃね スクロールバーの位置とか考えたら頭が爆発した
GUI(といいつつキーボードベースの快適なやつ)作ることに興味あるし、 内部データ構造と内部演奏システム作ることにも興味ある でも両方同時だと問題あるから、プロジェクトとしては別個のほうがいいな
midiomでいいよ それよりSMF分析の方が興味ある 場所場所でのデータ転送量調べてどこでもたるか分析してモタリ除去を楽にしたり
kwsk 例えばSC-88時代のモタリの酷さは転送量よりは 同時発音している発音単位(SC-88だとVoiceという名称だったかな)の数に 強く影響されるんで、分析としては「どの音のリリースがどれくらい残るか」といったほうが重要
そんなのできるのかなぁ 同じTVAのリリース設定してもエレメント毎に違うし・・・
当時手作業でエレメントごとに調査するしかないという結論に達してやめたような記憶がないでもない
でもクロック毎に送られる信号って一つだから どの命令がどれだけ遅れて送信されるかってのは割と簡単に分析できる で、極端に遅れる命令を特定しそれが元になるモタリを解決するぐらいには役立つだろうね でもそういうモタリってGSなら8850ぐらいしか問題にならないし(pro以下だとその前に音源側の処理がもたる方が問題になる)
期待age
459 :
名無しサンプリング@48kHz :2006/12/11(月) 13:55:21 ID:0/orEsxG
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃ ◆自動化入門のための電気の基礎講座 技術セミナー開催のご案内
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■自動化のための技術知識は、製造業に携わる人々にとって必須な技術知識です。
自動化の中核となる技術はシーケンス制御技術です。シーケンス制御回路は
電気機器や器具によって構成された電気回路でもありますからある程度の電
気の技術知識が必要です。本講座では、高校の理科で学ぶ程度の電気の知識
をベースにして、まず制御のための電気の基礎を学び、次にシーケンス制御
の基礎を学び、自動化技術の初歩が理解できるまでを学びます。
●このセミナーは3回にわたって開催する、連続セミナーです。
3回続けて受講いただけますとより効果的に学ぶことができます。
●セミナー日程
講 師:望月傳氏
定 員:各14名
受講料:5,000円/1セミナー
※技術評論社「基本からわかる電気の極意」望月傳著 を必ず持参下さい。
日 時
第1章:12/23(土) 13:00〜16:30
第2章: 1/27(土) 13:00〜16:30
第3章: 2/24(土) 13:00〜16:30
セミナーに関する詳しい内容、お申し込みは下記アドレスを参照下さい。
=================================================================
http://www.marutsu.co.jp/kouza.html#1223 =================================================================
いいねシーケンサ 昔はそういう意味で使ってたよ、今もそういう意味でのみ使えると会話が楽だ
461 :
名無しサンプリング@48kHz :2006/12/22(金) 01:23:05 ID:Eu/SOw3Q
良いスレだなぁ。
462 :
名無しサンプリング@48kHz :2007/01/08(月) 15:02:59 ID:5jzDOfi8
Domino 終了
内部データのMIDIイベントの時間情報って トラックの先頭からの時間と直前のイベントからの時間で保持するのとどっちがいいんだろうね
シーケンサって横に流れるのしか無いじゃない? 縦に流れるのがあれば凄い嬉しいんだけど・・・。 キーマニみたいな感じで。
>>464 スクロールの方向が縦方向と言う事かな?
数値入力方はほとんど縦方向に流れるけど
ピアノロールは横方向しか見た事無いや
ピアノロールで縦に流れるのも見やすくて良さそうだね
レコポやSTed系のシーケンサも縦に流れる
>>468 ああ、そういうのあったな、今もあるのかな?10年位前にやった記憶がある
三味線の達人は難しくて無理だったわ
いいこと考えた モニタの向きを90度変えればいいんだ
みんなやってるぜ
472 :
名無しサンプリング@48kHz :2007/02/10(土) 19:19:06 ID:oJ3eV4Gk
保守期待age
ほしゅ
474 :
名無しサンプリング@48kHz :2007/03/23(金) 17:08:45 ID:8EGjB3x4
保守してみるか
475 :
名無しサンプリング@48kHz :2007/04/22(日) 22:03:44 ID:gydkMvKT
ho
476 :
名無しサンプリング@48kHz :2007/05/04(金) 19:29:13 ID:CQG77SUJ
mo
478 :
名無しサンプリング@48kHz :2007/06/07(木) 17:11:53 ID:md51HiJf
ho
mo
480 :
名無しサンプリング@48kHz :2007/06/13(水) 23:23:23 ID:jXEKgvUX
Java に MIDI のクラスがあるけど、これ、C++ などでも参考にならんか? javax.sound.midi っていうやし
481 :
名無しサンプリング@48kHz :2007/07/01(日) 01:13:04 ID:ESoubqp/
7月の保守
>>482 高級なAPIだから、実装が楽そうだね。
ほsy
484 :
名無しサンプリング@48kHz :2007/08/01(水) 13:58:41 ID:FAf4+dZ7
8月の保守
485 :
名無しサンプリング@48kHz :2007/08/01(水) 14:22:04 ID:UU2bDx68
live搭載のOASYS早く作れよ
486 :
395 :2007/08/04(土) 01:04:28 ID:k1jvjpKs
みなさん、395です、お久しぶりです。 今日、ついに簡単なプレーヤができましたよ。で、漏れのプレーヤは 1.開く 2.MThdトラックに含まれる情報取得 (3."MTrk"だったら、長さを取得) Do 4.イベント情報取得 5.再生・編集バッファに追加 ↑漏れはPtrの配列にして一つあたり8Byte程にした Loop 6.再生・編集が配列なので楽勝 7.ウマー っていう風にしてみますた。参考になればいいな。ということで、他のチャレンジャーもがんがれ! 長文須磨祖
487 :
名無しサンプリング@48kHz :2007/08/04(土) 15:07:10 ID:m5nLPqDE
保守あげ
488 :
名無しサンプリング@48kHz :2007/08/07(火) 17:37:22 ID:QSR465sU
こんにちわ、 Windowsのタイマーの精度は、最小 1msecですが (仮にこの精度がでると仮定して) テンポ60の時 4分音符=1000 msec 8分音符=500 msec 16分音符=250 msec 32分音符=125 msec 64分音符=62.5 msec これはなんとかなりそうなきがしますが テンポ 59の時 4分音符=983.333 msec 8分音符=491.666 msec こういうときってどうしてるんでしょうか? ごまかしてるんでしょうか?
四捨五入でいいよ タイマーの精度にこだわるんなら マックにしたほうがいいよ
シーケンサーの試験さー(挨拶)
MSXや68で垂直同期割り込みでBGM鳴らしてた経験から言えば、
±8msくらいずれてもたぶん誰もキニシナイ
>>490 QueryPerformanceCounterって、ポーリングすんの? CPUパワー無駄遣いいくなくね?
あと精度にこだわるならWindowsカーネルの動作把握しといたほうがいいかもよ。
俺はしてないけどw
>>491 QueryPerformanceCounter激しく推奨。
音楽(制作用)ソフトと銘打ちながら
>±8msくらいずれてもたぶん誰もキニシナイ
と思って作られたソフトが氾濫したのが
>>489 の
>タイマーの精度にこだわるんなら
>マックにしたほうがいいよ
みたいな伝説が生まれた原因の一つだと思っている。
直接音楽と関係ないしC#だけどQueryPerformanceCounterの使い方例貼っとく
ttp://d.hatena.ne.jp/yaneurao/20040724 ちなみにCPUパワーを無駄遣いぶっこいたと思われる例が存在する。
WinのPTで6あたりのバージョンの時にCPU使用率がいつも100%になる現象があり、
デジの回答は「PTはいつも"何かしている"のでそう見えますが問題ありません」
とか言ってた。
PTのソース見られるわけじゃないから真偽の程はわからんが、ぶっちゃけ
>Thread.Sleepをなくして超負荷状態にしてしまう馬鹿野郎様
なだけだったんだろうなと思っている。
Winで1/100,0000秒クラスのタイマーってあるの?
>>493 だからその話をしてるんだろうがw
QueryPerformanceCounterが、RDTSCのあるCPUの環境なら
1/CPUクロック 秒
/usepmtimer付きでOS起動したりしてPMTimerを使うようになってたら
1/3579545 秒
の分解能を持つカウンタ。
QueryPerformanceFrequencyで今の値を取得。
どっかに、その分解能でコールバックしてくれる関数ありませんかねぇ。
あぁ、もう4時か・・・今日も、やたらとビルドナンバーだけがインクリーズしました
497 :
名無しサンプリング@48kHz :2007/08/09(木) 04:43:44 ID:6x1M4Ivb
ちょ、誰かレコンポ風DAW作ってよ
>>492 だからさ、QueryPerformanceCounter使ったら自動的にCPUパワー無駄遣い仕様になるやん。
使う使うゆーてるけど、そこんとこどう対処すんの?
>>492 てか、紹介してるそのページのコメント欄読んでくれ。
俺は「通りすがり」に同調する。
500 :
492 :2007/08/10(金) 00:01:00 ID:E7MmwgYN
>>498 適切な回答になってるかわからんけど、
「目的としている事にそれが必要なんで無駄と思わない」でいいかい。
まあそれでいいならそれでいいさ。 実際にそんなシーケンスソフトがあったら俺は蹴り倒すけど。
音楽作成に必要な精度と音楽再生に必要な精度もまた違うからなぁ。
うわ QueryPerformanceCounter こんなもんタイマ代わりに使えるかよ 全力ループしながらカウンタ見るのかw wait入れたらそのwaitの精度にひきづられるわなあ 馬鹿じゃねえの
テンポ120で500ティック刻めるね。 それが十分かどうかは人それぞれだと思う。 俺は十分だと思う。
>>505 つまり、分解能480?
そういや、ソフトのパッケージに載ってる最大分解能ってテンポいくつの条件なんだろ?240?1000?
507 :
名無しサンプリング@48kHz :2007/08/27(月) 07:54:27 ID:dqtaOyJK
エクセルを使ったドラム打ち込みツールってできないんでしょうかね? Roland MC-500のドラムの打ち込みがなじんでいて、DAWでのドラムの打ち込みが どうもしっくりこないんです。 BD,SD,CHH,OHH……とセルに並んでいて、テンキー1から8で入力できるように ベロシティを8段階に設定しておいて、テンキーとカーソルキーだけで ドラムパターンを1小節ずつ書き出せるようなのがあれば、最高なんですよね。 DAWのドラム入力ツールだと、ベロシティの調整がどうも面倒で・・・ MCシリーズのように、ベロシティの値がテンキーで、 1=16,2=32,3=48,4=64,5=80,6=96,7=112,8=127 こういうのって作れるんでしょうかね?
>>506 あれは打込み可能な分解能。
実際、正確にシーケンスされてるワケじゃナイんだよ。
1行ごとに改行挟む奴ってなんなの
510 :
名無しサンプリング@48kHz :2007/08/27(月) 21:42:26 ID:dqtaOyJK
わたくしの ことで しょうか?
>>507 セルに入力後、VBAで解析・変換→ファイル書き出しなら余裕でできるけど、
タイマーAPIとかMIDI APIとか使って再生機能つけるとExcelが落ちるかもしれない。
9月の保守
しまった先をこされた
ho
515 :
名無しサンプリング@48kHz :2007/09/10(月) 01:04:30 ID:mCpYobnO
シュッシュ
516 :
名無しサンプリング@48kHz :2007/09/10(月) 01:06:24 ID:a6X8yWXS
捕まるぞW
ほ
518 :
名無しサンプリング@48kHz :2007/11/02(金) 13:00:28 ID:faT3Vabi
11月の保守 だが、誰もいない…
また先に保守された
初めてこの擦れ知った。1から全部読んでみた。 漏れはこの業界じゃジジィの部類で初MIDIシーケンサがYAMAHAのMSXだった。 その後QX1から始まってハードシーケンサ/ソフトシーケンサ経てPerformer2.x以降 ずっとMOTU。 そんなMIDIシーケンサの歴史を知ってる漏れがこの擦れみて、改めてPerformerの凄さ を知ったのと、レコンポーザがWin移行に失敗した理由が解った気がした。 エンジンの部分で苦労しているのがよく判る。陰ながら応援したい。がんがれ!
補足だが、プログラムの事は解らんが、MIDIシーケンサの事なら何でも解るので もし立ち振る舞いその他で知りたいことがあれば聞いてくれ。喜んで協力する!
522 :
自治スレでLR改定議論中 :2007/11/05(月) 03:33:16 ID:i4jE8klR
>>521 カモンミュージックの今後を教えてください
>>522 マジレスすれば、カモンミュージックそのものは音楽系通販業者として立派に衣変え終了してる。
レコンポーザーに関してなら、どうにもならんだろうなぁというのが印象。
524 :
自治スレでLR改定議論中 :2007/11/06(火) 10:08:33 ID:0LWYYd8I
一瞬アセンブラと勘違いしちまったい レコポみたいにキーボードガンガン使えるのかな
>>524 寄付募ってレコポ関連の権利一切を買い取りオープンソース化。
非営利法人方式(寄付で開発モデル)を有志で開発を継続する。
買い取って継続できなくともメンテナンスしたいってヤツはいるだろうしな。
...というモデルを考えるのだが、そういうのにネガティブな気がする
日本だとできるかどうか...。
ところで自由に使える(GPLはイヤッ!)ものがなかったので
ソフトシンセ・ピアノロール用の鍵盤グラフィック作ったんだが需要ある?
レコポ風味のあるシーケンサといえばmidiomがあるな X68kの時代にはSTed2とかがあったし、それは他OSに不完全ではあるがポーティングされてたような 権利とか気にしなくても、勝手にレコポクローンを作ってしまっても 誰も文句は言わないような気がする。 気がするだけ?
529 :
名無しサンプリング@48kHz :2007/12/01(土) 00:18:15 ID:VWWayzR9
12月の保守
ミクで出戻ったプログラマでつ。 1から読んでないけど、Winになってから、リアルタイム制御の時間制御が細かく出来なくなったんでしょうね。 DOSの頃はマシンの全リソースをほぼ好きなように操れた。 いまなら、Linuxのカーネルを最適化するか、TRONのカーネルを使うか等 OSから手を入れてMidi特化なOSをつくり、その上で動くAPIを作るとか。 暇な大学生なら十分できると思う。 BeOSがもう少し頑張ってくれていれば(つД`)
いつの間にか、スタジオPのアイコンのクローンを作ってたorz ほぼ80%完成している。スタジオPのシーケンサー作りたい人がいれば CCあたりで譲ろうかなと思っている。 それはそうとパブリックドメインの楽譜フォントが 見つからないorz 版権の切れたスコアからトレースするとしても 権利がクリアかどうかわからん。
>>530 俺もそういう意味でx68kまた弄りたいなと少し前に思ってた
スプライト・BG・半透明なんか駆使してツルツル動くシーケンサっていくない?とか
BGでグリッドの打ち込みしてスムーズスクロールしながら、
全体のアレンジが半透明で被さって見える、みたいなイメージだったんだけど
be的なもんはやっぱ生き残ってほしかったね
amigaOS4とか弄ってみたいけどね
amigaは昔sas-cでintuition使ってプログラミングしてたけど
あんま面白いapiではなかったw
amigaEは言語仕様自体が面白いからやるならこっちだな
まあでもableton,guru,synthmaker,campsとか揃っちゃったら
なにか別なもの作る余地ってほとんどなくなっちゃったな俺的には
http://www.prophet64.com/ ↑とかみるとなんか作りてーってなるけど、どんだけ時間かかるかも
想像つくしなあ...
いやまあエミュはPCに入ってんだけどね アセンブラやるとリセット・リブート地獄になるからエミュで開発すれば...ってのが ちょっとやってみようかって思ったきっかけではあるけど 実行環境もエミュでやるならいっそpython/pygame使うなあ
PSPのシーケンサー欲しい。チップチューンみたいなのじゃなく、普通の軽量な音源を使えるやつ。
>>532 AmigaだったらAROSがある。
それより、面倒なのはエンジンよりグラフィック描くほうだったりする。
ドローソフトじゃないと解像度の仕様変更のときにつらい。
>>535 Windows Mobile : MilkyTracker
Ninetndo DS : NitroTracker
PSPは...なぜか無い。Ableton Liveをリモートで操作するツールはあるが。
PS1だったらPSoneという手が....orz
一万円以下だったらPSOneと音楽ツクールorスタジオPだな。
538 :
名無しサンプリング@48kHz :2008/01/01(火) 21:33:08 ID:mTup22bv
1月の保守
539 :
名無しサンプリング@48kHz :2008/01/30(水) 17:00:20 ID:qcEHNv/0
活気がないので、呼び込み保守age
541 :
名無しサンプリング@48kHz :2008/01/30(水) 20:43:42 ID:ZEZWgdlb
>>530 >ビデオクリップ
マスターベーションみたいなもんですが
人生を目いっぱい楽しんでいますね。
>>530 というか、OS XのCoreAudio/CoreMIDIじゃダメなの?
USB接続のCV/GATE 8chシーケンサーがほしい。 ソフトもね。
DOSみたいにI/Oに直接投げることが出来ないからね。 逆に、リアルタイムで投げなきゃいけない分、難しい部分もあったけどね。 どうでもいいけど、LinuxもTRONも、オーディオインターフェイスやらMIDIやらのドライバ作るのが大変というか無理クサそうですが。
>>542 Windowsでは、
・高精度かつ他タスクの影響を受けにくいタイマーがない
・Macみたいに高レベルAPIがOSには搭載していない
SONARとかで使えるMIDIエフェクト(MFX)で動く数値入力タイプのシーケンサーとか作れないかな?
VSTiとかVSTの一種として楽に数値入力UIがつくれたらなーとか思ったり
548 :
名無しサンプリング@48kHz :2008/02/04(月) 00:09:07 ID:LVCGULFC
日本語プログラミングの「なでしこ」を使って作れないものか?
なでしこのマニュアル読んでみたがこれはマクロみたいな使われ方が想定されてるんじゃないか インタープリタだしオブジェクト指向使えないっぽいし、何より日本語じゃちょっと長くなるだけで凄く読みづらそうだ
RolandのMCがソフト化されないかなあ マウスホイールをアルファダイアルに見立てて
551 :
名無しサンプリング@48kHz :2008/02/06(水) 03:30:25 ID:S7MNeWjd
>550 それ、私も望んでいる。 ドラムトラックの製作が特に
552 :
名無しサンプリング@48kHz :2008/02/17(日) 03:44:24 ID:DMrP6vrW
Javaで書いてるんだけど標準APIのSequencerってヨレすぎない? スレーブにMidiClock同期のディレイとか使うとヤヴァイ ヘロヘロすぎる
Java(笑)
SuperCollider(笑)
と、Max厨が申しております
557 :
名無しサンプリング@48kHz :2008/02/22(金) 22:11:12 ID:AxHWtA3x
目にきびしいなw うpうp!
赤い悪魔を思い出す色だわ…
560 :
名無しサンプリング@48kHz :2008/02/22(金) 22:48:14 ID:AxHWtA3x
今ヒィコラ言いながらアンドゥ実装してるからうpはちょっと待ってなー
>>560 身体壊さんようにがんばれ、動作チェック引き受けるよ。
>>557 これ、完成版は画面が飛び出して見えたりしません?w
バーチャルボーイかよw
>>557 なんか昔見た事ある気がする。
デジャヴか。
SAMPLE TANKと一緒に使うといいなw
566 :
名無しサンプリング@48kHz :2008/02/26(火) 00:31:21 ID:UtoOfd6H
できた! たぶん!
ttp://sakuratan.ddo.jp/uploader/source/date72015.zip メニュー -> Help- > ShortcutKeysを見ればだいたいの操作は把握できるかもしれないです
*注意*
・あんまり動作チェックしてないのでたぶんバグてんこもりです
・実行前に必ず最新版のJREをインストールしてください
・WindowsXP以外での動作確認はしていません
・リアルタイム録音はできません
・SMFのインポートはできません
・一応分解能は480ですがシーケンスの精度は悪いです
・現状ではノートメッセージとコントロールチェンジしか入力できません(近日中にPitchBend,ProgramChange,SysEX用のトラックは実装予定です)
QY8みたいに ジョイパッドか何かで猿のように高速打ち込みできるようなの欲しい
落とせないよ?
569 :
566 :2008/02/26(火) 21:09:06 ID:UtoOfd6H
おおお、すげぇ マウスだけで操作できるわけではないのかな? ちょっと遊んでみるね
>>569 Mac OS X10.4.10ではJar動かなかったぞ、
Win環境依存のソースがあるのでは?
ファイルパスの区切り文字とか。
悪くないな ちょっと目がいたいけど
573 :
名無しサンプリング@48kHz :2008/03/15(土) 10:55:50 ID:g8C4Pg2o
ありがとう。明日からこれでボーカル録る。
574 :
名無しサンプリング@48kHz :2008/03/31(月) 23:51:18 ID:b8icmdNd
魔がさしたので上げる。 治具として99BASIC落としてみたんだが、これ簡易的にMIDI使えるね。 SDカードに突っ込んで持ち運べるっぽいのは便利。 だが、本格的に使うとなるとソース分割はおろかプリプロセッサや構造化ができないので悪夢が見える。 一応、使う方法もあるが、解説する? ナニを作ろうとしていかというと、KAWAI Q-80のクローン。 魔が差したら実機買ってしまうので完成は100%期待しないでくれ。
575 :
名無しサンプリング@48kHz :2008/04/01(火) 00:32:08 ID:B2KjqB56
4月の保守
574の状況。とりあえず外回りからテストルーチン書いている最中。 現在、曲名入力ルーチン作成中。なんかまったり続いている。 で、そろそろ入力系統のテストルーチン組もうと思っているが質問。 多ボタンパッド2個改造したものを実機のレプリカ筐体に組み込んでフィジコン対応 できるようにしたいんだが、アナログ対応の使い勝手のいいDLLある?
578 :
名無しサンプリング@48kHz :2008/04/10(木) 12:00:15 ID:KkkwPNwG
参考ソース
midish - コマンドラインシーケンサ・フィルタ for BSD/Linux(BSDライセンス)
ttp://caoua.org/midish/ おーぷんMIDIぷろじぇくと
ttp://openmidiproject.sourceforge.jp/ 578のソースは消えてしまったので、まとまったところでVerUp版上げとくよ。
あと、JoySys.dll使ってwrapper書き始めてるのでQY8/テクノモーターみたいなジョイパッド入力は
対応できたらサンプルで対応しておくよ。ネギコンはボタンが足りないので勘弁してくれorz
これ以上、ここに書いているとお前の日記じゃねえんだと言われるのでしばらく控えておく。
お前の日記でもいいよw そういうスレだから気にすんな^^
それでは甘んじて...。 99BASICのSTRIG関数は3軸4ボタンまでと思っていたら違ったようで、 それ以上でもSTRIG(1,0)できちん値が返ってきます。 (SANWA SUPPLY JY-PSUAD1 + SONY SCPH-1200 + Vista SP1で確認) これで挙動不明なCHILD関数でDLLラッパー書く必要がない。 (というか99BASICのウィンドウハンドルがどこにあるのかよくわからない)
素晴らしい
たたき台ソース(すでにカオス)
>
ttp://applis.servehttp.com/index.htm > 00012032.txt テキスト 08.04.18 20:26
DLKEY:3504
(ダウンロード後拡張子.zipが付加されていますので.txtに変更してください)
使い方はPlaystation相当のゲームパッドをPCに挿して(挿されているゲームパッドはひとつだけにしてください)
99BASICの実行ファイルにソースをドラッグ。あとは適当にゲームパッドをいじっていただければわかるかと。
ただし、PLAY文の所詮MML仕様によりC-1が使えないです。お察しください。
少し改造すれば出力ポート、チャンネルを変更できますが動作・実用性(ステップ入力)は保証していません。
このソースに関してはあくまで実験用です。質問されても答えられない場合があります。お察しください。
PSPのシーケンサー作ったら感謝する人いっぱいいると思う。
残念だが、私のプロジェクトではPSPは対象外。 自分で作るのが結局早いと思われ。やんなきゃ無駄に年を食うだけ。 子作り、曲作りとフローは同じだ。やれるところからはじめて続けてみるべし。
私のプロジェクト(笑) 出来なきゃ黙ってればいいと思われ。
そこは噛み付く必要あるのか
>>586 の無駄に上から目線がウザイだけでしょ。特に蛇足が。
結局、お約束の展開オチだな。 欲しいならやれるところから作ってみたらといえば論点ずらして勝手にブチキレ。 次へもっていこうとしない時点で、あきれた。
>>589 子作りなんて書かれたら切れますよね。分かります。
自分で作れって言われるとキレる奴らってフリーソフトの作者に文句とか言いまくってそうだよな 偏見だけど
なんだこの自演
もうPSPとか死にハードの話するのやめようぜ 荒れるし
ここまで俺の自演
>>594 荒らしてんのはお前だろw
恣意的に特定ハードを除外とか、分かりやすい奴だな。
大丈夫これも俺の自演だ
QX3互換音価入力ルーチン(試作版) for 99BASIC(License : NYSL) QX3の説明書p52「音符の設定」1./2.の最大入力制限の仕様が判明してないので実装していません。 10 keycount = 00 20 previous_keycode = 00 30 keypress_count = 00 40 f_keycode = 00 ' 仮想キーコード 50 f_length = 00 ' 音価 60 VK_L01 = &HFF70 : VK_L02 = &HFF71 70 VK_L04 = &HFF72 : VK_L08 = &HFF73 80 VK_L16 = &HFF74 : VK_L32 = &HFF75 90 VK_DOT = &HFF76 100 dim FUNC_TABLE_LEN$(6) 105 FUNC_TABLE_LEN$(0) = "" 110 FUNC_TABLE_LEN$(1) = "L1 " : FUNC_TABLE_LEN$(2) = "L2 " 120 FUNC_TABLE_LEN$(3) = "L4 " : FUNC_TABLE_LEN$(4) = "L8 " 130 FUNC_TABLE_LEN$(5) = "L16" : FUNC_TABLE_LEN$(6) = "L32" 140 key on,off : for i = 1 to 6 : key i," " + FUNC_TABLE_LEN$(i) : next 150 cls
160 *main 170 locate 0,0,0:cls 180 print "音価の合計: "; 190 print keycount; 200 print " 押しているキー: "; 210 print previous_keycode; 220 print " 押された回数: "; 230 print keypress_count; 240 ' 配列とforループでもう少し簡潔にできるか? 240 if key(VK_L01) = 1 then f_keycode = 70 : f_length = 01 : gosub *VK_LFX 250 if key(VK_L02) = 1 then f_keycode = 71 : f_length = 02 : gosub *VK_LFX 260 if key(VK_L04) = 1 then f_keycode = 72 : f_length = 04 : gosub *VK_LFX 270 if key(VK_L08) = 1 then f_keycode = 73 : f_length = 08 : gosub *VK_LFX 280 if key(VK_L16) = 1 then f_keycode = 74 : f_length = 16 : gosub *VK_LFX 290 if key(VK_L32) = 1 then f_keycode = 75 : f_length = 32 : gosub *VK_LFX 300 wait 150 310 goto *main 320 *VK_LFX 330 if not (previous_keycode = f_keycode) then previous_keycode = f_keycode : keycount = 0 : keypress_count = 0 340 keycount = keycount + f_length 350 keypress_count = keypress_count + 1 370 return
E・∇・ヨノシ <600ゲット♫
ちょっと教えていただきたいのですが、Midiプレイヤーの機能も備えてるmidiシーケンサーがあるのですが、SMFの再生中にテンポを変えることが出来ました。 これは内部的にはどういう処理をしているのでしょうか? 一瞬でSMFのテンポ情報を書き換えているのでしょうか??
>>601 えーと、めんどくさいからマジレスしちゃる
midi音源ちゅーのは、大雑把に言うと
ノートオンシグナルを検知したら音を出して、ノートオフシグナルを感知したら音を止めるという
まあ、それだけの仕事しかしないもんなんだな
これは、MSGSだろうとハード音源だろうとおなじ
もちろん、そのほかにも弄れるパラメータはいくらでもあるけど
ことテンポを考える上では関係ない
でだ、MidiシーケンサがSMFを演奏するときしてるのは
テンポ情報から拍子みたいなもんを生成して
ノートのタイミングが着たら順次シグナルを音源に送信するっちゅー仕事なんだな
で、テンポをかえるっつーのは、拍子の速度を買えるっちゅーことに相当するわけで
SMFのテンポ情報を直接弄る必要はどこにもないわけだ
602さんとは逆に、抽象的な話をしましょうか。 あなたが演奏する時と同じことです。 楽譜のテンポ情報を書き換える必要はなく、メトロノームをいじります。 タイミングを生み出しているのは、楽譜やSMFではなく演奏者(シーケンサ)だからです。
↑演奏中にいじるのは変ですね。 体内メトロノームということで…。
楽譜 = smfファイル 演奏者 = シーケンサ 楽器 = 音源 ってことだよな。演奏者にはいろんな機能を持たせられるので、 シーケンサによってはテンポ以外にもいろんな要素を変える機能があったりなかったり
606 :
601 :2008/05/03(土) 15:23:59 ID:qSDu+CwK
おお詳しいレスありがとうございます! ということは、演奏中シーケンサーによって再生中の曲のテンポを変える場合は、その再生中のSMFは無視してシーケンサから直接midi音源へテンポを変える命令を送っている、ということでしょうか?? また例えば、今再生中の曲のテンポを二倍にしたい、なんて時は、今再生中の曲のテンポ情報をシーケンサが知っている必要があるので、 頭から再生する際そのSMFのテンポ情報をシーケンサの内部のバッファかなにかに格納しておいて、状況に応じてそれを2倍とか2分の1倍とかにしてmidi音源に送ればよい、といった感じでしょうか??
>>606 レスしようと文章を書いてみたが、見直すと
>>602-605 に全部書かれていた。ということで
「全然違う」
もっぺん読み直して音源にテンポを送る意味がないことをまず理解してくれ。
608 :
601 :2008/05/03(土) 16:02:49 ID:qSDu+CwK
何度もありがとうございます。読み直しました。 えと、midi音源がすることは、基本的にノートオンメッセージが来たら音を出し、ノートオフメッセージが着たら音を止める、だけなので、時間的なものは管理していない。 なので、時間を管理しているのはシーケンサーで、テンポを変えたかったら、シーケンサーが次のノートオンやノートオフのメッセージを送る間隔を早めたり遅くしたりすればよいだけのこと、 ということでしょうか。
その理解でおkです。 >テンポを変えたかったら、シーケンサーが次のノートオンやノートオフのメッセージを送る間隔を早めたり遅くしたり 同じことですが、シーケンサ自身の処理速度を変化させる、と考えたほうがシンプルかも。
610 :
608 :2008/05/03(土) 23:02:35 ID:qSDu+CwK
ありがとうございます! すいません、もう1つお聞きしたいのですが、最終的にはmidiシーケンサ・プレイヤの機能を兼ねた、VSTホストを作りたいと思っているのですが、 midiメッセージをmidi音源に送出する機能まで作れたとしても、そのあとどうやってVSTiにmidiメッセージを送って、音を鳴らせるようにすればいいのか、分かっていません。 midiメッセージをdll形式のVSTiファイルに向けて送れば、そのVSTiがサウンドドライバに向けてサウンドデータを勝手に送ってくれるわけではないんですよね??そこらへんの仕組みはどうなってるんでしょうか? VSTが1つの「規格」である以上、それに合わせた扱い方みたいなのが必要なのかなと思うのですが・・ どなたかご教示頂けると幸いです。
仕組みはよくわからんのだが、 自力でプログラムを組むなどという、それなりに高度なことを考えているなら、 それくらいは検索エンジンを駆使するなりして調べられないんじゃこの先も話にならないような希ガス。
612 :
610 :2008/05/03(土) 23:18:19 ID:qSDu+CwK
レスどもです。 色々調べたんですが、VST関連の資料はどうも少なく・・ 実際に作っている人もいるかもしれないので聞いた方がよいかもと思って聞いてみました。 のですが、ここVSTスレではなかったですね。。
>>610 君は、自分が何を作ろうとしているのか、もう一度整理してみたほうがいいんじゃないの?
少なくとも、VST・VSTiの仕様くらい自分で調べられなきゃ話にならんよ
つーか、そもそもVSTの使えるシーケンサなりDAWなりを使ったことはあるのかい?
614 :
610 :2008/05/03(土) 23:47:17 ID:qSDu+CwK
>>613 さん
>VSTの使えるシーケンサなりDAWなりを使ったことはあるのかい?
あるにはある・・のですが、そこまで使い込んではなかったです。
何かおかしなこと言ってたでしょうか??
> VST・VSTiの仕様くらい自分で調べられなきゃ話にならんよ
そうですよね、それはそうなんだろうなぁと思います。
617 :
610 :2008/05/06(火) 21:17:02 ID:1jN6TZ5U
「MIDIのためのCプログラミング」を買ってみた。 ざっとナナメ読んだ限りで計算式(残念...)は出てこないので掲載ソースを解析する必要がある。 どちらかっつうと古い機材を再活用したり、古いソフトをメンテやリバエンするのに 必要という感じだな。新規に組む人はPC-9801の資料を色々持っていてなんとかやれるって人以外 お勧めしないなあ。 その他MIDI関連だとトランジスタ技術SPECIALだとNo.55, No.63, No.76あたりか? ただ、ハード寄りなんで役に立つかわからないが。
>>618 それ役に立たなかったな。とりあえずWindowsサウンドプログラミングが定番かな。
あれも少し古くなってきたけど基礎は通用する。
WinAPIでMIDI通信するのは仕組みがわかるとけっこう簡単で、外部音源かMIDIYoke経由の
ソフト音源を前提としたMIDIプレイヤーなら時間管理ができればわりとすぐできるけど、
MIDIシーケンサで苦労すると思われるGUIとイベント管理について書かれた本がない。
621 :
620 :2008/05/10(土) 19:22:23 ID:o8dWI/1D
...って、良くみたらここってシーケンサを作る側のスレかww すんません。スレチ臭い。スルーで orz
シーケンサーを使いたい!!!
624 :
名無しサンプリング@48kHz :2008/07/08(火) 20:36:19 ID:W4yll7iS
下がりすぎだ上げ。 気づいてみれば挫折するとわかっているのにハードシーケンサーのエミュレーター開発に手を出そうとしている俺がいる。 ぶっちゃけ実機とROMライタと資料があれば組めるからな。 ただカスタムチップだとorzだが。
625 :
名無しサンプリング@48kHz :2008/07/08(火) 23:59:36 ID:q1e7brdf
たのむ、MC-50と同じ操作感のドラムトラックのシーケンサーを作ってくれ
当たり前だけど。テキストベースだったらRubyでもMIDIシーケンサー組めるんだな。
スクリプト言語でCPUエミュレーターは書いても遅いって話は聞くが。
>>625 MC-50は実機が安く手に入ったら検討しておきます。
ようやくQ-80の資料がそろったところ。サービスマニュアルはどこにも落ちてないけど。
仕様書書きに入りますか。
現在状況。ROMライター落札し損ねたorz
27C512だからROMプログラマ作ればいい。挫折した場合は資料をどっかで公開しておきます。
>>626 なぜカセットMTR?
628 :
名無しサンプリング@48kHz :2008/07/20(日) 14:42:03 ID:iXKL++hl
>>627 CPUエミュレーションって事は、実機のROM持ってないと使えないって事だよね?
ソフト自体はROMの中に入ってるだろうからシーケンサー作るって趣旨とは少しズレルのかな
でも、期待age
というか応援してる
630 :
名無しサンプリング@48kHz :2008/08/11(月) 13:03:42 ID:b3QKU/vV
こんにちは。 ちょっとお尋ねしたいんですが、スタンダードmidiファイル専用のバイナリエディタってありませんかねぇ。 メッセージをデルタタイムごとで区切って分かりやすく表示してくれるような。 今、SMFの中身をいろいろいじっているのですが、普通のバイナリエディタではやはりみにくいんです・・ 検索してもそれっぽいのが出てこなかったのでここで聞いてみました。
デルタタイムごとに区切ってダンプ表示、ってのは自作ツール定番かもね 勉強中の人は必ず一度は通る道…ってわけでもないかな 可変長データのサイズを持ってたりする都合上、 普通のバイナリエディタだと編集したら整合性崩れて残念なことになっちゃうよな 固定長に無理やり変換して、デルタタイムごとに区切って、っといった 自作ツール(smfと、固定長俺フォーマットとの、相互変換ツール)は作ったおぼえがあるけど、 非対応イベントが多すぎて、限られた用途にしか使えなかった
専用じゃないけどTSXBINのMIDIマクロでどうだ
って、かぶったw
636 :
630 :2008/08/13(水) 11:39:07 ID:spmPeUFq
おお、色々ありがとうございます。 エディタって書いちゃったんですが見たいだけで、編集したいというのは今のところないので、 > TSXBINのシンボル表示マクロでSMF用のやつがあったけど、あれも結局表示専用 これで大丈夫そうです!ありがとうございますm(_ _)m
おまえら、シー検査開発してますか〜 ノシ
シーケンサーの試験さー
639 :
とりあえず :2008/09/03(水) 22:09:29 ID:WCofq1Gc
9月の保守しときます。 <チラシの裏>早く編集・保存できるようにせねば</ry>
641 :
名無しサンプリング@48kHz :2008/09/22(月) 13:36:42 ID:XiVJ/t7B
下がりすぎなので保守。 /* クローン組んでいるのかシミュレーター組んでいるのか はたまたエミュレーター組んでいるのかわけわからなくなってきたので いったん休止中。 */
10月の保守(先取り)を兼ねて。 ピアノロールエディタの実装むずいね。表示とかスクロールはできたんだけど当たり判定とか、 ドラッグの実装、移動後の処理などやること・注意することが多すぎ。 [チラシの裏] ・トラックビュー、ピアノロールビュー、リストビュー実装完了 ・外部音源対応完了
>>642 訂正。conio.hインクルードしたらあった。コマンドライン版はstdio.h以外読み込まれないっぽい
にしてもライブラリリファレンスがこう貧弱だと...orz
和文マニュアル欲しいのでラクネシーのCh Professional 6.0試用版取り寄せようかと考慮中。
あとStandard Editionだとコマンドラインからインクルードファイルをどう呼び出せばいいのやら不明。
普通にファイル作るしかなさそう。IDE欲しかったらEducation Edition落としたほうがいいかも。
Chは簡易Service for Unixっぽい構造なのでunix系シェルとしても使えて便利だわこれ。
今日はここまでにするがchってOpenGLを呼び出せるわWindows APIも叩けるのか。 ソースの書き方までほとんど一緒。これって本格的に使えるインタプリタなのに日本だとほとんど情報がない。 久々にwktkできる処理系だな。
ch professional 6.0試用版取り寄せた。翌日届いた。早ッ! ただ、この試用版は無償だけど、郵送費含めると千円くらいかかってる罠。 気に入ったら何か製品買ってあげような。 さて、ローカライズされているマニュアルはchguide.pdf,chide.pdf,chref.pdfの三つ。 SDKや機種依存関連は英文のほうを読むしかなさげだな。
647 :
名無しサンプリング@48kHz :2008/10/15(水) 18:09:06 ID:Eye785sr
このスレができてから5年以上たつが、 開発環境や資料ばかり集めているだけで 誰も全然シーケンサ作ってないじゃん。 これでは、機材ばかり集めて曲を作らない ほとんどの名無しさん機材ヲタと同類だ。 もっとこう、具体的にソースを見せ合いながら、 未完成でもちょくちょくリリースしていけないの? その方がお互いに作りがいがあると思うけど。 ……って俺もだ。
649 :
566 :2008/10/28(火) 01:17:55 ID:R9shilCC
650 :
643 :2008/10/28(火) 19:26:00 ID:zdggM0LH
作ってるっちゃ作ってるけど、目標が高くてなかなか完成しないorz・・・
完全なMIDIシーケンサをつくろうとしているのだがね。
>>643 に書いたように
編集機能の目途が立ってないのと保存機能が未実装(面倒)。
あと、最適化も同時に進めてるから結構忙しい・・・
開発環境:Mac OS 9.2.1 + REALbasic 3.5.2 Pro + MPW(プラグイン)
・完全動作するのが旧Mac OS( Mac OS Xは音出ない + Windowsでは閲覧専用w )
・編集機能なし
・一部バグあり(確認済み)
・割とイイ感じのUI
↑こんなんでもいいなら、うpろだ指定してくれればageるけども。
そういえば、大学受k(ry
MacOS8.6で動く? なんならMacOS8.6環境でのベータテスターやっても良いよ? うpろだはよくわからんから指定できんけど
あ、MIDIはOMS?
653 :
650 :2008/10/30(木) 14:35:31 ID:4a/Rl3ET
654 :
650 :2008/11/02(日) 12:27:37 ID:TaE1cFFO
>>654 intelLeopard10.5.5で確認しますた
tinyGMで再生できますた
>>654 Mac持ってないのでSS希望
Win版は期待しないで待っときます
659 :
654 :2008/11/10(月) 20:25:11 ID:VWjVJpqY
654です。どうも自作ソフトが特定環境下で落ちやすいなと思ったらマルチCPU・マルチコア環境を想定していなかった! とりあえず、同時アクセスしそうなとこにセマフォを実装したら、重いシーケンスを再生すると操作不可能状態にwwww 仕方なく、別スレッドで実装しようと思ったらスレッド実行中にタイマーが割り込んでくるから意味ナスorz こういう時ってどう実装すればいいんだろう。再生用にバッファを用意する?それともシングルCPU・コアで動作するように 設定するとか。Mac OS Xだと自動でマルチスレッドに最適化されちゃうらしいから困った。 ------------------------------------------------------- ということで、拙作のソフト(Grandioso[仮])をマルチCPU・マルチコアのMacで使う場合は、Processor Extra Menuなりで シングルCPU・コアで動作するようにお願いしますorz
>>659 Macの事もマルチコアの事もあんまり知らないけど
複数プロセスでプロセス間通信とかしてるの?
普通にシングルプロセスだったら関係ないと思うんだけど
>>660 それはなんか違う気がする
662 :
名無しサンプリング@48kHz :2008/12/07(日) 17:26:49 ID:l5l0hxJe
落ちそうなんで唐揚げ
>>660 参考にしてみます
>>661 アプリケーションのメインスレッドとタイマースレッドが同時にメモリ参照をしてあぼーん・・・
画面の更新やスクロールとタイマーが同時にアクセスするとだめぽ。
「スレッドセーフ」「セマフォ」「クリティカルセクション」あたりが重要か。
664 :
名無しサンプリング@48kHz :2009/01/04(日) 00:51:16 ID:TcuYKmsA
新年保守age↑
665 :
650 :2009/01/19(月) 15:18:01 ID:WHG67Syj
みなさんお久しぶりです。0.1.2a→0.1.6にバージョンアップしました。
http://www1.axfc.net/uploader/He/so/184222.zip&key=DTM おもな変更点:
・マルチコア/マルチCPU環境に対応
・一部OSXのインタフェースに最適化(シートダイアログ使用)
・再生時のCPU使用率が1/4に
・MIDI送信方法変更→おそらく送信レスポンス向上
・リストエディタ書き直し→若干のレスポンス向上
・グラフィックウィンドウが実用的に
・仕様変更
・バグをいくつか修正
☆マルチコア/マルチCPU対応は直接アクセスするのをやめてハンドルを採用することでクラッシュ回避しました。
まだまだ「シーケンサー」というより「プレーヤー」ですが、がんばって完成させたいと思います。
長文失礼しました。
666 :
名無しサンプリング@48kHz :2009/02/01(日) 04:23:45 ID:j5OrIvqU
2月の保守
667 :
名無しサンプリング@48kHz :2009/02/28(土) 23:49:59 ID:dbjMGS8a
2月最後の保守
3月の保守。
669 :
名無しサンプリング@48kHz :2009/03/31(火) 04:27:32 ID:AUtvlJxB
3月の保守
670 :
名無しサンプリング@48kHz :2009/04/16(木) 07:00:47 ID:GiL+NyR/
4月の保守
671 :
名無しサンプリング@48kHz :2009/05/04(月) 00:04:05 ID:+axZKMgJ
5月の保守
練習がてらMIDIプレイヤー作ろうと思ってSMF読み込みクラス書いてるけどめんどくさ過ぎるw ランニングステータス対応にはしたがformat0オンリーだし、よく使うイベントを切り分けるところまで書けたけどコードが汚いぜ 数日後に見直したら理解できないなこれw 再生機能よりもファイル読み込み機能の方が大変てことがわかったよ
だが次にお前はWindowsのいい加減なタイマーに悩まされるだろうフゥハハハー!!
スレをタイマで検索すると苦心の跡が
むしろ再生クラスを最初に作ってた
C#で実装してるけど、素直にtimeSetTime+backgroundWorker(マルチスレッド)で処理させたよ
今見たら宣言とかは基本的に
>>425 さんと同じだ。クラス化したので再生位置を返す
コールバック関数を作って再生終了がForm側でわかるようにしなければならなかったけど
SysEx送信のmidihdr.lpDataは安易かもしれないけどunsafeで配列の先頭アドレスを渡した
arySysExをbyte配列として、以下のコードでarySysEx配列の先頭アドレスを取得
unsafe{
fixed (byte* aryTop = arySysEx){
int* p = (int*)aryTop;
midiHdr_.lpData = (int)p;//先頭アドレスを格納
}}
SysEx送信完了はクラス化した都合でmidiHdr_.dwFlagsの値でチェックしてるが、完了がMHDR_DONEにはならず0x03になる謎がある
今後ここの処理をもっときれいにしたいところ
ちなみに
>>433 ではウィンドウメッセージが受け取れないとのことだったが、うちではMM_MOM_DONEは届いているな
timeSetTime+backgroundWorkerを使って、自フォームをドラッグしてぐりぐり回しながら
1msごとの割り込み設定でtimeGetTimeしても、割り込みが安定しているのは確認したよ
外部アプリが絡んだ場合は、よっぽどじゃなければいいやということで様子見
>>441 超絶亀だが、MarshalAsでやってる
using System.Runtime.InteropServices;
//MIDIOUTCAPS構造体
[StructLayout(LayoutKind.Sequential)]
private struct MIDIOUTCAPS
{
public ushort wMid;
public ushort wPid;
public int vDriverVersion;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
public string szPname;
public ushort wTechnology;
public ushort wVoices;
public ushort wNotes;
public ushort wChannelMask;
public UInt32 dwSupport;
};
[DllImport("winmm.dll", EntryPoint = "midiOutGetDevCaps")]
private static extern int midiOutGetDevCapsA(uint uDeviceID, ref MIDIOUTCAPS lpCaps, uint uSize);
677 :
名無しサンプリング@48kHz :2009/06/01(月) 21:32:27 ID:RvcEll41
6月の保守
678 :
名無しサンプリング@48kHz :2009/06/06(土) 01:11:27 ID:4BhNEmhD
すみません。今、midiのことを色々調べているのですが、よくわからないことがあるので 教えて下さい。すれ違いでしたら申し訳ありません。 それは、midiの歌詞についてなのですが、例えば、カラオケ装置で音符に合わせて歌詞を表示したい場合、 音符一つに対して、複数の歌詞を表示させることや、複数の音符に対して一つの歌詞を表示させることは可能ですか? できるとしたら、それは、簡単にできるのでしょうか。 例えば、音符に対応させた時間の場所に歌詞を入力しておしまい。みたいな。 よろしければ、参考となるスレやURLを教えて頂けますか? もし見当違いの内容でしたら、大変申し訳ありません。
>>679 そこのスレ本職さんの愚痴スレだから
虫の居所具合によっては聞けるかと
682 :
名無しサンプリング@48kHz :2009/06/08(月) 11:45:58 ID:5SfqJaGn
678です。 679様,680様,681様、ご回答頂きありがとうございました。
7月の保守。
684 :
名無しサンプリング@48kHz :2009/07/19(日) 16:17:18 ID:tbuvpzd1
ここの保守ってageた方がいいんじゃなかったっけ
新しいDAWソフトが欲しいと思って色々情報集めていたけど、 やっぱりお金出す割りに欲しいものが見つからなくて、 気付いたらこのスレに辿り着いた。 何かやってみようかな。VC++で作ったゲームが雑誌に載ったこと くらいならあるし、MIDIイベントやWAVEの入出力も実装したことあるから、 割り込み関係の時間制御もだいたい分かる。 後は、UI部分だなあ。 今までDigitalPerformerをMacで使っていたけど、 Windows版デジパフォを作りたい。VSTも読めるようにしたい。 そのうち出来そうだったらまた来ます。
シーケンサ(というかエディタ)ってニッチ沢山あるから、 結果出せる人にとってはチャンスな分野だと思う え?ニッチを埋めるのに必要な開発コストが高すぎる? それを気にしてたら何もできんよ
VisualStudioもEclipseもタダで使えるし、 ネットでちょっと調べればサンプルコードも見つかるんだし 自分でやるなら開発費なんかほとんどゼロだろ
時間
(キリッ
それを気にせず作ればいいという話のために、「それ」を明確にしてるのに、 否定して煽る意図は?
お子ちゃまなんだろ
C++とJavaのどちらで開発すべきか迷ってるんですけど。 Cとスクリプト言語しかやったことのないのでC++,Javaはこれから学び始めるような人間ですが どちらを選ぶべきでしょうか。
Java ・複数のOSへの対応が簡単 ・メモリの管理(確保・開放・参照)が簡単 ・C++より文法が洗練されている C++ ・Javaのような実行環境が不要 ・Javaより何倍も軽い Javaは便利なんだけど、VMをユーザーが自分でインスコしなきゃいけないのがネックかね 個人的には、特別な理由がない限りC++でいいと思うぜ
スクリプト言語やってるならJavaのほうがしっくりくるんじゃね。 かなり深い部分まで作りこみたいならC++のほうが自由度は高いけど。
JAVAのMIDIってヨレヨレな印象があるんだけど最近はそうでもないのかな?
C#でGUI作ってMIDIAPI叩くとこだけC++書いてマーシャライズするのがベター
そうそう、GUIのつくりやすさとMIDIの安定性の妥協点としてありと思う
最近Java始めたんだけどjavaってundoに制限あるっぽいね。
699 :
566 :2009/08/22(土) 18:25:34 ID:5A78hUeh
ねーよ
Javaに限らずメモリが有限である以上、無制限アンドゥというのは物理的に不可能
じゃあHDD上にもアンドゥ記録すれば良い。 いや、ネットワークストレージ上にも記録して、 そのストレージサーバのHDDは日々増設され続けるの…
つかJavaならStackにインスタンス突っ込むだけなのに どっから制限あるなんて話出てくんの?
32bit環境だとJVMのメモリ制限とかの問題もあるから自制しなきゃいけないとか? 少なくとも今手元にあるJava製簡易エディタには70回のアンドゥ制限があるな。 よくわからん。
9月の保守
705 :
名無しサンプリング@48kHz :2009/09/09(水) 18:13:14 ID:yMoLt7lV
MACHINEDRUMとかXBaseはシーケンサー(多分分解能とかノリとか)に めちゃくちゃこだわってるって話をよく聞くが、このスレで作るなら負けない くらいのシーケンサー作って欲しいな。俺も協力できるところは協力します でもMIDI使う以上は分解能なんて変えようがないよね…
706 :
名無しサンプリング@48kHz :2009/09/10(木) 06:34:54 ID:LzWdzxrv
VB.NETしか知らんのだけどビジュアルスタジオで作れる?
作れるだろうけど、Windowsは割込みと実時間制御で死ねる。 モタっても泣かない。どうせ気が付かないから、気にしない。 とりあえず1ミリ秒の精度が出るかどうかすら怪しい世界。 そのへんの理由でPC-9801が手放せない奴がいるかどうかは知らない。 もう化石だからな。
Macでよろ
だから俺の使ってるシーケンサーもたるのか。 ずっとマシンスペックのせいにしてたよ。 そういう問題ってWindowsだけってこと?
Unix方面もUSBの扱いは酷い。実時間なんて考慮されていないよ。 deferred procedure call使いまくりだし、処理の優先度がHDDや NETより低いとかね、もう踏んだり蹴ったり。カーネル内部に 改造すべきところが多すぎるように見える。 なので伝送データをキューイングしてハードウェアに時間制御させる アイソクロナス転送の仕組みを活用したほうがいいと思うけど、 USB-MIDI規格はバルク転送で実装されてるので、ハードウェア的に 市販品が入手可能で期待できそうなのはIEEE1394に絞られる。 いずれにせよ、デバイスドライバが書けるプログラマじゃないと 手に負えない。Vista64以後はカーネルに署名縛りがあるぞ。 だからミリ秒以下の制御は知らぬが仏。
俺UI作るわ。グラフィックも含めて
だからプログラミングは頼んだぞ
>>216
あ、最後の安価は気にしないでくれw
>>1 1Mbitでレコーディングできるようにしてくれ!買うから
1生きてるか?
保守。
ピアノロールにしろスコアにしろ右に無限スクロールできるようにするにはどうすればよい? 見えない部分も全領域保持してるとメモリ食いになりそう 速いスクロールに対応できなさそうだけど見えてる部分だけ表示が妥当?
イベントのあるところだけデータ保持しといてあとはbtreeでもrbtreeでも 好きなメモリ構造使うとか。線形リストだけがデータ構造ではないのだし。 極端な例だが、速度が許すならsqliteやPostgreSQLを内部エンジンに使って も良いんじゃね? とか。 いまどき64bit CPU前提にしてメモリ使い倒してもいいんじゃね? とか。 無限右スクロールというけど、スクロールバーが細くなりすぎて使えないとか の操作性がビミョウに心配だな。市販シーケンサでも曲が長くなると細かな 位置合わせができなくなってきたりとか、「1画面に収まる範囲でしか操作 できない病」は根強いような気がする。
718 :
716 :2009/10/11(日) 23:52:31 ID:FLTVdYcz
ありがとうです Cubaseなんかでも解像度バーとポジションバーの2つを駆使しますもんね なんだかだんだん頭痛くなってきた 固定長のピアノロールなら余裕だけど、いっそのことピアノロールやめようかなw
ピアノロールやめるのもアリだと思う。なんかこう、革新的なのだったらいいよね…使いやすさという点で MAXとかReaktorのユーザーパッチに色んなシーケンサーあるけど、「これは!」っての無いもんなあ
>>716 描画範囲のノートイベントを決定したら表示オフセットを計算して表示
ダブルバッファでちらつきを押さえる手法も有効
スクロールの場合、画面をシフトして描画範囲を減らすことも有効
スコアは描画イメージを保存するのではなく、ラインやフォントの
位置情報だけをリストとして保存
スクロールの度に表示開始位置を変更して描画
722 :
名無しサンプリング@48kHz :2009/11/05(木) 10:44:39 ID:DsEf3ShO
723 :
名無しサンプリング@48kHz :2009/11/08(日) 18:21:24 ID:DDg24HFc
ソフトの機能に著作権って発生するの? Visionそっくりな機能なクローンシーケンサー作ったら訴えられる?
ボタンの画像データとかコードをパクって無ければまず大丈夫。 「そっくり」レベルでデータを丸々流用しましたとかは無い前提で。 ただ、商売にして儲かりだしたら危ないのは、ゲーム機のコントローラーと一緒。 Opcodeじゃない別の所から思ってもいなかった横槍が入るかもしれない。 MP3書き出しはウチの特許ですとか(これは最近切れたけど)。 不安ならフリーかつオープンソースで、研究って名目にすればいい。
>>724 とりあえずJavaで作ってみる。音のタイミングとかは二の次で
シーケンサーの作り方のテストとして。
ピアノロールのGUIが難しい。Winのフリーシーケンサーは
グリッド位置が固定でノート位置のみ再描画というのが多いけど
Visionみたいに自由スクロールに挑戦。
>>725 がんばれー
Javaと聞いてUbuntuStudiodo導入してテストしてみたくなった。
あまり関係無いけど、Head Fast Javaはドラムマシンが作例だったね。
>>725 ピアノロールのGUが難しいIって、具体的にどの辺?
ベロシティは彩度で表現するのが一番わかりやすい気がする。ノートをダブルクリックしたらいじれるようにして
でもどのDAWも苦労してるとこだから、新しい表現方法を考えたいよね。3次元にしちゃうとかw
>>727 visionの動きを再現するるのがってことでないかな。
自分もvisionユーザーだったからモチベーションは共感する。
>>728 そっか。ずっと読んでるくせに流れ無視してたわ。すまん
しかし3次元にするのは瓢箪から駒な気がしてるのは浅い証拠かな
そういう新しいUIだと入力装置も新しくないと因習に縛られて受け入れられないと思う。 みんな、今の方法がベストだと思っているし、実際慣れた道具が一番だから。 慣習に過ぎないものを合理的ではないと否定するだけの説得力を持たせられないと。 3Dという曖昧な概念では、いまいち便利さが見えてこないな。
スペクトルを時間軸に沿って全部手で描くようなシーケンサでも考えているのかと思った シーケンスごとにレイヤー作ってCtrl+ホイールとかで切り替えるような設計にするほうが3D使うよりよくないか?
ん、そうかも。まあ素人の戯言ですw
735 :
731 :2009/11/10(火) 04:57:32 ID:LnHAQovj
>>732 そんなに激しく謙遜しなくていいですよーていうかされると困ります。
貴方の見識が浅いって訳じゃなく、自分自身visionの因習から離れられなくて、
>725に期待している保守的モチベーションを説明したようなものですから。
TENORIONもそうだけど、間違っているとか言われ凹んでたら出てこない。
>>733 自分はKAOSSPADのもっと立体的な空間系を持った奴で
こんなの↓でもないと掴むのすら大変という代物かと思ってた。
ttp://internet.watch.impress.co.jp/cda/news/2006/11/29/14072.html そしたら案外現実的だったので調子外れ(笑
>シーケンスごとにレイヤー作ってCtrl+ホイールとかで切り替える
同意。
半透明レイヤー表現で重ね合わせにとどめ、切り替えスイッチへのアクセスが
いかに容易かが実用性に直結してくる部分だと思う。
いや、SpaceNavigatorみたいなニッチなコントローラーより 今ならマルチタッチパネルのほうが浸透しているか…
急に割り込んで申し訳ないです。 MIDIシーケンサーは前から作りたいと思ってるんですけど敷居が高いですよね。 GUIの描画とかタイマーの問題とか他にもいろいろ想定して設計しないといけないので 深夜プログラマの自分には手を出しづらい分野です。 シーケンサーを作る上での問題点や苦労、経験をまとめたサイトとか出ないかな。
シーケンサ作りのノウハウは金を産むネタにもなるからなー 気前のいいオープンソース開発者やフリーソフト開発者のサイトを探せばなんかあるかもな
こういうコアな分野だと他人のソース分析・改変しながら 研究するのがほとんどなんじゃない? そういえばdominoの中身はcherryだって言うのは本当なのかな。
>>738 ここでアイデア出し合って作っていくのが一番賢いと思うんだけど…
>>739 Cherry作者にソース公開する気はありますか?ってメールしたら
「古過ぎて恥ずかしい。整理したらオープンで公開する気はあるけど、
忙しくて時間が無いから無理ぽ」
的な回答があったので、C+か何かで1から作った。
という流れだったと思う。
たしか、Cherryベースで作ろうとしてた時は、
Perry(仮)って名前だったけど、1から作ることになってからは
Midi Portal(仮)って名前にしてた。
最終的にはDominoになったけど。
Q Programming Language :
ttp://q-lang.sourceforge.net/ 関数言語で日本国内だと知名度はないがアドオンで
tcl/tk, MIDI, OCS, ALSA, JACK, ASIO, Open GLなどに対応している。
ただし開発情報は英語ということだけ断っておきますよ。
12月の保守。 来年こそはシーケンサー作るぞ!!
実際にシーケンサー作ってる人たちって 外部のライブラリとか多用してるのかな。 もしくは全て自前で組んじゃうの?
746 :
名無しサンプリング@48kHz :2010/01/29(金) 19:01:10 ID:fHzUfV/Y
て
>>745 とにかく日本にはオープンソースでMIDIシーケンサーを作った人が
一人いるのだから、そのサイトを見ればライブラリが自前かどうか
なんてすぐわかるじゃん。
MIDIのネイティブAPI自体はシンプルだから自前でもわりと簡単につくれちゃうけどね GUIはライブラリ使わないとやってられないが
ある信号処理の一部をSSEに書き直したら遅くなったぜorz
750 :
名無しサンプリング@48kHz :2010/02/06(土) 05:22:57 ID:WPGjwiR2
a
For文の中でxmm0レジスタを使いまわすのをやめて xmm0とxmm1の二つに分けたら早くなった。マイクロ秒レベルだがw
音量をdB表示にするときに16bitの場合なら2^16 = 65536を基準にして 最大で20*log10(65536)=96.33dBまで表現できるという解釈でよい?
その信号が負数にならないなら…
754 :
752 :2010/02/10(水) 22:06:32 ID:+sSu2+0Q
あ、素で間違えた 32768だ
Java、Perlのプログラミングをやってきた者だけど、Windowsの MIDIシーケンサの制作って出来るものなのかなぁ…… Windowsアプリは全くの無知で、VisualStudioとやらを買って作れば良いのかな と思ったけど、VBやらC#やらJ#?やら色々あってワケワカメでござるよ
757 :
755 :2010/03/07(日) 21:06:55 ID:0ZNcPNkc
>756 755です。 僕PHPプログラマで、Windowsアプリは作ったことなかったですけど、入門書とリファレンス読みながらやったら、なんとかそれっぽいものができましたよ。 ちなみにVisual studio Express Edition(無料)のC++で作りました。
756っす。C++ですか。thx ぐぐってみたら便利なもんが無料になっとるのね。こいつはすげえ。
よし、iPad用のシーケンサー作ろうぜ! まずはMac買わなきゃな…
なんかの経済雑誌でソニーの人がiPad用のスコアリングソフトつくってるという話が出てた
761 :
名無しサンプリング@48kHz :2010/05/16(日) 15:13:23 ID:KYCnEMsy
保守
762 :
名無しサンプリング@48kHz :2010/07/30(金) 23:08:15 ID:wrMFmS4s
ho
763 :
名無しサンプリング@48kHz :2010/09/04(土) 08:21:03 ID:+iuO5BFa
保守
僕もシーサー犬つくりたい
765 :
名無しサンプリング@48kHz :2010/09/06(月) 17:24:08 ID:gW3eBC4f
僕もシーモンキーを作りたい
保守
保守
768 :
名無しサンプリング@48kHz :2010/12/24(金) 22:13:34 ID:q0DmLPBP
CherryやDominoなどのMIDIシーケンサでは ほとんどが独自フォーマットで保存してるみたいですが、 MIDIデータ主体のシーケンサで独自フォーマットを採用する利点ってなんですか?
俺の場合は、SMFの範囲外のデータ(MIDIポート名とか)も保存したり、 自分のソフトの対応外のSMFデータが読み込まれるのを防止したいときに独自フォーマットを使ったことがある。 あと、ランニングステータスを使わないでデルタタイムを保存したり、絶対位置で保存したりも自由なので楽。
大抵のシーケンサーは内部的には独自形式で処理してるんじゃないの? 仮にそうだったら独自フォーマットは必然なんじゃないかな。 シーケンサー側からすればデータ配列を直接ファイルに書き出すだけで済むわけだし。
一体いつになったらこのスレから 既存以上のシーケンサが生まれるのやら・・・w 先人と同じ部品使ってろくなもんが出来ないのは コンセプトがオナニーだからか? まじめにここの住人は何を思ってシーケンサーを 作っているのか不明www
772 :
名無しサンプリング@48kHz :2010/12/27(月) 00:19:20 ID:rYcGeOw+
mc-500系のシーケンサーをPC版で作ってくれたら最高なんだがな〜 いまだに、あの使い勝手に未練を感じる・・・。
>>771 Windowsにはフリーで使いやすいのが色々あるけど、Mac OS Xにはまだないんだよ。
シーケンサーのAPIはあるんだけどね。
おぉ、このスレで成果物がうpされたのって初じゃね?
>759 mac使ってますよ。いまSDKをインストールした。 Objective-c だね
778 :
777 :2011/02/28(月) 04:09:46.05 ID:8p5vaRB0
デザイナーです。 よければGUIを作りたいです。 シーケンサーってごつごつしててつまみとかもいっぱいあるわで圧迫感ありますよね。 複雑で操作戸惑うし。 そこがかっこいいかもしれないけど。 あっさり和風デザインとかどうだろう。
779 :
777 :2011/02/28(月) 04:28:45.87 ID:8p5vaRB0
すみませんたて続けに。 ちなみに何のデザイナーかといいますとWEBデザイナーです。 なのでよければ専用のサイト作れます。 プログラムも少しやってて、PHPで掲示板とかチャットとかいろいろ作れます。 mac使いなのでObjective-Cをいじってみたけど、一人ではなかなかそこまでは いけないかな〜と思ってました。 なのでシーケンサー開発のホームページ作って貢献したいです〜。 明日休みだけどもう寝ます
まじで共同制作やんの? あと二年遅かったら参加してたのに。
781 :
777 :2011/04/15(金) 07:20:37.16 ID:bTIFBthI
アナログシンセを作っています。 鍵盤を弾くとsin波、そのほかのこぎり波がでるようになりました。 簡単なステップシーケンサの機能作って「自動演奏モード」的なものを設置したい のだけれど、なにか参考になりそうな 書籍、サイトなどないかなあ。。 自動演奏を実現するには、 基本的に配列とかにデータを入れておいて、タイマーとかで自動的に順番に再生している んでしょうか??
782 :
777 :2011/04/23(土) 06:59:14.68 ID:49SFBlbv
シンセサイザー制作、いいところまで来ています。 iPhone用でつくってるんですけどね。 今考えてるのはスーパーソーとポルタメント、の機能かなあ。 ここの板の方はなにか希望の機能はありますかね? 技術力がないんで作れるかは分かりませんが。。 関係ないけどシーケンサーって沖縄語っぽいですよね。 いい天気ですねみたいな意味 なわけない。。
>>782 もしかして: シークワーサー
あーシークワーサーソーダ飲みたくなったじゃないのよ。
鍵盤の手前か奥にでもリボンコントローラー付けてピューンとピッチを動かせるようにしてくれ。
784 :
777 :2011/04/30(土) 07:11:25.52 ID:PMFriBSk
>783 それだ。 シークワーサー 沖縄行きたくなってきた。。 リボンコントローラー はじめて知ったレベルですが、作れればつけてみたいですね。 GWもこつこつ作業してます。。
785 :
名無しサンプリング@48kHz :2011/04/30(土) 19:44:11.37 ID:PMFriBSk
スーパーソーの波形ってどのような形なのでしょうか? デチューンしたノコギリ波をいくつか重ねるらしいのですが。 どなかかEXCElで再現できる方などいらっしゃいませんか?
自分で音作って波形編集ソフトで見ればいいじゃん
787 :
名無しサンプリング@48kHz :2011/07/26(火) 04:34:20.99 ID:L5GKXzBj
ho
788 :
名無しサンプリング@48kHz :2011/08/02(火) 23:14:13.82 ID:7efkY5W6
ふん
789 :
名無しサンプリング@48kHz :
2011/11/09(水) 17:24:51.26 ID:v6E4HHHe ぷん