Extract Video Metadata API
ApyHub
250 atoms
Premium tier
About
This API extracts metadata from video files of various formats, including WebM, MP4, and 3GP.
This API is Ideal for applications that require detailed information about the video files, including video editing tools, content management systems (CMS) as well as media analysis tools.
Try out the Video Metadata API in the API playground for free, improve your workflow, and reduce metadata extraction errors with a simple API call.
Select API Endpoints
Input
API Playground
API Documentation
input file: output json
POST
https://api.apyhub.com/video/metadata/file
Request example
Method:
POST
Content Type:
multipart/form-data
Request Body
Attribute | Type | Mandatory | Description |
---|---|---|---|
video | File | Yes | the source video file in any of supported formats (mp4 ,webm ,flv ,avi ,mkv ,mov ,3gp ) |
Response
Key | Type | Description |
---|---|---|
audio.codec_information | Object | Information about the audio codec |
audio.codec_information.channel_layout | String | Audio channel layout |
audio.codec_information.codec_long_name | String | Long name of the audio codec |
audio.codec_information.codec_name | String | Name of the audio codec |
audio.codec_information.codec_tag | String | Audio codec tag |
audio.codec_information.codec_tag_string | String | Audio codec tag string |
audio.codec_information.codec_type | String | Type of the audio codec (audio) |
audio.general_audio | Object | General information about audio |
audio.general_audio.audio_bits_per_sample | Integer | Audio bits per sample |
audio.general_audio.audio_channels | Integer | Number of audio channels |
audio.general_audio.audio_format | String | Audio format |
audio.general_audio.audio_sample_rate | Integer | Audio sample rate |
audio.general_audio.average_bitrate | String | Average bitrate |
audio.general_audio.avg_bitrate | String | Average bitrate |
audio.general_audio.balance | Integer | Audio balance |
audio.general_audio.bit_depth | Integer | Audio bit depth |
audio.general_audio.buffer_size | String | Audio buffer size |
audio.time_base | Object | Time base information for audio |
audio.time_base.time_base | String | Time base for audio |
file.file_information | Object | Information about the file |
file.file_information.encoder | String | File encoder |
file.file_information.file_access_date | String | File access date |
file.file_information.file_inode_change_date | String | File inode change date |
file.file_information.file_modify_date | String | File modify date |
file.file_information.file_name | String | File name |
file.file_information.file_permissions | String | File permissions |
file.file_information.file_size | String | File size |
file.file_information.file_type | String | File type |
file.file_information.file_type_extension | String | File type extension |
file.file_information.graphics_mode | String | Graphics mode |
file.file_information.handler_description | String | Handler description |
file.file_information.handler_type | String | Handler type |
file.file_information.handler_vendor_id | String | Handler vendor ID |
file.media_information | Object | Information about the media |
file.media_information.matrix_coefficients | String | Matrix coefficients |
file.media_information.matrix_structure | String | Matrix structure |
file.media_information.max_bitrate | String | Maximum bitrate |
file.media_information.media_create_date | String | Media create date |
file.media_information.media_data_offset | Integer | Media data offset |
file.media_information.media_data_size | Integer | Media data size |
file.media_information.media_header_version | Integer | Media header version |
file.media_information.media_language_code | String | Media language code |
file.media_information.media_modify_date | String | Media modify date |
file.media_information.media_time_scale | Integer | Media time scale |
file.media_information.megapixels | Float | Megapixels |
file.media_information.minor_version | String | Minor version |
file.media_information.movie_header_version | Integer | Movie header version |
file.media_information.next_track_id | Integer | Next track ID |
file.media_information.pixel_aspect_ratio | String | Pixel aspect ratio |
file.media_information.poster_time | String | Poster time |
file.media_information.preferred_rate | Integer | Preferred rate |
file.media_information.preferred_volume | String | Preferred volume |
file.media_information.preview_duration | String | Preview duration |
file.media_information.preview_time | String | Preview time |
file.media_information.rotation | Integer | Rotation |
file.media_information.time_scale | Integer | Time scale |
file.media_information.track_header_version | Integer | Track header version |
file.media_information.track_id | Integer | Track ID |
file.media_information.track_layer | Integer | Track layer |
file.media_information.track_modify_date | String | Track modify date |
file.media_information.track_volume | String | Track volume |
file.media_information.transfer_characteristics | String | Transfer characteristics |
video.additional_video_features | Object | Additional video features |
video.additional_video_features.attached_pic | Integer | Attached picture |
video.additional_video_features.captions | Integer | Captions |
video.additional_video_features.clean_effects | Integer | Clean effects |
video.additional_video_features.comment | Integer | Comment |
video.additional_video_features.default | Integer | Default |
video.additional_video_features.dependent | Integer | Dependent |
video.additional_video_features.descriptions | Integer | Descriptions |
video.additional_video_features.dub | Integer | Dub |
video.additional_video_features.forced | Integer | Forced |
video.additional_video_features.hearing_impaired | Integer | Hearing impaired |
video.additional_video_features.karaoke | Integer | Karaoke |
video.additional_video_features.lyrics | Integer | Lyrics |
video.additional_video_features.metadata | Integer | Metadata |
video.codec_information | Object | Information about the video codec |
video.codec_information.avg_frame_rate | String | Average frame rate |
video.codec_information.bits_per_sample | String | Bits per sample |
video.codec_information.chroma_location | String | Chroma location |
video.codec_information.closed_captions | Integer | Closed captions |
video.codec_information.codec_long_name | String | Long name of the video codec |
video.codec_information.codec_name | String | Name of the video codec |
video.codec_information.codec_tag | String | Video codec tag |
video.codec_information.codec_tag_string | String | Video codec tag string |
video.codec_information.codec_type | String | Type of the video codec (video) |
video.codec_information.compatible_brands | Array of Strings | Compatible brands |
video.codec_information.major_brand | String | Major brand |
video.codec_information.mime_type | String | MIME type |
video.codec_information.minor_version | String | Minor version |
video.color_information | Object | Color information for the video |
video.color_information.color_primaries | String | Color primaries |
video.color_information.color_range | String | Color range |
video.color_information.color_space | String | Color space |
video.color_information.color_transfer | String | Color transfer |
video.color_information.display_aspect_ratio | String | Display aspect ratio |
video.color_information.opcolor | String | Opcolor |
video.duration_and_timing | Object | Duration and timing information for the video |
video.duration_and_timing.create_date | String | Create date |
video.duration_and_timing.current_time | String | Current time |
video.duration_and_timing.duration | String | Duration |
video.duration_and_timing.selection_duration | String | Selection duration |
video.duration_and_timing.selection_time | String | Selection time |
video.duration_and_timing.start_time | String | Start time |
video.duration_and_timing.track_create_date | String | Track create date |
video.duration_and_timing.track_duration | String | Track duration |
video.language_and_handler | Object | Language and handler information for the video |
video.language_and_handler.handler_name | String | Handler name |
video.language_and_handler.language | String | Language |
video.language_and_handler.vendor_id | String | Vendor ID |
video.resolution_and_size | Object | Resolution and size information for the video |
video.resolution_and_size.coded_height | Integer | Coded height |
video.resolution_and_size.coded_width | Integer | Coded width |
video.resolution_and_size.height | Integer | Height |
video.resolution_and_size.size | String | Size (formatted as "width x height") |
video.resolution_and_size.width | Integer | Width |
video.technical_video_details | Object | Technical details about the video |
video.technical_video_details.field_order | String | Field order |
video.technical_video_details.film_grain | Integer | Film grain |
video.technical_video_details.has_b_frames | Integer | Has B frames |
video.technical_video_details.is_avc | String | Is AVC |
video.technical_video_details.level | Integer | Level |
video.technical_video_details.nal_length_size | String | NAL length size |
video.technical_video_details.nb_frames | String | Number of frames |
video.technical_video_details.pix_fmt | String | Pixel format |
video.technical_video_details.refs | Integer | References |
video.time_base | Object | Time base information for the video |
video.time_base.time_base | String | Time base for video |
video.video_information | Object | Information about the video |
video.video_information.bit_rate | String | Video bitrate |
video.video_information.format_long_name | String | Long name of the video format |
video.video_information.format_name | String | Name of the video format |
video.video_information.nb_programs | Integer | Number of programs |
video.video_information.nb_streams | Integer | Number of streams |
video.video_information.probe_score | Integer | Probe score |
Sample Response
HTTP Response Codes
The method may return one of the following HTTP status codes:
Status Code | Description |
---|---|
200 | The request was successful. |
401 | Required authentication information is either missing or not valid for the resource. |
400 | Invalid input - the provided files are corrupt or the supported inputs are not provided. |
500 | If any unexpected error occurs while processing the request. |
Authentication
All API requests to ApyHub services need to be authenticated. Currently we support
tokens
or basic authentication
mechanisms.
You can generate and view your existing credentials from your workspace settings (on the left side of the navbar) and go to “API Keys".Points to note:
- Credential secrets are generated on the fly and are not stored in plain text, so on generating a credential please save the secrets somewhere safe.
- Use the
apy-token
as the header parameter to pass the token. - Use the
Authorization
header to send the basic authentication credentials.
Error codes
To search for a specific error code, enter the code in the search box below. Alternatively, you can click on the button to view a complete list of all error codes.
Table of contents