Add comprehensive video playback optimization for smooth performance
Environment variable optimizations: - KIVY_WINDOW='pygame' - Better window backend performance - KIVY_AUDIO='ffpyplayer' - Optimized audio playback - KIVY_GL_BACKEND='gl' - Use OpenGL for better graphics - FFMPEG_THREADS='4' - Multi-threaded video decoding - LIBPLAYER_BUFFER='2048000' - 2MB buffer for smooth playback - SDL_AUDIODRIVER='alsa' - Better audio on Raspberry Pi Kivy configuration optimizations: - multisampling=0 - Disable for better performance - fast_rgba=1 - Enable fast RGBA mode - Stereo audio (channels=2) - Reduced logging overhead (warning level) Video widget enhancements: - FFmpeg buffer optimization (2MB) - Multi-threaded decoding (4 threads) - Ignore index for better seeking - Allow codec fallback - 60 FPS animation delay New video optimization script (.video-optimization.sh): - GPU memory increased to 256MB - Install video codec libraries - Optimize swappiness to 30 (better memory management) - CPU forced to performance mode - Filesystem cache optimization Installation integration: - Runs video optimization automatically on Raspberry Pi - Configures GPU memory, libraries, and system settings - Improves overall video playback smoothness This addresses video stuttering, frame drops, and playback lag by optimizing at multiple levels: environment, application, and system.
This commit is contained in:
13
install.sh
13
install.sh
@@ -593,6 +593,19 @@ if detect_raspberry_pi; then
|
||||
setup_raspberry_pi_power_management
|
||||
fi
|
||||
|
||||
# Optimize video playback for Raspberry Pi
|
||||
if detect_raspberry_pi; then
|
||||
echo ""
|
||||
echo "=========================================="
|
||||
echo "Optimizing for Video Playback"
|
||||
echo "=========================================="
|
||||
|
||||
# Run video optimization script
|
||||
if [ -f "$SCRIPT_DIR/.video-optimization.sh" ]; then
|
||||
bash "$SCRIPT_DIR/.video-optimization.sh"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "To run the signage player:"
|
||||
echo " cd src && python3 main.py"
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user