Hello Tim, thank you for your guidance!<br />
I indeed didn't account for the number of channels or samples when calculating num_samples and the duration.
I also wasn't totally clear with myself about whether I was counting samples or frames (ie. one sample for each channel), which may have also been causing me problems.<br />
<br/>
The program can now successfully play mono 32-bit float samples (<a href="http://gstreamer-devel.966125.n4.nabble.com/file/t378119/basic-tutorial-8s.bak" target="_top" rel="nofollow" link="external">this is my updated code</a>), however when I give it a stereo sample, it seems to be played at half the speed and seems to be drawn twice on the wavescope, despite me setting the number of channels to 2 in the code:<br/> <img src="http://gstreamer-devel.966125.n4.nabble.com/file/t378119/03.png" border="0"/><br/>
I imagine that a possible cause for this could be that multiple channels are stored differently in the file than GStreamer expects. I think that the sample data is stored in the file with the channels alternating every sample -- is this how GStreamer expects the samples to be stored?<br/><br/>
The program now also sends an EOS event once the end of the sample is reached to prevent a seg-fault:<br/>
<pre>
  if (data->playback_offset >= data->size)
  {
          gst_app_src_end_of_stream ((GstAppSrc *) data->app_source);
  }
</pre>
This works, however the program plays silence for once more the sample's length after the end is reached.<br/>
Do you have any idea about what may be causing these problems?<br/>
Thanks --  Albert<br/>

        
        
        
<br/><hr align="left" width="300" />
Sent from the <a href="http://gstreamer-devel.966125.n4.nabble.com/">GStreamer-devel mailing list archive</a> at Nabble.com.<br/>