Commit graph

13860 commits

Author SHA1 Message Date
Robin Gareus
2fa1f1b0b3 Remove code related to capture-offset. 2017-09-29 05:03:48 +02:00
Robin Gareus
d98f87d542 No more disk-reader roll-delay
It was not working in sdio/6.0-pre anyway and with upcoming changes to
latency compensation the concept of per disk[stream/reader] will go away.
2017-09-29 05:03:48 +02:00
John Emmas
bcdb3aec3a Check in a few MSVC projects to accommodate the change from libtimecode to libtemporal
This is mostly to see if there'll be any problems when merging these changes into Mixbus. I'm guessing there'll be some conflicts in these projects (and a lot more to follow...)
2017-09-28 12:27:56 +01:00
John Emmas
7f327905a0 Accommodate newly added/removed source(s) in our MSVC project (libwidgets) 2017-09-28 12:27:55 +01:00
John Emmas
b2032938b1 Accommodate newly added/removed source(s) in our MSVC project (libtemporal) 2017-09-28 12:27:54 +01:00
John Emmas
657ba64ad2 Rename 'libs/temporal/MSVCtemporal/timecode.vcproj' to 'libs/temporal/MSVCtemporal/temporal.vcproj' 2017-09-28 12:27:54 +01:00
John Emmas
2750f7f485 Rename 'libs/temporal/MSVCtimecode' to 'libs/temporal/MSVCtemporal' 2017-09-28 12:27:53 +01:00
Robin Gareus
7e2c002ef6 Propagate Latency to backend/system ports (Dummy backend)
amend ab3889ff (which implements this for other backends)
2017-09-28 13:14:11 +02:00
Robin Gareus
b137a2982f Export needs to offset buffers when processing partial cycle 2017-09-26 17:52:43 +02:00
Robin Gareus
a80c8e1bb7 Fix FixedDelayline, default configuration increased set max-delay 2017-09-26 17:52:35 +02:00
Paul Davis
61be0990fa change libtemporal to be versioned like all others 2017-09-25 12:13:54 -04:00
Paul Davis
dcb55c508e additional changes to follow library name change from timecode -> temporal 2017-09-25 12:13:54 -04:00
Robin Gareus
f27ff4c8b8 Retire ClickBox + AutoSpin
After over 17 years of honorable service to the Ardour Codebase.
ClickBox and AutoSpin are retiring into the git nirvana.

We're glad for the duty, decency, reliability, dignity, respect which
these classes brought to Arodur and look back in gratitude on their years
of service.



PS. First one to say "cruft" will be fired.
2017-09-25 15:45:27 +02:00
Julien "_FrnchFrgg_" RIVAUD
74c986534b Simplify the logic of on_scroll_event 2017-09-24 22:58:59 +02:00
Julien "_FrnchFrgg_" RIVAUD
564fcb2132 Make ArdourFader's scroll handler obey to Alignment increments
Currently, the scroll handler obeys to the page increment, but instead
of using the step increment for more precise scroll, it uses an
hardcoded one tenth of the page increment.

Use the step increment instead since it has been filled with sensible
values by ArdourFader's users.
2017-09-24 22:58:59 +02:00
Paul Davis
b9c6ffac21 fix header order and space alignment 2017-09-24 12:57:27 -04:00
Paul Davis
7db12f6b12 convert codebase to use Temporal for various time types 2017-09-24 12:03:54 -04:00
Paul Davis
9283bee867 new header file for audio-based time types 2017-09-24 12:03:13 -04:00
Paul Davis
48d402c960 part two of initial libtemporal creation 2017-09-24 10:48:00 -04:00
Paul Davis
b62c305f20 change libtimecode to libtemporal, add Evoral::Beats, positional types and superclock headers 2017-09-24 10:47:28 -04:00
Robin Gareus
39fb5762b0 Add API set bar-controller spinbox digits
..and reduce default to 4 digits.
2017-09-23 19:39:36 +02:00
Robin Gareus
a9c8a25fc4 prefer floor() over round(), this avoids "-0"
GUI interface values are always in the range 0..1 so there's no abiguity
with trunc()
2017-09-23 18:59:39 +02:00
Robin Gareus
d50c738203 NO-OP: whitespace 2017-09-23 02:31:52 +02:00
Robin Gareus
94cce9e06e Fix changing playlist (Track is responsible for signal emission) 2017-09-23 02:31:00 +02:00
Robin Gareus
e39a8b90d9 amend ab3889ff: portaudio backend uses a vector for connections 2017-09-23 01:06:10 +02:00
Robin Gareus
13cf4da011 Consolidate check for internal/non-removable processors 2017-09-23 00:34:01 +02:00
Robin Gareus
ab3889fff8 Propagate Latency to backend/system ports
Set accumulated capture-latency for physical-outputs
and accumulated playback-latency for physical-inputs
after Ardour is done setting all non-physical port latencies.

This will be needed for latency-compensation of the complete graph.
2017-09-23 00:34:01 +02:00
Robin Gareus
25f45022db Fix order of [initial] latency-computation
Session::post_playback_latency() sets the actual route latency,
so that playback latency notifications need to come after capture-
latency (backends follow the same rule: capture first).


NB. Session::initialize_latencies() was already using the correct order
2017-09-23 00:34:01 +02:00
Robin Gareus
c681e9d4d7 NO-OP: whitespace 2017-09-23 00:34:01 +02:00
Robin Gareus
aac8040e95 Enforce disk-reader to be after the disk-writer
If disk-monitoring is disabled: disk-reader position is not relevant.
If Rec-arm is off: disk-writer position is not relevant.

But...

   Play -> [plugins] -> Record

is basically a bounce and best done using the bounce operation.
(faster than realtime).

   Input + Play -> Record -> Output

Ardour would need to align playback with the Input to be recorded
and at the same time align it with output, so that a player can play
along on the same track. That's not possible without a time-machine (or
a 2nd play processor).

While it can work in theory under some special circumstances, allowing
the disk-reader before the disk-writer is really just confusing,
error prone and valid uses cases are better handled by dedicated
operations.
2017-09-22 03:47:38 +02:00
Robin Gareus
431b2f15c6 NO-OP: whitespace 2017-09-22 01:52:48 +02:00
Robin Gareus
7a51d8f768 AlignmentChoise is a Track Property
The DiskWriter uses AlignStyle which is set dynamically
by the Track and may depend on I/O connections.
2017-09-22 01:52:37 +02:00
Robin Gareus
506a29e2d3 Don't recurse into MacVST bundle-folders during plugin-scan 2017-09-21 20:02:11 +02:00
Robin Gareus
4e5423b348 fix clang compilation (include header ordering)
"i18n.h" needs to be included last, after types have been defined or
clang bails out:
"call to function 'operator<<' is not visible in the template definition"
2017-09-21 19:38:13 +02:00
Robin Gareus
87f5cd30d1 Fix crash when unloading a partially loaded session. 2017-09-21 17:35:52 +02:00
Robin Gareus
0fd861d8de s/created with/modified with/
Once a session has been saved by a more recent version or a different
variant, the session file is tied to that version/variant.

The created-with version is only for debug purposes and internal use.
2017-09-21 02:01:12 +02:00
Paul Davis
7d559de3d0 fix boolean logic for roll_delay vs. disk_samples_to_consume 2017-09-19 21:39:46 -04:00
Paul Davis
0a4b9ffba5 do not advance DiskReader's idea of playback_sample while waiting for _roll_delay to expire 2017-09-19 21:38:59 -04:00
Paul Davis
bda2e9738f clearer catastrophic error message, rather than assert() 2017-09-19 21:38:59 -04:00
Paul Davis
48d11000e5 attempt to fix roll delay logic by moving it into DiskReader (the only place it matters) 2017-09-19 18:53:27 -04:00
Robin Gareus
59ccf91eea Revert some more frame/sample API issues 2017-09-19 18:40:29 +02:00
Paul Davis
ebf6856579 Revert "remove unusued roll_delay member of DiskReader"
This reverts commit 92c2e06eb72950f91ca943a5219e2caeaeecda9f.
2017-09-19 11:15:22 -04:00
Paul Davis
e44ae422eb remove unusued roll_delay member of DiskReader 2017-09-19 11:15:22 -04:00
Robin Gareus
21aa2f529f Fix nightly typos'n'thinkos: initial-delay calculation 2017-09-19 17:03:28 +02:00
R. Mattes
f7e35024b6 Fixed typo 2017-09-19 08:34:04 -04:00
John Emmas
2c31867c8a Accommodate newly added/removed source(s) in our MSVC project (libardour) 2017-09-19 12:22:06 +01:00
Robin Gareus
16f9f58057 More s/frame/sample/ - fixes unit-test compilation
"frame" in #include file-names was replaced, this actually renames
the files to follow suit.
2017-09-19 05:37:58 +02:00
Robin Gareus
666aa5a557 More Coreaudio SDK fixes, after 30b087ab3 2017-09-19 05:20:05 +02:00
Robin Gareus
29e553ab86 Amend c8a9b28d3 and 40aebce. Fix gain automation edge-cases:
* drop Trim/Fader automation for bypassed processor
* Trim/Fader automation for Busses is always active when rolling
2017-09-19 04:54:42 +02:00
Robin Gareus
1ec471c961 partially revert 30b087ab3, CoreAudio SDK uses "Frames" 2017-09-19 04:47:10 +02:00