format_type.h

Overview

Related Modules:

Format

Description:

Declares format-related structures and enumerations, including custom data types for file information, programs, information about audio and video subtitle tracks, source data types, output data types, split types, and data frames.

Since:

1.0

Version:

1.0

Summary

Data Structures

Data Structure Name Description
FormatBufferSetting Defines the buffer configuration.
FormatFrame Defines the data frame, which is used for data transferring.
AudioTrackInfo Defines audio track information.
VideoTrackInfo Defines video track information.
SubImageInfo Defines image information.
ImageTrackInfo Defines image stream information.
SubtitleTrackInfo Defines subtitle stream information.
TrackInfo Defines track information.
ProgramInfo Defines program information.
FileInfo Defines movie file information.
BufferStream Defines the function for reading stream data.
FormatSource Defines the demuxer data source.
FormatOutputConfig Defines the muxer output configuration.
VideoTrackSourceInfo Defines information about the muxer video source.
AudioTrackSourceInfo Defines information about the muxer audio source.
DataTrackSourceInfo Defines information about the muxer data source.
TrackSource Defines information about the muxer source.
FormatCallback Defines listener callbacks for the format.

Macros

Macro Name and Value Description
FORMAT_MAX_LANGUAGE_NUM   4
FORMAT_LANGUAGE_LEN   4
FORMAT_TITLE_LEN   64
FORMAT_INVALID_TRACK_ID   -1
FORMAT_INVALID_PROGRAM_ID   -1
URL_LEN   4096

Typedefs

Typedef Name Description
CALLBACK_HANDLE typedef void * Indicates the pointer to the callback handle for listening the muxer.

Enumerations

Enumeration Name Description
FrameType {   FRAME_TYPE_NONE, FRAME_TYPE_AUDIO, FRAME_TYPE_VIDEO, FRAME_TYPE_IMAGE,   FRAME_TYPE_SUB, FRAME_TYPE_DATA, FRAME_TYPE_BUT } Enumerates data frame types.
FormatSeekMode { FORMAT_SEEK_MODE_FORWARD_KEY, FORMAT_SEEK_MODE_BACKWARD_KEY, FORMAT_SEEK_MODE_CLOSEST_KEY, SEEK_MODE_BUT } Enumerates seek modes.
CodecFormat {   CODEC_H264 = 0, CODEC_H265, CODEC_JPEG, CODEC_AAC,   CODEC_G711A, CODEC_G711U, CODEC_PCM, CODEC_MP3,   CODEC_BUT } Enumerates audio, video, and image encoding formats.
AudioSampleFmt {   AUDIO_SAMPLE_FMT_S8 = 0, AUDIO_SAMPLE_FMT_S16, AUDIO_SAMPLE_FMT_S24, AUDIO_SAMPLE_FMT_S32,   AUDIO_SAMPLE_FMT_FLOAT } Enumerates audio sampling formats.
SubtitleFrameType { HI_SVR_SUBTITLE_BITMAP = 0x0, HI_SVR_SUBTITLE_TEXT } Enumerates subtitle frame types.
SubtitleFormat {   FORMAT_SUB_ASS = 0x0, FORMAT_SUB_LRC, FORMAT_SUB_SRT, FORMAT_SUB_SMI,   FORMAT_SUB_SUB, FORMAT_SUB_TXT, FORMAT_SUB_HDMV_PGS, FORMAT_SUB_DVB_SUB,   FORMAT_SUB_DVD_SUB, FORMAT_SUB_TTML, FORMAT_SUB_WEBVTT, FORMAT_SUB_BUTT } Enumerates subtitle file formats.
TrackType {   TRACK_TYPE_VIDEO, TRACK_TYPE_AUDIO, TRACK_TYPE_IMAGE, TRACK_TYPE_SUB,   TRACK_TYPE_DATA, TRACK_TYPE_BUT } Enumerates track types.
DataFlags {   DATA_FLAG_NONE = 0, DATA_FLAG_SYNCFRAME = 1, DATA_FLAG_CODECCONFIG = 2, DATA_FLAG_EOS = 4,   DATA_FLAG_PARTIAL_FRAME = 8, DATA_FLAG_ENDOFFRAME = 16, DATA_FLAG_MUXER_DATA = 32 } Enumerates flags of raw stream data.
SourceType { SOURCE_TYPE_FD = 0, SOURCE_TYPE_URI, SOURCE_TYPE_STREAM, SOURCE_TYPE_BUT } Enumerates types of the demuxer data source.
OutputFormat {   OUTPUT_FORMAT_MPEG_4 = 0, OUTPUT_FORMAT_TS = 1, OUTPUT_FORMAT_THREE_GPP = 2, OUTPUT_FORMAT_HEIF = 3,   OUTPUT_FORMAT_OGG = 4, OUTPUT_FORMAT_INVALID } Enumerates output file formats.
FormatInfoType {   MUXER_INFO_MAX_DURATION_APPROACHING = 0, MUXER_INFO_MAX_FILESIZE_APPROACHING, MUXER_INFO_MAX_DURATION_REACHED, MUXER_INFO_MAX_FILESIZE_REACHED,   MUXER_INFO_NEXT_OUTPUT_FILE_STARTED, MUXER_INFO_FILE_SPLIT_FINISHED, MUXER_INFO_FILE_START_TIME_MS, DEMUXER_INFO_PREPARED = 10000,   DEMUXER_INFO_SEEK_COMPLETE, DEMUXER_INFO_NETWORK_DISCONNECTED, DEMUXER_INFO_NETWORK_RECONNECTED } Enumerates types of callback information.
FormatErrorType Enumerates callback error types.
OutputType { OUTPUT_TYPE_FD = 0, OUTPUT_TYPE_URI, OUTPUT_TYPE_INVALID } Enumerates muxer output types.
ManualSplitType { MANUAL_SPLIT_POST = 0, MANUAL_SPLIT_PRE, MANUAL_SPLIT_NORMAL } Enumerates manual split types for the muxer.
TrackSourceType { TRACK_SOURCE_TYPE_VIDEO = 0, TRACK_SOURCE_TYPE_AUDIO, TRACK_SOURCE_TYPE_DATA, TRACK_SOURCE_TYPE_INVALID } Enumerates types of the muxer source track.