1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-03-08 23:45:37 +01:00

MixAndRender returns unique_ptr results (in a std::pair)

This commit is contained in:
Paul Licameli
2016-03-13 03:14:46 -04:00
parent 3015a9c8d9
commit c4fc7e2bf0
4 changed files with 34 additions and 32 deletions

View File

@@ -5607,14 +5607,15 @@ bool AudacityProject::DoEditMetadata
void AudacityProject::HandleMixAndRender(bool toNewTrack)
{
WaveTrack *newLeft = NULL;
WaveTrack *newRight = NULL;
wxGetApp().SetMissingAliasedFileWarningShouldShow(true);
if (::MixAndRender(mTracks, mTrackFactory, mRate, mDefaultFormat, 0.0, 0.0,
&newLeft, &newRight)) {
auto results =
::MixAndRender(mTracks, mTrackFactory, mRate, mDefaultFormat, 0.0, 0.0);
auto &uNewLeft = results.first, &uNewRight = results.second;
const auto newLeft = uNewLeft.get();
const auto newRight = uNewRight.get();
if (newLeft) {
// Remove originals, get stats on what tracks were mixed
TrackListIterator iter(mTracks);
@@ -5644,9 +5645,9 @@ void AudacityProject::HandleMixAndRender(bool toNewTrack)
// Add NEW tracks
mTracks->Add(newLeft);
mTracks->Add(uNewLeft.release());
if (newRight)
mTracks->Add(newRight);
mTracks->Add(uNewRight.release());
// If we're just rendering (not mixing), keep the track name the same
if (selectedCount==1) {