Outdoor TTL Flash Portrait Photography

What is TTL flash?

TTL is short for through the lens. TTL is a mode, that a flash can operate in. When the flash in in TTL mode, the flash will fire a pre-flash and the flash power will then be automatically set in a fraction of a second, based on a light metering through the lens by the camera.

When is TTL flash used?

If the the eyes, face or other important features of the subject is unevenly lit and the subject is too dark with high contrast, then TTL flash can lift the shadows and light the subject to match the natural ambient light in the background. If the sun is warm and setting, then an orange gel or filter can make the flash warm as well.

Find a good spot for portrait photography.

Consider a place with some trees or some shade. Face should be in neutral even light. Not in harsh uneven light. This will make it possible to control the light.

Dial in the exposure on the camera.

Set camera to manual mode. Set light metering to an averaging mode. Dial in the exposure to 1/160-200s, f/1.2-5.6 and ISO 100-400. Keep ISO as low as possible to avoid noise. Make sure, that the flash is turned off, and take a test image and review the image and the histogram. A correct exposure will not have peaks up against the left side nor the right side. Adjust as necessary.

Dial in the exposure on the flash.

If it is sunset and the light is yellow, then use an orange gel or filter on the flash. This will make the flash light become warmer and the image will become more natural. There are usually a half tone and a full tone.

If the flash can not be bounced off a light wall, then point it directly at the subject.

Set flash to TTL mode.

If direct flash is used, then adjust the shutter, so the meter is zero or slight over-exposed. The flash will become more soft. The reason is, that a dark background wil make the flash too bright. Is it better to just use FEC and reduce flash power?

Use a flash transmitter and a softbox to make the light source bigger and softer. Place the softbox as close as possible to make the light as big as possible for softer light. Use a diffuser and un umbrella to make the light source bigger and software.

Adjust flash exposure compensation (FEC) as necessary to make the light soft and natural. Remember, that the camera will by default measure the brightness of the average scene and light it towards grey. Dark scenes will become too bright. Bright scenes will become too dark.

Shoot.

More about TTL flash portrait photography.

Vordingborg Festuge 2024

Pictures from Vordingborg Festuge 2024

This is some of the pictures, I shoot of bands and guests, from the annual music festival Vordingborg Festuge 2024. Conditions were challenging heavy clouds and rain. This did not leave much light for capturing pictures. I used a handheld digital camera with a 70-200mm zoom lens. I used an optimal balance between high speed exposure and narrow depth of field. I used my own custom in-camera picture profile settings for capturing true colors as seen on site. I did not not apply any editing, filters nor generative artificial intelligence to the pictures.

How to install privacy VPN on FreeBSD

This is the procedure for installing, configuring and using a privacy oriented VPN server, such as Mullvad or Proton, with OpenVPN on FreeBSD. Tested with OpenVPN 2.6 .10 on FreeBSD 13.2 on 2024-04-26.

Install OpenVPN client on FreeBSD.

Install OpenVPN. The package comes with an OpenVPN client.

# pkg install openvpn

Create a directory for VPN configuration files. Ensure, that login credentials can only be read by the OpenVPN client.

# find / -type d -name '*openvpn*'
# mkdir /usr/local/etc/openvpn
# chown openvpn:openvpn /usr/local/etc/openvpn

Install VPN configuration file for OpenVPN client on FreeBSD.

Get the VPN configuration file from the website of the VPN service. The configuration file should support FreeBSD or GNU/Linux operating systems. The protocol should be UDP. This ensures, that TCP problems, that can arise from encapsulating TCP packets in TCP packets, is avoided. Copy the VPN configuration file to the OpenVPN directory from above.

# chown openvpn:openvpn /usr/local/etc/openvpn/foobar.ovpn

Configure OpenVPN to start without asking for username and password.

If you want to be able to use VPN without OpenVPN client asking for username and password, then configure it to read the login credentials from a text file.

# nano /usr/local/etc/openvpn/foobar.ovpn
auth-user-pass /usr/local/etc/openvpn/foobar.txt

Then store the username and password in the text file. The username on the first line and the password on the next line. Note, that some VPN services provides optional features the VPN service. Such features can be enabled or disabled by modifying the username.

# touch /usr/local/etc/openvpn/foobar.txt
# chown openvpn:openvpn /usr/local/etc/openvpn/foobar.txt
# nano /usr/local/etc/openvpn/foobar.txt
QfHrW8QGf1OYjubt
5r8JzcOBIPNbq6pqhxA0L-FLTVrl4pIl3a0G8qUqyB-DzwFLLfuNlf6j

Configure DNS resolver up scripts for OpenVPN client on FreeBSD.

Ensure, that up scripts, that takes care of DNS resolver configuration, exist. This is not only important for operation, but also for avoiding DNS leak by using an DNS, that is not related to the VPN. The OpenVPN client comes with up and down scripts for this.

# nano /usr/local/etc/openvpn/foobar.ovpn
up /usr/local/libexec/openvpn-client.up
plugin openvpn-plugin-down-root.so /usr/local/libexec/openvpn-client.down

How to start and stop VPN with OpenVPN on FreeBSD.

Start the VPN by using the OpenVPN client with the VPN configuration file as the argument. Stop the VPN by pressing Ctrl+C.

# openvpn-client /usr/local/etc/openvpn/foobar.ovpn

How to start VPN automatically at boot time on FreeBSD.

Add it to the system configuration.

# nano /etc/rc.conf
openvpn_enable="YES"
openvpn_configfile="/usr/local/etc/openvpn/foobar.ovpn"
openvpn_dir="/usr/local/etc/openvpn"

The VPN can now be started and stopped with the system service utility.

# service openvpn start
# service openvpn stop

If a firewall is used, such as PF, then it might be necessary to create an up script, that can reload the firewall script during the startup process.

# nano /usr/local/etc/openvpn/pfreload.sh
#!/bin/sh
/usr/sbin/service pf reload
# chmod 0700 /usr/local/etc/openvpn/pfreload.sh

Add it to the system configuration.

# nano /etc/rc.conf
openvpn_flags='--script-security 2 --up "/usr/local/etc/openvpn/pfreload.sh"

You might want to let the machine complete the booting, before the VPN is started. This ensures, that FreeBSD can set time and perform other system related Internet access, before the user log in.

Check IP address for VPN.

Go to What is My IP Address? and confirm, that the IP address is related to the VPN server.

Check DNS resolver for DNS leak.

Confirm, that the DNS resolver has been updated, so DNS leak is avoided. The DNS resolver should have the new VPN DNS as the DNS.

# cat /etc/resolv.conf
nameserver 10.10.0.1

More about VPN on FreeBSD.

OpenVPN and PF at startup on FreeBSD Forums. OpenVPN on FreshPorts. Official website for OpenVPN.

Creating a FAT32 file system on USB flash drive with FreeBSD

This is the procedure for creating an MBR boot sector and a FAT32 file system on a USB flash drive and other removable media, so it can used for sharing files with Windows, TVs or other devices. This procedure is also known as formatting or partitioning.

Identifying USB flash drive on FreeBSD.

Attach the external storage and identify the device. Optionally check for existing partitioning schemes and file systems on the device.

# dmesg
da0: < USB DISK 3.0 PMAP> Removable Direct Access SPC-4 SCSI device
da0: Serial Number 0718388514F24105
da0: 400.000MB/s transfers
da0: 118200MB (242073600 512 byte sectors)
da0: quirks=0x3<NO_SYNC_CACHE,NO_6_BYTE>
# gpart show /dev/da0
=> 63 60825537 da0 MBR (29G)
63 1 - free - (512B)
64 60825536 1 fat32lba (29G)

Creating MS-DOS FAT32 partioning scheme with GPART on FreeBSD.

Destroy any existing partitioning scheme even if it is not empty. Create a new partitioning scheme with an MBR boot sector. Add a new partition of the FAT32 type. Construct a new MS-DOS FAT32 file system with optional label. This is also known as formatting. The label, that can use up to 11 characters, is used by Windows and some devices to present the file system to the user. Consider putting a physical label on the flash drive as well.

# gpart destroy -F /dev/da0
# gpart create -s mbr /dev/da0
# gpart add -t fat32 /dev/da0
# newfs_msdos -L PROJECTS -F 32 /dev/da0s1

Optionally confirm the new partion scheme.

# gpart show /dev/da0
=> 63 242071337 da0 MBR (115G)
63 242071337 1 fat32 (115G)

Mouting and unmounting MS-DOS FAT32 file system on FreeBSD.

The USB flash drive is now ready to be mounted, used and unmounted again. In this example, Alice wants the directories and files in her projects directory copied with RSYNC, so the repeated command will just udpate the drive with changes since last copy. Because the target file system is FAT32, the owner and group can not be set.

# mount -t msdos /dev/da0s1 /mnt
# rsync -ahv --no-owner -no-group /home/alice/projects/ /mnt/
# sync
# umount /mnt

More about creating file systems.

GPART and NEWFS_MSDOS on FreeBSD Manual Pages. How to mount FAT32 formatted SD memory card on FreeBSD and How to mount exFAT formatted SD memory card on FreeBSD by myself.

Creating video with KDEnlive on FreeBSD

Importing and renaming raw video clips with creating time on FreeBSD.

Import or copy the raw video clips from the camera and store them on a temporary local fast file system. Rename the raw video clips, so the filename contains the time stamp. This will become convenient later, when listing and loading them. The following csh script uses the stat utility to get the file creation time stamp and then renames the video clips accordingly.

$ cat rename-mp4
#!/bin/csh
foreach file (*.MP4)
  set newname = `stat -f '%SB' -t '%y%m%d-%H%M%S' "$file"`
  mv "$file" "${newname}-${file}"
end

An example of the manual approach, for the same result, would be the following commands.

$ mv MGR103.MP4 240314-213544-MGR103.MP4
$ mv MGP101.MP4 240314-213535-MGP101.MP4

Creating a new project and profile preset in KDEnlive.

Launch KDEnlive and create a new project. KDEnlive will ask you to select a profile preset. In the settings, select or create a profile preset, that matches the raw video clips from the camera and the main format, you will be targetting. If you will be creating a new profile preset, find a general profile preset and I recommend using a naming convention, that reflects the resolution and frame rate.

  • Action cameras, such as the legendary GoPro Hero 3 Black, produces high resolution frames in more narrow aspect ratio and high frame rate, such as 1920×1080@60 (16:9).
  • Cam corders, such as the legendary Sony FDR AX43, produces high resolution frames in traditional film aspect ratio and frame rate, such as 3840×2160@25 (16:9) or 1920×1080@25 (19:6).
  • Mobile phoes, such as Samsung Galaxy A series, produces moderate resolution frames, such as 1920×1080@25 (16:9) or 1080×1920@25 (9:16).

Editing video and audio on the timeline i KDEnlive.

Adding effects i KDEnlive.

If you want to add a watermark, also known as an overlay, you will need an image with your logo or watermark. If the watermark is transparent, it will most likely be in PNG format. Add a track on top of the video in the timeline and place the watermark in it. Stretch it, so it matches the full length of the video. You can now place the watermark, where you want it to be, by opening the effects window, finding the transformation effects and selecting the Crop, Scale and Tilt effect. Adjust the scale and tilt values as necessary. If the video is 1080 pixels wide and the watermark is 200 pixels wide, you might want to scale to 20 and 20 and tilt to 953 and 1779.

Exporting video clips for other use.

If you will be exporting video clips for other use, then use the input and output markers to export those at this point and before any formatting and watermarking. Use a naming convention, that keeps the clips in chronological order, such as a time based prefix and a descriptive tekst. Such clips can later be formatted and watermarked with KDEnlive or FFmpeg for sharing or use on social media.

X and GNOME for FreeBSD

Xrandr.

If you just attached a monitor to your computer, such an external monitor or TV via HDMI, you can activate it in GNOME with Xrandr. Just run the utility. If you want to configure it in GNOME, then go to GNOME settings and Display.

% xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 276mm x 155mm
   1920x1080     60.05*+  60.01    59.97    59.96    59.93  
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
HDMI-2 connected (normal left inverted right x axis y axis)
   3840x2160     30.00 +  25.00    24.00    29.97    23.98  

GNOME Tweaks.

Go to Appearance and change Applications from Adwaita to Adwaita-dark. This will make non-GTK applications, such as third party applications, dark mode as well as the GNOME applications.

% gnome-tweaks

Night Time Indoor Snapshot Flash Photography

What is night time indoor snapshot flash photography?

The purpose of night time indoor snapshot flash photography is to have a light weight hand-held camera gear, that can quickly be switched on and framed to capture snapshots of individuals, groups and even take selfies, while also capturing colorful background ambient light in the club or private party. This type of photography is also known as event photography.

This can be achieved with a digital camera, a wide angle lens and an external speedlight flash. The shooting proces should be swift and automatic, so natural, creative expressions are captured, while also having fun with it. There will not be time for fumbling aound with settings and cumbersome gear.

Configure camera and flash for capturing low light snapshots.

  1. Use a lens, that spans a wider viewing angle around 50°, such as the well known Canon EF-S 24mm f/2.8 STM lens.
  2. Set the camera mode to manual and dial in the camera exposure to 1/8s, f/2.8 and ISO 100. This will be the default go-to exposure setting. This should give you a good captura of the ambient background. If this is too bright or too dark for your application, or you have a much different lens, you will want to adjust the aperture, shutter speed and ISO in that order until the best ambient background is achieved.
  3. Set image review to hold. Subjects will almost always want to see the image, so it might as well be ready for them. Set white balance to daylight. The flash, changing lighting and and mixed light sources will not work well for the automatic white balance. Set light meter to evaluative mode.
  4. Attach the white diffuser to the flash for a slight more soft lighting. Attach the flash to the camera and point it directly at subject. It will usually not be possible to bounce light off walls and there will usually not be time to experiment with bounced light neither. Set flash mode to TTL mode.
  5. If your camera has live preview, your might want to use this. This will usually enable automatic eye tracking and make it easier to compose some shoots. The downside of this is decreased battery life.

Photograph individuals, groups and even selfies, while also capturing colorful background lights.

You can now grab your camera and walk around and do night time indoor snapshot flash photography. You can quickly capture and photograph individuals, groups and even selfies, while also capturing colorful background lights. The camera immediately holds the image, so you can show it. Just press the shutter to continue shooting.

You might want to adjust flash exposure and aperture as necessary.

  1. Adjust flash exposure compensation as necessary. If people are much brigher than grey, the flash might need more power. If people are much darker than grey, the flash might need less power. The reason is, that the camera will try to power each scene grey, so this should be compensated for. You might also prefer a lighter or darker appearance for effect. You will usually want to adjust flash exposure compensation in 1/3 stops, such as 0.3, 0.7 and 1.0.
  2. Adjust aperture as necessary. If you will be photographing groups, you might want more depth of field. This is done by adjusting the aperture and ISO in the same amount of stops, so the camera exposure remains the same. If you want 1 stop from f/2.8, then change to f/4.0 and ISO 200. If you want 2 stops from f/2.8, then change to f/5.6 and ISO 400. The aperture dial usually moves in 1/3 stops, but remember to turn the ISO dial the same amount, so the camera exposure remains the same.

How to configure SPF policy record in BIND DNS

What is SPF?

SPF is short for Sender Policy Framework and is an internet standard, that ensures, that email is in fact sent from authorized mail servers. SPF is also known as an SPF policy or an SPF record. SPF is a special TXT resource record (RR) for the domain in DNS. The TXT RR contains a list of mail servers, that is authorized to send email on behalf on the domain. You can configure an SPF policy record in BIND DNS.

Continue reading “How to configure SPF policy record in BIND DNS”

How to install OpenDKIM for Sendmail on FreeBSD

What is DKIM?

DKIM is short for Domain Keys Identified Mail and is an internet standard, that ensures, that an email is in fact authorized by the owner of the domain, and, that its content is authentic and has not been modified. DKIM is available for FreeBSD as the OpenDKIM package or port. OpenDKIM is a milter for Sendmail, which is the default mail server in FreeBSD.

Continue reading “How to install OpenDKIM for Sendmail on FreeBSD”