Audio-Nama
view release on metacpan or search on metacpan
lib/Audio/Nama/Bus.pm view on Meta::CPAN
387388389390391392393394395396397398399400401402403404405406407
target
=>
$_
,
group
=>
$name
,
width
=> 2,
hide
=> 1,
)
}
$bn
{Main}->tracks;
}
sub
update_submix {
my
$name
=
shift
;
add_submix(
$name
,
$bn
{
$name
}->send_id),
"dummy"
,
}
sub
remove_submix_helper_tracks {
my
$name
=
shift
;
#say "got name: $name";
my
@submixes
= submixes();
#say "got submixes:", Dumper \@submixes;
lib/Audio/Nama/CacheTrack.pm view on Meta::CPAN
207208209210211212213214215216217218219220221222223224225226227
my
$name
=
$args
->{track}->name;
my
@files
=
grep
{/
$name
/} new_files_were_recorded();
if
(
@files
){
update_cache_map(
$args
);
caching_cleanup(
$args
);
}
else
{ throw(
"track cache operation failed!"
) }
undef
$setup
->{cache_track_args};
}
sub
update_cache_map {
logsub((
caller
(0))[3]);
my
$args
=
shift
;
logpkg(__FILE__,__LINE__,
'debug'
,
"updating track cache_map"
);
logpkg(__FILE__,__LINE__,
'debug'
,
"current track cache entries:"
,
sub
{
join
"\n"
,
"cache map"
,
map
{(
$_
->
dump
)} Audio::Nama::EffectChain::find(
track_cache
=> 1)
});
my
$track
=
$args
->{track};
lib/Audio/Nama/EcasoundRun.pm view on Meta::CPAN
149150151152153154155156157158159160161162163164165166167168169
schedule_wraparound()
if
$mode
->{loop_enable}
and
defined
$start
and
defined
$end
and ! Audio::Nama::ChainSetup::really_recording();
update_clock_display();
}
sub
update_clock_display {
$ui
->clock_config(
-text
=> current_position());
}
sub
schedule_wraparound {
return
unless
$mode
->{loop_enable};
my
$here
=
$this_engine
->ecasound_iam(
"getpos"
);
my
$start
= Audio::Nama::Mark::loop_start();
my
$end
= Audio::Nama::Mark::loop_end();
my
$diff
=
$end
-
$here
;
logpkg(__FILE__,__LINE__,
'debug'
,
"here: $here, start: $start, end: $end, diff: $diff"
);
lib/Audio/Nama/Effect.pm view on Meta::CPAN
916917918919920921922923924925926927928929930931932933934935936
while
( fxn(
$fx
->{id_counter})){
$fx
->{id_counter}++};
$fx
->{id_counter}
}
## synchronize Ecasound chain operator parameters
# with Nama effect parameter
sub
update_ecasound_effect {
local
$config
->{category} =
'ECI_FX'
;
# update the parameters of the Ecasound chain operator
# referred to by a Nama operator_id
#logsub((caller(0))[3]);
return
unless
$this_engine
->valid_setup;
#my $es = ecasound_iam("engine-status");
#logpkg(__FILE__,__LINE__,'debug', "engine is $es");
lib/Audio/Nama/Effect.pm view on Meta::CPAN
963964965966967968969970971972973974975976977978979980981982
logpkg(__FILE__,__LINE__,
'debug'
,
"operator $id: track $chain, index: $i, offset: "
.
$FX
->offset .
" param $param, value $val"
);
$this_engine
->current_chain_operator(
$i
);
$this_engine
->current_chain_operator_parameter(
$param
);
$this_engine
->ecasound_iam(
"copp-set $val"
);
}
}
# set both Nama effect and Ecasound chain operator
# parameters
sub
update_effect {
my
(
$id
,
$param
,
$val
) =
@_
;
return
if
!
defined
fxn(
$id
);
fxn(
$id
)->params->[
$param
] =
$val
;
update_ecasound_effect(
@_
);
}
sub
sync_effect_parameters {
logsub((
caller
(0))[3]);
local
$config
->{category} =
'ECI_FX'
;
lib/Audio/Nama/Graphical.pm view on Meta::CPAN
870871872873874875876877878879880881882883884885886887888889890
}],
);
$ui
->track_gui(
$tn
{Main}->n,
@rw_items
);
$ui
->track_gui(
$tn
{Mixdown}->n);
#$ui->group_gui('Main');
}
sub
update_version_button {
my
$ui
=
shift
;
my
(
$n
,
$v
) =
@_
;
carp (
"no version provided \n"
)
if
!
$v
;
my
$w
=
$gui
->{tracks}->{
$n
}->{version};
$w
->radiobutton(
-label
=>
$v
,
-value
=>
$v
,
-command
=>
sub
{
$gui
->{tracks}->{
$n
}->{version}->configure(
-text
=>
$v
)
unless
$ti
{
$n
}->rec }
lib/Audio/Nama/Graphical.pm view on Meta::CPAN
120612071208120912101211121212131214121512161217121812191220122112221223122412251226sub
destroy_marker {
my
$ui
=
shift
;
my
$pos
=
shift
;
$gui
->{marks}->{
$pos
}->destroy;
}
sub
setup_playback_indicator {
my
$ui
=
shift
;
$project
->{events}->{update_playback_position_display} = AE::timer(0, 0.1, \
&update_indicator
);
}
sub
update_indicator {
$gui
->{wwcanvas}->
delete
(
'playback-indicator'
);
my
$pos
= Audio::Nama::ecasound_iam(
"getpos"
);
my
$xpos
=
int
(
$pos
*
$config
->{waveform_pixels_per_second} );
$gui
->{wwcanvas}->createLine(
$xpos
,0,
$xpos
,
$config
->{waveform_canvas_y},
-fill
=>
'red'
,
-width
=> 1,
-tags
=>
'playback-indicator'
);
lib/Audio/Nama/Jack.pm view on Meta::CPAN
12345678910111213141516171819# ------- Jack port connect routines -------
package
Audio::Nama;
use
File::Slurp;
no
warnings
'uninitialized'
;
# general functions
sub
update_jack_client_list {
state
$warn_count
;
#logsub((caller(0))[3]);
# cache current JACK status
# skip if Ecasound is busy
return
if
$this_engine
->started();
if
(
$jack
->{jackd_running} = process_is_running(
'jackd'
) ){
# reset our clients data
$jack
->{clients} = {};
lib/Audio/Nama/Text.pm view on Meta::CPAN
37383940414243444546474849505152535455565758sub
transport_gui {}
sub
group_gui {}
sub
track_gui {}
sub
preview_button {}
sub
create_master_and_mix_tracks {}
sub
time_gui {}
sub
refresh {}
sub
refresh_group {}
sub
refresh_track {}
sub
flash_ready {}
sub
update_master_version_button {}
sub
update_version_button {}
sub
paint_button {}
sub
project_label_configure{}
sub
length_display{}
sub
clock_display {}
sub
clock_config {}
sub
manifest {}
sub
global_version_buttons {}
sub
destroy_widgets {}
sub
destroy_marker {}
sub
restore_time_marks {}
( run in 1.271 second using v1.01-cache-2.11-cpan-49f99fa48dc )