@@ -39,6 +39,76 @@ the course is held. It may be hard, but it's better to reduce the
3939quality 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
44114If the learner Zoom is recorded
@@ -50,3 +120,20 @@ preparation work and :doc:`video-editing` for the processing work.
50120
51121In practice, if things are recorded this way, they are almost never
52122released 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