triggerbox: add static signal to let the GUI do something when we cannot determine tempo
This commit is contained in:
parent
3e5606415f
commit
dd842fdc5c
@ -293,6 +293,8 @@ class LIBARDOUR_API AudioTrigger : public Trigger {
|
|||||||
|
|
||||||
SegmentDescriptor get_segment_descriptor () const;
|
SegmentDescriptor get_segment_descriptor () const;
|
||||||
|
|
||||||
|
static PBD::Signal1<void,std::string> CannotDetermineTempo;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void retrigger ();
|
void retrigger ();
|
||||||
void set_usable_length ();
|
void set_usable_length ();
|
||||||
|
@ -524,6 +524,8 @@ Trigger::maybe_compute_next_transition (samplepos_t start_sample, Temporal::Beat
|
|||||||
|
|
||||||
/*--------------------*/
|
/*--------------------*/
|
||||||
|
|
||||||
|
PBD::Signal1<void,std::string> AudioTrigger::CannotDetermineTempo;
|
||||||
|
|
||||||
AudioTrigger::AudioTrigger (uint64_t n, TriggerBox& b)
|
AudioTrigger::AudioTrigger (uint64_t n, TriggerBox& b)
|
||||||
: Trigger (n, b)
|
: Trigger (n, b)
|
||||||
, data (0)
|
, data (0)
|
||||||
@ -735,6 +737,8 @@ AudioTrigger::determine_tempo ()
|
|||||||
string::size_type ni;
|
string::size_type ni;
|
||||||
double text_tempo = -1.;
|
double text_tempo = -1.;
|
||||||
|
|
||||||
|
std::cerr << "Determine tempo for " << name() << std::endl;
|
||||||
|
|
||||||
if (((bi = str.find ("bpm")) != string::npos) ||
|
if (((bi = str.find ("bpm")) != string::npos) ||
|
||||||
((bi = str.find ("BPM")) != string::npos)) {
|
((bi = str.find ("BPM")) != string::npos)) {
|
||||||
|
|
||||||
@ -786,6 +790,8 @@ AudioTrigger::determine_tempo ()
|
|||||||
|
|
||||||
if (_apparent_tempo == 0.0) {
|
if (_apparent_tempo == 0.0) {
|
||||||
/* no apparent tempo, just return since we'll use it as-is */
|
/* no apparent tempo, just return since we'll use it as-is */
|
||||||
|
std::cerr << "Could not determine tempo for " << name() << std::endl;
|
||||||
|
CannotDetermineTempo (_region->source (0)->name());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -800,6 +806,7 @@ AudioTrigger::determine_tempo ()
|
|||||||
|
|
||||||
const samplecnt_t one_bar = tm->bbt_duration_at (timepos_t (AudioTime), BBT_Offset (1, 0, 0)).samples();
|
const samplecnt_t one_bar = tm->bbt_duration_at (timepos_t (AudioTime), BBT_Offset (1, 0, 0)).samples();
|
||||||
|
|
||||||
|
cerr << "tempo: " << _apparent_tempo << endl;
|
||||||
cerr << "one bar in samples: " << one_bar << endl;
|
cerr << "one bar in samples: " << one_bar << endl;
|
||||||
cerr << "barcnt = " << round (_barcnt) << endl;
|
cerr << "barcnt = " << round (_barcnt) << endl;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user