Difference between revisions of "Web-based perception experiments"
From Phonlab
Jump to navigationJump to searchKeithjohnson (talk | contribs) |
Keithjohnson (talk | contribs) |
||
Line 38: | Line 38: | ||
** <span id="key">#</span> is used to indicate which key the listener pressed |
** <span id="key">#</span> is used to indicate which key the listener pressed |
||
− | * (4) A <form ...> element |
+ | * (4) A <form ...> element named "dataform" |
⚫ | |||
− | |||
⚫ | |||
− | |||
− | <x> |
||
⚫ | |||
⚫ | |||
<input type="hidden" name="subject" value=<?php echo $subj; ?> /> |
<input type="hidden" name="subject" value=<?php echo $subj; ?> /> |
||
<input type="hidden" name="trial" /> |
<input type="hidden" name="trial" /> |
||
Line 53: | Line 50: | ||
<input type="hidden" name="response" /> |
<input type="hidden" name="response" /> |
||
<input type="hidden" name="rt" /> |
<input type="hidden" name="rt" /> |
||
− | </form> |
+ | </form> |
− | </x> |
Revision as of 17:35, 8 February 2018
Experiments can be hosted on the Department of Linguistics server, and then distributed to listeners by email link, or via Amazon Mechanical Turk.
An example is here: example experiment
A Javascript library audexp.js makes it realatively easy to implement the following four kinds of typical experiment:
- Identification (id) - a single audio file is played, and a two-alternative forced choice (2AFC) is given.
- Discrimination (ax) - two audio files are played, and a 2AFC is given.
- Rating (r) - a single audio file is played, and a rating number (from 1 to 7) is given.
- Contrast Rating (cr) - two audio files are played, and a rating number is given.
Your html code must have four features:
- (1) after loading audexp.js, load a javascript file that defines
- an array (or two arrays) of filenames that will be presented.
- a variable called 'block'
- here's an example of such a file
- this .js file was created with a small perl script from a .csv spreadsheet.
- the html header contains these two lines to get the audexp.js library and the experiment-specific list of sound files.
- <script src="js/audexp.js"></script>
- <script src="js/blocktest_list.js"></script>
- (2) a call to load the experiment when the page is loaded
- this call specifies the type of experiment (in this case 'id')
- whether to randomize the order of presentation of the list of sound files
- the interstimulus interval for 'ax' and 'cr' types
- and the intertrial interval for all experiments.
- <body onload="load('id',false,500,2000);">
- (3) Three or for <span...> elements that will be used to give feedback to listeners.
- is used to show warnings
- sound 1 is used to indicate that an audio file is playing
- sound 2 is used to indicate that an audio file is playing
- # is used to indicate which key the listener pressed
- (4) A <form ...> element named "dataform"
- the order of the input items determines the column order in the output file>
<form method="POST" id="dataform" action="process.php?p=id&n=1"> <input type="hidden" name="subject" value=<?php echo $subj; ?> /> <input type="hidden" name="trial" /> <input type="hidden" name="list" /> <input type="hidden" name="file1" /> <input type="hidden" name="filedur" /> <input type="hidden" name="mystatus" /> <input type="hidden" name="loadtime" /> <input type="hidden" name="response" /> <input type="hidden" name="rt" /> </form>