Internal Settings
Sound
Adjusting volume
-
Volume adjustment are performed using the
pactl
commands. - Make sure you’re logged in as the player user: whoami should return player. Identify the sink you wish to adjust volume for: pactl list sinks. This will return a number of sinks - find the index of the sink the machine is using for audio playback (e.g. HDMI or headphones jack).
- Set the volume to the desired level (e.g. dB or %): pactl set-sink-volume 0 0.0dB or pactl set-sink-volume 0 100% - both set the volume levels to max. Pro tip: prefix the volume level with + or - to increase or decrease volume from the current level: e.g. pactl set-sink-volume 0 -5.0dB to decrease the volume with 5.0dB on sink 0.
Sound card settings
View available cards and profiles
Use the pactl list cards
to view available cards. This will produce an output in the lines of the one below:
Card #0
Name: alsa_card.pci-0000_01_00.1
Driver: module-alsa-card.c
Owner Module: 7
Properties:
alsa.card = "0"
alsa.card_name = "HDA NVidia"
alsa.long_card_name = "HDA NVidia at 0xa5080000 irq 17"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:01:00.1"
sysfs.path = "/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0"
device.bus = "pci"
device.vendor.id = "10de"
device.vendor.name = "NVIDIA Corporation"
device.product.id = "0fb9"
device.product.name = "GP107GL High Definition Audio Controller"
device.string = "0"
device.description = "GP107GL High Definition Audio Controller"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Profiles:
output:hdmi-stereo: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 5400, available: no)
output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 300, available: no)
output:hdmi-surround71: Digital Surround 7.1 (HDMI) Output (sinks: 1, sources: 0, priority: 300, available: no)
output:hdmi-stereo-extra1: Digital Stereo (HDMI 2) Output (sinks: 1, sources: 0, priority: 5200, available: yes)
output:hdmi-stereo-extra2: Digital Stereo (HDMI 3) Output (sinks: 1, sources: 0, priority: 5200, available: no)
output:hdmi-surround-extra2: Digital Surround 5.1 (HDMI 3) Output (sinks: 1, sources: 0, priority: 100, available: no)
output:hdmi-surround71-extra2: Digital Surround 7.1 (HDMI 3) Output (sinks: 1, sources: 0, priority: 100, available: no)
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
Active Profile: output:hdmi-stereo-extra1
Ports:
hdmi-output-0: HDMI / DisplayPort (priority: 5900, latency offset: 0 usec, not available)
Properties:
device.icon_name = "video-display"
Part of profile(s): output:hdmi-stereo, output:hdmi-surround, output:hdmi-surround71
hdmi-output-1: HDMI / DisplayPort 2 (priority: 5800, latency offset: 0 usec, available)
Properties:
device.icon_name = "video-display"
device.product.name = "Elgato"
Part of profile(s): output:hdmi-stereo-extra1
hdmi-output-2: HDMI / DisplayPort 3 (priority: 5700, latency offset: 0 usec, not available)
Properties:
device.icon_name = "video-display"
Part of profile(s): output:hdmi-stereo-extra2, output:hdmi-surround-extra2, output:hdmi-surround71-extra2
The output above tells that the current profile in use is Active Profile: output:hdmi-stereo-extra1
.
Select physical output
Find the card you wish to change the output profile for by using the command in the previous section.
To set card 0 to use the hdmi-surround profile run the following command: pactl set-card-profile 0 output:hdmi-surround
.
Display
Screen settings are managed through the xrandr
command line utililty.
Viewing current settings
- Make sure you’re logged in as the player user:
whoami
(should return player). If you’re logged in as the cinemataztic user runsudo su player
to switch to the player user. - Set the display variable:
export DISPLAY=:0
- Check the current settings:
xrandr
. The active mode is marked by an * in the resulting table.
Resolution & framerate
Display settings can be adjusted using the procedure below:
- Make sure you’re logged in as the player user:
whoami
(should return player). If you’re logged in as the cinemataztic user run sudo su player to switch to the player user. - Get the available modes as described in previous section.
- Set the display variable:
export DISPLAY=:0
(if not already done in step 2). - Set to the mode you wish to use (e.g. 1920x1080 at 60Hz for the output named HDMI-0):
xrandr --output HDMI-0 --mode 1920x1080 --rate 60.00
Network setup
Machines can be reached by IP address or hostname.local. This is a prerequisite for cueing games in network-based automation setups. Depending on your setup, you may need to configure your machines with fixed IP addresses via DHCP (mac address based IP reservation) or completely static IP addresses.
Depending on your setup, you may need to configure your machines with fixed IP addresses via DHCP (mac address based IP reservation) or completely static IP addresses.
DHCP (default)
The boxes are configured for DHCP based network per default.
DHCP + mac based address reservation
You may configure your DHCP server to provide a stable IP address for each machine based on its mac address. The mac address can be found on cloud.cinemataztic.com once the machine has been set up.
Static IP
If you need a static IP address (e.g. because DHCP-based address reservation is unavailable) the machines can be configured with a static IP address. You’ll need the following information:
- IP address (CIDR notation)
- Gateway (optional)
- DNS servers (optional)
The machines run Ubuntu 20, and static IP addresses can be set via the netplan utility: netplan.io
Example
- Log in to the machine locally using the admin user (cinemataztic). You may need to press ctrl + alt + f2 to open a new terminal session.
- Open the file /etc/netplan/01-netcfg.yaml using your favourite terminal based editor (e.g. vim or nano).
~: sudo nano /etc/netplan/02-cinemataztic-network-manager.yaml
- Add your network configuration to the file. If going for static IP the notation must be CIDR. The example below sets the IP address of the machine to the static 192.168.1.2 in the 255.255.255.0 subnet, corresponding to the CIDR 192.168.1.2/24. We assume that the NIC is called
eno1
# /etc/netplan/02-cinemataztic-network-manager.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: no
dhcp6: no
addresses:
- 192.168.1.2/24
Save and close the file and try the netplan configuration with the command:
~: sudo netplan try
netplan try: Apply configuration and wait for user confirmation; will roll back if network is broken or no confirmation is given.
Multiple Network Interfaces
If your machine has been configured with multiple network interfaces, these can be configured individually. In a typical setup this could look like:
- NIC1 is configured to access internet (usually DHCP)
- NIC2 is connected to the cinemas ethernet-based automation network (this interface would likely have a static IP address).
Enabling additional network interfaces
Per default the installer only enables the NIC used during the OS installation process. This means that any secondary network interfaces must be enabled manually. Network interfaces are enabled by creating a netplan configuration (yaml) and enabling the configuration.
- Identify network cards:
~: ip a
This will produce a list of network interfaces that will look like the list below:1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp5s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000 link/ether b4:96:91:6c:ae:0c brd ff:ff:ff:ff:ff:ff 3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether e4:54:e8:d6:e4:f3 brd ff:ff:ff:ff:ff:ff altname enp0s31f6 inet 10.101.54.42/16 brd 10.101.255.255 scope global dynamic eno1 valid_lft 86267sec preferred_lft 86267sec inet6 fe80::e654:e8ff:fed6:e4f3/64 scope link valid_lft forever preferred_lft forever
- Identify all network interfaces that should be used in the setup. In the example above we’re interested in
eno1
(currently up) andenp5s0
(currently down). - In order to enable the network interface we’ll need to edit the netplan config file:
sudo vim /etc/netplan/02-cinemataztic-network-manager.yaml
(swap vim with nano if that’s your preferred editor). - Write the following to the file to enable dhcp on
eno1
and set a static IP address onenp5s0
by saving the following content to the file.
#/etc/netplan/02-cinemataztic-network-manager.yaml
network:
ethernets:
eno1:
dhcp4: true
dhcp4-overrides:
route-metric: 100
enp5s0:
dhcp4: no
dhcp6: no
addresses:
- 192.168.1.2/24
version: 2
- Test the netplan configuration by running
netplan try
in the command line. - Follow the instructions on screen to keep the configuration or delete the configuration.
- If you keep the configuration and still wish to revert you can run the following command:
sudo bash -c 'echo "# CinemaTaztic Netplan Config goes here" > /etc/netplan/02-cinemataztic-network-manager.yaml' && sudo netplan apply
Reverting
If you saved the configuration in the previous step and wish to roll back to a DHCP configuration, here’s an example configuration:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: yes