Music Video
vidextract.predefined.music_video.v1
A music video or music performance extracted from a clip. Captures the song and artist when identifiable, plus the mood, genre, and visual treatment. Do not invent a title or artist that is not shown or clearly recognizable — omit instead.
Fields
Song title if shown on screen or clearly identifiable. Omit if unknown.
Performing artist or band if shown or recognizable. Omit if unknown.
Musical genre, lowercased — e.g. 'indie rock', 'hip hop', 'electronic'. Omit if unclear.
Emotional tone conveyed by the music and visuals — e.g. 'melancholic', 'euphoric', 'dreamy'.
How the video looks — e.g. 'hand-painted animation', 'one-shot live performance', 'neon-lit narrative'.
Themes or subjects depicted in the lyrics or imagery. Short phrases.
Primary location or world the video takes place in, if discernible.
One or two sentences describing the video's narrative or concept.
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "vidextract.predefined.music_video.v1",
"title": "Music Video",
"description": "A music video or music performance extracted from a clip. Captures the song and artist when identifiable, plus the mood, genre, and visual treatment. Do not invent a title or artist that is not shown or clearly recognizable — omit instead.",
"type": "object",
"required": [
"mood"
],
"additionalProperties": false,
"properties": {
"title": {
"type": "string",
"description": "Song title if shown on screen or clearly identifiable. Omit if unknown."
},
"artist": {
"type": "string",
"description": "Performing artist or band if shown or recognizable. Omit if unknown."
},
"genre": {
"type": "string",
"description": "Musical genre, lowercased — e.g. 'indie rock', 'hip hop', 'electronic'. Omit if unclear."
},
"mood": {
"type": "array",
"description": "Emotional tone conveyed by the music and visuals — e.g. 'melancholic', 'euphoric', 'dreamy'.",
"minItems": 1,
"items": {
"type": "string"
}
},
"visualStyle": {
"type": "string",
"description": "How the video looks — e.g. 'hand-painted animation', 'one-shot live performance', 'neon-lit narrative'."
},
"themes": {
"type": "array",
"description": "Themes or subjects depicted in the lyrics or imagery. Short phrases.",
"items": {
"type": "string"
}
},
"setting": {
"type": "string",
"description": "Primary location or world the video takes place in, if discernible."
},
"summary": {
"type": "string",
"description": "One or two sentences describing the video's narrative or concept."
}
}
}Use it via the API
Pass schemaId: "vidextract.predefined.music_video.v1" when you submit an extraction. The call returns an id immediately. Poll GET /v1/extractions/{id}/result (or register a webhook) for the structured result.
curl -s -X POST https://postreef.com/v1/extractions \
-H "x-api-key: $VIDEXTRACT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"inputs": ["transcript", "comments"],
"schemaId": "vidextract.predefined.music_video.v1"}'Full request/response shape in the API reference; copy-paste poll loops in the API quickstart.
Pass schemaId: "vidextract.predefined.music_video.v1" in your request to extract with this schema.