我确信我缺少一些与actionscript 3相关的基本内容,但我没有多少使用它的经验。
我问题的背景:
麦克风录制的声音需要通过基于http的支柱协议(使用安全套接字)发送到后端。为了实现这一点,语音字节每20 use(或使用编解码器的80字节)每20 use注入一次(即在记录字节之前注入一些帧字节),并通过打开的套接字连接推送。
因此,我认为最好的方法是将记录的数据存储到字节数组B中,这个字节仍在被写入到每80个字节时
现在,如果我从字节数组B中读取,操作会重置bytearrya的指针,当一个新的语音字节出现时,它肯定会覆盖指针后面的字节?
我怎样才能避免这种情况发生呢?
谢谢你的指点。
发布于 2012-08-24 00:39:09
注意,可以重置ByteArray的指针(ByteArray)的docs状态。
将文件指针的当前位置(以字节为单位)移动或返回到ByteArray对象。这是下一次对read方法的调用开始读取或写方法开始写入的时候。
因此,您可以在进行读取操作之前重置position,并以这种方式管理FIFO。
但我认为使用字节数组作为FIFO可能有问题:
clear()之外,我没有看到任何API可以这样做。SampleDataEvents会如此频繁地出现,从而降低效率或出现问题保持一个FIFO (使用一个数组)就更容易了,您可以从每个SampleDataEvent中获得一个独立的ByteArray。
https://stackoverflow.com/questions/12101588
复制相似问题