GithubHelp home page GithubHelp logo

xrootgif's Introduction

XRootGIF xrootgif

A simple program for setting animated wallpapers, targeting performance

Usage

Usage: ./xrootgif d:S:s:apt:TqQh [image]
  -d | --display [display]
       X-Display to use (:0), if none, use default display
  -S | --screen [num]
       X-Screen to use, if none, use default screen
  -s | --speed [float]
       Playback speed as float
  -a | --anti-alias
       Use anti-aliasing
  -p | --performance
       Performance mode - scale framerate to 5 (default)
  -t | --target-fps [float]
       In performance mode, set target framerate
  -T | --test-pattern
      A little test pattern used for developing
  -q | --quiet
       Only print basic information
  -Q | --Quiet
       No output
  --scale-per-monitor
       Scales the image on each monitor (default)
  --scale-across-monitor
       Scales the image across all monitors
  --daemon
       After loading the image, fork of a daemon and exit
  --version
       Print version
  -h | --help

Performance

This Program grew out of the pain, that most GIF-Viewer consume quiet some CPU time, so having a GIF as wallpaper somewhat drained the battery. XRootGIF tries to minimize CPU time used to display fancy GIFs, by pre rendering all frames and allocating them in the X-Display instance. Some GIFs may still make your PC heat your room, but this can be avoided by using the performance mode, which will simply downscale the framerate.

Planned features

  • more image fitting modes
  • configuration files
  • other animation formats (webm, apng, ...)

Building

The following libraries are used by XRootGIF:

  • libx11
  • giflib
  • imlib2
  • (libXrandr)

Tools:

  • gcc
  • meson
  • ninja

To compile, simply run

meson build && cd build && ninja

You can disable multimonitor support by changing 'multimonitor_feature' in meson_options.txt

xrootgif's People

Contributors

jroeger23 avatar

Stargazers

 avatar Iván avatar  avatar  avatar as-labs avatar  avatar Nick Cannariato avatar Karsten Groll avatar Joaquín Rossi avatar Xaxeric avatar Tim Hagemann avatar A.L.I.C.E avatar Open Schnick avatar MoonLight Fanatic avatar Danil avatar Eliaz Bobadilla avatar Tespeso avatar Dr Musashi Hinck avatar  avatar Francesco Minnocci avatar hrwn avatar PoorPockets McNewHold avatar  avatar Alexandre Ollivier avatar  avatar Benoît Lormeau avatar Iqbal Rifai avatar Pedro Lara Campos avatar

Watchers

PoorPockets McNewHold avatar  avatar  avatar

Forkers

charadon

xrootgif's Issues

A way to target a specific monitor ?

Hello ! I love your program, it's the best way I've found to put a sweet animated gif on my desktop. I have a small problem, though : The command lines option allows me to target a specific display and a specific screen, but on my dual monitor setup, randr only sees one screen : Screen 0, and there also seem to be only one display : 0:0 . Is there anything I could to to get a different picture on each screen using "HDMI1" and "DP3", or an animated picture only on one of my screens ?

Thank you :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.