Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zig-video

Overview

zig-video is a personal project with the goal of learning about audio and video processing. This project uses FFmpeg for handling various codecs and Raylib for rendering video content. This project also serves as a way to learn the Zig, a modern systems programming language.

Installation

To set up zig-video, you'll need to have FFmpeg, Git LFS, and Zig 0.13.0 installed. This has only been tested on macOS, but it should work on other platforms as well. Note: Raylib is bundled through the Zig package manager, so you don't need to install it separately. The below instructions are for macOS. For other platforms, you'll need to adjust the installation steps accordingly.

Follow the steps below:

  1. Install FFmpeg
brew install ffmpeg
  1. Clone the repository
git clone 
# Install Git LFS
git lfs install

# Clone the repository with Git LFS
git clone https://github.com/gavinaboulhosn/zig-video.git
cd zig-video

# Fetch the sample video file
git lfs pull
  1. Install Zig 0.13.0 You can install Zig via your package manager, or you can give Zigup a try.

  2. Build and run the project

zig build run

Features

  • Render video frames using FFMPEG and Raylib
  • Add audio playback
  • Synchronize audio and video
  • Multi-threaded audio and video decoding
  • Play/Pause functionality
  • CLI Options
  • Seeking
  • Support Audio and Video Pipelines
  • Render Audio FFT

About

zig-video is a personal project with the goal of learning about audio and video processing

Resources

Stars

5 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages