Audio

From TSG Doc
Revision as of 17:39, 13 June 2023 by E.vandenberge (talk | contribs)
Jump to navigation Jump to search

When using audio in your experiment, especially when presenting time-critical stimuli, special care should be taken to optimize the audio settings on multiple levels (hardware, OS, script), as many things can go wrong along the way.

This page outlines some best practices, however we advise to always consult a TSG member if you plan to run an audio experiment in the labs.

Audio Stimuli

Bij het gebruik van audio bestanden is het belangrijk om ervoor te zorgen dat de bronnen gelijke instellingen hebben, zodat het afspelen consistent en van hoge kwaliteit is.

Advies voor het instellen van gelijke instellingen voor audio bestanden:

  • 1. audiobewerkingsprogramma: Gebruik Audacity voor het bewerken en beheren van de audio bronbestanden. Audacity is een gratis en open-source audiobewerkingsprogramma dat een breed scala aan functionaliteiten biedt.
  • 2. Bestandsindeling: Het wordt aanbevolen om gebruik te maken van het .wav formaat, omdat het een ongecomprimeerd formaat is en geen verlies van audiokwaliteit veroorzaakt.
  • 3. Bemonsteringsfrequentie: Zorg ervoor dat alle audio bestanden dezelfde bemonsteringsfrequentie hebben. Dit verwijst naar het aantal samples per seconde in het audiobestand. Stel de bemonsteringsfrequentie van de bron in op 44.1 kHz, dit is ook de instelling van windows op de labcomputer.
  • 4. Bits per sample: Verwijst naar het aantal bits dat per sample gebruikt wordt. Een hogere bitsnelheid resulteert in een betere audiokwaliteit, maar resulteert ook in grotere bestandsgroottes. Gebruik een bitsnelheid van 16 bits, dit biedt een goede balans tussen geluidskwaliteit en bestandsgrootte.

Windows-audioverbeteringen

Op Windows zetten we instelling "Enhance audio" uit. Het uitschakelen van audioverbeteringen geeft een nauwkeurigere en onvervalste weergave van het audio bestand. Deze instelling is standaard gedaan op de aangesloten speakers van de labcomputer, als u een extra speaker of koptelefoon aansluit zal deze instelling nog aangepast/uitgezet moeten worden.

Code voorbeeld

Python

Hier is een voorbeeld van een Python-script in Psychopy dat een .wav bestand nauwkeurig afspeelt op basis van tijd:

 1from psychopy import sound, core
 2from psychopy import prefs
 3prefs.hardware['audioLib'] = ['PTB']
 4
 5# Pad naar het audiobestand
 6audio_file = "pad_naar_audio_bestand.wav"
 7
 8# Laad het audiobestand
 9# preBuffer – integer to control streaming/buffering -1 means store all 
10audio = sound.Sound(audio_file,preBuffer=-1)
11
12# Speel het audiobestand af
13audio.play()
14
15# Wacht tot het audiobestand is afgespeeld
16core.wait(audio.getDuration())
17
18# Sluit het audiobestand
19audio.stop()
20audio.close()