t_buffer / t_buffer_obj
Hi !
SDK 6.1.4 suggest to use "t_buffer_obj" instead of "t_buffer" .
i would like to understand one difference that consist of accessing buffer data .
If i want to access buffer data in old way , im simply pointing to
b->b_samples
b->b_framess
b->b_nchans
etc
...
now this seems to be different ,and it consist of function call as i understand .
so this is a new way of accessing that data right ?
buffer_getchannelcount(b);
buffer_getframecount(b);
...
so now if i want to access and do operation/modify buffer sample content im not accessing it anymore through "b_samples" member . instead i should return a pointer to its content with :
buffer_locksamples(b);
???
so this is a new way of accessing buffer sample data , through locking buffer object ?
which simply do two operations . Before it would require ATOMIC_INCREMENT , and calling for a member separately . Now its a one function . Do i understand it right ?
I know the reason why i should lock the buffer , but it is always required ? cant i access samples without locking my buffers and compute some data out of it ? simply without modifying any buffer content .
yes , thanks Nicolas , very informative