Press play, then move the pointer along the glass.
Try it with your own video
You can also drop a video file on the player. It plays only in your browser; nothing is uploaded.
The idea
Most players lay a dark bar over the film. Meniscus lays liquid glass on it. The controls float in three islands, play is a thick drop and the playhead is a glass bead, and the picture shows through every piece: sharp in the middle, bent at the rim, the way light curves at the edge of a drop of water.
Each piece catches a highlight that follows your pointer. When the controls are not needed, the glass sinks below the frame instead of fading away, and rises again when you move.
In Chrome and Edge the rim truly refracts the picture behind it. In Safari and Firefox it is frosted glass with the same shape and light.
What it does
- 01
The glass
Three islands of glass: playback, the track with the time, and options. Play is a thick drop, the playhead a bead that swells into a lens as you drag it.
- 02
The lens
Before the film starts, and at the end, a single glass lens sits in the middle of the picture.
- 03
Scene preview
Move or drag along the track and the scene at that point appears in a small lens, with the time and the chapter.
- 04
Chapters
Previous and next jump between chapters. Without chapters they skip 10 seconds.
- 05
Stop and frame step
Stop returns to the start. Frame step moves one frame at a time, forward or back.
- 06
A-B loop
Mark a start and an end and that part plays on repeat, shown as a band of tinted glass on the track.
- 07
Your own video
Drop in a file or paste a link. If it has no preview stills, the skin makes them from the video.
- 08
Calm by default
The glass rests, sinks and rises. Nothing flashes or fades for show.
On a phone
On a small screen the track island moves to the top and the buttons sit under it, each at least 44 px for a thumb. Tap to show the controls, double-tap a side to skip 10 seconds.
For everyone
Every control is a real Video.js component or a labelled button, reachable by keyboard and announced to screen readers. Focus is always visible. With reduced transparency or higher contrast the glass turns solid; with reduced motion it stops moving; forced colors are supported. The skin follows the public Video.js properties such as --media-accent-color and --media-font-family.
- Space / K
- Play, pause
- P / N
- Previous, next chapter
- S
- Stop
- , / .
- One frame back, forward
- A / B
- Loop start, loop end
- ← →
- 5 seconds
- J / L
- 10 seconds
- ↑ ↓
- Volume
- M
- Mute
- C
- Subtitles
- F
- Fullscreen
- I
- Picture in picture