2002 spring term project data stream
Download
1 / 9

2002 spring Term Project 音楽 data stream 周辺 - PowerPoint PPT Presentation


  • 71 Views
  • Uploaded on
  • Presentation posted in: General

2002 spring Term Project 音楽 data stream 周辺. KMSF B2 ’ 幸田 acky 拓耶. 今回の製作物. オーディオデータ転送システム CD からのリッピングおよびソケットへの書き込みを行うライブラリ ソケットからの受信およびサウンドデバイスへの書き込み、ボリュームコントロールを行うライブラリ それらのテスト用アプリケーション. 今回のシステム図. GUI. リモコン役 PC. ① 君は誰?. ① 君は誰?. ② 俺 Speaker. ② 俺 CD Player. 制御系やりとり. ③ 再生してくれる?.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha

Download Presentation

2002 spring Term Project 音楽 data stream 周辺

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


2002 spring Term Project音楽data stream 周辺

KMSF B2’幸田 acky 拓耶


今回の製作物

  • オーディオデータ転送システム

    • CDからのリッピングおよびソケットへの書き込みを行うライブラリ

    • ソケットからの受信およびサウンドデバイスへの書き込み、ボリュームコントロールを行うライブラリ

    • それらのテスト用アプリケーション


今回のシステム図

GUI

リモコン役PC

①君は誰?

①君は誰?

②俺Speaker

②俺CD Player

制御系やりとり

③再生してくれる?

④音楽データ

Speaker (Amp.)

CD Player

acky

音声系やりとり

CDプレーヤ役PC

スピーカ役PC


プロトコル上の工夫

  • TCPを利用しているがパケット風の通信(ヘッダ+データの繰り返し)にして音声再生中の周波数の変更などに即座に対応できるようにした。


実装上の工夫

  • コントロール系を別の人間(sunsaku)が開発しているためライブラリ形式にした。

  • 音声転送作業がコントロール系の作業に影響しないように別スレッドにしたので、全ての関数が非ブロッキングにできている。

  • ビットレートを変えらるようにしてQoSのための布石とした。


仕様

  • ビットレートは3種類

    • 1411.2kbps (PCM 44.1kHz 16bit Stereo)

    • 705.6kbps (PCM 22.05kHz 16bit Stereo)

    • 352.8kbps (PCM 11.025kHz 16bit Stereo)

  • FreeBSD4.2以降で動作


今回の構成

  • libcd.so

    • CDからのリッピングとソケットへの出力を行うライブラリ

  • libspk.so

    • ソケットからの入力と/dev/dspへの出力、/dev/mixerの制御を行うライブラリ

  • cdtest

    • libcd.soのテストのためのshell形式のプログラム

  • spktest

    • Libspk.soのテストのためのshell形式のプログラム


ライブラリの機能 ~libcd.so~

  • int cdplay(in_addr_t)

    • 指定されたアドレスへ再生開始

  • int cdstop(void)

    • 停止

  • int cdsetrate(int)

    • ビットレート変更

  • int cdgetstatus(*struct status)

    • 現在のドライブの状態、ビットレートなどを取得

  • int cdpointrel (int)

    • 相対値による曲番指定

  • int cdpointabs(int)

    • 絶対値による曲番指定

  • int cdeject(void)

    • CD取り出し


ライブラリの機能 ~libspk.so~

  • int spkvolrel(int)

    • 相対値による音量指定

  • int spkvolabs(int)

    • 絶対値による音量指定


ad
  • Login