A wrapper for the code defined in the MPEG-4 library. More...
#include "MP4Movies.h"
Go to the source code of this file.
Classes | |
struct | ISOMatrixRecord |
These data types are specific to JPEG-2; however, they have "ISO" names. More... | |
struct | ISORGBColor |
RGB color type. More... | |
struct | ISOMetaRecord |
Meta-data records. More... | |
struct | ISOMetaItemRecord |
Meta-item records. More... | |
struct | EntityGroupEntry |
Structure which contanis all the common parameters of an EntityGroup. More... | |
Macros | |
#define | ISOHandle MP4Handle |
#define | ISOErr MP4Err |
#define | ISOMovie MP4Movie |
#define | ISOTrack MP4Track |
#define | ISOMedia MP4Media |
#define | ISOTrackReader MP4TrackReader |
#define | ISOUserData MP4UserData |
#define | ISOAtomPtr MP4AtomPtr |
#define | ISOLinkedList MP4LinkedList |
#define | ISO_EXTERN MP4_EXTERN |
#define | ISOEOF MP4EOF |
#define | ISONoErr MP4NoErr |
#define | ISOFileNotFoundErr MP4FileNotFoundErr |
#define | ISOBadParamErr MP4BadParamErr |
#define | ISONoMemoryErr MP4NoMemoryErr |
#define | ISOIOErr MP4IOErr |
#define | ISONoLargeAtomSupportErr MP4NoLargeAtomSupportErr |
#define | ISOBadDataErr MP4BadDataErr |
#define | ISOVersionNotSupportedErr MP4VersionNotSupportedErr |
#define | ISOInvalidMediaErr MP4InvalidMediaErr |
#define | ISODataEntryTypeNotSupportedErr MP4DataEntryTypeNotSupportedErr |
#define | ISONoQTAtomErr MP4NoQTAtomErr |
#define | ISONotImplementedErr MP4NotImplementedErr |
#define | ISONewTrackIsVisual MP4NewTrackIsVisual |
#define | ISONewTrackIsAudio MP4NewTrackIsAudio |
#define | ISONewTrackIsPrivate MP4NewTrackIsPrivate |
#define | ISONewTrackIsMetadata MP4NewTrackIsMetadata |
#define | ISOVisualHandlerType MP4VisualHandlerType |
#define | ISOAudioHandlerType MP4AudioHandlerType |
#define | ISOHintHandlerType MP4HintHandlerType |
#define | ISOVolumetricHandlerType MP4VolumetricHandlerType |
#define | ISOHapticHandlerType MP4HapticHandlerType |
#define | ISOOpenMovieNormal MP4OpenMovieNormal |
#define | ISOOpenMovieDebug MP4OpenMovieDebug |
#define | ISOOpenMovieInPlace MP4OpenMovieInPlace |
#define | ISODisposeMovie MP4DisposeMovie |
#define | ISOGetMovieTimeScale MP4GetMovieTimeScale |
#define | ISOGetMovieTrack MP4GetMovieTrack |
#define | ISOOpenMovieFile MP4OpenMovieFile |
#define | ISOPutMovieIntoHandle MP4PutMovieIntoHandle |
#define | ISOSetMovieTimeScale MP4SetMovieTimeScale |
#define | ISOAddTrackReference MP4AddTrackReference |
#define | ISOAddSubSampleInformationToTrack MP4AddSubSampleInformationToTrack |
#define | ISOSetSubSampleInformationFlags MP4SetSubSampleInformationFlags |
#define | ISOGetSubSampleInformationEntryFromTrack MP4GetSubSampleInformationEntryFromTrack |
#define | ISOAddSubSampleInformationEntry MP4AddSubSampleInformationEntry |
#define | ISOAddTrackGroup MP4AddTrackGroup |
#define | ISOAddTrackReferenceWithID MP4AddTrackReferenceWithID |
#define | ISOGetMovieIndTrack MP4GetMovieIndTrack |
#define | ISOGetMovieTrackCount MP4GetMovieTrackCount |
#define | ISOGetTrackEnabled MP4GetTrackEnabled |
#define | ISOGetTrackID MP4GetTrackID |
#define | ISOGetTrackMedia MP4GetTrackMedia |
#define | ISOGetTrackMovie MP4GetTrackMovie |
#define | ISOGetTrackOffset MP4GetTrackOffset |
#define | ISOGetTrackReference MP4GetTrackReference |
#define | ISOGetTrackReferenceCount MP4GetTrackReferenceCount |
#define | ISOGetTrackGroup MP4GetTrackGroup |
#define | ISOInsertMediaIntoTrack MP4InsertMediaIntoTrack |
#define | ISONewMovieTrack MP4NewMovieTrack |
#define | ISONewMovieTrackWithID MP4NewMovieTrackWithID |
#define | ISONewTrackMedia MP4NewTrackMedia |
#define | ISOSetTrackEnabled MP4SetTrackEnabled |
#define | ISOSetTrackOffset MP4SetTrackOffset |
#define | ISOTrackTimeToMediaTime MP4TrackTimeToMediaTime |
#define | ISOAddMediaDataReference MP4AddMediaDataReference |
#define | ISOAddMediaSampleReference MP4AddMediaSampleReference |
#define | ISOAddMediaSamples MP4AddMediaSamples |
#define | ISOAddMediaSamplesPad MP4AddMediaSamplesPad |
#define | ISOBeginMediaEdits MP4BeginMediaEdits |
#define | ISOCheckMediaDataReferences MP4CheckMediaDataReferences |
#define | ISOEndMediaEdits MP4EndMediaEdits |
#define | ISOGetIndMediaSample MP4GetIndMediaSample |
#define | ISOGetIndMediaSampleWithPad MP4GetIndMediaSampleWithPad |
#define | ISOGetMediaDataReference MP4GetMediaDataReference |
#define | ISOGetMovieDuration MP4GetMovieDuration |
#define | ISOGetTrackDuration MP4GetTrackDuration |
#define | ISOGetMediaDuration MP4GetMediaDuration |
#define | ISOGetMediaHandlerDescription MP4GetMediaHandlerDescription |
#define | ISOGetMediaLanguage MP4GetMediaLanguage |
#define | ISOGetMediaSample MP4GetMediaSample |
#define | ISOGetMediaSampleWithPad MP4GetMediaSampleWithPad |
#define | ISOGetMediaSampleCount MP4GetMediaSampleCount |
#define | ISOGetMediaTimeScale MP4GetMediaTimeScale |
#define | ISOGetMediaTrack MP4GetMediaTrack |
#define | ISOMediaTimeToSampleNum MP4MediaTimeToSampleNum |
#define | ISOSampleNumToMediaTime MP4SampleNumToMediaTime |
#define | ISOSetMediaLanguage MP4SetMediaLanguage |
#define | ISOSetMediaExtendedLanguageTag MP4SetMediaExtendedLanguageTag |
#define | ISOAddUserData MP4AddUserData |
#define | ISOGetIndUserDataType MP4GetIndUserDataType |
#define | ISOGetMovieUserData MP4GetMovieUserData |
#define | ISOGetTrackUserData MP4GetTrackUserData |
#define | ISOGetUserDataEntryCount MP4GetUserDataEntryCount |
#define | ISOGetUserDataItem MP4GetUserDataItem |
#define | ISOGetAtomFromUserData MP4GetAtomFromUserData |
#define | ISODeleteUserDataItem MP4DeleteUserDataItem |
#define | ISOGetUserDataTypeCount MP4GetUserDataTypeCount |
#define | ISONewUserData MP4NewUserData |
#define | ISOCreateTrackReader MP4CreateTrackReader |
#define | ISODisposeTrackReader MP4DisposeTrackReader |
#define | ISONewHandle MP4NewHandle |
#define | ISOSetHandleSize MP4SetHandleSize |
#define | ISODisposeHandle MP4DisposeHandle |
#define | ISOGetHandleSize MP4GetHandleSize |
#define | ISOSetHandleOffset MP4SetHandleOffset |
#define | ISOUseSignedCompositionTimeOffsets MP4UseSignedCompositionTimeOffsets |
#define | QTPutMovieIntoHandle MP4PutMovieIntoHandle |
#define | MJ2PutMovieIntoHandle MP4PutMovieIntoHandle |
#define | ISOPutMovieIntoHandle MP4PutMovieIntoHandle |
#define | QTWriteMovieToFile MP4WriteMovieToFile |
#define | MJ2WriteMovieToFile MP4WriteMovieToFile |
#define | ISOWriteMovieToFile MP4WriteMovieToFile |
#define | ISOAddAtomToMovie MP4AddAtomToMovie |
#define | ISONewForeignAtom MP4NewForeignAtom |
#define | ISOGetForeignAtom MP4GetForeignAtom |
#define | ISONewUUIDAtom MP4NewUUIDAtom |
#define | ISOAddAtomToTrack MP4AddAtomToTrack |
#define | ISOGetTrackEditlistEntryCount MP4GetTrackEditlistEntryCount |
#define | ISOGetTrackEditlist MP4GetTrackEditlist |
#define | ISOGenericAtom MP4GenericAtom |
#define | MJ2TrackReaderGetNextSample MP4TrackReaderGetNextAccessUnit |
Typedefs | |
typedef struct ISOMatrixRecord | ISOMatrixRecord |
typedef ISOMatrixRecord * | ISOMatrix |
typedef struct ISORGBColor | ISORGBColor |
typedef ISORGBColor * | ISORGBColorPtr |
typedef struct ISOMetaRecord | ISOMetaRecord |
typedef ISOMetaRecord * | ISOMeta |
This is an opaque handle that contains a reference to rich meta-data. | |
typedef struct ISOMetaItemRecord | ISOMetaItemRecord |
typedef ISOMetaItemRecord * | ISOMetaItem |
This is an opaque handle that contains a reference to a rich meta-data item. | |
typedef struct EntityGroupEntry | EntityGroupEntry |
Structure which contanis all the common parameters of an EntityGroup. | |
typedef struct EntityGroupEntry * | EntityGroupEntryPtr |
Enumerations | |
enum | { ISOGraphicsModeSrcCopy = 0x00000000 , ISOGraphicsModeTransparent = 0x00000024 , ISOGraphicsModeAlpha = 0x00000100 , ISOGraphicsModeWhiteAlpha = 0x00000101 , ISOGraphicsModeBlackAlpha = 0x00000102 } |
constants for the graphics modes (e.g. More... | |
enum | { ISOUnknownFileType = (u32)0 , ISOMPEG4FileType = (u32)1 , ISOStillJPEG2000FileType = (u32)2 , ISOMotionJPEG2000FileType = (u32)3 , ISOQuickTimeFileType = (u32)4 , ISO3GPPFileType = (u32)5 , ISOMPEG21FileType = (u32)6 } |
constants for the fileType field of the MP4PrivateMovieRecord structure | |
enum | { ISOMediaHandlerType = MP4_FOUR_CHAR_CODE('m', 'h', 'l', 'r') , ISODataHandlerType = MP4_FOUR_CHAR_CODE('d', 'h', 'l', 'r') } |
constants for the qt_componentType field of the MP4HandlerAtom structure | |
enum | { JP2JPEG2000Brand = MP4_FOUR_CHAR_CODE('j', 'p', '2', ' ') , MJ2JPEG2000Brand = MP4_FOUR_CHAR_CODE('m', 'j', 'p', '2') , ISOQuickTimeBrand = MP4_FOUR_CHAR_CODE('q', 't', ' ', ' ') , ISOMpeg4V1Brand = MP4_FOUR_CHAR_CODE('m', 'p', '4', '1') , ISOMpeg4V2Brand = MP4_FOUR_CHAR_CODE('m', 'p', '4', '2') , ISOISOBrand = MP4_FOUR_CHAR_CODE('i', 's', 'o', 'm') , ISOISO2Brand = MP4_FOUR_CHAR_CODE('i', 's', 'o', '2') , ISO3GP4Brand = MP4_FOUR_CHAR_CODE('3', 'g', 'p', '4') , ISO3GP5Brand = MP4_FOUR_CHAR_CODE('3', 'g', 'p', '5') , ISO3GP6Brand = MP4_FOUR_CHAR_CODE('3', 'g', 'p', '6') , ISOMPEG21Brand = MP4_FOUR_CHAR_CODE('m', 'p', '2', '1') , ISOUnknownBrand = MP4_FOUR_CHAR_CODE(' ', ' ', ' ', ' ') , ISO_DASH_Brand = MP4_FOUR_CHAR_CODE('d', 'a', 's', 'h') , ISO_DASH_DSMS_Brand = MP4_FOUR_CHAR_CODE('d', 's', 'm', 's') , ISO_DASH_MSDH_Brand = MP4_FOUR_CHAR_CODE('m', 's', 'd', 'h') , ISO_DASH_MSIX_Brand = MP4_FOUR_CHAR_CODE('m', 's', 'd', 'h') , ISO_DASH_RISX_Brand = MP4_FOUR_CHAR_CODE('r', 'i', 's', 'x') , ISO_DASH_LMSG_Brand = MP4_FOUR_CHAR_CODE('l', 'm', 's', 'g') , ISO_DASH_SISX_Brand = MP4_FOUR_CHAR_CODE('s', 'i', 's', 'x') , ISO_DASH_SSSS_Brand = MP4_FOUR_CHAR_CODE('s', 's', 's', 's') } |
Brands. More... | |
enum | { AVCsps = 1 , AVCpps = 2 , AVCspsext = 3 , SVCsps = 0x11 , SVCpps = 0x12 , SVCspsext = 0x13 , HEVCvps = 0x20 , HEVCsps = 0x21 , HEVCpps = 0x22 } |
AVC/SVC/HEVC Parameter Set places. More... | |
enum | { VVCsps = 15 , VVCpps = 16 , VVCvps = 14 , VVCopi = 12 , VVCdci = 13 , VVC_prefix_aps = 17 , VVC_prefix_sei = 23 } |
VVC Parameter Set places. More... | |
Functions | |
ISOErr | MJ2SetMovieMatrix (ISOMovie theMovie, u32 matrix[9]) |
This sets the matrix of the overall movie. | |
ISOErr | MJ2GetMovieMatrix (ISOMovie theMovie, u32 outMatrix[9]) |
This returns the overall transformation matrix for the movie. | |
ISOErr | MJ2SetMoviePreferredRate (ISOMovie theMovie, u32 rate) |
This sets the rate of the movie (the normal and default rate is 1.0). | |
ISOErr | MJ2GetMoviePreferredRate (ISOMovie theMovie, u32 *outRate) |
This returns the currently set movie preferred rate. | |
ISOErr | MJ2SetMoviePreferredVolume (ISOMovie theMovie, s16 volume) |
This sets the normal volume of the movie. | |
ISOErr | MJ2GetMoviePreferredVolume (ISOMovie theMovie, s16 *outVolume) |
This returns the movie volume setting. | |
ISOErr | MJ2SetTrackMatrix (ISOTrack theTrack, u32 matrix[9]) |
This sets the overall transformation matrix for the movie as a whole. | |
ISOErr | MJ2GetTrackMatrix (ISOTrack theTrack, u32 outMatrix[9]) |
This returns the current matrix. | |
ISOErr | MJ2SetTrackLayer (ISOTrack theTrack, s16 layer) |
This sets the ordering of the visual tracks. | |
ISOErr | MJ2GetTrackLayer (ISOTrack theTrack, s16 *outLayer) |
This returns the currently set track layer. | |
ISOErr | MJ2SetTrackDimensions (ISOTrack theTrack, u32 width, u32 height) |
This sets the width and height of a track. | |
ISOErr | MJ2GetTrackDimensions (ISOTrack theTrack, u32 *outWidth, u32 *outHeight) |
This returns the currently set dimensions. | |
ISOErr | MJ2SetTrackVolume (ISOTrack theTrack, s16 volume) |
This sets the normal volume of the track. | |
ISOErr | MJ2GetTrackVolume (ISOTrack theTrack, s16 *outVolume) |
Returns the currently set track volume. | |
ISOErr | MJ2SetMediaGraphicsMode (ISOMedia theMedia, u32 mode, const ISORGBColor *opColor) |
Sets the graphics mode for this track. | |
ISOErr | MJ2GetMediaGraphicsMode (ISOMedia theMedia, u32 *outMode, ISORGBColor *outOpColor) |
Returns the currently set graphics mode. | |
ISOErr | MJ2SetMediaSoundBalance (ISOMedia theMedia, s16 balance) |
Sets the left-right balance of an audio track (normally a mono track). | |
ISOErr | MJ2GetMediaSoundBalance (ISOMedia theMedia, s16 *outBalance) |
Returns the currently set balance value. | |
ISOErr | MJ2NewMovie (ISOMovie *outMovie) |
Creates a new empty Motion JPEG 2000 Movie in memory. | |
ISOErr | New3GPPMovie (ISOMovie *outMovie, u16 release) |
Creates a new empty 3GPP Movie in memory, and sets the brand to the indicated release (4, 5 or 6). | |
ISOErr | QTNewMovie (ISOMovie *outMovie) |
Creaets a new empty QT Movie in memory. | |
ISOErr | ISOWriteMovieToFile (ISOMovie theMovie, const char *filename) |
Writes the in-memory Movie to a file. | |
ISOErr | ISOSetMovieBrand (ISOMovie theMovie, u32 brand, u32 minorversion) |
Sets the Movie’s major brand. | |
ISOErr | ISOSetMovieCompatibleBrand (ISOMovie theMovie, u32 brand) |
Adds a minor brand into the compatible brands list of the Movie. | |
ISOErr | ISOGetMovieBrand (ISOMovie theMovie, u32 *brand, u32 *minorversion) |
Returns the Movie’s major brand and minor version. | |
ISOErr | ISOIsMovieCompatibleBrand (ISOMovie theMovie, u32 brand) |
If the brand is a compatible brand of the movie, this returns MP4NoErr, otherwise it returns MP4NotFoundErr. | |
ISOErr | ISONewAVCSampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u32 length_size, MP4Handle first_sps, MP4Handle first_pps, MP4Handle first_spsext) |
Create a new AVC sample entry. | |
ISOErr | ISOAddVCSampleDescriptionPS (MP4Handle sampleEntryH, MP4Handle ps, u32 where) |
This adds another parameter set (which is not, in fact, inspected), to the configuration. | |
ISOErr | ISOGetAVCSampleDescription (MP4Handle sampleEntryH, u32 *dataReferenceIndex, u32 *length_size, u32 *sps_count, u32 *pss_count, u32 *spsext_count) |
Gets the basic parameters of the AVC sample entry. | |
ISOErr | ISOGetVCSampleDescriptionPS (MP4Handle sampleEntryH, MP4Handle ps, u32 where, u32 index) |
Gets an AVC parameter set, placing it in the given handle. | |
ISOErr | ISOGetHEVCSampleDescriptionPS (MP4Handle sampleEntryH, MP4Handle ps, u32 where, u32 index) |
Gets a HEVC parameter set, placing it in the given handle. | |
ISOErr | ISOGetRESVSampleDescriptionPS (MP4Handle sampleEntryH, MP4Handle ps, u32 where, u32 index) |
Gets a restricted video parameter set (AVC or HEVC), placing it in the given handle. | |
ISOErr | ISOGetNALUnitLength (MP4Handle sampleEntryH, u32 *out) |
Get the NALUnitLength size in bytes. | |
ISOErr | ISOGetRESVOriginalFormat (MP4Handle sampleEntryH, u32 *outOrigFmt) |
Get the four character code of the original un-transformed sample entry. | |
ISOErr | ISOGetRESVSchemeType (MP4Handle sampleEntryH, u32 *schemeType, u32 *schemeVersion, char **schemeURI) |
Get scheme_type and scheme_version from the SchemeTypeBox in resv. | |
ISOErr | ISOGetRESVSchemeInfoAtom (MP4Handle sampleEntryH, u32 atomType, MP4Handle outAtom) |
Get the box from the SchemeInformationBox in resv. | |
ISOErr | ISONewHEVCSampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u32 length_size, MP4Handle first_sps, MP4Handle first_pps, MP4Handle first_vps) |
Create a new HEVC sample entry. | |
ISOErr | ISONewVVCSampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u32 length_size, MP4Handle first_sps, MP4Handle first_pps) |
Create a new VVC sample entry. | |
ISOErr | ISOGetVVCSampleDescription (MP4Handle sampleEntryH, u32 *dataReferenceIndex, u32 *length_size, u32 naluType, u32 *count) |
Gets the basic parameters of the VVC sample entry. | |
ISOErr | ISOGetVVCNaluNums (MP4Handle sampleEntryH, u32 where, u32 *num_nalus) |
Gets a VVC parameter set, placing it in the given handle. | |
ISOErr | ISOGetVVCSampleDescriptionPS (MP4Handle sampleEntryH, MP4Handle ps, u32 where, u32 index) |
Gets a VVC parameter set, placing it in the given handle. | |
ISOErr | ISOAddVVCSampleDescriptionPS (MP4Handle sampleEntryH, MP4Handle ps, u32 where) |
This adds another parameter set (which is not, in fact, inspected), to the configuration. | |
ISOErr | ISONewVVCSubpicSampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u32 width, u32 height, u32 length_size) |
Create a new VVC subpicture (vvs1) sample entry. | |
ISOErr | ISOGetVVCSubpicSampleDescription (MP4Handle sampleEntryH, u32 *dataReferenceIndex, u32 *length_size) |
Gets the length size of the VVC subpicture sample entry. | |
MP4Err | ISOAddBitrateToSampleDescription (MP4Handle sampleEntryH, u8 is_3GPP, u32 buffersizeDB, u32 maxBitrate, u32 avgBitrate) |
Add a bitrate atom to a sample entry (description). | |
MP4Err | ISONewH263SampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u32 vendor, u8 decoder_version, u8 H263_level, u8 H263_profile) |
Creates a new H.263 video sample description according to the 3GPP specifications. | |
MP4Err | ISONewAMRSampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u8 is_WB, u32 vendor, u8 decoder_version, u16 mode_set, u8 mode_change_period, u8 frames_per_sample) |
Creates a new AMR audio sample description according to the 3GPP specifications. | |
MP4Err | ISONewAMRWPSampleDescription (MP4Track theTrack, MP4Handle sampleDescriptionH, u32 dataReferenceIndex, u32 vendor, u8 decoder_version) |
Creates a new AMR wideband plus audio sample description according to the 3GPP spec. | |
ISOErr | ISONewFileMeta (ISOMovie theMovie, u32 metaType, ISOMeta *meta) |
Creates a new meta box (atom), with the indicated ‘handler’ type, at the file level. | |
ISOErr | ISONewMovieMeta (ISOMovie theMovie, u32 metaType, ISOMeta *meta) |
Creates a new meta box (atom), with the indicated ‘handler’ type, in the movie box (atom). | |
ISOErr | ISONewTrackMeta (ISOTrack theTrack, u32 metaType, ISOMeta *meta) |
Creates a new meta box (atom), with the indicated ‘handler’ type, in the indicated track box (atom). | |
ISOErr | ISOAddMetaBoxRelation (ISOMeta first_meta, ISOMeta second_meta, u8 relation_type) |
Adds a meta box relation box to the additional meta data box, related to first and second meta box. | |
ISOErr | ISOGetMetaBoxRelation (ISOMeta first_meta, ISOMeta second_meta, u8 *relation_type) |
Get the reletation type. | |
ISOErr | ISOAddMetaDataReference (ISOMeta meta, u16 *out_ref, ISOHandle urlHandle, ISOHandle urnHandle) |
Adds a data reference to the given meta-data. | |
ISOErr | ISOAddMetaItem (ISOMeta meta, ISOMetaItem *outItem, u64 base_offset, u16 data_ref_index) |
Creates a new meta-data item, and returns an opaque pointer to it. | |
ISOErr | ISOAddMetaItemWithID (ISOMeta meta, ISOMetaItem *outItem, u64 base_offset, u16 data_ref_index, u16 item_ID) |
Creates a new meta-data item with specific ID, and returns an opaque pointer to it. | |
ISOErr | ISOAddItemExtent (ISOMetaItem item, MP4Handle data) |
Adds some data to the given item, as its first (perhaps only) extent. | |
ISOErr | ISOAddItemExtentReference (ISOMetaItem item, u64 offset, u64 length) |
Adds a reference to the data. | |
ISOErr | ISOAddItemExtentUsingItemData (ISOMetaItem item, MP4Handle data) |
Adds some data to the given item, as its first (perhaps only) extent. | |
ISOErr | ISOAddItemExtentItem (ISOMetaItem item, ISOMetaItem extent_item, u32 offset, u32 length) |
Indicates that the data for this extent is located at another item’s extends. | |
ISOErr | ISOAddItemReference (ISOMetaItem item, u32 reference_type, u32 to_item_ID, u32 *outIndex) |
This function adds an item reference to the item reference box. | |
ISOErr | ISOAddItemReferences (ISOMetaItem item, u32 reference_type, u16 reference_count, MP4Handle to_item_IDs) |
This function adds multiple item references to the item reference box. | |
MP4Err | ISOAddItemRelation (ISOMetaItem fromItem, ISOMetaItem toItem, u32 relationType) |
ISOErr | ISOGetItemReferences (ISOMetaItem item, u32 reference_type, u16 *reference_count, MP4Handle to_item_IDs) |
This function collects all item references of the item / reference_type combination. | |
ISOErr | ISOGetItemReference (ISOMetaItem item, u32 reference_type, u16 reference_index, ISOMetaItem *outItem) |
Get an item by reference type and index. | |
ISOErr | ISOAddPrimaryData (ISOMeta meta, u32 box_type, MP4Handle data, u8 is_full_atom) |
Places the indicated data inside a box in the meta-box, with the indicated box type (e.g. | |
ISOErr | ISOGetPrimaryData (ISOMeta meta, u32 box_type, MP4Handle data, u8 is_full_atom) |
Finds the box of the given type inside the meta box, and returns its contents. | |
ISOErr | ISOGetPrimaryItemData (ISOMeta meta, u32 box_type, MP4Handle data, u8 is_full_atom) |
Finds the box of the given type inside the meta box, and returns its contents. | |
ISOErr | ISOSetPrimaryItem (ISOMeta meta, ISOMetaItem item) |
Sets the item of the indicated ID as the primary item (using a primary item box). | |
ISOErr | ISOGetPrimaryItemID (ISOMeta meta, u16 *ID) |
Finds the ID of the primary item. | |
ISOErr | ISOGetItemID (ISOMetaItem item, u16 *ID) |
Gets the ID of the indicated item. | |
ISOErr | ISOSetItemInfo (ISOMetaItem item, u16 protection_index, char *name, char *content_type, char *content_encoding) |
Sets the information for the indicated item. | |
ISOErr | ISOSetItemInfoExtension (ISOMetaItem item, MP4Handle extension, u32 extension_type) |
Adds an item info extension to an existing item info entry. | |
ISOErr | ISOGetItemInfoExtension (ISOMetaItem item, MP4Handle extension, u32 *extension_type) |
Gets an item info extension and its extension type from an item. | |
ISOErr | ISOSetItemInfoItemType (ISOMetaItem item, u32 item_type, char *item_uri_type) |
Adds an item info item type to an existing item info entry. | |
ISOErr | ISOHideItem (ISOMetaItem item) |
Hide item by setting the (flags & 1) = 1. | |
ISOErr | ISOIsItemHidden (ISOMetaItem item) |
Check if item is hiden. | |
ISOErr | ISOGetItemInfoItemType (ISOMetaItem item, u32 *item_type, char **item_uri_type) |
Gets an item info item type from an existing item info entry. | |
ISOErr | ISOGetFileMeta (ISOMovie theMovie, ISOMeta *meta, u32 inMetaType, u32 *outMetaType) |
Gets a reference to the file-level meta data. | |
ISOErr | ISOGetMovieMeta (ISOMovie theMovie, ISOMeta *meta, u32 inMetaType, u32 *outMetaType) |
Gets a reference to the movie-level meta data. | |
ISOErr | ISOGetTrackMeta (ISOTrack theTrack, ISOMeta *meta, u32 inMetaType, u32 *outMetaType) |
Gets a reference to the track-level meta data. | |
ISOErr | ISOGetAllItemsWithType (ISOMeta meta, u32 type, ISOMetaItem **items, u32 *numberOfItemsFound) |
Collects all items of a given type and presents the result in form of an array. | |
ISOErr | ISOFindItemByName (ISOMeta meta, ISOMetaItem *item, char *name, u8 exact_case) |
Finds an item that has the associated name in its item information. | |
ISOErr | ISOFindItemByID (ISOMeta meta, ISOMetaItem *item, u16 ID) |
Gets a reference to an item by its ID. | |
ISOErr | ISOGetItemData (ISOMetaItem item, MP4Handle data, u64 *base_offset) |
Reads and returns the data associated with all the extents of the given item, concatenating them. | |
ISOErr | ISOGetItemInfo (ISOMetaItem item, u16 *protection_index, char *name, char *content_type, char *content_encoding) |
Returns the information for a given item. | |
MP4Err | ISOCheckMetaDataReferences (ISOMeta meta) |
Checks that all the data references used by the meta-data are accessible. | |
MP4Err | ISONewMetaProtection (ISOMeta meta, u32 sch_type, u32 sch_version, char *sch_url, u16 *protection_index) |
Creates a new item protection information inside the given meta-data box. | |
MP4Err | ISOAddMetaProtectionInfo (ISOMeta meta, u16 protection_index, MP4GenericAtom schi_atom) |
Adds an arbitrary atom to the scheme information of the associated protection information. | |
MP4Err | ISOGetMetaProtection (ISOMeta meta, u16 protection_index, u32 *sch_type, u32 *sch_version, char *sch_url) |
Gets the scheme type, version, and URL associated with the protection information of the given index. | |
MP4Err | ISOGetMetaProtectionInfo (ISOMeta meta, u16 protection_index, u32 atom_type, MP4GenericAtom *schi_atom) |
Finds and returns the atom of the given type inside the scheme information of the protection scheme at the given index. | |
MP4Err | ISOAddMetaItemProperty (ISOMetaItem item, MP4GenericAtom *itemProperty, u8 essential) |
Adds an item property, which can be any MP4GenericAtom, to an ISOMetaItem. | |
MP4Err | ISOGetProperitesOfMetaItem (ISOMetaItem item, MP4GenericAtom **properties, u32 *propertiesFound) |
Retruns an array of MP4GenericAtom pointers, which represent the item properties found for the item given. | |
ISOErr | ISONewEntityGroup (ISOMeta meta, u32 grouping_type, u32 group_id) |
Add new EntityToGroupBox (creates grpl if needed) | |
ISOErr | ISOAddEntityIDToGroup (ISOMeta meta, u32 group_id, u32 entity_id) |
Add entity_id to EntityToGroupBox. | |
ISOErr | ISOGetEntityIDCnt (ISOMeta meta, u32 group_id, u32 *num_entities_in_group) |
Get number of entries in the EntityToGroupBox. | |
ISOErr | ISOGetEntityGroupEntries (ISOMeta meta, EntityGroupEntryPtr *pEntries, u32 *cnt) |
Get common data for all EntityToGroup entries. | |
A wrapper for the code defined in the MPEG-4 library.
anonymous enum |
constants for the graphics modes (e.g.
for MJ2SetMediaGraphicsMode)
ISOErr MJ2SetMediaGraphicsMode | ( | ISOMedia | theMedia, |
u32 | mode, | ||
const ISORGBColor * | opColor | ||
) |
Sets the graphics mode for this track.
The mode should be chosen from the following list. The default mode is ISOGraphicsModeSrcCopy.
ISOGraphicsModeSrcCopy: This video image will be copied over the top of the layers below it. This is the default value, and should be used for the backmost track.
ISOGraphicsModeTransparent: The color ISORGBColor in this video image will be treated as transparent, allowing layers behind to be seen.
ISOGraphicsModeAlpha: This video image includes an alpha plane to define its transparency.
ISOGraphicsModeWhiteAlpha: This video image includes an alpha plane, which has been premultiplied with white, to define its transparency.
ISOGraphicsModeBlackAlpha: This video image includes an alpha plane, which has been premultiplied with black, to define its transparency.
ISOErr MJ2SetMediaSoundBalance | ( | ISOMedia | theMedia, |
s16 | balance | ||
) |
Sets the left-right balance of an audio track (normally a mono track).
Balance values are represented as 16-bit, fixed-point numbers that range from -1.0 to +1.0. The high-order 8 bits contain the integer portion of the value; the low-order 8 bits contain the fractional part. Negative values weight the balance toward the left speaker; positive values emphasize the right channel. Setting the balance to 0 (the default) corresponds to a neutral setting.