Skip to content

Latest commit

 

History

History
60 lines (45 loc) · 2.46 KB

README.md

File metadata and controls

60 lines (45 loc) · 2.46 KB

Pivid

Example video

Introduction

Pivid is a nonlinear, gapless, direct-rendering, multi-head video playback and compositing engine based on libav, optimized for the Raspberry Pi and controlled with a JSON/REST API. Pivid is intended for escape rooms, immersive experiences, video performances and similar applications.

Advantages

Pivid can splice, overlay, scale, transition, seek and loop videos with no gaps and frame-perfect rendering. The play script (playback instructions) may be updated at any time; preload hints may be provided to ensure gapless changes.

Playback position, media layout onscreen, and layer opacity are specified as (1-D) cubic Bezier functions of time, enabling flexible animation and transition effects. Still images are considered one-frame videos and may be layered with moving video content, including alpha-channel transparency support.

Pivid uses Linux Direct Rendering (with Atomic Display) for fast full screen playback. When playing H.264/AVC or H.265/HEVC video content on the Raspberry Pi 4B, Pivid uses the GPU and DMA buffers for zero-copy decoding, buffering, compositing and display.

Pivid is open source, available under the MIT license.

Limitations

Unlike apps like VLC or Kodi, Pivid has no user interface and is only useful driven by other software.

Pivid requires exclusive use of display hardware and does not run in a window (the desktop must be shut down).

Pivid currently has no audio support (a likely area of upcoming work).

Pivid is "early alpha" status. The author is excited to hear from you if you're planning to use it seriously!

Next: Building and running Pivid