|
u32 | gf_isom_get_udta_count (GF_ISOFile *isom_file, u32 trackNumber) |
|
GF_Err | gf_isom_get_udta_type (GF_ISOFile *isom_file, u32 trackNumber, u32 udta_idx, u32 *UserDataType, bin128 *UUID) |
|
u32 | gf_isom_get_user_data_count (GF_ISOFile *isom_file, u32 trackNumber, u32 UserDataType, bin128 UUID) |
|
GF_Err | gf_isom_get_user_data (GF_ISOFile *isom_file, u32 trackNumber, u32 UserDataType, bin128 UUID, u32 UserDataIndex, u8 **userData, u32 *userDataSize) |
|
GF_Err | gf_isom_add_user_data (GF_ISOFile *isom_file, u32 trackNumber, u32 UserDataType, bin128 UUID, u8 *data, u32 size) |
|
GF_Err | gf_isom_remove_user_data (GF_ISOFile *isom_file, u32 trackNumber, u32 UserDataType, bin128 UUID) |
|
GF_Err | gf_isom_remove_user_data_item (GF_ISOFile *isom_file, u32 trackNumber, u32 UserDataType, bin128 UUID, u32 UserDataIndex) |
|
GF_Err | gf_isom_add_user_data_boxes (GF_ISOFile *isom_file, u32 trackNumber, u8 *data, u32 size) |
|
GF_Err | gf_isom_get_raw_user_data (GF_ISOFile *isom_file, u8 **output, u32 *output_size) |
|
User Data Manipulation
You can add specific typed data to either a track or the movie: the UserData The type must be formatted as a FourCC if you have a registered 4CC type but the usual is to set a UUID (128 bit ID for box type) which never conflict with existing structures in the format To manipulate a UUID user data set the UserDataType to 0 and specify a valid UUID. Otherwise the UUID parameter is ignored Several items with the same ID or UUID can be added (this allows you to store any kind/number of private information under a unique ID / UUID)
◆ gf_isom_get_udta_count()
gets number of udta (user data) entries of a movie or track
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track if not 0; if 0, the movie udta is checked |
- Returns
- the number of entries in UDTA
◆ gf_isom_get_udta_type()
checks type of a given udta entry
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track if not 0; if 0, the movie udta is checked |
udta_idx | 1-based index of the user data to query |
UserDataType | set to the four character code of the user data entry (optional, can be NULL) |
UUID | set to the UUID of the user data entry (optional, can be NULL) |
- Returns
- error if any
◆ gf_isom_get_user_data_count()
gets the number of UserDataItems with the same ID / UUID in the desired track or movie
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track if not 0; if 0, the movie udta is checked |
UserDataType | the four character code of the user data entry to query |
UUID | the UUID of the user data entry |
- Returns
- number of UDTA entries with the given type
◆ gf_isom_get_user_data()
gets the UserData for the specified item from the track or the movie
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track if not 0; if 0, the movie udta is checked |
UserDataType | the four character code of the user data entry to query |
UUID | the UUID of the user data entry |
UserDataIndex | 1-based index of the user data of the given type to fetch. If 0, all boxes with type==UserDataType will be serialized (including box header and size) in the output buffer |
userData | set to a newly allocated buffer containing the serialized data - shall be freed by caller, you must pass (userData != NULL && *userData=NULL) |
userDataSize | set to the size of the allocated buffer |
- Returns
- error if any
◆ gf_isom_add_user_data()
adds a user data item in the desired track or in the movie
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track for the user data; if 0, adds user data to the movie |
UserDataType | the user data four character code type |
UUID | the user data UUID |
data | the data to add, may be NULL |
size | the size of the data to add, shall be 0 when data is NULL |
- Returns
- error if any
◆ gf_isom_remove_user_data()
removes all user data items from a track or movie
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track for the user data; if 0, adds user data to the movie |
UserDataType | the user data four character code type |
UUID | the user data UUID |
- Returns
- error if any
◆ gf_isom_remove_user_data_item()
removes a user data item from a track or movie use the UDAT read functions to get the item index
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track for the user data; if 0, adds user data to the movie |
UserDataType | the user data four character code type |
UUID | the user data UUID |
UserDataIndex | the 1-based index of the user data item to remove - see gf_isom_get_user_data_count |
- Returns
- error if any
◆ gf_isom_add_user_data_boxes()
adds a user data item in a track or movie using a serialzed buffer of ISOBMFF boxes
- Parameters
-
isom_file | the target ISO file |
trackNumber | the target track for the udta box; if 0, add the udta to the movie; |
data | the serialized udta box to add, shall not be NULL |
size | the size of the data to add |
- Returns
- error if any
◆ gf_isom_get_raw_user_data()
gets serialized user data box of a movie
- Parameters
-
isom_file | the destination ISO file |
output | will be set to a newly allocated buffer containing the serialized box - caller shall free it |
output_size | will be set to the size of the allocated buffer |
- Returns
- error if any