Commit Graph

228 Commits (1d6ca093835724e3da208463a5f6b8d08ae20a47)

Author SHA1 Message Date
ElementalAlchemist e96b77992f Add one-second jump keyboard shortcuts
ElementalAlchemist f798b689a4 Add keyboard shortcut for setting playback speed to 1x
ElementalAlchemist 481b934eb8 Fix losing much of video human time when converting a time containing hours
ElementalAlchemist b1b8ef8973
Add fullscreen functionality to Thrimbletrimmer video player ()
* Add fullscreen functionality to Thrimbletrimmer video player

* Fix issue where clicking on fullscreen video pauses and unpauses instead of doing just one
ElementalAlchemist a8f9611d93 Update quality indicator when keyboard shortcuts are used to change the video quality
ElementalAlchemist 78b9b5c68d Maintain playback rate across video reloading
ElementalAlchemist 75e0ba56ae Fix error when loading a new playlist (when fragments aren't yet loaded by hls.js)
ElementalAlchemist f7c9eb5e5b Fix incorrect variable reference
ElementalAlchemist c44da044a8 Make the waveform clearer/more useful at larger resolutions by requesting a larger waveform image
ElementalAlchemist 7e5705996e Further improve video controls styling for aesthetics
ElementalAlchemist d20f37266f Add a visible error when trying to load a time range with no video content
ElementalAlchemist 4fb8548aba Make muting work
ElementalAlchemist e6aa395c95 Improve appearance of video controls slightly
ElementalAlchemist 4e35fed5f2 Handle when the video stops playing due to load issues when seeking
ElementalAlchemist 497c975e3e Implement custom video controls for the new player (so we can better control styling)
ElementalAlchemist 56699d5737 Put quality name in the place where clients read it (or at least HLS.js does)
ElementalAlchemist ed2ff1b9a5 Make HLS.js not combine different quality levels into one
ElementalAlchemist e2487f61c0 Fix interpretation of times located in a hole in the video segments
ElementalAlchemist 5a9f4502c2 Set default time zone for Luxon instead of setting the time zone on each DateTime object
ElementalAlchemist 0340f06170 Initial transition from VideoJS to HLS.js as the video player
ElementalAlchemist 11bf89305a Fix video overflowing player area
ElementalAlchemist 699bea5e9e Fix clip bar placement after video is extended
ElementalAlchemist 394a6c72e2 Fix issues with updating the ranges when the time range updates
There were a couple issues with this:
- The range data was updated in the wrong direction
- If no adjustments were made, the problem was masked by the range data reapplying from draft data. However, if adjustments were made, the adjustments were overwritten (or, if ranges were added, partially overwritten) by the defaults.
ElementalAlchemist 5f79605ee6 Check title and description fields on load
ElementalAlchemist ea5d17df02 Add time conversion functionality
ekim mentioned a workflow during editor training in which he may want to have times be converted for use on the edit page. The restreamer doesn't otherwise currently have the time conversion functionality it did before (which was in the form at the top and was somewhat annoying); this adds time conversion functionality.
ElementalAlchemist 5c06a3ae8d Fix issue where video takes over much of the clickable area of the page if it hasn't loaded the playlist yet
ElementalAlchemist 6e3b2e767e Store the user's volume level
ElementalAlchemist 8b475e0bd9 Show real-time errors for issues with video title or description
ElementalAlchemist ccb60b64f1 Fix error styling for dark theme
ElementalAlchemist 5524972fb6 Default the description box to be bigger, and make resizing work
ElementalAlchemist 6899af4251 Add play from end to ranges
ElementalAlchemist 14900bed4a Fix error updating the submission success message
ElementalAlchemist 7beb658481 Improve text colors in submission feedback
ElementalAlchemist 20518af627 Fix problems with the Submit Anyway button when sheet data is changed
ElementalAlchemist 058d7b9355 Fix issues with help box being unclosable when stuff moves around by giving it its own close button
ElementalAlchemist f0713d581c Right-align time range start/end points within input boxes
ElementalAlchemist 462595a19d Rename "Editor Notes" to "Notes to Editor"
ElementalAlchemist e47408af2f Make Thrimbletrimmer darker
ElementalAlchemist d37175f914 Switch date/time handling from JS Date objects to a datetime library to fix padding bug with DST changeover
ElementalAlchemist da2ed19b9d Now that VideoJS has been pared all the way down, move it to more standard directories
ElementalAlchemist cc49e703dc Do a general cleanup of time conversion names to make times overall consistent
ElementalAlchemist 7fdc262822 Make the clip bar taller for visibility
ElementalAlchemist 4a7abac456 Since we're not maintaining the dashboard at this time, exclude it from prettier styling
ElementalAlchemist a4ef886494 Remove now-unhelpful help text about transitions
ElementalAlchemist f8d88645a3 Fix some style issues affecting Firefox (primarily related to the default font and font size)
ElementalAlchemist 86494797e9 Apparently JavaScript hates its own events
ElementalAlchemist af25a90c4a Update padding video on load (when edited outside the event range) to use multiple time ranges
ElementalAlchemist 5168fd120d Fix incorrect loop variable declaration preventing some load processes
ElementalAlchemist 72227fa366 Fix defaulting ranges to whole video to avoid old start and end fields
ElementalAlchemist 26b8efc093 Fix issue with download link on edit page when a range timestamp is at the exact end of the video
ElementalAlchemist 53bd932963 Update scripts for wubloader endpoints supporting multiple ranges
ElementalAlchemist 37f94cb754 We're not going to have transitions this time, so remove the transitions from the ranges for now
ElementalAlchemist eb9bc708cf Show errors about ranges so that the user knows to fix them
ElementalAlchemist 491d8dc3a8 Improve the editing experience for live videos
Apparently we weren't using VideoJS's new live UI (I thought we were), which caused issues like "the progress bar is not present on the video."
ElementalAlchemist c11ca47afe Add styles to submission responses
ElementalAlchemist 94e1ecdd6d Add waveform marker for current video position
ElementalAlchemist 609597a547 Add a way to jump player time to a range start point
ElementalAlchemist cf6652d3ad Make the Thrimbletrimmer clock use Wubloader's bus time start setting
ElementalAlchemist 497c7625dc Fix default formatting of negative times
ElementalAlchemist 4e4c2f4a9f Handle loading events with no end time (yet)
ElementalAlchemist a0d2dc99e1 Make the clock page prettier (as in, with the prettier tool, not UI)
ElementalAlchemist 3fe2848e60 Add video load time modifications, and account for run-to-live
ElementalAlchemist 344ca041a3 Fix formatting of bus time with milliseconds
ElementalAlchemist 72b34945bc Handle expanding video on load when a draft video was already saved outside the event start/end times
ElementalAlchemist 40ae39217c Fix grid styling when the editor notes aren't used for a video
ElementalAlchemist 97a668f909 Do some better-looking field alignment
ElementalAlchemist 811424ef7d Don't let the video control bar cover the video content
ElementalAlchemist 35f58f1e4d Move editor's notes to before video metadata (per previous Thrimbletrimmer)
ElementalAlchemist efce23a8f8 Clean up extra parts of VideoJS
ElementalAlchemist 9a12134915 Move beta Thrimbletrimmer code to primary Thrimbletrimmer code
ElementalAlchemist edaa1bd374 Delete the Thrimbletrimmer test page
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.
Mike Lang 2467a64ec3 thrimbletrimmer: Fix missing int parsing in duration parser
yay javascript
Mike Lang 783c571cb2 thrimbletrimmer: Fix stupid duration parsing typo introduced in cleanup
ElementalAlchemist a39b69410f Fix waveform height letting the visible waveform get far away from the video
ElementalAlchemist ac5a015724 Prettify updates
ElementalAlchemist 6fc8710166 Fix breakage of the stream page
ElementalAlchemist 2508610b4e Default the initial range to the entire video
ElementalAlchemist 4886715f0d Fix issue with missing help box background
ElementalAlchemist e9a2ec0648 Fix inconsistent styling on ranges
ElementalAlchemist abafa0a925 Improve help text for new keyboard shortcuts
ElementalAlchemist ad6c79c854 Remove TODO and give a better "you're logged out" message to user
ElementalAlchemist 287d82feee Switch back to primary wubloader Google token
ElementalAlchemist 00ba7d5293 Run Prettier on all the files
ElementalAlchemist 42d2db5f50 Add prettier configuration
ElementalAlchemist 42bc9f932d Improve styling for adding ranges
ElementalAlchemist e91654dfc1 Implement video editing
ElementalAlchemist 4d7300fefa Remove unremoved TODO comment
ElementalAlchemist af0b3cc2ff Actually style the errors
ElementalAlchemist a949041ca8 Fix some issues with help box when resizing the window
ElementalAlchemist b35ce32659 Initial implementation of stream page
ElementalAlchemist be025e263f Minor standardization
ElementalAlchemist e024a42166 Mess with the clock page, mostly to start getting my bearings (also to standardize the markup and code style)
Mike Lang 61f55d03fb thrimbletrimmer: Add waveform image below video
Mike Lang 4db8c8f61c thrimbletrimmer: undo bad refactor
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
Mike Lang a69bee0548 thrimbletrimmer: Replace var with let/const and other related bits
Mike Lang 241d302220 thrimbletrimmer: Use "function NAME(...)" instead of "NAME = function (...)"
It's less confusing and more like other languages
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.
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.