www in docker support
This commit is contained in:
parent
539a848e95
commit
c227fce036
2145 changed files with 399596 additions and 58 deletions
|
|
@ -0,0 +1,43 @@
|
|||
package org.jcodec.audio;
|
||||
|
||||
import java.nio.FloatBuffer;
|
||||
import org.jcodec.common.AudioFormat;
|
||||
|
||||
public class ChannelSplit implements AudioFilter {
|
||||
private AudioFormat format;
|
||||
|
||||
public ChannelSplit(AudioFormat format) {
|
||||
this.format = format;
|
||||
}
|
||||
|
||||
public void filter(FloatBuffer[] _in, long[] inPos, FloatBuffer[] out) {
|
||||
if (_in.length != 1)
|
||||
throw new IllegalArgumentException("Channel split invoked on more then one input");
|
||||
if (out.length != this.format.getChannels())
|
||||
throw new IllegalArgumentException("Channel split must be supplied with " + this.format.getChannels() + " output buffers to hold the channels.");
|
||||
FloatBuffer in0 = _in[0];
|
||||
int outSampleCount = in0.remaining() / out.length;
|
||||
for (int i = 0; i < out.length; i++) {
|
||||
if (out[i].remaining() < outSampleCount)
|
||||
throw new IllegalArgumentException("Supplied buffer for " + i + "th channel doesn't have sufficient space to put the samples ( required: " + outSampleCount + ", actual: " + out[i]
|
||||
|
||||
.remaining() + ")");
|
||||
}
|
||||
while (in0.remaining() >= this.format.getChannels()) {
|
||||
for (int j = 0; j < out.length; j++)
|
||||
out[j].put(in0.get());
|
||||
}
|
||||
}
|
||||
|
||||
public int getDelay() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getNInputs() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
public int getNOutputs() {
|
||||
return this.format.getChannels();
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue