Examples of IStreamCodecInfo


Examples of org.red5.codec.IStreamCodecInfo

      // create a recording listener
      IRecordingListener listener = (IRecordingListener) ScopeUtils.getScopeService(scope, IRecordingListener.class, RecordingListener.class);
      // initialize the listener
      if (listener.init(scope, name, isAppend)) {
        // get decoder info if it exists for the stream
        IStreamCodecInfo codecInfo = getCodecInfo();
        log.debug("Codec info: {}", codecInfo);
        if (codecInfo instanceof StreamCodecInfo) {
          StreamCodecInfo info = (StreamCodecInfo) codecInfo;
          IVideoStreamCodec videoCodec = info.getVideoCodec();
          log.debug("Video codec: {}", videoCodec);
View Full Code Here

Examples of org.red5.codec.IStreamCodecInfo

          }
        } else {
          log.debug("No metadata available");
        }

        IStreamCodecInfo codecInfo = stream.getCodecInfo();
        log.debug("Codec info: {}", codecInfo);
        if (codecInfo instanceof StreamCodecInfo) {
          StreamCodecInfo info = (StreamCodecInfo) codecInfo;
          IVideoStreamCodec videoCodec = info.getVideoCodec();
          log.debug("Video codec: {}", videoCodec);
View Full Code Here

Examples of org.red5.codec.IStreamCodecInfo

          IoBuffer buf = null;
          if (rtmpEvent instanceof IStreamData && (buf = ((IStreamData<?>) rtmpEvent).getData()) != null) {
            bytesReceived += buf.limit();
          }
          // get stream codec
          IStreamCodecInfo codecInfo = getCodecInfo();
          StreamCodecInfo info = null;
          if (codecInfo instanceof StreamCodecInfo) {
            info = (StreamCodecInfo) codecInfo;
          }
          //log.trace("Stream codec info: {}", info);
          if (rtmpEvent instanceof AudioData) {
            IAudioStreamCodec audioStreamCodec = null;
            if (checkAudioCodec) {
              // dont try to read codec info from 0 length audio packets
              if (buf.limit() > 0) {
                  audioStreamCodec = AudioCodecFactory.getAudioCodec(buf);
                  if (info != null) {
                    info.setAudioCodec(audioStreamCodec);
                  }
                  checkAudioCodec = false;
              }
            } else if (codecInfo != null) {
              audioStreamCodec = codecInfo.getAudioCodec();
            }
            if (audioStreamCodec != null) {
              audioStreamCodec.addData(buf.asReadOnlyBuffer());
            }
            if (info != null) {
              info.setHasAudio(true);
            }
            eventTime = rtmpEvent.getTimestamp();
            log.trace("Audio: {}", eventTime);
          } else if (rtmpEvent instanceof VideoData) {
            IVideoStreamCodec videoStreamCodec = null;
            if (checkVideoCodec) {
              videoStreamCodec = VideoCodecFactory.getVideoCodec(buf);
              if (info != null) {
                info.setVideoCodec(videoStreamCodec);
              }
              checkVideoCodec = false;
            } else if (codecInfo != null) {
              videoStreamCodec = codecInfo.getVideoCodec();
            }
            if (videoStreamCodec != null) {
              videoStreamCodec.addData(buf.asReadOnlyBuffer());
            }
            if (info != null) {
View Full Code Here

Examples of org.red5.codec.IStreamCodecInfo

      IRecordingListener listener = new RecordingListener();
      log.debug("Created: {}", listener);
      // initialize the listener
      if (listener.init(conn, name, isAppend)) {
        // get decoder info if it exists for the stream
        IStreamCodecInfo codecInfo = getCodecInfo();
        log.debug("Codec info: {}", codecInfo);
        if (codecInfo instanceof StreamCodecInfo) {
          StreamCodecInfo info = (StreamCodecInfo) codecInfo;
          IVideoStreamCodec videoCodec = info.getVideoCodec();
          log.debug("Video codec: {}", videoCodec);
View Full Code Here

Examples of org.red5.server.api.stream.IStreamCodecInfo

      }
      return;
    }

    // Get stream codec
    IStreamCodecInfo codecInfo = getCodecInfo();
    StreamCodecInfo info = null;
    if (codecInfo instanceof StreamCodecInfo) {
      info = (StreamCodecInfo) codecInfo;
    }

    IRTMPEvent rtmpEvent;
    try {
      rtmpEvent = (IRTMPEvent) event;
    } catch (ClassCastException e) {
      log.error("Class cast exception in event dispatch", e);
      return;
    }
    int eventTime = -1;
    // If this is first packet save it's timestamp
    if (firstPacketTime == -1) {
      firstPacketTime = rtmpEvent.getTimestamp();
    }
    if (rtmpEvent instanceof AudioData) {
      if (info != null) {
        info.setHasAudio(true);
      }
      if (rtmpEvent.getHeader().isTimerRelative()) {
        audioTime += rtmpEvent.getTimestamp();
      } else {
        audioTime = rtmpEvent.getTimestamp();
      }
      eventTime = audioTime;
    } else if (rtmpEvent instanceof VideoData) {
      IVideoStreamCodec videoStreamCodec = null;
      if (videoCodecFactory != null && checkVideoCodec) {
        videoStreamCodec = videoCodecFactory
            .getVideoCodec(((VideoData) rtmpEvent).getData());
        if (codecInfo instanceof StreamCodecInfo) {
          ((StreamCodecInfo) codecInfo)
              .setVideoCodec(videoStreamCodec);
        }
        checkVideoCodec = false;
      } else if (codecInfo != null) {
        videoStreamCodec = codecInfo.getVideoCodec();
      }

      if (videoStreamCodec != null) {
        videoStreamCodec.addData(((VideoData) rtmpEvent).getData());
      }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.