diff --git a/servapps/LSDVR/cosmos-compose.json b/servapps/LSDVR/cosmos-compose.json new file mode 100644 index 00000000..af3f8b3a --- /dev/null +++ b/servapps/LSDVR/cosmos-compose.json @@ -0,0 +1,70 @@ +{ + "cosmos-installer": { + "form": [ + { + "name": "downloadsPath", + "label": "What is the path to your downloads? (leave empty to not mount anything)", + "initialValue": "{DefaultDataPath}/downloads", + "type": "text" + }, + { + "name": "adminOnly", + "label": "Do you want to make this service admin only?", + "initialValue": false, + "type": "checkbox" + } + ] + }, + "minVersion": "0.7.6", + "services": { + "{ServiceName}": { + "image": "mrbrax/twitchautomator:master", + "container_name": "{ServiceName}", + "UID": 1000, + "GID": 1000, + "restart": "unless-stopped", + "environment": [ + "PUID=1000", + "PGID=1000", + "TZ=auto" + ], + "labels": { + "cosmos-force-network-secured": "true", + "cosmos-auto-update": "false", + "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/LSDVR/icon.png" + }, + "volumes": [ + { + "source": "{ServiceName}-config", + "target": "/usr/local/share/twitchautomator/data/", + "type": "volume" + } + {if Context.downloadsPath} + { + "source": "{Context.downloadsPath}", + "target": "/usr/local/share/twitchautomator/data/storage", + "type": "bind" + } + {/if} + ], + "routes": [ + { + "name": "{ServiceName}", + "description": "Expose {ServiceName} to the web", + "useHost": true, + "target": "http://{ServiceName}:8080", + "mode": "SERVAPP", + "Timeout": 14400000, + "ThrottlePerMinute": 20000, + "MaxBandwith": 0, + "AuthEnabled": false, + "BlockCommonBots": true, + "BlockAPIAbuse": false, + "SmartShield": { + "Enabled": true + } + } + ] + } + } +} diff --git a/servapps/LSDVR/description.json b/servapps/LSDVR/description.json new file mode 100644 index 00000000..d500dcad --- /dev/null +++ b/servapps/LSDVR/description.json @@ -0,0 +1,31 @@ +{ + "name": "LSDVR", + "description": "Automatic VOD recording", + "longDescription": [ + "<p>- Automatic VOD recording around when the stream goes live, instead of checking it every minute like many other scripts do.</p>", + "<p>- Because of notification delays, the stream usually starts capturing after ~2 minutes after the stream goes live.</p>", + "<p>- Cyclic recording, as in when a specified amount or storage per streamer is reached, the oldest stream gets deleted.</p>", + "<p>- Tons of metadata, maybe too much. Stores info about games played, stream titles, duration, if the stream got muted from copyrighted music, etc.</p>", + "<p>- Viewer count logging with graphs.</p>", + "<p>- Chapters (titles and games) are written to the final video file.</p>", + "<p>- <a href='https://github.com/MrBrax/twitch-vod-chat'>Video player</a> with chat playback.</p>", + "<p>- Video cutter with chapter display for easy exporting, also cuts the downloaded chat for synced rendering.</p>", + "<p>- Notifications with optional speech when the website is open, get stream live notifications far earlier than the mobile app does.</p>", + "<p>- Writes a <a href='https://github.com/mifi/lossless-cut/'>losslesscut</a> compatible csv file for the full VOD, so you don't have to find all the games.</p>", + "<p>- Uses `ts` instead of `mp4` so if the stream or program crashes, the file won't be corrupted.</p>", + "<p>- Audio only support.</p>", + "<p>- Optionally either dumps chat while capturing or downloads the chat file after it's done.</p>", + "<p>- Basic tools for downloading any VOD, chat, or clip.</p>", + "<p>- Can be set to automatically download the whole stream chat to a JSON file, to be used in my <a href='https://github.com/MrBrax/twitch-vod-chat'>twitch-vod-chat</a> webapp or automatically burned in with <a href='https://github.com/lay295/TwitchDownloader'>TwitchDownloader</a>.</p>", + "<p>- Basic webhook support for external scripting.</p>", + "<p>- Notifications over the browser, telegram, pushover, and discord.</p>", + "<p>- Mobile friendly site with PWA.</p>", + "<p>- Exporting of videos to external file, SFTP, and YouTube.</p>", + "<p>- Can be enabled for all finished captures</p>", + "<p>- Can be run for an entire channel at once</p>" + ], + "tags": ["twitch", "youtube", "download", "videos", "vod", "media"], + "repository": "https://github.com/alexta69/metube", + "image": "https://github.com/alexta69/metube/pkgs/container/metube", + "supported_architectures": ["amd64", "arm64"] +} diff --git a/servapps/LSDVR/icon.png b/servapps/LSDVR/icon.png new file mode 100644 index 00000000..0babfca3 Binary files /dev/null and b/servapps/LSDVR/icon.png differ diff --git a/servapps/LSDVR/screenshots/1.png b/servapps/LSDVR/screenshots/1.png new file mode 100644 index 00000000..29565277 Binary files /dev/null and b/servapps/LSDVR/screenshots/1.png differ