Commit Graph

702 Commits (d37cca52c9ccbe44070203a2b6e41868197531aa)
 

Author SHA1 Message Date
Mike Lang d37cca52c9 review: Avoid race conditions if called multiple times
By always using unique filepaths (except for the final result, which is written atomically)
we turn multiple simultanious calls into at worst wasted effort, instead of garbled results.
3 years ago
Mike Lang a236509470 and get it working 3 years ago
Mike Lang 04ae9dd695 Finish adapting cut_review for restreamer 3 years ago
Mike Lang 9f772d378c always watch my own channel 4 years ago
Mike Lang 99310d9326 list_races: don't crash if racers aren't set 4 years ago
Mike Lang 3a5f17f83e cut_review: make some more timing things arguments 4 years ago
Mike Lang 7feaa2d31d wip: unfinished: port cut_reviews.py into restreamer 4 years ago
Mike Lang 901ed0106e cut_review: tell ffmpeg not to fail on odd resolutions 4 years ago
Mike Lang 5f16ce4c3b restreamer: fix bug in /cut 4 years ago
Mike Lang 7eb9cf6543 cut_review: autodetect start 4 years ago
Mike Lang dc76d02f36 wip: 4 years ago
Mike Lang bfe729e653 wip: 4 years ago
Mike Lang 1558b1165a wip: 4 years ago
Mike Lang 2dbb8dbaee improve replay path behaviour for missing sources and change placeholder 4 years ago
Mike Lang 7e9aa3e8a4 update for condor x2 4 years ago
Mike Lang 3764ec1a6f delete unused and broken get_channels_for_game
this api call no longer works, and isn't actually needed anymore
4 years ago
Mike Lang f16ea0d649 update for season 10 4 years ago
Mike Lang 6bc3b50727 wip: 4 years ago
Mike Lang d779d88b75 Replace follow-game with asking CoNDOR DB about who is racing right now
We save all racing + caw streams for races that start within the next 5min
and have not yet finished.

Removed the follow_game stuff completely because the twitch API it used is dead.
4 years ago
Mike Lang 684971fcc7 Simple script for running downloader with correct args and given channels 4 years ago
Mike Lang 4ce2094cef changes for charm 4 years ago
Mike Lang c3e9ffd244 set up for local capture only 4 years ago
Mike Lang 06ea2a31b5 add follow games to docker-compose.jsonnet 4 years ago
Mike Lang f7154cd054 some more features 4 years ago
Mike Lang c5bb21e6e7 wip: 4 years ago
Mike Lang e179b4c508 script for cutting segments into race vods 4 years ago
Mike Lang e789e04b27 restreamer: Hack in a path to re-stream "last 20 seconds", for live 'replays' 4 years ago
Mike Lang a59fe25cfa downloader: Sloppily restructure main to have dynamic list of channels taken from what game they're playing 4 years ago
Mike Lang 32138bbd43 downloader: Update to work with twitch's new access token API
Twitch removed their old access token endpoint and now use a GraphQL endpoint.
The old endpoint would just always return 404, which we sadly interpreted as "stream not up".

Thankfully streamlink has already done the reverse engineering work so I was able to
update it to work again fairly easily, it's just a bit more convoluted.
4 years ago
Hubbe 36a5387e26 Change wording on edit submitted alert()
An edit has been submitted for the video. The video hasn't been submitted yet, thrimbletrimmer just informs other components how it wants the edit to be.
4 years ago
Mike Lang 74a38bfaeb thrimbletrimmer: Instead of redirecting on submit, alert but stay 4 years ago
Mike Lang 337111a9ab thrimbletrimmer: Always alert() on errors 4 years ago
Hubbe 27265f3bca Set video.js volume to 50% by default
When the video.js player is ready, set its volume to 50%
4 years ago
Mike Lang f8c877775d Add an alternate manual upload mode specifically for youtube
Adds a built-in "youtube-manual" location which is like "manual" except that it only works
with youtube URLs and populates the video_id column.

The intent is so that we can have playlist_manager manage videos we upload manually,
while still being able to distinguish between that and other manual links that shouldn't
be included (eg. links to third party youtube videos).

This is set when setting a manual link in thrimbletrimmer with a new checkbox, default off.
4 years ago
Christopher Usher ad03a087ab Added tags to the thrimbletrimmer dashboard 4 years ago
Mike Lang 6d789ad42f thrimshim: Handle None values in comparing columns 4 years ago
Mike Lang cb75953e91 thrimshim: Fix a bug preventing submissions
When comparing old and new video tags, it errors because it's a list, not string.

We change it to apply the transforms to all tags in the list, and also ignore changes in list ordering.
4 years ago
Mike Lang 9d8c47377f segment parsing: Hand-roll microsecond parsing
float() is inaccurate and Decimal() is very slow (~3x the cpu usage)
so instead we right-pad with 0s (eg. so 1.2345 -> 1.234500) then convert to int microsec directly.
4 years ago
Christopher Usher 41d85b8614 Remove unicode 4 years ago
Christopher Usher 84f7ef71c1 More helpful UI if the database has changed plus ignore changes that are
just white space or capitalisation
4 years ago
Mike Lang 31d241eecc thrimbletrimmer: missing tags arg when submitting 4 years ago
Mike Lang 66669cd4e4 common: When parsing segment timestamps, use decimal instead of float
Floating point error leads to 1us differences in parsed times,
which causes false positives in the overlapping segments check.

By using a Decimal, we get the exact digits from the filepath.
4 years ago
Mike Lang 389d3e08d7 Fix typo in making playlist manager case insensitive 4 years ago
Mike Lang 3a19ba744d segment_coverage: Raise default check interval to 5min 4 years ago
Mike Lang 5235c3281a segment_coverage: Allow setting of check interval via cli flag 4 years ago
Mike Lang 15c357509f segment_coverage: Fix a problem where metrics would fail
Because the checking process is entirely CPU-bound, it does not give any other
greenlets a chance to run while it is processing. This prevents us from responding
to metrics queries, and prometheus then times out.

By stopping to handle all other traffic in between each hour processed, we ensure metrics
remain responsive while processing.
4 years ago
Mike Lang 13a228070a common.segments: Speed up segment parsing by rolling our own time parsing
strptime is very slow. In terms of pure get_best_segments() speed, this change
more than doubles the throughput.

In particular for segment_coverage, this halves the run time for each check.
4 years ago
Mike Lang e9b2831b71 docker-compose: Fix bug preventing playlist manager metrics from being routed 4 years ago
Mike Lang efe185bc0c Fix copy-paste error in restreamer metrics endpoint 4 years ago
Mike Lang fa1f305fda postgres: Changes to work with version 12
In postgres 12, recovery.conf is removed in favor of normal config options
plus a signal file.

See https://www.2ndquadrant.com/en/blog/replication-configuration-changes-in-postgresql-12/
for a good rundown.
4 years ago