Thursday, February 27, 2020

YARMP: Lightweight Raspberry Pi Media Player

A lightweight Buildroot-based media player image (<65 MB) for Raspberry Pi that autoplays video, audio, or images in a loop — booting in under 20 seconds.

  • Supports all Pi 1 variants (Pi Zero, Pi Zero W, Pi A/B, Pi A+/B+)
  • Works on older Pis with just 256 MB RAM and a 1 GB SD card
  • Autoplays media from the internal SD card or an external FAT-formatted USB drive
Pi Zero running YARMP as digital photo album on 7-inch LCD

Battery-powered Pi Zero running YARMP as a digital photo album on a 7-inch LCD — under $50 total.

Quick start — 3 steps

  1. Download raspi-yarmp.img.xz to your PC
  2. Write the image to an SD card using Balena Etcher
  3. Insert the SD card into your Pi and power on — the default video starts playing in a loop
Balena Etcher step 1 — select image

Step 1: Select the YARMP image in Balena Etcher.

Balena Etcher step 2 — select target

Step 2: Select the SD card as target.

Balena Etcher step 3 — flash

Step 3: Flash the image to the SD card.

Flashing in progress

Flashing in progress.

Flash complete

Flash complete — SD card is ready.

Playing your own media

  1. Remove the SD card from the Pi and plug it into your PC
  2. Browse to USRDAT:\media-files\ and find sample-video.mkv
  3. Delete or back up the sample file, then add your own media (video, audio, or images) to the media-files directory
  4. Insert the SD card back into the Pi and power on — your media plays in a loop

If you can't find the USRDAT drive on Windows, try a USB SD card reader or mount it on Linux. Alternatively, copy your media to a FAT-formatted USB drive and plug it into the Pi — on boot, external USB media takes priority over the internal SD card.

Playback priority

When multiple media types are present, YARMP follows this priority order:

  1. Video files (highest priority)
  2. Audio files (e.g. MP3)
  3. Image files (e.g. JPG, PNG)
  4. If no media is found on USB or SD card, the default BBC motion gallery video plays

Seamless looping

By default, a single video file plays in seamless loop mode — no black screen between loops. For multiple videos to play seamlessly, merge them into one file using the melt tool.

For photo slideshows, adjust the display delay by editing /mnt/userdata/rc.local on the Pi (look for the fbv command line section).

Use cases

  • Digital signage
  • Portable HDMI audio/video test source (Pi Zero + battery bank)
  • Art installations — display your work on a loop
  • Museum exhibits — low-cost media playback
  • Science projects — small HDMI display with custom content
  • Digital photo album on an HDMI display

Hardware photos

Pi Zero YARMP setup — front view

Pi Zero with 7-inch LCD — front view.

Pi Zero YARMP setup — rear view

Pi Zero with 7-inch LCD — rear view showing battery bank.

DOWNLOADS

raspi-yarmp.img.xz — pre-built SD card image (<65 MB)

No comments: