Package 

Interface DataSink


  • 
    public interface DataSink
    
                        

    A DataSink is an abstract representation of an encoded data collector. Currently the only implementation is DefaultDataSink which collects data into a java.io.File using android.media.MediaMuxer. However there might be other implementations in the future, for example to stream data to a server.

    • Method Summary

      Modifier and Type Method Description
      abstract void setOrientation(int orientation) Called before starting to set the orientation metadata.
      abstract void setLocation(double latitude, double longitude) Called before starting to set the location metadata.
      abstract void setTrackStatus(@NonNull() TrackType type, @NonNull() TrackStatus status) Called before starting to set the status for the giventrack.
      abstract void setTrackFormat(@NonNull() TrackType type, @NonNull() MediaFormat format) Called by the transcoding pipeline when we have an output format.
      abstract void writeTrack(@NonNull() TrackType type, @NonNull() ByteBuffer byteBuffer, @NonNull() MediaCodec.BufferInfo bufferInfo) Called by the transcoding pipeline to write data into this sink.
      abstract void stop() Called when transcoders have stopped writing.
      abstract void release() Called to release resources.Any exception should probably be caught here.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • setOrientation

         abstract void setOrientation(int orientation)

        Called before starting to set the orientation metadata.

        Parameters:
        orientation - 0, 90, 180 or 270
      • setLocation

         abstract void setLocation(double latitude, double longitude)

        Called before starting to set the location metadata.

        Parameters:
        latitude - latitude
        longitude - longitude
      • setTrackFormat

         abstract void setTrackFormat(@NonNull() TrackType type, @NonNull() MediaFormat format)

        Called by the transcoding pipeline when we have an output format.This is not the output format chosen by the library user but rather theoutput format determined by MediaCodec, which contains more information,and should be inspected to know what kind of data we're collecting.

        Parameters:
        type - the track type
        format - the track format
      • stop

         abstract void stop()

        Called when transcoders have stopped writing.

      • release

         abstract void release()

        Called to release resources.Any exception should probably be caught here.