int main( int argc, const char* argv[] ) { init_video(); loop(); delete_buffers(); return 0; }
static void end(void) { delete_buffers(); }
~GuvcviewFormatConverter() { jpeg_close_decoder(); delete_buffers(); }
void PluginAClientLAD::init_plugin(int total_in, int total_out, int size) { int need_reconfigure = !lad_instance ? 1 : 0; if(buffer_allocation && buffer_allocation < size) { delete_buffers(); need_reconfigure = 1; } buffer_allocation = MAX(size, buffer_allocation); if(!in_buffers) { total_inbuffers = total_in; in_buffers = new LADSPA_Data*[total_inbuffers]; for(int i = 0; i < total_inbuffers; i++) in_buffers[i] = new LADSPA_Data[buffer_allocation]; need_reconfigure = 1; } if(!out_buffers) { total_outbuffers = total_out; out_buffers = new LADSPA_Data*[total_outbuffers]; for(int i = 0; i < total_outbuffers; i++) out_buffers[i] = new LADSPA_Data[buffer_allocation]; need_reconfigure = 1; } if( load_configuration() ) need_reconfigure = 1; const LADSPA_Descriptor *lad_desc = server->lad_descriptor; if( need_reconfigure ) { need_reconfigure = 0; delete_plugin(); lad_instance = lad_desc->instantiate( lad_desc,PluginAClient::project_sample_rate); const LADSPA_PortDescriptor *port_desc = lad_desc->PortDescriptors; int port_count = lad_desc->PortCount; for(int port = 0, i = 0; i < port_count; i++) { if( LADSPA_IS_PORT_INPUT(port_desc[i]) && LADSPA_IS_PORT_CONTROL(port_desc[i]) ) { lad_desc->connect_port(lad_instance, i, config.port_data + port); port++; } else if( LADSPA_IS_PORT_OUTPUT(port_desc[i]) && LADSPA_IS_PORT_CONTROL(port_desc[i]) ) { lad_desc->connect_port(lad_instance, i, &dummy_control_output); } } if(lad_desc->activate) lad_desc->activate(lad_instance); } const LADSPA_PortDescriptor *port_desc = lad_desc->PortDescriptors; int port_count = lad_desc->PortCount; for(int port = 0, i = 0; i < port_count; i++) { if( LADSPA_IS_PORT_INPUT(port_desc[i]) && LADSPA_IS_PORT_AUDIO(port_desc[i]) ) lad_desc->connect_port(lad_instance, i, in_buffers[port++]); } for(int port = 0, i = 0; i < port_count; i++) { if( LADSPA_IS_PORT_OUTPUT(port_desc[i]) && LADSPA_IS_PORT_AUDIO(port_desc[i]) ) lad_desc->connect_port(lad_instance, i, out_buffers[port++]); } }
PluginAClientLAD::~PluginAClientLAD() { delete_buffers(); delete_plugin(); }