Regarding presentation of a video stimulus.


Author
Message
dhanya
dhanya
Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)
Group: Forum Members
Posts: 9, Visits: 1

Hi!


I am starting to learn inquisit, and I would like to know how we can play a video file through Inquisit 3 by pressing the ENTER key on mouse. My video stimulus have duration of about 300ms and i need to repeat the video stimulus for about 150 times for evoked potential recording. I would also like to know how to send triggers (TTL pulses) from Inquisit to an external device.


Thank you 


Tags
Dave
Dave
Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)
Group: Administrators
Posts: 11K, Visits: 65K

I am starting to learn inquisit, and I would like to know how we can play a video file through Inquisit 3 by pressing the ENTER key on mouse. My video stimulus have duration of about 300ms and i need to repeat the video stimulus for about 150 times for evoked potential recording.


You'll want to go for a setup along these lines:


<defaults>
/ inputdevice = mousekey
</defaults>

<trial mouseclick>
/ stimulusframes = [1=clickmessage]
/ validresponse = (lbuttondown)
</trial>

<text clickmessage>
/ items = ("Press left mouse button to start the video")
/ erase = false
</text>

<trial playvideo>
/ stimulusframes = [1=myvideo]
/ validresponse = (noresponse)
/ trialduration = 300
</trial>

<video myvideo>
/ items = myvideoitems
/ playthrough = true
</video>

<item myvideoitems>
/ 1 = "01.avi"
/ 2 = "02.avi"
/ 3 = "03.avi"
/ 4 = "04.avi"
/ 5 = "05.avi"
</item>

<block myblock>
/ trials = [1-5=sequence(mouseclick, playvideo)]
</block>


I would also like to know how to send triggers (TTL pulses) from Inquisit to an external device.


You'll want to study the documentation topics "How to Present TTL Signals Through the Parallel
Port", "How to Use the Parallel Port Monitor Tool" and the language reference for the <port> element. The "Auditory Oddball Task" available from the Task Library at millisecond.com may serve as a reference implementation. Searching the forum for terms such as "TTL", "Parallel Port", "trigger", etc. will bring a number of threads containing additional information and tips.


Regards,


~Dave


dhanya
dhanya
Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)
Group: Forum Members
Posts: 9, Visits: 1

hi sir, 


Thank you, it worked out well. But iam not able to loop the stimulus (i.e continouously play the stimulus for about 150 times). Also i wanted to know  how to set interstimulus interval between video stimulus and to send trigger pulses only for the audio stimulus in the video.


Tags
Dave
Dave
Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)
Group: Administrators
Posts: 11K, Visits: 65K

But iam not able to loop the stimulus (i.e continouously play the stimulus for about 150 times)


Please be more specific about your design. I.e. do you want to repeat the video 150 times on a single <trial>? Or do you want to have 150 <trial>s, each displaying the same video? Also, are participants supposed to respond to the video stimulus or just watch it? Note that Inquisit collects only a single response per <trial> element.


Also i wanted to know  how to set interstimulus interval between video stimulus


Please study the "How to Control Trial Duration and Inter-Trial
Intervals" topic in the Inquisit documentation. Also, please complete the tutorials in the Inquisit helpfile to get an overview of the basic syntax features.


and to send trigger pulses only for the audio stimulus in the video.


That's not possible. If you want to send triggers at specified times during the video, you have to set up appropriate <port> elements and send them out via /stimulustimes. Note that there's no way to guarantee perfect synchronization between triggers and the video's soundtrack. As for general information on how to interface with external equipment via TTL, please refer to the resources I mentioned in my previous post.


Regards,


~Dave


dhanya
dhanya
Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)
Group: Forum Members
Posts: 9, Visits: 1


Hi Dave,


I am sure you will clarify  this for me. Now the video is playing well and i could loop it too, but triggering is the problem. How to go about with the parallel port LPT connections. Neuroscan equipment which we are planning to use have a 25 pin male connector. how to know which port to use (LPT 1 or LPT2) and is there anything to be set in the Inquisit software to enable this triggers to be sent. we need to send an 8 bit TTL pulse to Neuroscan equipment for it to recognise the triggers. i need to set only one trigger at the onset of the video.


Thanking You in advance. 



Dave
Dave
Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)
Group: Administrators
Posts: 11K, Visits: 65K

As I had mentioned previously, you need to properly set up a
<port> element to send triggers to external equipment such as NeuroScan. Thus:


how to know which port to use (LPT 1 or LPT2)


You use the LPT port Neuroscan is connected to on the PC. Either


<port onsettrigger>
/ port = LPT1
[...]
</port>


or


<port onsettrigger>
/ port = LPT2
[...]
</port>


and is there anything to be set in the Inquisit software to enable this triggers to be sent


The 8-bit TTL signal to be sent is defined in the <port> element's /items attribute. For the specific signal NeuroScan expects as well as other NeuroScan-specific settings (e.g. the subport to use) refer to the NeuroScan documentation.


<port onsettrigger>
/ items = ("00000001")
[...]
</port>


Once this is set up properly, you need to send the trigger out at the desired time via your <trial> elements' /stimulustimes or /stimulusframes attributes. E.g.:


<trial mytrial>
/ stimulusframes = [1=myvideo,onsettrigger]
[...]
</trial>


You may test connectivity between Inquisit and NeuroScan by using the Parallel Port Monitor tool.


~Dave



dhanya
dhanya
Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)
Group: Forum Members
Posts: 9, Visits: 1

Thank You Dave it worked...


But now when the command "onset trigger" is given, i am getting a trigger value of "1" only at the onset of the video stimulus.  But for my task, i have to the play the video 150 times and get a trigger for each trial (i.e. for each video). How to go about with this problem. The script i'am using presently is given below:



<defaults>


/ input device = mousekey


</defaults>



<text click message>


/ items = ( "Press left mouse button to start the video")


/ erase = false


</text>



<port onsettrigger>


/ port = LPT1


/ subport = data


/ items =  ("00000001")


</port>



<trial play video>


/ stimulusframes = [1=myvideo, onsettrigger]


response = timeout(500)


/ validresponse = (" ", noresponse)


/trialduration =10000


</trial>



<video myvideo>


/ items = myvideoitems


/ playthrough = true


/ loop = true


/ size = (90%, 90%)


</video>



<item myvideoitems>


/ 1 = "ba - ba.avi"


/ 2 = "ba - ba.avi"


/ 3 = "ba - ba.avi"


/ 4 = "ba - ba.avi"


/ 5 = "ba - ba.avi"


</item>



block myblock>


/ trials = [1-5=sequence(mouseclick, play video)]


</block>




There is some error with the trial no also. I am not able to play it 150 times.


Thank you in advance......


Dave
Dave
Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)
Group: Administrators
Posts: 11K, Visits: 65K

i am getting a trigger value of "1" only at the onset of the video stimulus


Which is what you asked for.


But for my task, i have to the play the video 150 times and get a trigger for each trial (i.e. for each video).


Please use consistent terminology. Otherwise it's impossible to figure out what you're trying to do. You *don't* want a trigger for *each video*, but a trigger for *each repetition of the same video*. Right? Then the /loop attribute won't help. You'll have to repeat the *<trial>* displaying the video 150 times, with each trial showing the video only once. Then you'll have triggers for each repetition.


Regards,


~Dave


dhanya
dhanya
Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)Esteemed Member (2.4K reputation)
Group: Forum Members
Posts: 9, Visits: 1

hi dave, 


Is there any way to delay the trigger in the video???


Dave
Dave
Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)Supreme Being (911K reputation)
Group: Administrators
Posts: 11K, Visits: 65K

Just send the trigger out at a different time using the /stimulusframes or /stimulustimes attribute of your <trial> element.


GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search