如何转换ShortBuffer到缓冲区[]?(How to convert ShortBuffer

2019-10-30 10:27发布

我在Android上使用JavaCV,而我这个采样活动沿着以下。 https://code.google.com/p/javacv/source/browse/samples/RecordActivity.java

但是,我是遇到问题的行

 recorder.record( ShortBuffer.wrap(audioData, 0, bufferReadResult). );

但我发现了例外的是行,因为它是期待一个缓冲区[]。 然而读入缓冲区和ShortBuffer,我不知道为什么它不会把它。

声明备案()

public void record(com.googlecode.javacv.cpp.opencv_core.IplImage image) throws com.googlecode.javacv.FrameRecorder.Exception { /* compiled code */ }

public void record(com.googlecode.javacv.cpp.opencv_core.IplImage image, int pixelFormat) throws com.googlecode.javacv.FrameRecorder.Exception { /* compiled code */ }

public void record(java.nio.Buffer[] samples) throws com.googlecode.javacv.FrameRecorder.Exception { /* compiled code */ }

这是使用缓冲区类我的第一次,所以我有点糊涂了,他们是如何工作的。

Answer 1:

Buffer[] barray = new Buffer[1];
barray[0] = ShortBuffer.wrap(audioData, 0, bufferReadResult);
recorder.record(barray);


文章来源: How to convert ShortBuffer to Buffer[]?