mincomk f41d7f169d
Some checks failed
Build / lint (push) Successful in 5m26s
Lint / lint (push) Failing after 5m10s
fix: assets
2025-06-02 17:52:11 +09:00
2025-06-02 17:52:11 +09:00
2025-06-02 17:19:21 +09:00
2025-06-02 17:26:42 +09:00
2025-06-02 17:30:31 +09:00
2025-06-02 17:52:11 +09:00
2025-06-02 17:30:31 +09:00
2025-05-15 16:33:37 +09:00
2025-06-02 17:35:37 +09:00
2025-05-15 16:33:37 +09:00
2025-06-02 17:19:21 +09:00

header

Badges

MIT License

Build

Features

  • PNG/GIF Decoder
  • Render still image
  • Embed framed video to binary

Roadmap

  • Filesystem input support
  • Encryption

Screenshots

App Screenshot

Build/Run

Prerequisites

  • QEMU x86_64 emulator
  • OVMF.fd

Clone the project

  git clone https://git.walruslab.org/mincomk/uefi-video.git

Go to the project directory

  cd uefi-video

Modify config as you want: Configuration

And build

  cargo build

Or run directly with QEMU

  cargo run

Making IMG

.img generation is intended to use from Linux. Contribution is welcome to support docs of other OS.

  dd if=/dev/zero of=boot.img bs=1M count=512 status=progress
  mkfs.fat -F 32 boot.img
  sudo mount boot.img mnt --mkdir
  mkdir -p mnt/EFI/BOOT

  # Change uefi-video.efi to the desired file.
  # It's in releases if you download, and it's in target/x86_64-unknown-uefi/release if you build your own.
  cp uefi-video.efi mnt/EFI/BOOT/bootx64.efi
  sudo umount mnt
  rmdir mnt

  # use boot.img as you want

Configuration

You can configure the project with config.rs.

Default Config

// src/config.rs
pub static DATA: &[u8] = include_bytes!("../assets/rainbow.png");
pub static MEDIA_TYPE: MediaType = MediaType::ImagePNG;
pub static SCALE: f32 = 1.0;

Config Entries

Name Content Notes
DATA include_bytes!("ASSET_FILE") Path is relative to src directory
MEDIA_TYPE MediaType::ImagePNG or MedidaType::VideoGIF Should match content of DATA
SCALE A scale factor 1.0 is an original size
Description
UEFI Media Renderer
Readme 2.4 MiB
main Latest
2025-06-02 08:48:33 +00:00
Languages
Rust 100%