feat(player): clip mode - mark a range of what is playing and cut it into a download
Both players get a scissors in their control row (Plex: the control row; YouTube: the actions and the docked bar), `c`, and `[` / `]` to mark at the playhead. The clip panel lives in the player, so the watched video is the preview: an overview of the whole item and a zoomed strip around the selection whose ends are sliders (arrows step a tenth, Shift a second), Start / End fields with nudges and "to the playhead", the length, a looping Play selection, a name, Cut. Escape closes the panel before the player and the focus goes back to the scissors. A cut is a toast with a Downloads link plus the usual Ready notification. - ui/RangeTrack + RulerTicks: the shared, domain-free time track (regions, keyboard-steppable handles with a 1.5rem hit area, a playhead, a background slot, over a window of the item). The Downloads editor's cuts moved onto it, so they are keyboard-steppable now. - lib/clipRange holds the marking rules (1 s to 10 min, the server's), lib/timecode the editing timecode the editor's private tc/parseTc became. - keymap: a symbol typed through AltGr answers its bare-symbol row - on the HU layout `[` is AltGr+F, which arrives as Ctrl+Alt; letter and Mod rows still never match Ctrl+Alt. - The YouTube stage sits in a wrapper with the panel, so the maximised stage's blur escape matches at any depth. - media-scope: fields on the always-dark player chrome read white in a light theme too.
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"title": "Clip",
|
||||
"open": "Make a clip",
|
||||
"close": "Close the clip panel",
|
||||
"overview": "Whole video",
|
||||
"strip": "Clip range",
|
||||
"in": "Start",
|
||||
"out": "End",
|
||||
"inHere": "Start at the current position",
|
||||
"outHere": "End at the current position",
|
||||
"earlier": "{{label}}: a tenth of a second earlier",
|
||||
"later": "{{label}}: a tenth of a second later",
|
||||
"length": "Length {{length}}",
|
||||
"loop": "Play selection",
|
||||
"name": "Clip name",
|
||||
"namePlaceholder": "Clip name (optional)",
|
||||
"cut": "Cut clip",
|
||||
"queued": "The clip is being made — it will be in your downloads",
|
||||
"view": "Downloads",
|
||||
"failed": "Couldn’t make the clip"
|
||||
}
|
||||
@@ -39,5 +39,7 @@
|
||||
"droppedSeg": "Dropped segment",
|
||||
"removeCut": "Remove cut",
|
||||
"keptSummary": "{{n}} kept · {{dur}}",
|
||||
"createJoin": "Create joined clip"
|
||||
"createJoin": "Create joined clip",
|
||||
"timeline": "Timeline",
|
||||
"cutN": "Cut {{n}}"
|
||||
}
|
||||
|
||||
@@ -38,5 +38,7 @@
|
||||
"cap": {
|
||||
"space": "Space",
|
||||
"menu": "Menu"
|
||||
}
|
||||
},
|
||||
"clip": "Clip mode",
|
||||
"clipMark": "Mark the clip’s start / end here"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"title": "Klip",
|
||||
"open": "Klip készítése",
|
||||
"close": "Klippanel bezárása",
|
||||
"overview": "A teljes videó",
|
||||
"strip": "A klip tartománya",
|
||||
"in": "Eleje",
|
||||
"out": "Vége",
|
||||
"inHere": "Eleje a mostani pozíciónál",
|
||||
"outHere": "Vége a mostani pozíciónál",
|
||||
"earlier": "{{label}}: egy tized másodperccel korábban",
|
||||
"later": "{{label}}: egy tized másodperccel később",
|
||||
"length": "Hossz {{length}}",
|
||||
"loop": "Kijelölés lejátszása",
|
||||
"name": "A klip neve",
|
||||
"namePlaceholder": "A klip neve (nem kötelező)",
|
||||
"cut": "Klip vágása",
|
||||
"queued": "Készül a klip — a letöltéseid közé kerül",
|
||||
"view": "Letöltések",
|
||||
"failed": "Nem sikerült elkészíteni a klipet"
|
||||
}
|
||||
@@ -39,5 +39,7 @@
|
||||
"droppedSeg": "Eldobott szegmens",
|
||||
"removeCut": "Vágás törlése",
|
||||
"keptSummary": "{{n}} megtartva · {{dur}}",
|
||||
"createJoin": "Összefűzött klip"
|
||||
"createJoin": "Összefűzött klip",
|
||||
"timeline": "Idővonal",
|
||||
"cutN": "{{n}}. vágás"
|
||||
}
|
||||
|
||||
@@ -38,5 +38,7 @@
|
||||
"cap": {
|
||||
"space": "Szóköz",
|
||||
"menu": "Menü"
|
||||
}
|
||||
},
|
||||
"clip": "Klip mód",
|
||||
"clipMark": "A klip eleje / vége itt"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user