Tags referencing files

The first and most common type of tag is a tag that directly references a file (image, audio, or video) on your computer. These tags are defined before the beginning of the first phase or step, and once defined, cannot be changed later in the protocol: they are linked to only that particular file.

LET <tag> = "<filepath>"
LET dog_image = "C:\Users\ldev\Desktop\ExampleStudy\dog.png"
LET dog_audio = "C:\Users\ldev\Desktop\ExampleStudy\look_at_the_dog.wav"
LET baby = "C:\Users\ldev\Desktop\ExampleStudy\baby.wmv"
LET checkerboard = "C:\BITTSy-Stimuli\checkerboard.wmv"


To easily find the complete file path for your stimuli:

  1. Open the folder where the files are located

  2. Right-click on a file and select Properties

  3. The filepath is shown under "location" and can be copied directly

File paths for stimulus files used in BITTSy cannot contain any whitespace characters. (This will cause a validation error in BITTSy.) If any of the folder names within your filepath contain spaces, you will need to rename them within Windows File Explorer. If your files are stored under a particular user account that contains a space, you will also need to change the username to not include a space.

There is no requirement for stimuli files to be located in the same folder as protocol files, so if you prefer to have spaces in names for other folders (or don't want to disrupt file references for other experimental software on your computer), you can store stimuli files for BITTSy in a separate, dedicated set of folders, such as directly on the C: drive.

LET checkerboard = "C:\BITTSy-Stimuli\checkerboard.wmv"


When you set up these types of tags with LET statements, BITTSy doesn't immediately store information about what kind of file it is (image, audio, or video) other than by storing the file path and extension. There is a special way to declare a tag that allows you to tie the tag name to a particular stimulus type.

TYPEDLET <type> <tag> = "<filepath>"

Here, <type> can be image, audio, or video.

Tags defined with TYPEDLET (as opposed to LET) can be used in any type of group, but only tags defined with TYPEDLET can be made into LINKED tags.

LINKED tags make it easier to reference pairs of stimuli that should be presented together. They are useful in cases where:

  • you will want to present particular, limited combinations of stimuli (e.g. each image stimulus goes with one or two possible audio files out of a much larger set in the study, and would never be presented with any of the others)

  • stimuli in the pairings are consistently of different types (image/audio/video) [no two stimuli of the same type can be LINKED together]

  • you want to randomize presentation order across stimulus pairs rather than randomizing across stimulus types (such as audio and image) independently of each other

TYPEDLET image dog_image = "C:\Users\ldev\Desktop\ExampleStudy\dog.png"
TYPEDLET audio dog_audio = "C:\Users\ldev\Desktop\ExampleStudy\look_at_the_dog.wav"

LINKED dog = {dog_image, dog_audio}

LINKED tags allow you to refer to their paired components by the same tag name (dog in the example above). For more, see the section on using LINKED tags in action statements.

Preferential looking (PLP) studies generally require paired audio and visual stimuli. However, when creating video files is an option, video stimuli with an embedded audio track are a better choice for PLP studies in BITTSy than using separate or LINKED audio + visual media files. When presenting a video file, the beginning of the visual display and audio tracks are wholly simultaneous, but presenting separate visual and audio files can theoretically result in a slight delay between the start of each file. This delay is not generally perceptible, but it has the potential to be a problem when timepoints (such as the onset of a target word) must be completely predictable and consistent.

Last updated