projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use MTC instead of MIDI Timecode as the string for the external sync button. Fixes...
[ardour.git]
/
gtk2_ardour
/
audio_clock.cc
diff --git
a/gtk2_ardour/audio_clock.cc
b/gtk2_ardour/audio_clock.cc
index 1c36391bb69b369c9066c9766b7810f9b306433c..f0ae7c76f4779d4be922b980c974a9bad14cfa13 100644
(file)
--- a/
gtk2_ardour/audio_clock.cc
+++ b/
gtk2_ardour/audio_clock.cc
@@
-414,7
+414,7
@@
AudioClock::on_realize ()
}
void
}
void
-AudioClock::set (
nframes_t when, bool force, nframes
_t offset, char which)
+AudioClock::set (
framepos_t when, bool force, framecnt
_t offset, char which)
{
if ((!force && !is_visible()) || _session == 0) {
{
if ((!force && !is_visible()) || _session == 0) {
@@
-479,12
+479,12
@@
AudioClock::session_configuration_changed (std::string p)
return;
}
return;
}
-
nframes
_t current;
+
framecnt
_t current;
switch (_mode) {
case Timecode:
if (is_duration) {
switch (_mode) {
case Timecode:
if (is_duration) {
- current = current_duration();
+ current = current_duration
();
} else {
current = current_time ();
}
} else {
current = current_time ();
}
@@
-496,17
+496,17
@@
AudioClock::session_configuration_changed (std::string p)
}
void
}
void
-AudioClock::set_frames (
nframe
s_t when, bool /*force*/)
+AudioClock::set_frames (
framepo
s_t when, bool /*force*/)
{
char buf[32];
{
char buf[32];
- snprintf (buf, sizeof (buf), "%
u"
, when);
+ snprintf (buf, sizeof (buf), "%
" PRId64
, when);
audio_frames_label.set_text (buf);
if (frames_upper_info_label) {
audio_frames_label.set_text (buf);
if (frames_upper_info_label) {
-
nframes
_t rate = _session->frame_rate();
+
framecnt
_t rate = _session->frame_rate();
if (fmod (rate, 1000.0) == 0.000) {
if (fmod (rate, 1000.0) == 0.000) {
- sprintf (buf, "%
u
K", rate/1000);
+ sprintf (buf, "%
" PRId64 "
K", rate/1000);
} else {
sprintf (buf, "%.3fK", rate/1000.0f);
}
} else {
sprintf (buf, "%.3fK", rate/1000.0f);
}
@@
-531,19
+531,19
@@
AudioClock::set_frames (nframes_t when, bool /*force*/)
}
void
}
void
-AudioClock::set_minsec (
nframe
s_t when, bool force)
+AudioClock::set_minsec (
framepo
s_t when, bool force)
{
char buf[32];
{
char buf[32];
-
nframes
_t left;
+
framecnt
_t left;
int hrs;
int mins;
float secs;
left = when;
hrs = (int) floor (left / (_session->frame_rate() * 60.0f * 60.0f));
int hrs;
int mins;
float secs;
left = when;
hrs = (int) floor (left / (_session->frame_rate() * 60.0f * 60.0f));
- left -= (
nframes
_t) floor (hrs * _session->frame_rate() * 60.0f * 60.0f);
+ left -= (
framecnt
_t) floor (hrs * _session->frame_rate() * 60.0f * 60.0f);
mins = (int) floor (left / (_session->frame_rate() * 60.0f));
mins = (int) floor (left / (_session->frame_rate() * 60.0f));
- left -= (
nframes
_t) floor (mins * _session->frame_rate() * 60.0f);
+ left -= (
framecnt
_t) floor (mins * _session->frame_rate() * 60.0f);
secs = left / (float) _session->frame_rate();
if (force || hrs != ms_last_hrs) {
secs = left / (float) _session->frame_rate();
if (force || hrs != ms_last_hrs) {
@@
-566,7
+566,7
@@
AudioClock::set_minsec (nframes_t when, bool force)
}
void
}
void
-AudioClock::set_timecode (
nframe
s_t when, bool force)
+AudioClock::set_timecode (
framepo
s_t when, bool force)
{
char buf[32];
Timecode::Time timecode;
{
char buf[32];
Timecode::Time timecode;
@@
-637,10
+637,10
@@
AudioClock::set_timecode (nframes_t when, bool force)
}
void
}
void
-AudioClock::set_bbt (
nframe
s_t when, bool force)
+AudioClock::set_bbt (
framepo
s_t when, bool force)
{
char buf[16];
{
char buf[16];
- BBT_Time bbt;
+
Timecode::
BBT_Time bbt;
/* handle a common case */
if (is_duration) {
/* handle a common case */
if (is_duration) {
@@
-1198,7
+1198,7
@@
AudioClock::field_button_press_event (GdkEventButton *ev, Field /*field*/)
return false;
}
return false;
}
-
nframe
s_t frames = 0;
+
framepo
s_t frames = 0;
switch (ev->button) {
case 1:
switch (ev->button) {
case 1:
@@
-1244,7
+1244,7
@@
AudioClock::field_button_scroll_event (GdkEventScroll *ev, Field field)
return false;
}
return false;
}
-
nframe
s_t frames = 0;
+
framepo
s_t frames = 0;
switch (ev->direction) {
switch (ev->direction) {
@@
-1313,8
+1313,8
@@
AudioClock::field_motion_notify_event (GdkEventMotion *ev, Field field)
if (trunc(drag_accum) != 0) {
if (trunc(drag_accum) != 0) {
-
nframe
s_t frames;
-
nframes_t pos
;
+
framepo
s_t frames;
+
framepos_t pos
;
int dir;
dir = (drag_accum < 0 ? 1:-1);
pos = current_time();
int dir;
dir = (drag_accum < 0 ? 1:-1);
pos = current_time();
@@
-1322,7
+1322,7
@@
AudioClock::field_motion_notify_event (GdkEventMotion *ev, Field field)
if (frames != 0 && frames * drag_accum < current_time()) {
if (frames != 0 && frames * drag_accum < current_time()) {
- set ((
nframe
s_t) floor (pos - drag_accum * frames), false); // minus because up is negative in computer-land
+ set ((
framepo
s_t) floor (pos - drag_accum * frames), false); // minus because up is negative in computer-land
} else {
set (0 , false);
} else {
set (0 , false);
@@
-1338,24
+1338,23
@@
AudioClock::field_motion_notify_event (GdkEventMotion *ev, Field field)
return true;
}
return true;
}
-
nframe
s_t
-AudioClock::get_frames (Field field,
nframes_t pos,
int dir)
+
framepo
s_t
+AudioClock::get_frames (Field field,
framepos_t pos,
int dir)
{
{
-
- nframes_t frames = 0;
- BBT_Time bbt;
+ framecnt_t frames = 0;
+ Timecode::BBT_Time bbt;
switch (field) {
case Timecode_Hours:
switch (field) {
case Timecode_Hours:
- frames = (
nframes
_t) floor (3600.0 * _session->frame_rate());
+ frames = (
framecnt
_t) floor (3600.0 * _session->frame_rate());
break;
case Timecode_Minutes:
break;
case Timecode_Minutes:
- frames = (
nframes
_t) floor (60.0 * _session->frame_rate());
+ frames = (
framecnt
_t) floor (60.0 * _session->frame_rate());
break;
case Timecode_Seconds:
frames = _session->frame_rate();
break;
case Timecode_Frames:
break;
case Timecode_Seconds:
frames = _session->frame_rate();
break;
case Timecode_Frames:
- frames = (
nframes
_t) floor (_session->frame_rate() / _session->timecode_frames_per_second());
+ frames = (
framecnt
_t) floor (_session->frame_rate() / _session->timecode_frames_per_second());
break;
case AudioFrames:
break;
case AudioFrames:
@@
-1363,10
+1362,10
@@
AudioClock::get_frames (Field field,nframes_t pos,int dir)
break;
case MS_Hours:
break;
case MS_Hours:
- frames = (
nframes
_t) floor (3600.0 * _session->frame_rate());
+ frames = (
framecnt
_t) floor (3600.0 * _session->frame_rate());
break;
case MS_Minutes:
break;
case MS_Minutes:
- frames = (
nframes
_t) floor (60.0 * _session->frame_rate());
+ frames = (
framecnt
_t) floor (60.0 * _session->frame_rate());
break;
case MS_Seconds:
frames = _session->frame_rate();
break;
case MS_Seconds:
frames = _session->frame_rate();
@@
-1395,10
+1394,10
@@
AudioClock::get_frames (Field field,nframes_t pos,int dir)
return frames;
}
return frames;
}
-
nframe
s_t
-AudioClock::current_time (
nframe
s_t pos) const
+
framepo
s_t
+AudioClock::current_time (
framepo
s_t pos) const
{
{
-
nframe
s_t ret = 0;
+
framepo
s_t ret = 0;
switch (_mode) {
case Timecode:
switch (_mode) {
case Timecode:
@@
-1423,10
+1422,10
@@
AudioClock::current_time (nframes_t pos) const
return ret;
}
return ret;
}
-
nframe
s_t
-AudioClock::current_duration (
nframe
s_t pos) const
+
framepo
s_t
+AudioClock::current_duration (
framepo
s_t pos) const
{
{
-
nframe
s_t ret = 0;
+
framepo
s_t ret = 0;
switch (_mode) {
case Timecode:
switch (_mode) {
case Timecode:
@@
-1490,7
+1489,7
@@
AudioClock::timecode_sanitize_display()
}
}
}
}
-
nframe
s_t
+
framepo
s_t
AudioClock::timecode_frame_from_display () const
{
if (_session == 0) {
AudioClock::timecode_frame_from_display () const
{
if (_session == 0) {
@@
-1883,7
+1882,7
@@
AudioClock::timecode_frame_from_display () const
return sample;
}
return sample;
}
-
nframe
s_t
+
framepo
s_t
AudioClock::minsec_frame_from_display () const
{
if (_session == 0) {
AudioClock::minsec_frame_from_display () const
{
if (_session == 0) {
@@
-1894,13
+1893,13
@@
AudioClock::minsec_frame_from_display () const
int mins = atoi (ms_minutes_label.get_text());
float secs = atof (ms_seconds_label.get_text());
int mins = atoi (ms_minutes_label.get_text());
float secs = atof (ms_seconds_label.get_text());
-
nframes
_t sr = _session->frame_rate();
+
framecnt
_t sr = _session->frame_rate();
- return (
nframe
s_t) floor ((hrs * 60.0f * 60.0f * sr) + (mins * 60.0f * sr) + (secs * sr));
+ return (
framepo
s_t) floor ((hrs * 60.0f * 60.0f * sr) + (mins * 60.0f * sr) + (secs * sr));
}
}
-
nframe
s_t
-AudioClock::bbt_frame_from_display (
nframe
s_t pos) const
+
framepo
s_t
+AudioClock::bbt_frame_from_display (
framepo
s_t pos) const
{
if (_session == 0) {
error << "AudioClock::current_time() called with BBT mode but without session!" << endmsg;
{
if (_session == 0) {
error << "AudioClock::current_time() called with BBT mode but without session!" << endmsg;
@@
-1919,21
+1918,19
@@
AudioClock::bbt_frame_from_display (nframes_t pos) const
any.bbt.beats++;
}
any.bbt.beats++;
}
- nframes_t ret = _session->convert_to_frames_at (pos, any);
-
- return ret;
+ return _session->convert_to_frames_at (pos, any);
}
}
-
nframe
s_t
-AudioClock::bbt_frame_duration_from_display (
nframe
s_t pos) const
+
framepo
s_t
+AudioClock::bbt_frame_duration_from_display (
framepo
s_t pos) const
{
if (_session == 0) {
error << "AudioClock::current_time() called with BBT mode but without session!" << endmsg;
return 0;
}
{
if (_session == 0) {
error << "AudioClock::current_time() called with BBT mode but without session!" << endmsg;
return 0;
}
- BBT_Time bbt;
+
Timecode::
BBT_Time bbt;
bbt.bars = atoi (bars_label.get_text());
bbt.bars = atoi (bars_label.get_text());
@@
-1943,10
+1940,10
@@
AudioClock::bbt_frame_duration_from_display (nframes_t pos) const
return _session->tempo_map().bbt_duration_at(pos,bbt,1);
}
return _session->tempo_map().bbt_duration_at(pos,bbt,1);
}
-
nframe
s_t
+
framepo
s_t
AudioClock::audio_frame_from_display () const
{
AudioClock::audio_frame_from_display () const
{
- return (
nframe
s_t) atoi (audio_frames_label.get_text());
+ return (
framepo
s_t) atoi (audio_frames_label.get_text());
}
void
}
void