首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >要缓存的AudioInputStream

要缓存的AudioInputStream
EN

Stack Overflow用户
提问于 2012-05-23 14:51:29
回答 1查看 913关注 0票数 0

我正在开发一个web应用程序,其中我使用flash plugin从麦克风录制声音。录制完成后,我可以将录制的文件上传到服务器。请看下面的代码:

代码语言:javascript
复制
            // Get the input stream
            InputStream is = request.getInputStream();
            InputStream bufferedIn = new BufferedInputStream(is);
            AudioInputStream ais = AudioSystem.getAudioInputStream(bufferedIn);

            // Declare the new format to convert to
            AudioFormat audioFormat =  new AudioFormat(sampleRate, sampleSizeInBits, channels, signed, bigEndian);

            // Convert the format and return the new audio input stream
            ais = AudioSystem.getAudioInputStream(audioFormat, ais);

现在,在此转换后,我想将音频数据从ais保存到缓冲区中,并将其上传到DB。

我该怎么做?谢谢!!:)

EN

回答 1

Stack Overflow用户

发布于 2012-05-23 16:03:17

AudioInputStream扩展了InputStream,因此您可以直接使用它来存储到数据库。使用JDBC时,您可以使用:

代码语言:javascript
复制
ais = AudioSystem.getAudioInputStream(audioFormat, ais);
PreparedStatement prep = conn.prepareStatement("insert into data values(?, ?)");
prep.setInt(1, 1);
prep.setBinaryStream(2, ais);

请注意,不带长度参数的setBinaryStream仅在Java6及更高版本中可用。某些数据库可能不支持它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10714857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档