ユーザ用ツール

サイト用ツール


osd1

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
osd1 [2022/07/10 15:32]
– [利用OSS] yaasan
osd1 [2022/07/12 08:33] (現在)
yaasan
行 1: 行 1:
 ====== SmileSoundDecoder rev.0 ====== ====== SmileSoundDecoder rev.0 ======
  
-スマイルサウンドデコダは、オープンサウンドデータより活用するために開発を進めている、日本製・国産のサウンドデコーダです。欧州のトップメーカーであるZ社、E社のサウンドデコーダのクラスを目指て開発を進めてい +移動しました。[[https://desktopstation.net/smilesound/|SmileSoundデコーダ]]
- +
-[[https://desktopstation.net/|DesktopStation株式会社]]、[[http://nagoden.la.coocan.jp/|Nagoden]]、[[https://fujigaya2.blog.ss-blog.jp/|フジガヤ2]],[[http://maison-dcc.sblo.jp/|Maison de DCC]]を中心とする、DCC電子工作連合の共同開発製品です。 +
- +
- +
-サウンドデコーダの根幹であるサウンドの動きは、オリジナルのCSVスクリプトエンジンを用いることにより、自由にサウンドプログラミングが実現可能です。 +
- +
-開発ステップ(案):\\  +
-Step1(2022年): 基本的なサウンドデコーダの技術構築、一般協力者との共同評価\\  +
-Step2(2023年): 一般販売の開始\\ +
-  +
- +
-{{::rev0_omote.jpg?400|}} +
-===== コンセプト ===== +
- +
-  * DCCをより楽しく +
-  * ソフトウェア・ハードウェアデザインの国産化 +
-  * 入手性、カスタマイズ性を重視 +
-  * **リーズナブル**なサウンドデコーダ(安さを追及するものではない) +
- +
-===== アーキテクチャ ===== +
- +
-  * RP2040を軸にした、一般的なサウンドデコーダに相当するアーキテクチャを採用 +
-  * Arduino IDEで開発可能な[[https://github.com/earlephilhower/arduino-pico|Arduino-picoライブラリ]]をハードウェアライブラリに使用 +
-  * 16MB弱をサウンドに利用可能(0.5MB程度はファームウェアに使用) +
-  * サウンドは、ユーザーがカスタマイズ可能なCSV形式のスクリプトプログラムで実行可能。将来的にはGUIツールによるブロック線図プログラミングも視野に入れている。 +
-  * サウンドデータは、LittleFSを使用し、USBでダウンロード可能。将来的には線路経由(UART over DCCとRailComによる通信)での書き込みが可能なシステムを開発予定。 +
-  * 当面は独自のUSB型書き込みアダプタを用いて書き込む方式となります。 +
- +
- +
-===== 製品 ===== +
- +
-以下は構想段階であり、仮です。まだ具体的な製品予定ではありません。 +
- +
-  * MTC21対応デコーダ OpenSoundDecoder MTC21,NEM652 (仮,DesktopStation) +
-  * Next18対応デコーダ OpenSoundDecoder Next18 (仮,Nagoden) +
- +
- +
-===== 構成要素 ===== +
- +
- +
-|サウンドエンジン| WAVファイル管理、再生を行う部分 | +
-|サウンドフロー| CSVスクリプトを実行する部分。設定機能も一部含まれる | +
-|モータ制御 |ブラシ付DCモータ用のモータ制御エンジン +
-|NMRA DCC Library | NMRA製オープンソースDCCエンジン | +
-===== サウンドフロー ===== +
- +
-CSV形式のプログラムを採用。 +
- +
- +
-  * スクリプトはロードされた後、常時実行されます。 +
-  * 最大、同時に12個のサウンドを再生可能です。E社の最新デコーダと同等を実現しています。 +
-  * サウンドプログラム(サウンドフロー)は同時に16点を実行可能です。使っていないフローは自動的に終了する機能を有しており、意識せずにサウンドプログラミングできます。 +
-  * サウンドファイルは、8bitならびに16bitのモノラルの44.1kHz, 22.1kHz, 10.25kHzのRIFF WAVEファイル(LPCM)に対応しています。 +
-  * 状態遷移はスクリプト上に記述します。ifとgotoで状態遷移の待つ条件を作ります。ifの条件式が成立したら、遷移させる形です。 +
-  * CSVスクリプトは128行まで。 +
-  * E社のLS5デコーダ相当の処理を実装可能な仕様を予定しています。 +
- +
- +
-<code> +
-echo,startflow +
-label,START +
-if,fnc==1,PLAY_ON, +
-goto,START +
-label,PLAY_ON +
-play,seibuaw_in.wav,0,+
-echo,playwav +
-play,seibuaw_loop.wav,1,+
-label,PLAY_LOOP +
-if,fnc==0,END,PLAY_LOOP +
-label,END +
-play,seibuaw_out.wav,0,+
-echo,exitflow +
-goto,START +
-</code> +
- +
-CSVスクリプトで使用可能な関数は以下の通り。 +
- +
-^Command name|Description | Examples| +
-^if |条件分岐 |if,fnc==1,TRUE_LABEL,FALSE_LABEL(FALSEは省略可) | +
-^goto |ラベルへジャンプ |goto,LABELNAME | +
-^play |サウンド再生 |play,filename,loop(0 or 1),immediate(0 or 1) | +
-^wait |ウェイト | ms秒単位で待つ | +
-^label |ジャンプ用ラベル | ifやgotoの飛び先。大文字英数字で記載すること。 | +
-^echo |コメント | 無視されるコメント文。備忘録用 | +
-^set |変数の設定 | shareやlocalに設定する。 | +
-^aux |AUX出力の指定 |aux,1,1 | +
-^call |他のサウンドフローの呼び出し・実行 |call,flow3.csv | +
-^monf |監視するファンクション番号の設定 |monf,8 | +
-^exit |実行しているサウンドフローの終了 | | +
-^stop|WAVファイル再生を止める | | +
-^set| | | +
-^ret|一番上のフローに戻る | | +
-^vol|フロー内のボリューム変更 | | +
-^volm|マスターボリュームの変更 | | +
-^pit|WAVファイル再生のピッチ(周波数)変更 | | +
-^scrv|速度カーブ設定 | | +
-^cfg| | | +
-^slim|速度制限 | | +
-^let|変数に値をセットする | | +
-^wrnd| | | +
-^wtrg| | | +
-^date|ファンクション操作時にロードするcall相当コマンド | | +
-^sply|速度連動型WAVファイル再生 | | +
-^auxs|AUXの設定変更 | | +
-^plyx|自動ウェイトなしでWAVファイルを再生する | | +
- +
-==== if 条件分岐の引数 ==== +
- +
-^定義済変数 ^ ^ +
-|spd | 現在速度。 | +
-|ref | 指令速度。加減速中では、現在速度とズレが生じます | +
-|acc | 加減速度 | +
-|local1,local2,・・・ |サウンドフロー内で使用できる変数 | +
-|share1,share2,・・・ |全サウンドフローで使用可能な変数 | +
- +
- +
- +
- +
- +
- +
-===== 対応ハードウェア ===== +
- +
-準備中 +
- +
-===== ファームウェア ===== +
- +
-準備中 +
- +
-===== License ===== +
- +
-検討中 +
- +
-===== 利用OSS ===== +
- +
-オープンサウンドデコーダは、以下のオープンソースソフトウェアを使用しています。 +
- +
-  * [[https://github.com/mrrwa/NmraDcc|NMRA DCC Library]] (LGPL) +
-  * [[https://github.com/earlephilhower/arduino-pico|Arduino-pico Library]] (LGPL) +
-  * Pico SDK (BSD 3-Clause license) +
-  * LittleFS  (BSD 3-clause license) +
-  * mklittlefs (MIT License) +
- +
-SoundFlowライブラリ、ManageWaveライブラリは、DesktopStation・フジガヤ2・Nagodenの開発物です。 +
- +
- +
-===== 関連資料・記事 ===== +
- +
-  * [[https://desktopstation.net/blog/2022/01/20/rp2040%e3%81%a7%e9%9f%b3%e3%81%ae%e5%86%8d%e7%94%9f%e5%ae%9f%e9%a8%93-%e3%81%9d%e3%81%ae%ef%bc%94/|RP2040で音の再生実験 その4]] +
-  * [[https://fujigaya2.blog.ss-blog.jp/2022-01-16|RP2040で音の再生実験 その3]] +
-  * [[https://fujigaya2.blog.ss-blog.jp/2022-01-02|RP2040で音の再生実験 その2]] +
-  * [[https://fujigaya2.blog.ss-blog.jp/2021-12-30|RP2040で音の再生実験 その1]] +
-  * [[https://desktopstation.net/blog/2021/12/16/rp2040%e3%81%ae%e7%92%b0%e5%a2%83%e6%a7%8b%e7%af%89/|RP2040の環境構築]] +
- +
  
osd1.txt · 最終更新: 2022/07/12 08:33 by yaasan

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki