summaryrefslogtreecommitdiffstats
path: root/captioning.md
blob: 2b6eb35926365333f0054e52bcec2fdc7c3bae3e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
[[!meta title="Captioning tips"]]
[[!meta copyright="Copyright © 2021 Sacha Chua"]]

Captions are great for making videos (especially technical ones!)
easier to understand and search.

If you see a talk at https://media.emacsconf.org/2021/protected/ that
you'd like to caption, feel free to download it and start working on
it with your favourite subtitle editor. Let me know what you pick by
e-mailing me at <sacha@sachachua.com> so that I can update the index
and try to avoid duplication of work.

We've been using <https://github.com/rndusr/subed> to caption things
as VTT or SRT in Emacs, often starting with autogenerated captions
from YouTube (the .vtt or .srt file), but you're welcome to make
captions using your favourite tool. 

I generally find it easier to start with the autogenerated captions
and then refer to any resources provided by the speaker in order to
figure out spelling. Sometimes speakers provide pretty complete
scripts, which is great, but they also tend to add extra words. I
tried uploading the scripts to YouTube in order to get YouTube to
automatically align the text, but then the timing information wasn't
granular enough for easy splitting, so correcting the autogenerated
captions myself seemed to be easier. I use some code in my
[subed configuration](https://sachachua.com/dotemacs/#subed) (see
`my-subed-fix-common-error` and `my-subed-common-edits`) to help with
capitalization and commonly misrecognized words.

Please keep captions to one line each so that they can be displayed
without wrapping, as we plan to broadcast by resizing the video and
displaying open captions below. Maybe 50 characters max? Since the
captions are also displayed as text on the talk pages, you can omit
filler words. We've also been trying to break captions at reasonable
points (ex: phrases).

For example, instead of:

- so i'm going to talk today about a
- fun rewrite i did of uh of the bindat
- package

I would probably edit it to be more like:

- So I'm going to talk today
- about a fun rewrite I did
- of the bindat package.

If you use subed.el, you can use:

- `C-c C-v` to load the video
- `M-SPC` to toggle pause/play
- `M-j` to jump to the current subtitle
- `M-.` to split the subtitle at the current playing position (or a reasonable guess)
- `M-m` to merge with previous
- `M-M` to merge with next
- `C-c [` to set the start time to the playing position
- `C-c ]` to set the stop time to the playing position.
 
If you want to take advantage of the autogenerated captions and the
word-level timing data from YouTube, you can start with the VTT file
for the video you want, then use `my-caption-load-word-data` from
<https://sachachua.com/dotemacs/#word-level> to load the srv2 file
(also attached), and then use `my-caption-split` to split using the
word timing data if possible. You can bind this to a keystroke with
something like `M-x local-set-key M-' my-caption-split`.

We'll be posting VTT files so that they can be included by the HTML5 video
player (demo: https://emacsconf.org/2021/talks/news/), so if you use a
different tool that produces another format, any format that can be
converted into that one (like SRT or ASS) is fine. You can e-mail me the
subtitles when you're done, and then I can merge it into the video.

Please let me know if you need any help!

Sacha <sacha@sachachua.com>