/tmp/duangsuse.sock
23 subscribers
303 photos
3 videos
92 files
337 links
从 duangsuse::Echo (@dsuse) 跟进出来的分支,将在作者恢复原帐号访问的时候合并删除。
Download Telegram
// audio: channel * sample
// sample: rate(sample pre sec) / size(bit size)

typealias Real = Double
typealias Sample = Double
abstract class SampleIterator: DoubleIterator {
final override fun hasNext() = true
final override fun nextDouble() = nextSample()
abstract fun nextSample(): Sample
}

typealias IndexedSampler = (Int) -> Sample
open class Wave(private val y: IndexedSampler): SampleIterator {
private var x = 0
override fun nextDouble() = y(x++)
}
open class RepeatWave(y: IndexedSampler, private val cycle: Real)
: Wave({ y(it) * cycle * ((i%cycle) /cycle) }) /*cycle realdiv (i%cycle)*/

object SinWave: RepeatWave({ sin(2*PI*it) })

现在正在写
不成功便成仁
  writeBytes("RIFF") 
writeBytes("fmt")
writeShort(1); //format=PCM
writeShort(1); //channels
writeInt(_441kHz); //samples per sec
writeInt(_441kHz*1*(16/Byte.SIZE_BITS)); //byte rate
writeShort(1*(16/Byte.SIZE_BITS)); //block align
writeShort(16); //sample size=16
writeShort(0) //extend area

受不了了,这种东西明明应该由 org.duangsuse.bin 来处理。
本苏的 bin 库,一切文件格式通吃。
SinWave.kt
1.1 KB
#kotlin 提出了一些常量
绝望了。
SinWave.kt
1.2 KB
#kotlin 就在我感到绝望的时候,突然发现一个 bug,一修完——马上一段空灵的声音响起,那是、那是……
Audio
我简直热泪盈眶,总算可以睡觉了。
Forwarded from Deleted Account
iseki 你说对了,我忘记 JDK 的 DataI/O Stream 全是大端……
Forwarded from Deleted Account
真是…… 弄错了字节序
不过好像真是有问题,改回 big endian 反而旋律也没有了,放大一看就是一堆竖着的直线,没有正弦波
……好像小端的也是一样,没正弦波……
Forwarded from Deleted Account
这个不好,信号窗口太小了,只有一个采样,不摩登,仅供参考。
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta | Nya⠀)
This media is not supported in your browser
VIEW IN TELEGRAM
不负泽任。 #Low #China
Forwarded from TARDIS
Screenshot_20200121-100523_WeiboIntl.png
19.8 KB
原来砖家的话这么厉害啊,一句话声明就能让病毒的传染性变弱,自己也说了还是初期,还tm以非典极期比?现在就开始让人掉以轻心,是想让当年非典时期那样再现超级传播者?
Forwarded from TARDIS
我看这种代码风格不顺眼很久了,一看到重复逻辑就忍不住要抽提出来,手痒管不住。