Mike Lang
192a0869f7
thrimshim: Fix bug in serializing columns
...
Converting all datetime values to string no longer works because video_range
isn't a datetime but a list of datetimes. We switch to a more robust approach
of using the json "default" arg to specify how to serialize.
3 years ago
Mike Lang
aab8cf2f0f
Set up plumbing for multi-range videos and implement no-transition fast cut videos only
...
This is the simplest case as we can just cut each range like we already do,
then concat the results.
We still allow for the full design in the database and cutter, but error out if transitions
is ever anything but hard cuts or if it's a full cut.
We also update the restreamer to allow accepting ranges, however for usability we still allow
the old "just one start and end" args.
Note this changes the thrimshim API to give and take the new "video_ranges" and "video_transitions" columns.
3 years ago
ElementalAlchemist
e4204d9b9a
Add Thrimbletrimmer dev option
3 years ago
HubbeKing
242de74579
Add support for playlist_manager to k8s.jsonnet
3 years ago
HubbeKing
3dfcb83c88
Add cutter and sheetsync support to k8s.jsonnet
3 years ago
HubbeKing
8c9095ef5b
Add postgres support to k8s.jsonnet
3 years ago
HubbeKing
5e92a9abbe
Use placeholder values for NFS settings
3 years ago
HubbeKing
08a4f8f53e
Update ingress manifest to networking.k8s.io/v1 API
...
This means k8s.jsonnet only works with kubernetes versions >= 1.19.0, but means it works with kubernetes versions >= 1.22.0 as well, which removed the old networking.k8s.io/v1beta API.
3 years ago
HubbeKing
e4c8d4eef0
Change k8s.jsonnet to use an NFS PVC instead of a hostPath mount
3 years ago
Mike Lang
415932e289
docker-compose: fix bug where database_tag isn't respected
3 years ago
Mike Lang
2467a64ec3
thrimbletrimmer: Fix missing int parsing in duration parser
...
yay javascript
3 years ago
Mike Lang
783c571cb2
thrimbletrimmer: Fix stupid duration parsing typo introduced in cleanup
3 years ago
Mike Lang
3e768aa2a9
switch from quay.io to ghcr.io for image registry
3 years ago
Mike Lang
5f81c383bc
Add day 8
3 years ago
Mike Lang
317d45f16d
Manually specify upload locations that should be added to playlists
...
This lets us exclude some youtube locations (like unlisted),
and include non-youtube ones (like manual-youtube)
3 years ago
Mike Lang
c18df50a7c
monitoring: only request for services matching role
3 years ago
Mike Lang
463843668d
segment-coverage: Render a monitoring page
3 years ago
ElementalAlchemist
a39b69410f
Fix waveform height letting the visible waveform get far away from the video
3 years ago
ElementalAlchemist
ac5a015724
Prettify updates
3 years ago
ElementalAlchemist
6fc8710166
Fix breakage of the stream page
3 years ago
ElementalAlchemist
2508610b4e
Default the initial range to the entire video
3 years ago
ElementalAlchemist
4886715f0d
Fix issue with missing help box background
3 years ago
ElementalAlchemist
e9a2ec0648
Fix inconsistent styling on ranges
3 years ago
ElementalAlchemist
abafa0a925
Improve help text for new keyboard shortcuts
3 years ago
ElementalAlchemist
ad6c79c854
Remove TODO and give a better "you're logged out" message to user
3 years ago
ElementalAlchemist
287d82feee
Switch back to primary wubloader Google token
3 years ago
ElementalAlchemist
00ba7d5293
Run Prettier on all the files
3 years ago
ElementalAlchemist
42d2db5f50
Add prettier configuration
3 years ago
ElementalAlchemist
42bc9f932d
Improve styling for adding ranges
3 years ago
ElementalAlchemist
e91654dfc1
Implement video editing
3 years ago
ElementalAlchemist
4d7300fefa
Remove unremoved TODO comment
3 years ago
ElementalAlchemist
af0b3cc2ff
Actually style the errors
3 years ago
ElementalAlchemist
a949041ca8
Fix some issues with help box when resizing the window
3 years ago
ElementalAlchemist
b35ce32659
Initial implementation of stream page
3 years ago
ElementalAlchemist
be025e263f
Minor standardization
3 years ago
ElementalAlchemist
ae0e6d0385
Change default redirect from thrimbletrimmer dashboard to just thrimbletrimmer, and the reorganized files will make it make more sense
3 years ago
ElementalAlchemist
e024a42166
Mess with the clock page, mostly to start getting my bearings (also to standardize the markup and code style)
3 years ago
Mike Lang
61f55d03fb
thrimbletrimmer: Add waveform image below video
3 years ago
Mike Lang
3de44d6731
Add ability to render waveforms in restreamer
3 years ago
Mike Lang
4db8c8f61c
thrimbletrimmer: undo bad refactor
3 years ago
Mike Lang
2865088692
thrimshim: Further validation of titles/descriptions
...
Youtube doesn't allow < or > characters, or extremely long descriptions.
Fixes #215 , #219
3 years ago
Mike Lang
7599681b6d
yet another py3 map() issue
...
"hey i know lets make everything return an iterable but not update anything else to accept them"
3 years ago
Mike Lang
62bd6539ea
Unpin gevent as that was a workaround for a py2 issue
3 years ago
Mike Lang
714a16bac4
thrimbletrimmer: Use template literals and other cleanup
...
Now that we've fixed the function declarations, prettier has also removed the semicolons on them
3 years ago
Mike Lang
a69bee0548
thrimbletrimmer: Replace var with let/const and other related bits
3 years ago
Mike Lang
241d302220
thrimbletrimmer: Use "function NAME(...)" instead of "NAME = function (...)"
...
It's less confusing and more like other languages
3 years ago
Mike Lang
ce73f7b0ea
Auto-format JS files with prettier
...
Prettier is a tool for formatting JS files.
We add a minimal configuration to suit our purposes, and run it on all our JS files.
The main things this corrects is mixed tab and space indent issues (replacing fully with tabs),
overly long lines, inconsistent quote usage (prefers double-quotes instead), and missing semicolons.
3 years ago
Christopher Usher
6c97bd462e
fixed integer division issues introduced by port to Python 3
3 years ago
Mike Lang
e63aa53019
Remove left-over usage of encode_strings
...
More py3 breakage
3 years ago
Mike Lang
21856c68aa
Fix all instances of file.write() for py3
...
In python 3, file.write() may do a partial write and returns the number of characters written.
In order to not lose data, we need to wrap every instance of file.write() with our new
common.writeall() wrapper that loops until the data is actually written.
3 years ago