Example #1
0
void audio_chunk::set_data(const audio_sample * src,t_size samples,unsigned nch,unsigned srate,unsigned channel_config)
{
	t_size size = samples * nch;
	set_data_size(size);
	if (src)
		pfc::memcpy_t(get_data(),src,size);
	else
		pfc::memset_t(get_data(),(audio_sample)0,size);
	set_sample_count(samples);
	set_channels(nch,channel_config);
	set_srate(srate);
}
Example #2
0
bool audio_chunk::set_data(const audio_sample * src,unsigned samples,unsigned nch,unsigned srate)
{
	bool rv = false;
	unsigned size = samples * nch;
	audio_sample * out = check_data_size(size);
	if (out)
	{
		if (src)
			mem_ops<audio_sample>::copy(out,src,size);
		else
			mem_ops<audio_sample>::set(out,0,size);
		set_sample_count(samples);
		set_channels(nch);
		set_srate(srate);
		rv = true;
	}
	else reset();
	return rv;
}