Sorry for late reply!
The source code:
Code: Select all
if(*l_pBuffer > m_f64Threshold && !m_bTriggerActive)
{
Here is what we can extract from the log.
> I can see that the output stream of your box is a streamed matrix, 1x500 values.
Code: Select all
[name:OVTK_NodeId_Header_StreamedMatrix_DimmensionCount]-[type:uinteger]-[value:2]
...
[name:OVTK_NodeId_Header_StreamedMatrix_Dimmension_Size]-[type:uinteger]-[value:1]
...
[name:OVTK_NodeId_Header_StreamedMatrix_Dimmension_Size]-[type:uinteger]-[value:500]
Example :
Code: Select all
[ INF ] At time 2.906 sec <Box algorithm::EBML stream spy> For input Spied EBML stream 1 of type EBML stream :
[ INF ] At time 2.906 sec <Box algorithm::EBML stream spy> For chunk [id:0] at [time:(0x00000001, 0xcb000000),(0x00000002, 0xcb000000)]
[ INF ] At time 2.906 sec <Box algorithm::EBML stream spy>
> Near 3 seconds, it receives the stimulation
Code: Select all
[ INF ] At time 3.094 sec <Box algorithm::Stimulation listener> For input 0 with name Stimulation stream 1 got stimulation 33024[OVTK_StimulationId_Label_00] at date 13287555072 and duration 0
> Triggering the PCPG box:
Code: Select all
[ INF ] At time 3.094 sec <Box algorithm::PCPG> Start stimulation received
Code: Select all
[ INF ] At time 3.094 sec <Box algorithm::PCPG> Start stimulation received
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy>
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy> For input Spied EBML stream 1 of type EBML stream :
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy> For chunk [id:0] at [time:(0x00000001, 0xfe000000),(0x00000002, 0xfe000000)]
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy> Opened EBML node [id:(0x00cf2101, 0x02375310)]-[name:OVTK_NodeId_Buffer]
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy> Opened EBML node [id:(0x00120663, 0x08fbc165)]-[name:OVTK_NodeId_Buffer_StreamedMatrix]
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy> Opened EBML node [id:(0x00b18c10, 0x427d098c)]-[name:OVTK_NodeId_Buffer_StreamedMatrix_RawBuffer]-[type:binary]-[bytes:4000]
[ INF ] At time 3.094 sec <Box algorithm::EBML stream spy>
> The chunk dates tells me that your output stream is not continuous. For example :
Code: Select all
[ INF ] At time 4.781 sec <Box algorithm::EBML stream spy> For chunk [id:0] at [time:(0x00000003, 0xaf800000),(0x00000004, 0xaf800000)]
...
[ INF ] At time 4.906 sec <Box algorithm::EBML stream spy> For chunk [id:0] at [time:(0x00000003, 0xc9000000),(0x00000004, 0xc9000000)]
...
[ INF ] At time 5.031 sec <Box algorithm::EBML stream spy> For chunk [id:0] at [time:(0x00000003, 0xe2800000),(0x00000004, 0xe2800000)]
Time values (64bits) are written in hexa; 32 bits for the seconds, 32 bits for the divisors.
This means that all chunks represent 1 seconds, but not on a continuous stream.
Is it normal regarding what you want to output ?
To conclude, please tell us :
- what are the inputs of the PCPG box (stimulation + signal, am I wrong ?)
- Do you implement the processClock function or the processInput function in the box ?
- When do you need to process an output ? Do you need a specific amount of samples ? or on a regular clock tick ?
- Is it necessary to output empty chunks before the trigger ?
- What is the "timing" of the output stream ? The stream must be continuous or not ?
Sorry, it's a lot of question, some of them you already answered maybe...
I admit I have some trouble understanding the full picture here, so I want to make things clear
Laurent-