summaryrefslogtreecommitdiff
path: root/DEVELOP.md
blob: dc66a3bfd87dff628b6ee883b6541fd0eb724bf1 (plain)
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
# DCP-o-matic development notes

This file collects a few notes relevant to DCP-o-matic developers.  There is also some information
[on the web site](https://dcpomatic.com/development).


## Player stress testing

If you configure DCP-o-matic with `--enable-player-stress-test` you can make a script which
will run and manipulate the player in predictable ways.  The script is a series of commands
read line-by-line, and each line can be one of:

* `O <path>`

Open a DCP, for example

```O /home/carl/DCP/MyTestDCP```

* `P`

Start playing the currently-loaded DCP.

* `W <time-in-milliseconds>`

Wait for approximately the given time before carrying on, for example

```W 14000```

to wait for 14 seconds.

* `S`

Stop any current playback.

* `K <position>`

Seek to some point in the current DCP, where 0 is the start and 4095 is the end; for example

```K 2048```

seeks half-way through the DCP.

* `E`

Stops playback and closes the player.

The script can be run using something like

```dcpomatic2_player -s stress```

to load a script file called `stress` and start executing it.


## Adding a new language

- Edit src/wx/config_dialog.cc to add the language to languages.
- Add to platform/windows/wscript, platform/osx/make_dmg.sh, cscript.
- Add credit to src/wx/about_dialog.cc and database.
- Add to i18n.php on website and update-i18n-stats script.