トップ 差分 一覧 Farm ソース 検索 ヘルプ PDF RSS ログイン

TextForHSP06

*disclaimer
158300

[HSP]

06. 音声の録音と外部ファイルからのデータ取り込み




 06.1 音声の録音


絵を見て、答えを録音する



  • 画像ファイル: po.png(先週と同じもの)
  • 音声ファイル: po.mp3(先週と同じもの)

結果は以下のファイルに保存される

  • 録音データ(sample.wav)
  • 録音にかかった時間(time.txt)



録音に必要な命令(マイク必要)


  • 準備
mci "open new alias sam type waveaudio"
			; waveでsamという「デバイス」に録音
mci "set sam channels 2 samplespersec 44100 bitspersample 16"
    • チャンネル数 2(ステレオ)
    • サンプリング周波数 44100Hz
    • サンプルビット数 16


  • 操作
mci "record sam"		; 録音の開始
mci "stop sam"			; 録音停止
mci "save sam \"sample.wav\""	; 音声ファイル保存
mci "close sam"			; 録音終了(デバイスを閉じる)

 06.2 外部ファイルからのデータの取り込み

  • flashCard01c.hsp

テキストファイルから単語を読み込む

  • テキストファイルは words.txt というファイル名
  • 一行一単語ずつ
puzzle
idle
simple
waggle
twinkle
challenging

  • 同じフォルダーに入れておく。

notesel notename; 事前に読み込みバッファ(メモリーパッド)の設定
noteload "words.txt" ; テキストファイルの読み込み
  • 「メモリーパッド」とは、行単位でテキストデータを扱う「特別な」変数(noteなんとかという命令群)
  • notemax に読み込んだ行数が自動的に入る。

noteget 変数, 番号
  • メモリーパッドの何番の行を読み込むか指定
  • 読み込んだ内容を変数に入れる
  • 「第5文型」: 変数に番号(の内容)をgetする

 06.3)外部ファイルからのデータの取り込み(二次元配列)

二つの対応する項目(英語,日本語)をテキストデータ(CSVファイル)にしておく。


  • スクリプト: flashCard02b.hsp
  • データファイル: text.csv
analysis,分析
response,反応
occur,発生する

データファイル: text.csv

  • エクセルで作って、CSVファイルで保存

英語 日本語
concept 概念
method 方法
analysis 分析

読み込んで二次元配列に入れていく

wordlist(フィールド番号, レコード番号)

(レコード番号とフィールド番号の順番に注意)
フィールド番号 レコード番号
0,0 1,0
0,1 1,1
0,2 1,2


外部ファイルからのデータ取り込み

notesel text        ; 事前に読み込みバッファ設定

noteload "text.csv" ; CSVファイルの読み込み

gyosuu = notemax    ; notemaxは、「メモリーパッド」内の行数。

  • csvファイルで読み込む点に注意


二次元配列の定義


sdim wordlist, 2, notemax

  • sdim で「文字列型配列」を使うことを定義
  • wordlist という名前(変数名)にする
  • 2 つの「フィールド」を使うことを指定
  • notemax の数だけの「レコード」数(行数)(具体的に数を書いてもよい)



データを読み込んで、「カンマ」を区切りとして、二次元配列に入れていく


split をHSPキーワード検索して説明を読む

repeat gyosuu		; 行数(語数)分だけ繰り返す。
	noteget item, cnt; noteget で行単位で読みだす。
        	; cntで読み込みインデックス番号を指定
	split item, ",", wordlist(0,cnt), wordlist(1,cnt)
        	; item をカンマで切って、二次元配列に代入
	item = ""
	await 1
loop

 06.4)音声ファイルを順に鳴らす


  • スクリプト: flashCard03.hsp
  • データファイル: text.csv
  • 音声ファイル: 番号.mp3

  • 音声テストスクリプトから解説



 06.5)音声ファイルを聞いてタイプする 


★このスクリプトにはバグがあります。直してみましょう。


  • スクリプト: flashCard04d.hsp
  • データファイル: text.csv
  • 音声ファイル: 番号.mp3

  • 音声テストスクリプトから解説