@Benchmark @BenchmarkMode(Mode.Throughput) public void decode(final Blackhole bh) throws IOException { Decoder decoder = new Decoder(maxHeaderSize, maxTableSize); decoder.decode(new ByteArrayInputStream(input), new HeaderListener() { @Override public void addHeader(byte[] name, byte[] value, boolean sensitive) { bh.consume(sensitive); } }); decoder.endHeaderBlock(); }
private void indexHeader(int index, HeaderListener headerListener) throws IOException { if (index <= StaticTable.length) { HeaderField headerField = StaticTable.getEntry(index); addHeader(headerListener, headerField.name, headerField.value, false); } else if (index - StaticTable.length <= dynamicTable.length()) { HeaderField headerField = dynamicTable.getEntry(index - StaticTable.length); addHeader(headerListener, headerField.name, headerField.value, false); } else { throw ILLEGAL_INDEX_VALUE; } }
Decoder decoder = new Decoder(); while (!done) { Header frameHeader = bitStream.readFrame(); if (frameHeader == null) { done = true; } else { SampleBuffer output = (SampleBuffer) decoder.decodeFrame(frameHeader, bitStream); short[] next = output.getBuffer(); for(int i=0; i<next.length; i++) System.out.print(" "+next[i]); pcmOut = concatArrays(pcmOut, next); //do whatever with your samples }
Thread t1 = new Thread(new Runnable() { public void run() { try{ Decoder decoder = new Decoder(); File file = new File("C:" + File.separator + "as.mp3"); FileInputStream in = new FileInputStream(file); BufferedInputStream bin = new BufferedInputStream(in, 128 * 1024); decoder.play(file.getName(), bin); in.close(); decoder.stop(); } catch(Exception exc){ exc.printStackTrace(); System.out.println("Failed to play the file."); } }}); t1.start();
state = State.READ_INDEXED_HEADER; } else { indexHeader(index, headerListener); readName(index); state = State.READ_LITERAL_HEADER_VALUE_LENGTH_PREFIX; state = State.READ_MAX_DYNAMIC_TABLE_SIZE; } else { setDynamicTableSize(index); state = State.READ_HEADER_REPRESENTATION; readName(index); state = State.READ_LITERAL_HEADER_VALUE_LENGTH_PREFIX; int maxSize = decodeULE128(in); if (maxSize == -1) { return; setDynamicTableSize(index + maxSize); state = State.READ_HEADER_REPRESENTATION; break; int headerIndex = decodeULE128(in); if (headerIndex == -1) { return; indexHeader(index + headerIndex, headerListener); state = State.READ_HEADER_REPRESENTATION;
public HttpHeaderBlockDecoder(int maxHeaderSize, int maxHeaderTableSize) { decoder = new Decoder(maxHeaderSize, maxHeaderTableSize); }
public void endHeaderBlock(final HttpHeaderBlockFrame frame) { if (cumulation != null) { if (cumulation.isReadable() && frame != null) { frame.setInvalid(); } cumulation.release(); cumulation = null; } boolean truncated = decoder.endHeaderBlock(); if (truncated && frame != null) { frame.setTruncated(); } }
public void decode(ByteBuf headerBlock, final HttpHeaderBlockFrame frame) throws IOException { HeaderListener headerListener = NULL_HEADER_LISTENER; if (frame != null) { headerListener = new HeaderListenerImpl(frame.headers()); } if (cumulation == null) { decoder.decode(new ByteBufInputStream(headerBlock), headerListener); if (headerBlock.isReadable()) { cumulation = Unpooled.buffer(headerBlock.readableBytes()); cumulation.writeBytes(headerBlock); } } else { cumulation.writeBytes(headerBlock); decoder.decode(new ByteBufInputStream(cumulation), headerListener); if (cumulation.isReadable()) { cumulation.discardReadBytes(); } else { cumulation.release(); cumulation = null; } } }
state = State.READ_INDEXED_HEADER; } else { indexHeader(index, headerListener); readName(index); state = State.READ_LITERAL_HEADER_VALUE_LENGTH_PREFIX; state = State.READ_MAX_DYNAMIC_TABLE_SIZE; } else { setDynamicTableSize(index); state = State.READ_HEADER_REPRESENTATION; readName(index); state = State.READ_LITERAL_HEADER_VALUE_LENGTH_PREFIX; int maxSize = decodeULE128(in); if (maxSize == -1) { return; setDynamicTableSize(index + maxSize); state = State.READ_HEADER_REPRESENTATION; break; int headerIndex = decodeULE128(in); if (headerIndex == -1) { return; indexHeader(index + headerIndex, headerListener); state = State.READ_HEADER_REPRESENTATION;
new Decoder()); OutputStream outputStream = new BufferedOutputStream( new FileOutputStream(rawFilePath.toFile())))
try { Bitstream bitstream = new Bitstream(inputStream); Decoder decoder = new Decoder(); output = (SampleBuffer) decoder.decodeFrame(frameHeader, bitstream);
private void indexHeader(int index, HeaderListener headerListener) throws IOException { if (index <= StaticTable.length) { HeaderField headerField = StaticTable.getEntry(index); addHeader(headerListener, headerField.name, headerField.value, false); } else if (index - StaticTable.length <= dynamicTable.length()) { HeaderField headerField = dynamicTable.getEntry(index - StaticTable.length); addHeader(headerListener, headerField.name, headerField.value, false); } else { throw ILLEGAL_INDEX_VALUE; } }
Bitstream bitstream = new Bitstream(is); Decoder decoder = new Decoder(); boolean initialized = false; boolean done = false; } else { try { SampleBuffer output = (SampleBuffer) decoder.decodeFrame(frameHeader, bitstream);
private void insertHeader(HeaderListener headerListener, byte[] name, byte[] value, IndexType indexType) { addHeader(headerListener, name, value, indexType == IndexType.NEVER); switch (indexType) { case NONE: case NEVER: break; case INCREMENTAL: dynamicTable.add(new HeaderField(name, value)); break; default: throw new IllegalStateException("should not reach here"); } }
Decoder decoder = new Decoder(); total_ms += frameHeader.ms_per_frame(); SampleBuffer buffer = (SampleBuffer) decoder.decodeFrame(frameHeader, bitstream); // CPU intense
private void insertHeader(HeaderListener headerListener, byte[] name, byte[] value, IndexType indexType) { addHeader(headerListener, name, value, indexType == IndexType.NEVER); switch (indexType) { case NONE: case NEVER: break; case INCREMENTAL: dynamicTable.add(new HeaderField(name, value)); break; default: throw new IllegalStateException("should not reach here"); } }
try { Bitstream bitstream = new Bitstream(inputStream); Decoder decoder = new Decoder(); SampleBuffer output = (SampleBuffer) decoder.decodeFrame(frameHeader, bitstream);
AudioTrack.MODE_STREAM); mDecoder = new Decoder(); Thread thread = new Thread(new Runnable() { @Override SampleBuffer sampleBuffer = (SampleBuffer) mDecoder.decodeFrame(header, bitstream); short[] buffer = sampleBuffer.getBuffer(); mAudioTrack.write(buffer, 0, buffer.length);