/** {@inheritDoc} */ @Override public void messageReceived(NextFilter next, IoSession session, Object message) throws Exception { if (message instanceof IoBuffer) { IoBuffer out = (IoBuffer) message; if (headers != null) { IoBuffer header = IoBuffer.allocate(12); header.putLong(System.currentTimeMillis()); header.putInt(out.limit() - out.position()); header.flip(); headers.write(header.buf()); } if (raw != null) { raw.write(out.asReadOnlyBuffer().buf()); } } next.messageReceived(session, message); }
if (config != null) { log.debug("Decoder configuration is available for {}", videoCodec.getName()); VideoData videoConf = new VideoData(config.asReadOnlyBuffer()); try { log.debug("Setting decoder configuration for recording"); if (config != null) { log.debug("Decoder configuration is available for {}", audioCodec.getName()); AudioData audioConf = new AudioData(config.asReadOnlyBuffer()); try { log.debug("Setting decoder configuration for recording");
/** * {@inheritDoc} */ @Override public IoBuffer asReadOnlyBuffer() { return buf.asReadOnlyBuffer(); }
/** * {@inheritDoc} */ @Override public IoBuffer asReadOnlyBuffer() { return buf.asReadOnlyBuffer(); }
@Override public IoBuffer asReadOnlyBuffer() { return buf.asReadOnlyBuffer(); }
/** {@inheritDoc} */ @Override public IoBuffer getByteBuffer() { return IoBuffer.wrap(bytes).asReadOnlyBuffer(); }
/** {@inheritDoc} */ @Override public IoBuffer getByteBuffer() { return IoBuffer.wrap(bytes).asReadOnlyBuffer(); }
public IoBuffer getFrame() { return frame == null ? null : IoBuffer.wrap(frame).asReadOnlyBuffer(); }
/** {@inheritDoc} */ public VideoData decodeVideoData(IoBuffer in) { return new VideoData(in.asReadOnlyBuffer()); }
/** {@inheritDoc} */ public AudioData decodeAudioData(IoBuffer in) { return new AudioData(in.asReadOnlyBuffer()); }
/** {@inheritDoc} */ public VideoData decodeVideoData(IoBuffer in) { return new VideoData(in.asReadOnlyBuffer()); }
/** {@inheritDoc} */ public AudioData decodeAudioData(IoBuffer in) { return new AudioData(in.asReadOnlyBuffer()); }
public IoBuffer getFrame() { return frame == null ? null : IoBuffer.wrap(frame).asReadOnlyBuffer(); }
/** * Sets a audio decoder configuration; some codecs require this, such as AAC. * * @param decoderConfig * audio codec configuration */ public void setAudioDecoderConfiguration(IRTMPEvent decoderConfig) { if (decoderConfig instanceof IStreamData) { IoBuffer data = ((IStreamData<?>) decoderConfig).getData().asReadOnlyBuffer(); audioConfigurationTag = ImmutableTag.build(decoderConfig.getDataType(), 0, data, 0); } }
/** * Sets a video decoder configuration; some codecs require this, such as AVC. * * @param decoderConfig * video codec configuration */ public void setVideoDecoderConfiguration(IRTMPEvent decoderConfig) { if (decoderConfig instanceof IStreamData) { IoBuffer data = ((IStreamData<?>) decoderConfig).getData().asReadOnlyBuffer(); videoConfigurationTag = ImmutableTag.build(decoderConfig.getDataType(), 0, data, 0); } }
/** * Sets a video decoder configuration; some codecs require this, such as AVC. * * @param decoderConfig * video codec configuration */ public void setVideoDecoderConfiguration(IRTMPEvent decoderConfig) { if (decoderConfig instanceof IStreamData) { IoBuffer data = ((IStreamData<?>) decoderConfig).getData().asReadOnlyBuffer(); videoConfigurationTag = ImmutableTag.build(decoderConfig.getDataType(), 0, data, 0); } }
/** * Sets a audio decoder configuration; some codecs require this, such as AAC. * * @param decoderConfig * audio codec configuration */ public void setAudioDecoderConfiguration(IRTMPEvent decoderConfig) { if (decoderConfig instanceof IStreamData) { IoBuffer data = ((IStreamData<?>) decoderConfig).getData().asReadOnlyBuffer(); audioConfigurationTag = ImmutableTag.build(decoderConfig.getDataType(), 0, data, 0); } }
if (config != null) { log.debug("Decoder configuration is available for {}", videoCodec.getName()); VideoData videoConf = new VideoData(config.asReadOnlyBuffer()); try { log.debug("Setting decoder configuration for recording"); if (config != null) { log.debug("Decoder configuration is available for {}", audioCodec.getName()); AudioData audioConf = new AudioData(config.asReadOnlyBuffer()); try { log.debug("Setting decoder configuration for recording");
if (config != null) { log.debug("Decoder configuration is available for {}", audioCodec.getName()); AudioData conf = new AudioData(config.asReadOnlyBuffer()); log.debug("Pushing audio decoder configuration"); sendMessage(RTMPMessage.build(conf, conf.getTimestamp()));
if (config != null) { VideoData videoConf = new VideoData(config.asReadOnlyBuffer()); try { if (config != null) { AudioData audioConf = new AudioData(config.asReadOnlyBuffer()); try {