プレイ日記
【豆知識】infやnanをIFに突っ込むと、成立(THENを実行)
14そうだね
プレイ済み
返信[1]
親投稿
素数行動…じゃなくて、ソースコード
1そうだね
プレイ済み
返信[2]
親投稿
他投稿にサーセンorz PCM_U83DSに送りました。ですがアレですね。8180Hzの時と全く同じで崩れますね。切り分けもしましたが無理。プチコン側で8180Hzに戻さなきゃいけないということか?
1そうだね
プレイ済み
返信[3]
親投稿
とりあえずREC3でグラフ出るでしょ?それ見せてみ
1そうだね
プレイ済み
返信[4]
親投稿
サンプリングレートに制限はない。
1そうだね
プレイ済み
返信[5]
親投稿
これですね。切り分けた場合です。 一応送ったデータ書いときますと、 PCM_U8 261kbps 32KHz(32728Hz)です
0そうだね
プレイ済み
返信[6]
親投稿
何秒分のデータ?
1そうだね
プレイ済み
返信[7]
親投稿
1.468secです。
1そうだね
プレイ済み
返信[8]
親投稿
画像を見ると3unit(&h4000*3要素)だよね。 要素数に問題はない。ということはエンディアンが逆かもしれない。 OPTION DEFINT DIM _IN[0],_OUT[0] FN$="DAT:ファイル名" LOAD FN$,_IN,0 FOR I=0 TO LEN(_IN)-1 FOR J=24 TO 0 STEP -8 ←ここを変える PUSH _OUT,255AND _IN[I]>>J NEXT NEXT SAVE FN$+"_",_OUT どんな音に聞こえるか、だ。なんとなく曲が聞こえるのか(リズムが狂ってるがそれっぽい音がするとか)、ただの雑音か。
1そうだね
プレイ済み
返信[9]
親投稿
あ、すごく大事なことを忘れたわ。さっきの試す前に「KEY?」って聞かれたときに24って打って!! これしないと2オクターブ低く聞こえるから。
1そうだね
プレイ済み
返信[10]
親投稿
現在の状態で再生した場合、聞こえるのはものすごく低音の「あ」ですね。例えるなら怪物みたいな。 普通ならぷちぼかろのような音声が再生されるはずです。 プログラム変更してみます。
1そうだね
プレイ済み
返信[11]
親投稿
PCからに切り替えました。 だいぶそれっぽくなりました。 ちなみにループは仕様ですか?
1そうだね
プレイ済み
返信[12]
親投稿
REC3は8182Hzを1倍速と扱うから 32728Hzは4倍速→4倍速は2の「2」乗、2オクターブは半音24個 16364Hzは2倍速→2倍速は2の「1」乗、1オクターブは半音12個 32728Hzを2の累乗で割ったものが推奨されるのよ。 REC3がループするのは仕様。
1そうだね
プレイ済み
返信[13]
親投稿
ちなみに FOR J=0 TO 24 STEP 8 FOR J=24 TO 0 STEP -8 どっちが正しかったかしら?
0そうだね
プレイ済み
返信[14]
親投稿
違和感を感じていたのは、知らない間にreverseをonにしていたからっぽいです。 プログラムを修正したところ、音は綺麗になりました。 ちなみにループするときにカチカチいうのも仕様ですか?それとも...ノイズ?
1そうだね
プレイ済み
返信[15]
親投稿
FOR J=24 TO 0 STEP -8 こちらですね。
1そうだね
プレイ済み
返信[16]
親投稿
カチというかザッという音がするのは仕様。 音符同士の間には強制的に音量0の時間ができるから、音が大きい部分を再生する場合、普通に再生しててもユニット初めには音がする。 ちなみに、あらゆる操作はユニット毎にしか効かないのであしからず。 ユニットは&h4000要素ね。
1そうだね
プレイ済み
返信[17]
親投稿
んで早速wavsetaでテストしようとしてみたんだが… な に も 鳴 ら な い
0そうだね
プレイ済み
返信[18]
親投稿
カチって音はスマイルツールのはけいで除去できますね。 これDATファイルのピッチ修正できないんですかね‥?
1そうだね
プレイ済み
返信[19]
親投稿
DAT自体の周波数を変えるには重い計算がいるのよね。再生時に変えるほうがいいで。おやすみ。
1そうだね
プレイ済み
返信[20]
親投稿
カチは2、3番目以降のカチは消せないのだろうか… そして「あ」だけすぐループするのは何故だろうか… お休みぃ(起きてるけど)
1そうだね
プレイ済み
返信[21]
親投稿
っておい… まさかこれBGMPLAYのテンポで倍速を…? ということはボカロどころじゃない気がするんだが…w T500なんて曲ねぇよ…w そしてWAVSETAが使えない…orz
1そうだね
プレイ済み
返信[22]
親投稿
…16364?
1そうだね
プレイ済み
返信[23]
親投稿
データ量が膨れ上がって馬鹿みたいなので、16364版と32728版に分けることにしました。 DAT自体のピッチ変えるのは凄く時間かかりますか?あと雑音等も入るのでしょうか。
1そうだね
プレイ済み
返信[24]
親投稿
そもそもやり方知らんけどサンプリングレートの変換にはすごいコストが掛かるってね
1そうだね
プレイ済み
返信[25]
親投稿
「サンプリング周波数変換」ってwikipediaにあったよ。ちなみに整数比ならいけるかもね。
1そうだね
プレイ済み
返信[26]
親投稿
そいつぁ大変だ。 WAVSETAで合成音声つくる、ってなったらサンプリングレート低い方が実用性あるか、なんて思えるなぁ…
1そうだね
プレイ済み
返信[27]
親投稿
1/2の場合なら2個に1個間引くだけでもそれっぽくできるかもね
1そうだね
プレイ済み
返信[28]
親投稿
但し8180Hz、お前はダメだ。
1そうだね
プレイ済み
返信[29]
親投稿
ごめんなさい無知な質問なんですけど、2個に1個間に引くってどういう意味かkwsk((orz
1そうだね
プレイ済み
返信[30]
親投稿
ようするに配列のうち偶数番目か奇数番目の要素だけ捨てればいいんじゃない?ってこと
1そうだね
プレイ済み
返信[31]
親投稿
あー、なるほど。
1そうだね
プレイ済み
返信[32]
親投稿
16364Hzの音源で切り分けると音声が崩れることが判明。謎。 これじゃあダメじゃん…
1そうだね
プレイ済み
返信[33]
親投稿
一応グラフ持ってきやした。「あ」の音源です。(前の32728Hzの音源を16364Hzに変換したもの) 何か違うのでしょうか?
1そうだね
プレイ済み
返信[34]
親投稿
こちらです。プチコンに転送してから、切り分け以外音源には触ってません。 良かったら理由を教えて下さると幸いなのですが…
1そうだね
プレイ済み
返信[35]
親投稿
見た目は同じだね。分からん。 ちなみにユニット未満は再生されない。
1そうだね
プレイ済み
返信[36]
親投稿
原因判明。無事解決 (エンディアンっての反対にすると悲惨なことになるなぁ…w)
1そうだね
プレイ済み
返信[37]
親投稿
8182Hzに変換して送って再生したらこうなった。 予測はデータサイズ。8182にしたら予想以上に少ない。 原因教えていただけるとありがたいです。
1そうだね
プレイ済み
返信[38]
親投稿
分かりませぬ… なぜこんなにも要素数が少ないのか…
1そうだね
プレイ済み
返信[39]
親投稿
うーん…あまさとsでも分からないとなると…。 PC側でデータ量を意図的に増やす、って手もあるけど色々面倒だしなぁ… まぁそもそもデータ量が関係してるって確証はないけど… 一つ聞きたいことが。無音でもそれは配列として記録されてデータ量は増えますよね? …8182版作るの大変そうだ。
1そうだね
プレイ済み
返信[40]
親投稿
無圧縮だから、無音だろうが音があろうが、時間に比例して要素数は増える。
1そうだね
プレイ済み
返信[41]
親投稿
ですよね。 WAVSETAは約2秒間分のデータを使用してるんだっけ?じゃあその後に無音を付け足せばいいのかな…? どうしようか…。
1そうだね
プレイ済み
返信[42]
親投稿
ユニット(&h4000)に達するまで128をPUSHして余なく再生されるはず
1そうだね
プレイ済み
返信[43]
親投稿
(もともと1unit未満の場合再生されないのは正常です)
1そうだね
プレイ済み
返信[44]
親投稿
128を…PUSH…?(kwsk(orz あーやっぱり正常か。
1そうだね
プレイ済み
返信[45]
親投稿
PUSH SND,128 ってことよ(&h4000要素に達するまで)
1そうだね
プレイ済み
返信[46]
親投稿
ん…?要素数を増やすって説明書に書いてあったんだが… すごく面倒だなぁ…
1そうだね
プレイ済み
返信[47]
親投稿
何故面倒?? WHILE LEN(SND)<&H4000 PUSH SND,128 WEND これだけでしょ
1そうだね
プレイ済み
返信[48]
親投稿
↑いや、それだけなら簡単なんですけど… ボカロとして活用すると考えると編集とかの面で面倒だなぁと。
0そうだね
プレイ済み
返信[49]
親投稿
なるほど あ、自分でプログラムを組むときは別に2秒分でなくてもいいんやで
1そうだね
プレイ済み