You do not have to embed every clip from a third-party platform. The video section hosts MP4 examples with dedicated pages. For the full collection write-up, see self-hosted shorts collection.
What each page needs
Provide a unique URL, clear h1 and meta description, a poster image, duration text, and VideoObject JSON-LD—see tech visual short and warm visual clip.
VideoObject fields
The build emits VideoObject with contentUrl, thumbnailUrl, ISO duration (e.g. PT14S), and uploadDate. Validate in Google’s rich results test.
Posters & first paint
Posters should match aspect ratio and approximate the first frame. ffmpeg can generate missing posters during build.
File size
Keep shorts under ~15 seconds; target ~2–5 Mbps at 1080p. Use CDN for very large sources.
Accessibility
Use controls and playsinline; no loud autoplay. Surround players with descriptive copy.
Link galleries and articles
Cross-link AI lights and the collection feature.
Publish workflow
Drop MP4 in upload/video/, register in VIDEOS, run npm run build, update the collection article and sitemap.