isoiff_hevc
IntroductionProvides structs for HEVC Images in ISO Image File Format
Functions
ISOIFF_AddNALUnitToHEVCDecConfRecMP4Err ISOIFF_AddNALUnitToHEVCDecConfRec ( ISOIFF_HEVCDecoderConfigRecord hevcDecConfRec, u8 type, MP4Handle nalUnitData); ParametersDiscussionAdds a NAL unit to a HEVC decoder configuration record (VPS, SPS, PPS or SEI NAL unit) ISOIFF_AddNALUnitToHEVCItemDataMP4Err ISOIFF_AddNALUnitToHEVCItemData ( ISOIFF_HEVCItemData hevcItemData, MP4Handle nalUnitData); ParametersDiscussionAdds a NAL unit to a HEVC item data. (This will update the lengthSizeMinusOne field) ISOIFF_CreateHEVCConfigurationAtomMP4Err ISOIFF_CreateHEVCConfigurationAtom ( ISOIFF_HEVCConfigurationAtomPtr *outAtom, ISOIFF_HEVCDecoderConfigRecord configRecord); ParametersDiscussionCreates a HEVCConfigurationAtom (Allocates memory and initializes fields) ISOIFF_CreateHEVCDecConfRecFromHandleMP4Err ISOIFF_CreateHEVCDecConfRecFromHandle ( MP4Handle recordDataHandle, ISOIFF_HEVCDecoderConfigRecord *outRecord); ParametersDiscussionCreates a HEVC decoder configuration record from a MP4Handle (This is the counterpart to ISOIFF_PutHEVCItemDataIntoHandle) ISOIFF_CreateHEVCDecoderConfigRecordMP4Err ISOIFF_CreateHEVCDecoderConfigRecord ( ISOIFF_HEVCDecoderConfigRecord *hevcDecConfRec); ParametersDiscussionCreates a HEVC decoder configuration record (Allocates memory and initializes fields) ISOIFF_CreateHEVCItemDataMP4Err ISOIFF_CreateHEVCItemData ( ISOIFF_HEVCItemData *hevcItemData); ParametersDiscussionCreates a HEVC item data (Allocates memory and initializes fields) ISOIFF_CreateHEVCItemDataFromHandleMP4Err ISOIFF_CreateHEVCItemDataFromHandle ( MP4Handle itemDataHandle, ISOIFF_HEVCItemData *outHevcItemData, u8 lengthSizeMinusOne); ParametersDiscussionCreates a HEVC item data from a MP4Handle (This is the counterpart to ISOIFF_PutHEVCItemDataIntoHandle) ISOIFF_CreateImageSpatialExtentsPropertyAtomMP4Err ISOIFF_CreateImageSpatialExtentsPropertyAtom ( ISOIFF_ImageSpatialExtentsPropertyAtomPtr *outAtom); ParametersDiscussionCreates a ImageSpatialExtentsPropertyAtom (Allocates memory and initializes fields) ISOIFF_FreeHEVCDecoderConfigRecordMP4Err ISOIFF_FreeHEVCDecoderConfigRecord ( ISOIFF_HEVCDecoderConfigRecord hevcDecConfRec); ParametersDiscussionDeallocates the memory used by HEVC decoder configuration record ISOIFF_FreeHEVCItemDataMP4Err ISOIFF_FreeHEVCItemData ( ISOIFF_HEVCItemData hevcItemData); ParametersDiscussionDeallocates the memory used by an HEVC item data ISOIFF_GetHEVCDecConfRecordSizeMP4Err ISOIFF_GetHEVCDecConfRecordSize ( ISOIFF_HEVCDecoderConfigRecord hevcDecConfRec, u32 *outSize); ParametersDiscussionGets the size of an HEVC decoder configuration record. ISOIFF_GetHEVCDecoderConfigRecordFromPropertyMP4Err ISOIFF_GetHEVCDecoderConfigRecordFromProperty( MP4AtomPtr property, ISOIFF_HEVCDecoderConfigRecord *decoderConfig); ParametersDiscussionParses a HEVCDecoderConfigRecord from a property atom ISOIFF_GetHEVCItemDataLengthSizeMinusOneMP4Err ISOIFF_GetHEVCItemDataLengthSizeMinusOne ( ISOIFF_HEVCItemData hevcItemData, u8 *lengthSizeMinusOne); ParametersDiscussionGets the lengthSizeMinusOne (This is used for setting the HEVC decoder configuration record's field to the correct value) ISOIFF_GetHEVCItemDataSizeMP4Err ISOIFF_GetHEVCItemDataSize ( ISOIFF_HEVCItemData hevcItemData, u32 *outSize); ParametersDiscussionGets the size of an HEVC item data. ISOIFF_GetNALUDataHandlesFromHEVCItemDataMP4Err ISOIFF_GetNALUDataHandlesFromHEVCItemData ( ISOIFF_HEVCItemData hevcItemData, MP4LinkedList naluDataHandles); ParametersDiscussionCollects all HEVC NAL units from a HEVC item data ISOIFF_GetNALUnitsWithTypeFromHEVCDecConfMP4Err ISOIFF_GetNALUnitsWithTypeFromHEVCDecConf ( ISOIFF_HEVCDecoderConfigRecord hevcDecConfRec, u8 type, MP4LinkedList nalUnits); ParametersDiscussionCollects all HEVC NAL units of a certain type from a HEVC decoder configuration record (VPS, SPS, PPS or SEI NAL unit) ISOIFF_ParseImageSpatialExtendsMP4Err ISOIFF_ParseImageSpatialExtends ( MP4AtomPtr property); ParametersDiscussionParses an ImageSpatialExtentsProperty from a property atom and prints width and height ISOIFF_PutHEVCDecConfRecordIntoHandleMP4Err ISOIFF_PutHEVCDecConfRecordIntoHandle ( ISOIFF_HEVCDecoderConfigRecord hevcDecConfRec, MP4Handle recordDataHandle); ParametersDiscussionPuts the HEVC decoder configuration record into a MP4Handle ISOIFF_PutHEVCItemDataIntoHandleMP4Err ISOIFF_PutHEVCItemDataIntoHandle ( ISOIFF_HEVCItemData hevcItemData, MP4Handle itemDataHandle); ParametersDiscussionPuts the HEVC item data into a MP4Handle Typedefs
ISOIFF_HEVCConfigurationAtomHEVCConfigurationBox typedef struct ISOIFF_HEVCConfigurationAtom { MP4_BASE_ATOM ISOIFF_HEVCDecoderConfigRecord configRecord; MP4Handle configRecordHandle; } ISOIFF_HEVCConfigurationAtom, *ISOIFF_HEVCConfigurationAtomPtr; See Also ISOIFF_HEVCConfigurationAtomPtrHEVCConfigurationBox typedef struct ISOIFF_HEVCConfigurationAtom { MP4_BASE_ATOM ISOIFF_HEVCDecoderConfigRecord configRecord; MP4Handle configRecordHandle; } ISOIFF_HEVCConfigurationAtom, *ISOIFF_HEVCConfigurationAtomPtr; See Also ISOIFF_HEVCDecoderConfigRecordHEVC decoder configuration record typedef struct ISOIFF_HEVCDecoderConfigRecordS { u8 configurationVersion; u8 general_profile_space; u8 general_tier_flag; u8 general_profile_idc; u32 general_profile_compatibility_flags; u64 general_constraint_indicator_flags; u8 general_level_idc; u16 min_spatial_segmentation_idc; u8 parallelismType; u8 chromaFormat; u8 bitDepthLumaMinus8; u8 bitDepthChromaMinus8; u16 avgFrameRate; u8 constantFrameRate; u8 numTemporalLayers; u8 temporalIdNested; u8 lengthSizeMinusOne; u8 numOfArrays; MP4LinkedList arrays; } *ISOIFF_HEVCDecoderConfigRecord; See Also ISOIFF_HEVCItemDataStruct that holds HEVC NAL units for usage as an ISOIFF_Image's data typedef struct ISOIFF_HEVCItemDataS *ISOIFF_HEVCItemData; ISOIFF_ImageSpatialExtentsPropertyAtomImageSpatialExtentsPropertyAtom typedef struct ISOIFF_ImageSpatialExtentsPropertyAtom { MP4_FULL_ATOM u32 image_width; u32 image_height; } ISOIFF_ImageSpatialExtentsPropertyAtom, *ISOIFF_ImageSpatialExtentsPropertyAtomPtr; See Also ISOIFF_ImageSpatialExtentsPropertyAtomPtrImageSpatialExtentsPropertyAtom typedef struct ISOIFF_ImageSpatialExtentsPropertyAtom { MP4_FULL_ATOM u32 image_width; u32 image_height; } ISOIFF_ImageSpatialExtentsPropertyAtom, *ISOIFF_ImageSpatialExtentsPropertyAtomPtr; See Also Structs and Unions
ISOIFF_HEVCDecoderConfigRecordSHEVC decoder configuration record typedef struct ISOIFF_HEVCDecoderConfigRecordS { u8 configurationVersion; u8 general_profile_space; u8 general_tier_flag; u8 general_profile_idc; u32 general_profile_compatibility_flags; u64 general_constraint_indicator_flags; u8 general_level_idc; u16 min_spatial_segmentation_idc; u8 parallelismType; u8 chromaFormat; u8 bitDepthLumaMinus8; u8 bitDepthChromaMinus8; u16 avgFrameRate; u8 constantFrameRate; u8 numTemporalLayers; u8 temporalIdNested; u8 lengthSizeMinusOne; u8 numOfArrays; MP4LinkedList arrays; } *ISOIFF_HEVCDecoderConfigRecord; See Also |