Subsetting TDMS Files
mGill
We have very large TDMS files that we want to load into IGOR in 30-minute, 1-channel chunks. I read the IGOR TDMS Import documentation and I guess the only way to achieve this is by editing the XOP. Does anyone have experience in this, or some suggestions?
I can subset the data in SignalExpress but I want it to be more automatic.
One thing you could do is to use TDMLoadWave to load an entire channel into memory, then save it in an Igor binary wave file (using Save) or in a packed experiment file (using SaveData), then kill it. Then load the chunks in from the Igor file.
Another possibility is to use the low-level TDM functions. At the time I wrote the XOP, I believe these functions allowed you to do almost anything the TDM library was capable of. However, using them requires understanding the TDM library. Execute this to read about the low-level functions:
The TDMGetDataValues function allows you to read a subset of a channel. The help file includes an example Igor function that shows how to use it.
February 10, 2011 at 09:56 pm - Permalink