6 releases (breaking)
0.9.0 | Oct 28, 2024 |
---|---|
0.8.0 | Sep 30, 2024 |
0.7.0 | Aug 17, 2024 |
0.6.0 | Oct 27, 2023 |
0.5.2 | Aug 28, 2023 |
#82 in Video
79KB
1.5K
SLoC
egui-video, a video playing library for egui
https://github.com/n00kii/egui-video/assets/57325298/c618ff0a-9ad2-4cf0-b14a-dda65dc54b23
plays videos in egui from file path or from bytes
dependancies:
- requires ffmpeg 6 or 7. follow the build instructions here
- requires sdl2. by default, a feature is enabled to automatically compile it for you, but you are free to disable it and follow these instructions
usage:
/* called once (top level initialization) */
{ // if using audio...
let audio_device = egui_video::AudioDevice::new()?;
// don't let audio_device drop out of memory! (or else you lose audio)
add_audio_device_to_state_somewhere(audio_device);
}
/* called once (creating a player) */
let mut player = egui_video::Player::new(ctx, my_media_path)?;
{ // if using audio...
player = player.with_audio(&mut my_state.audio_device)
}
/* called every frame (showing the player) */
player.ui(ui, player.size);
contributions
are welcome :)
current caveats
- need to compile in
release
oropt-level=3
otherwise limited playback performance
Dependencies
~23–35MB
~629K SLoC