Class NutWriter

java.lang.Object
com.github.kokorin.jaffree.nut.NutWriter

public class NutWriter extends Object
NutWriter provides limited NUT muxer functionality.
  • Constructor Details

    • NutWriter

      public NutWriter(NutOutputStream output, long frameOrderingBufferMillis)
      Creates NutWriter.
      Parameters:
      output - output stream
      frameOrderingBufferMillis - frame reordering buffer length
  • Method Details

    • setMainHeader

      public void setMainHeader(int streamCount, long maxDistance, Rational[] timebases, FrameCode[] frameCodes)
      Sets NUT Main header.
      Parameters:
      streamCount - stream count
      maxDistance - max distance
      timebases - timebases
      frameCodes - frame codes
    • setStreamHeaders

      public void setStreamHeaders(StreamHeader[] streamHeaders)
      Sets NUT Stream headers.
      Parameters:
      streamHeaders - stream headers
    • setInfos

      public void setInfos(Info[] infos)
      Sets NUT Info headers.
      Parameters:
      infos - info headers
    • writeFrame

      public void writeFrame(NutFrame frame) throws IOException
      Writes frame to underlying OutputStream.

      Note: When all frames are passed to this method the caller MUST invoke writeFooter()

      Note: frames are not written immediately to stream, instead they are buffered, reordered and than written.

      Parameters:
      frame - frame to write
      Throws:
      IOException - if any IO error
    • writeFooter

      public void writeFooter() throws IOException
      Writes NUT footer.
      Throws:
      IOException - if any IO error