Jack transport: new features added #1035

Merged
merged 6 commits into from Jul 24, 2014

Conversation

Projects
None yet
2 participants
@Igevorse
Contributor

Igevorse commented Jul 13, 2014

  1. Jack Transport reposition
  2. Jack Timebase slave
  3. Changed Preferences->I/O UI
  4. Jack restoring audio connections
  5. Jack: changing parameters without driver unload
  6. Bug fixes
mscore/seq.cpp
+ // Update the screen after seeking from the realtime thread
+ if (arg != -1)
+ mscore->currentScoreView()->moveCursor(arg);
+ cs->update();

This comment has been minimized.

@lasconic

lasconic Jul 13, 2014

Member

is cs->update() really needed? on moveCursor(), MuseScore updates the screen for the previous and current position of the cursor, could be enough?

@lasconic

lasconic Jul 13, 2014

Member

is cs->update() really needed? on moveCursor(), MuseScore updates the screen for the previous and current position of the cursor, could be enough?

mscore/seq.cpp
//---------------------------------------------------------
-void Seq::seek(int utick)
+int Seq::seekCommon(int utick, bool canWait)

This comment has been minimized.

@lasconic

lasconic Jul 13, 2014

Member

Can you explain "Common" and "canWait" in the comment of the function?

@lasconic

lasconic Jul 13, 2014

Member

Can you explain "Common" and "canWait" in the comment of the function?

This comment has been minimized.

@Igevorse

Igevorse Jul 14, 2014

Contributor

I removed the second argument to make using seek() more simple. Added description.

@Igevorse

Igevorse Jul 14, 2014

Contributor

I removed the second argument to make using seek() more simple. Added description.

mscore/seq.cpp
+ getAction("play")->setChecked(true);
+ getAction("play")->triggered(true);
+
+ // Fix for the bug with uninitialized guiPos

This comment has been minimized.

@lasconic

lasconic Jul 15, 2014

Member

Which bug? Can you explain exactly in the comment what you are fixing?

@lasconic

lasconic Jul 15, 2014

Member

Which bug? Can you explain exactly in the comment what you are fixing?

mscore/seq.cpp
+ int loopInUtick = cs->repeatList()->tick2utick(cs->loopInTick());
+ _driver->seekTransport(loopInUtick);
+ if (loopInUtick != 0) {
+ int seekto = loopInUtick-2*cs->utime2utick((qreal)_driver->bufferSize() / MScore::sampleRate);

This comment has been minimized.

@lasconic

lasconic Jul 15, 2014

Member

more spaces in this list an the next one (a ? b : c)

@lasconic

lasconic Jul 15, 2014

Member

more spaces in this list an the next one (a ? b : c)

mscore/seq.cpp
inCountIn = false;
+ if (useJackTransportSavedFlag) {

This comment has been minimized.

@lasconic

lasconic Jul 15, 2014

Member

Please explain somewhere what the fake driver is for and how it works.

@lasconic

lasconic Jul 15, 2014

Member

Please explain somewhere what the fake driver is for and how it works.

mscore/seq.cpp
- cs->setPlayPos(cs->repeatList()->utick2tick(utick));
+ int tick = cs->repeatList()->utick2tick(utick);

This comment has been minimized.

@lasconic

lasconic Jul 16, 2014

Member

I believe this is not safe to call from the RT thread. cs->end() will do a screen update.
For the record, cs->setPlayPos is responsible of the warning http://musescore.org/en/node/27721
setPlayPos calls setPos(), which then will emit posChanged. Since we are in a non UI thread, a queue is used to send the signal, and Qt is complaining because it can't put POS in the queue since the type is unknown for the meta type system.

@lasconic

lasconic Jul 16, 2014

Member

I believe this is not safe to call from the RT thread. cs->end() will do a screen update.
For the record, cs->setPlayPos is responsible of the warning http://musescore.org/en/node/27721
setPlayPos calls setPos(), which then will emit posChanged. Since we are in a non UI thread, a queue is used to send the signal, and Qt is complaining because it can't put POS in the queue since the type is unknown for the meta type system.

lasconic added a commit that referenced this pull request Jul 24, 2014

Merge pull request #1035 from Igevorse/jack-transport
Jack transport: new features added

@lasconic lasconic merged commit ba5a316 into musescore:master Jul 24, 2014

1 check passed

continuous-integration/travis-ci The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment