Openverse integration for the Automated Video Generator. Fetches Creative Commons images from the Openverse public catalog without requiring any API key, token, or registration.
Product: Automated Video Generator
Feature: Openverse Image Fallback
File: src/lib/openverse-fetcher.ts
Config: OPENVERSE_ENABLED (default: true)
Provider API: https://api.openverse.engineering/v1/images/
Openverse is a public catalog of over 600 million Creative Commons and public domain images, maintained by WordPress. The Automated Video Generator integrates Openverse so you can fetch CC-licensed images without signing up for any third-party service. There is no API key required, no rate limit imposed by the tool (subject to Openverse’s own fair-use policy), and no registration step.
searchOpenverseImages(query, count) from src/lib/openverse-fetcher.ts.https://api.openverse.engineering/v1/images/ with the search query and page size.MediaAsset format (type: 'image', url, width, height, photographer).fetchVisualsForScene() inside visual-fetcher.ts to avoid duplicate requests.Openverse serves as a fallback in three scenarios:
OPENVERSE_ENABLED=true (the default) keeps the pipeline running with CC images.Openverse images are CC-licensed. The API response includes creator, license, license_version, and license_url fields. The current integration fetches the image url directly. If you publish videos publicly, you should verify the specific license of each downloaded image and provide attribution where required by the license terms.
Set OPENVERSE_ENABLED=false in your .env file. The feature is enabled by default.
The count parameter defaults to 5, capped at 50 per request. The pipeline typically requests 3 images per fallback call.
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Automated Video Generator — Openverse Integration",
"operatingSystem": "Windows, macOS, Linux",
"applicationCategory": "Multimedia",
"description": "Free CC-licensed image search integration that works without any API key. Provides image fallback for video generation pipelines using the Openverse public catalog.",
"featureList": "Openverse API integration, no API key required, CC-licensed image search, automatic fallback in video pipeline, configurable via OPENVERSE_ENABLED env var",
"url": "https://github.com/itsPremkumar/Automated-Video-Generator",
"license": "MIT",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "USD"
}
}
GET https://api.openverse.engineering/v1/images/?q={query}&page=1&page_size={count}
Headers:
User-Agent: Chrome 125 (standard browser UA)Authorization header requiredOpenverse returns a rich schema with id, title, url, thumbnail, creator, license, license_version, license_url, attribution, width, height. The fetcher maps these into MediaAsset { type, url, width, height, photographer }.
| File | Purpose |
|---|---|
src/lib/openverse-fetcher.ts |
API client — searchOpenverseImages() |
src/lib/visual-fetcher.ts |
Pipeline integration — lines 943–974 |
src/config.ts |
Config key definition |
.env.example |
OPENVERSE_ENABLED=true |
If the Openverse API is unreachable or returns an error, the fetcher throws, which is caught by the caller in visual-fetcher.ts. The pipeline continues to the next fallback source.