AI summary
Set any video or animated GIF as a looping live wallpaper with adjustable speed and Fill/Fit scaling. Version 1.3.0 adds GIF support via a built-in decoder, fixes portrait video rotation, and improves preview accuracy. No ads, no analytics, no network access.
Generated by AI. May contain inaccuracies.
About this app
A small Android app that lets you pick any video or animated GIF from your device and set it as a looping live wallpaper.
Features
- Pick a video or animated GIF with the system file picker - Preview it looping (muted) before setting it - Adjustable playback speed (0.25x–2.0x) - Fill (crop to cover the screen) or Fit (show the whole frame, letterboxed if needed) scaling, shown in both the preview and the wallpaper - Portrait phone videos display the right way up - One-tap wallpaper setting through Android's own live wallpaper picker - No ads, no analytics, no network access of any kind
How it works
The app implements an Android WallpaperService that loops your chosen video using MediaPlayer. Since version 1.2.0, decoded frames go to a SurfaceTexture and are drawn with a small OpenGL ES 2.0 renderer (VideoFrameRenderer.kt), which applies the video's own rotation so portrait phone clips come out upright. This is what makes Fill and Fit scaling work: Android's usual video scaling relies on resizing the display surface, which live wallpapers aren't allowed to do (see issue #1).
GIFs (version 1.3.0) don't go through MediaPlayer. GifDecoder.kt is a small pure-Kotlin GIF89a decoder written for this app, and GifPlayer.kt shows one frame at a time, timed by each frame's own delay divided by your speed setting. Frames are uploaded as textures to the same renderer, so Fill and Fit work identically for GIFs and videos. The app recognises GIFs by their file header rather than their file name. Transparent areas of a GIF are drawn black, and GIF files over 50 MB are not supported.
Setting the wallpaper goes through Android's own system picker (ACTION_CHANGE_LIVE_WALLPAPER). The OS requires this for all live wallpaper apps, not just this one.
Android applies a live wallpaper to the home screen and lock screen together, and the live wallpaper API has no per-screen setting. Some devices' system pickers may still offer extra choices; if yours does, the video plays on whichever screens you select.
Privacy
The app has no internet permission and contains no analytics, tracking or advertising code. The only thing it stores is a reference (URI) to the video or GIF you picked, kept locally in SharedPreferences on your device.
License
Apache 2.0
What's new
- New: animated GIF wallpapers. Pick a GIF with the file picker and set it as a looping live wallpaper, with the same speed and Fill/Fit controls as video. GIF decoding is built into the app.
- Fixed
- Portrait videos recorded on phones no longer appear rotated and stretched. - Playback speed now returns to normal after moving the slider back to 1.0x. - The in-app video preview now respects Fill/Fit. - The selected Fill/Fit button text is now easier to read.
- Known limitations
- Transparent areas of a GIF appear black. - GIF files over 50 MB are not supported. - Very large GIFs can run slowly on the home screen.
About this version
- Version
- 1.3.0 (10)
- Size
- 4.71 MB
- Requires Android
- 8.0
- Target SDK
- 26
- Architecture
- universal
- Downloads
- 44
- Updated
- Oct 8, 2026
- Package
- io.github.codeg0blin.videowallpaper
Similar apps
Ratings & reviews
- 50
- 40
- 30
- 20
- 10