Giter VIP home page Giter VIP logo

twitchvault's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

gaurav-grabbit

twitchvault's Issues

Migrate from writing placeholder _chat.json.BAD files on failed chat downloads to log file to clean up download folders

As a workaround for the time being if a chat log is not available (due to either nothing being done in chat for that video or the source VOD is old/unavailable), we write a placeholder _chat.json.BAD file to satisfy future file checks and not attempt downloading again.

This clutters up the download folders with useless files. We do want clean this up and the intent is to write video ID's to a log file as they fail to download and check against this on subsequent passes.

Current non-zero exit code checks for TDCLI are crude. Corner cases such as a Twitch service being unavailable or your own network/ISP issues could cause it to erroneously flag a chat log as failed. Will need examples of TDCLI erroring out in scenarios like these.

Automatic TDCLI version checker and downloader / VOSK downloader

An extra feature I am looking into adding is making the process automatic for downloading and maintaining the TDCLI and Vosk prerequisites.

Ideas:

  • Include a TDCLI version number in this repo. Seems they have made changes often enough that I need to account for so it may be worth just maintaining a target supported version. It'll be able to be changed in code if someone wants to 'roll their own'.

  • Check for an existing TDCLI download and check its version. If it doesn't exist or the version is incorrect, we can grab a corrected version.

  • Github has a json response listing available releases for a repo that we can use: https://api.github.com/repos/lay295/TwitchDownloader/releases/latest

  • Use some OS checking tools in python to verify OS type, 32 vs 64 bit, etc.. Use some fuzzy wildcard naming to grab the correct option and download link. Download and unzip in place.

  • Vosk download should be easy. Models don't appear to have changed in ages so for all intents we can just have a static download URL. Either at startup or when the SRT task rolls around, check if we need to use the SRT stuff and if so, do the same song and dance of checking the files in repo (may get fancy and hash the individual files and verify they all exist and re-download/unzip if not?) and download and unzip.

Adding optional standalone Vosk transcription tool

Reverting an old deletion and bringing back the 0_main_vtt_generation.py file. Intent here is to keep an optional standalone tool to transcript audio to SRT from random video files not necessarily downloaded by the main tools here.

At the time of this writing, the old file has been added in but is unchanged so is unlikely to work at this point in time. More work to come on that front...

VTT generation produces files that show one word at a time (as viewed via VLC)

Initial testing of the VTT render code and playing back in VLC shows that it displays a single word at a time on screen. Accuracy at first blush seems good and timing is perfect otherwise.

More research needs to be done here. Plan is to either find out how to fix the VTT file generation or skip it and just have Vosk write out an SRT file instead.

This is low priority.

Build docker container

This would be nice to build as a docker container even as a simple script based system.

Ultimately would like to make it compatible with Unraid's Community Applications system.

Low priority feature request/enhancement

Discord webhook notifications

Subject TL;DR:

Want to eventually add Discord webhook functionality to send out status notifications as certain tasks are completed, fail, etc..

Low priority feature enhancement

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.