1Bino(1) Version 2.1 Bino(1)
2
3
4
6 Bino is a video player with a focus on 3D and Virtual Reality:
7
8 • Support for stereoscopic 3D videos in various formats
9
10 • Support for 360° and 180° videos, with and without stereoscopic 3D
11
12 • Support for Virtual Reality environments, including SteamVR, CAVEs,
13 powerwalls, and other multi-display / multi-GPU / multi-host systems
14
16 bino [options] URL...
17
18 • -h, --help
19
20 Displays help on commandline options.
21
22 • --help-all
23
24 Displays help including Qt specific options.
25
26 • -v, --version
27
28 Displays version information.
29
30 • --log-level level
31
32 Set log level (fatal, warning, info, debug, firehose).
33
34 • --log-file file
35
36 Set log file.
37
38 • --read-commands script
39
40 Read commands from a script file. See Scripting.
41
42 • --opengles
43
44 Use OpenGL ES instead of Desktop OpenGL.
45
46 • --stereo
47
48 Use OpenGL quad-buffered stereo in GUI mode.
49
50 • --vr
51
52 Start in Vitrual Reality mode instead of GUI mode. See Virtual Real‐
53 ity.
54
55 • --vr-screen screen
56
57 Set VR screen geometry, either as a comma-separated list of nine val‐
58 ues representing three 3D coordinates that define a planar screen
59 (bottom left, bottom right, top left) or as a name of an OBJ file
60 that contains the screen geometry with texture coordinates.
61
62 • --capture
63
64 Capture video/audio input from camera and microphone.
65
66 • --list-audio-outputs
67
68 List audio outputs.
69
70 • --list-audio-inputs
71
72 List audio inputs.
73
74 • --list-video-inputs
75
76 List video inputs.
77
78 • --audio-output ao
79
80 Choose audio output via its index.
81
82 • --audio-input ai
83
84 Choose audio input via its index. Can be empty.
85
86 • --video-input vi
87
88 Choose video input via its index.
89
90 • --list-tracks
91
92 List all video, audio and subtitle tracks in the media.
93
94 • --preferred-audio lang
95
96 Set preferred audio track language (en, de, fr, ...).
97
98 • --preferred-subtitle lang
99
100 Set preferred subtitle track language (en, de, fr, ...). Can be emp‐
101 ty.
102
103 • --video-track track
104
105 Choose video track via its index.
106
107 • --audio-track track
108
109 Choose audio track via its index.
110
111 • --subtitle-track track
112
113 Choose subtitle track via its index. Can be empty.
114
115 • -i, --input mode
116
117 Set input mode (mono, top-bottom, top-bottom-half, bottom-top, bot‐
118 tom-top-half, left-right, left-right-half, right-left, right-left-
119 half, alternating-left-right, alternating-right-left).
120
121 • -o, --output mode
122
123 Set output mode (left, right, stereo, alternating, red-cyan-dubois,
124 red-cyan-full-color, red-cyan-half-color, red-cyan-monochrome, green-
125 magenta-dubois, green-magenta-full-color, green-magenta-half-color,
126 green-magenta-monochrome, amber-blue-dubois, amber-blue-full-color,
127 amber-blue-half-color, amber-blue-monochrome, red-green-monochrome,
128 red-blue-monochrome, even-odd-rows, even-odd-columns, checkerboard).
129
130 • --surround mode
131
132 Set surround mode (360, 180, off).
133
134 • -S, --swap-eyes
135
136 Swap left/right eye.
137
138 • -f, --fullscreen
139
140 Start in fullscreen mode.
141
143 Bino can read commands from a script file and execute them via the op‐
144 tion --read-commands scriptfile. This works both in GUI mode and in
145 Virtual Reality mode.
146
147 The script file can also be a named pipe so that you can have arbitraty
148 remote control interfaces write commands into it as they come in.
149
150 Empty lines and comment lines (which begin with #) are ignored. The
151 following commands are supported:
152
153 • open [--input mode] [--surround mode] [--video-track vt] [--audio-
154 track at] [--subtitle-track st] URL
155
156 Open the URL and start playing. The options have the same meaning as
157 the corresponding command line options.
158
159 • capture [--audio-input ai] [--video-input vi]
160
161 Start capturing camera and microphone. The options have the same
162 meaning as the corresponding command line options.
163
164 • play
165
166 Start playing.
167
168 • pause
169
170 Pause.
171
172 • toggle-pause
173
174 Switch between pause and play.
175
176 • stop
177
178 Stop playing.
179
180 • playlist-next
181
182 Switch to next playlist entry.
183
184 • playlist-prev
185
186 Switch to previous playlist entry.
187
188 • playlist-loop mode
189
190 Set loop mode (off, one, all).
191
192 • quit
193
194 Quit Bino.
195
196 • set-position p
197
198 Set the video position to p, where p=0 is the beginning and p=1 is
199 the end.
200
201 • seek seconds
202
203 Seek the given amounts of seconds forward or, if the number of sec‐
204 onds is negative, backwards.
205
206 • wait stop|seconds
207
208 Wait until the video stops, or wait for the given number of seconds,
209 before executing the next command.
210
211 • set-mute on|off
212
213 Set the volume mute status.
214
215 • toggle-mute
216
217 Switch between mute and unmute.
218
219 • set-volume vol
220
221 Set the volume level to vol (between 0 and 1).
222
223 • adjust-volume offset
224
225 Adjust the volume by the given amount (the final volume is clamped
226 between 0 and 1).
227
228 • set-output-mode mode
229
230 Set the given output mode. See the command line option --output for
231 a list of modes.
232
233 • set-swap-eyes on|off
234
235 Set left/right eye swap.
236
237 • toggle-swap-eyes
238
239 Toggle left/right eye swap.
240
241 • set-fullscreen on|off
242
243 Set fullscreen mode.
244
245 • toggle-fullscreen
246
247 Toggle fullscreen mode.
248
250 Bino currently cannot detect the stereoscopic layout or the surround
251 video mode from metadata because Qt does not provide that information.
252 It therefore has to guess.
253
254 Bino recognizes the following hints at the last part of the file name,
255 just before the file name extension (.ext):
256
257 • *-tb.ext, *-ab.ext: Input mode top-bottom
258
259 • *-tbh.ext, *-abq.ext: Input mode top-bottom-half
260
261 • *-bt.ext, *-ba.ext: Input mode bottom-top
262
263 • *-bth.ext, *-baq.ext: Input mode bottom-top-half
264
265 • *-lr.ext: Input mode left-right
266
267 • *-lrh.ext, *-lrq.ext: Input mode left-right-half
268
269 • *-rl.ext: Input mode right-left
270
271 • *-rlh.ext, *-rlq.ext: Input mode right-left-half
272
273 • *-2d.ext: Input mode mono
274
275 Additionally, if the number 180 or 360 is part of the file name and
276 separated by neighboring digits or letters by other characters, then
277 the corresponding surround mode is assumed.
278
280 Bino supports all sorts of Virtual Reality environments via QVR
281 (https://marlam.de/qvr):
282
283 • When QVR is compiled with just with Qt6, CAVEs and powerwalls and
284 similar multi-display setups are supported, including multi-GPU and
285 multi-host rendering.
286
287 • When QVR is additionally compiled with VRPN
288 (https://github.com/vrpn/vrpn), all sorts of tracking and interaction
289 hardware for such systems are supported.
290
291 • When QVR is additionally compiled with OpenVR
292 (https://github.com/ValveSoftware/openvr), SteamVR is supported and
293 automatically detected (e.g. HTC Vive).
294
295 To start Bino in VR mode, use the option --vr. Bino will then display
296 a screen in the virtual world, and the video will be displayed on that
297 screen, unless the input is a surround video (360° or 180°), which will
298 of course be displayed all around the viewer.
299
300 The default is a 16:9 screen in a few meters distance from the viewer,
301 but you can use the --vr-screen option to either define arbitrary pla‐
302 nar screens via their bottom left, bottom right and top left corners,
303 or to load arbitrary screen geometry from an OBJ file. The latter case
304 is useful e.g. if you want Bino’s virtual screen to coincide with a
305 curved physical screen.
306
307 Bino uses QVRs default navigation, which may be based on autodetected
308 controllers such as the HTC Vive controllers, or on tracking and inter‐
309 action hardware configured via QVR for your VR system, or on the mouse
310 and WASDQE keys if nothing else is available.
311
312 Additional interaction in VR mode is currently limited to the same key‐
313 board shortcuts that also work in GUI mode. That means you currently
314 must specify the video to play on the command line, and have no way to
315 pause, skip or seek – this will be added in a future version.
316
317
318
319 February 1, 2023 Bino(1)