"Scratch" control should correlate to the deck speed at all times

Bug #530281 reported by Sean M. Pappalardo
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Wishlist
Sean M. Pappalardo

Bug Description

It would be ideal if the scratch control would work the same regardless of whether the deck is playing or not. Specifically, can it be the "master control" for a deck such that setting play to 1 merely sets scratch to 1? (and lights the play button, etc.) Right now, we can't slow a playing track below the play speed without stopping it first while simultaneously setting scratch=1, which is a very messy hack. (That's how the SCS.3d's vinyl2 mode works.)
(More info: currently when play==1 and scratch==0, deck speed==pitch. When play==0 and scratch==0, deck speed==0. But when play==1 and scratch==-0.001, speed==-1.001, so there's no way to get deck speed to be -1<speed<1 without first stopping it.)

Related branches

description: updated
Revision history for this message
Albert Santoni (gamegod) wrote : Re: [Bug 530281] [NEW] "Scratch" control should correlate to the deck speed at all times

Yeah, this behaviour sounds like it'd be handy for vinyl control too...

On Mon, Mar 1, 2010 at 12:14 PM, Pegasus <email address hidden> wrote:
> Public bug reported:
>
> It would be ideal if the scratch control would work the same regardless of whether the deck is playing or not. Specifically, can it be the "master control" for a deck such that setting play to 1 merely sets scratch to 1? (and lights the play button, etc.) Right now, we can't slow a playing track below the play speed without stopping it first while simultaneously setting scratch=1, which is a very messy hack. (That's how the SCS.3d's vinyl2 mode works.)
> (More info: currently when play==1 and scratch==0, deck speed==pitch. When play==0 and scratch==0, deck speed==0. But when play==1 and scratch==-0.001, speed==-1.001, so there's no way to get deck speed to be -1<speed<1 without first stopping it.)
>
> ** Affects: mixxx
>     Importance: Wishlist
>         Status: New
>
>
> ** Tags: pitch scratch scratching vinyl
>
> ** Description changed:
>
> - It would be ideal if the scratch control would work the same regardless of if the deck is playing or not. Specifically, can it be the "master control" for a deck such that setting play to 1 merely sets scratch to 1? (and lights the play button, etc.) Right now, we can't slow a playing track below the play speed without stopping it first while simultaneously setting scratch=1, which is a very messy hack. (That's how the SCS.3d's vinyl2 mode works.)
> + It would be ideal if the scratch control would work the same regardless of whether the deck is playing or not. Specifically, can it be the "master control" for a deck such that setting play to 1 merely sets scratch to 1? (and lights the play button, etc.) Right now, we can't slow a playing track below the play speed without stopping it first while simultaneously setting scratch=1, which is a very messy hack. (That's how the SCS.3d's vinyl2 mode works.)
>  (More info: currently when play==1 and scratch==0, deck speed==pitch. When play==0 and scratch==0, deck speed==0. But when play==1 and scratch==-0.001, speed==-1.001, so there's no way to get deck speed to be -1<speed<1 without first stopping it.)
>
> --
> "Scratch" control should correlate to the deck speed at all times
> https://bugs.launchpad.net/bugs/530281
> You received this bug notification because you are a member of Mixxx
> Development Team, which is subscribed to Mixxx.
>

Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

Fix committed in fixes_scratch branch. Vinyl control needs to be adjusted to work with it though.

Changed in mixxx:
assignee: nobody → Pegasus (pegasus-renegadetech)
milestone: none → 1.8.0
status: New → In Progress
Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

Let me explain the fix:

There is now a scratch_enable ControlObject that you set to 1 when you want the scratch CO to override the playback speed, which happens regardless of play status. Then you use the scratch CO to directly manipulate the deck speed. Setting scratch to 0 brings the deck to a stop, as it should. To disable scratching, set scratch_enable to 0. (In 1.7, setting scratch to 0 disabled scratching.) If scratch_enable is 0, changing scratch has no effect.

(So this doesn't work exactly like I proposed in the bug description, but it was more straightforward to code and solves the problem that precipitated this bug report.)

Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

fixes_scratch has been merged to trunk. "scratch" still works as in 1.7, but "scratch2" and "scratch2_enable" implement this new behavior.

Changed in mixxx:
status: In Progress → Fix Committed
RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: Fix Committed → Fix Released
Markus (genauder)
affects: mixxx → herculesstudio (Ubuntu)
Changed in herculesstudio (Ubuntu):
milestone: 1.8.0 → none
Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

If this also affects another project, click "also affects project." Don't change the original project. (Why are you changing this old bug anyway?)

affects: herculesstudio (Ubuntu) → mixxx
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/5350

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.