Skip to content

Commit 4664a13

Browse files
committed
video-editor: Add video editor hints
1 parent 225adf8 commit 4664a13

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed

video-editor.rst

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,76 @@ the course is held. It may be hard, but it's better to reduce the
3939
quality to make it happen quickly than wait a while to get it perfect
4040
(otherwise it might not happen at all).
4141

42+
The steps you should take:
43+
44+
1. Decide the total amount of time you will spend. Probably no more
45+
than 2hr per half-day of teaching.
46+
2. Open the .srt file. (it's a text file, but using a subtitle editor
47+
is probably worth it)
48+
49+
- It is usually in the `video-processing repository
50+
<https://github.com/coderefinery/video-processing>`__.
51+
- You don't need to make it look perfect. It should look useful.
52+
Grammar/spelling doesn't matter that much. The times when
53+
Whisper stops including punctuation don't matter so much.
54+
- I usually correct unix commands (search `dash`, `hyphen`,
55+
`minus`, `dollar`, `space`) for example. A learner is likely to
56+
try to read or copy these from the subtitles, even if they are in
57+
the video itself.
58+
- All names should be replaced with `[name]` (including instructor
59+
names). This is probably done before you got the .srt file, but
60+
you can check.
61+
- Push it to git.
62+
63+
3. Create the editlist in the .yaml file.
64+
65+
- The .yaml file should be pre-created and is usually in the course
66+
website repository or video-processing repository.
67+
- Make sure the session is there and has proper descriptions
68+
- Set the overall cut points for each session, break, and exercise
69+
(these are relatively easy to find)
70+
- Set timestamps for each new episode/section
71+
- Set timestamps for other important things learners may want to
72+
quickly find (important configuration, introducing exercises,
73+
etc.)
74+
75+
4. If you want, you can try generating the final videos yourself. But
76+
the video uploader is likely to do this themselves anyway. Some
77+
commands below:
78+
79+
First, arrange files: compared to ``$PWD``, raw files are in
80+
``raw/*{.mkv,.srt}``, and output gets written to ``out/``. The
81+
.yaml editlist file can be in ``$PWD`` or somewhere else.
82+
83+
First, run in check mode (``-c``) and limit to outputs matching
84+
day1 (``-l``). This will report any major errors. If this passes,
85+
it's good enough For me to take over. Look at .info.txt files to
86+
see if the description looks OK.
87+
88+
.. code-block:: console
89+
90+
$ ffmpeg-editlist ~/git/2025-03-25-workshop/video-editlist.yaml $PWD -c -l day1 --srt
91+
92+
You can run and generate .mkv files, but don't re-encode (first few
93+
seconds are messed up). You can see if .mkv looks roughly correct:
94+
95+
.. code-block:: console
96+
97+
$ ffmpeg-editlist ~/git/2025-03-25-workshop/video-editlist.yaml $PWD -l day1 --srt
98+
99+
When it's all done, run with ``--reencode`` to create final files
100+
(you don't need to upload, video producer will regen):
101+
102+
.. code-block:: console
103+
104+
$ ffmpeg-editlist ~/git/2025-03-25-workshop/video-editlist.yaml $PWD -l day5 --srt --reencode
105+
106+
107+
4. Push the .yaml to git and push the new .srt file via git.
108+
109+
- Tell the main video manager it's done and they will check,
110+
encode, and upload to the respective places.
111+
42112

43113

44114
If the learner Zoom is recorded
@@ -50,3 +120,20 @@ preparation work and :doc:`video-editing` for the processing work.
50120

51121
In practice, if things are recorded this way, they are almost never
52122
released because it is too much work and it never gets done.
123+
124+
125+
Editing hints
126+
-------------
127+
128+
- https://mpv.io is a command-line video player.
129+
- Hotkey ``O`` (capital letter O) to turn on time display
130+
permanently
131+
- Seek with left/right (~10 sec) or up/down (~ 1 minute)
132+
- - Run with ``--hr-seek`` to seek exactly, not to keyframes
133+
- https://github.com/Kr4is/mpv-copy-time - mpv script that lets you copy
134+
video times with a hotkey. You might want to edit the hotkey by
135+
editing the script.
136+
- How to run ffmpeg-editlist:
137+
- first with --check
138+
- then with no other
139+
- then --reencode

0 commit comments

Comments
 (0)