-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
64 lines (56 loc) · 2.9 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
-- TODO LIST --
will be implemented (probably)
* general
- add more tracy zones and stuff
- make the shader cache thingy delete the shader even if there is only 1 left and make it allocate a new head when it needs to
- same video on multiple monitors
- lazy rendering - (toggleable), if there are no new frames to draw than don't redraw - this will be on by default and can be turned off so if you have a time based shader or smh it'll still look good
- custom shaders option cuz why not (in .config/xab or custom path specified as a flag)
- max framerate - add a smart fps limiter, and a noraml fps limiter (smart one just takes rendering time into acount or smh like that)
- add vlc support
- scaling, fitting, centering, tiling and other background stuff
- better clean ups so i can clean up something even though its initalizing
- clean up my bad code lol
- man page
- add a clang format thingy
- try to optimize the hell out of xab
- dummy video player or smh
- optimize the hell out of xab and decrease cpu usage as much as i can
- pause rendering: https://github.com/glouw/paperview/issues/7
- remake atom system
- trace logs for more stuff
- (i might not fix this) if there is a flag (such as --monitor=1) without a video assigned, xab will run without any video (instead of printing the usage message)
- offset videos by x,y
* readme
- Contributing
- License in readme (mentions the license)
* mpv video reader
- look into mpv specific video reader bug thingy for specific gpus
- fullscreen monitor (--monitor=-1) doesn't work with libmpv specifically
* xab video reader
- video looping
- proper hardware acceleration for video decoding
- libavdevice stuff ^
- fix my bad ffmpeg reader implementation with a new shiny one
- good frame timing and stuff
- multithreading
- video frame dropping (can be turned off as an option/flag, on by default)
- find if there a way to not use PBOs, and just write to the gpu texture directly (probably requires gpu hardware acceleration?)
--- IDEA LIST ---
may or may not be implemented
- a fancy plugin system
- find a way to only change 1 monitor/part of the screen without cleaning everything else (maybe save a part of the pixmap to a texture?)
- a very simple toml config that will become super complicated after a week
- daemon and client thingy (like swww), so i can change the background on the fly and other cool things
- an optional gui (with rust and iced or smh), as a seperate repo, but i think i have to make the daemon thingy first
- slideshow for video and images (i think this is already implemented in the libmpv videa reader, but i havn't included it into xab)
- video filters and stuff
- tests with a dummy root window and stuff
- somehow cache the frames? (xab reader)
- error trace with a txt file for errors and stuff
- multithreading
-- GIT STUFF --
- github issue template
- make a CHANGELOG (ill do this when ill release verson 0.1.0... probably)
- use github actions to build releases
- git gud