lmms icon indicating copy to clipboard operation
lmms copied to clipboard

Better Sample Track support

Open tresf opened this issue 10 years ago • 99 comments

This is a placeholder to consolidate Sample Track related issues and requests. If a new Sample Track bug is reported on the tracker, close it out and mark it as a duplicate of this bug, (#1471)

screen shot 2014-12-20 at 10 15 30 am


Basic Functionality:

  • [x] Pan Sample Track #1080 #1360 (Closed via #1481)
  • [x] Play Sample Track mid-song #131 #2596 (Closed via #3133)
  • [x] FX Mixer Support #133 #1360 #2619 (Closed via #3866)
  • [x] FadeButton LED/Track Indicator #1360
  • [ ] FX Mixer Preset Support #1816
  • [ ] Drag and drop sample support
    • [x] Drag samples to new TCO segments #3228 (Closed via #5043)
    • [x] Drag and drop samples between tracks #881
    • [x] Easier access to built-in samples, probably through drag/drop #4221
    • [ ] Drag samples in from other applications
  • [ ] Fix SampleTrack size in BBEditor #4224

Enhanced Functionality:

  • [ ] Better performance through mapped sample files #4015
  • [ ] Sample caching (Work in progress: #6390)
  • [ ] Sample Track beat-mapping support #756
  • [ ] Static tempo for Sample Track #1161
  • [x] Resize Sample Track from both sides #756, #701 (Closed via #3487)
  • [x] Sample cutting forum/#3330 (Work in progress: #4998)
  • [ ] More AFP-plugin-like features #858
  • [ ] Better wave-editing capabilities #495
  • [ ] Sample Track recording ~~#908~~ ~~#1360~~ #3943 (started in #3947, continued by ~#4531~ #4994)
    • [ ] Audio-input selection #1360 [Milestone: 1.3+]
  • [ ] Sample distinction via naming
  • [ ] Allow visualizing both stereo channels #4598

Professional-Grade Enhancments

  • [ ] Pitch and pitch range support #1471
  • [ ] BPM Mapping (mentioned below in this thread)
  • [x] Colorization support #1360 (Closed via #5573)

Bugs:

  • [x] Sample not in sync with waveform https://github.com/LMMS/lmms/issues/1471#issuecomment-118354809 (Closed via #3133)
  • [x] Sample gets cut off prematurely #2778, https://github.com/LMMS/lmms/issues/1471#issuecomment-118354809 (Fixed in #4991 or #5226)

Related:

  • (none reported yet)

tresf avatar Dec 20 '14 15:12 tresf

Are new issues/requests to be entered in this topic, or entered in their own topic and then mentioned here?

Moth-Tolias avatar Dec 20 '14 20:12 Moth-Tolias

Are new issues/requests to be entered in this topic, or entered in their own topic and then mentioned here?

If it is more than a few words to explain, feel free to open a separate one and crosslink. We can do the rest.

If it's something obvious like "wave graphic drawn incorrectly", then we'll just add a bullet point and move on. Does that sound OK?

Lastly, if you actually have a feature you are working on, please feel free to chime in and we can use a dedicated bug report or the pull request to track progress on that.

-Tres

tresf avatar Dec 20 '14 20:12 tresf

FYI - Pan Sample Track #1080 closed via #1481

tresf avatar Dec 22 '14 04:12 tresf

Would it be possible to do drag and drop of samples between tracks?

liftarn avatar Jan 09 '15 12:01 liftarn

I just don't understand why we have track samples if an AudioFileProcessor is much more versatile and integrates better with the LMMS environment.

Is there any advantage in using a Sample track compared to AudioFileProcessor?

badosu avatar Jan 09 '15 13:01 badosu

Is there any advantage in using a Sample track compared to AudioFileProcessor?

Most people are already using AFP. I think the main advantage is multiple samples per track, which AFP doesn't really allow.

-Tres

tresf avatar Jan 09 '15 13:01 tresf

It's difficult, because today the only kind of sample treatment I am aware of that can be done natively by lmms is using AFP, things like slicing etc...

But these features are somewhat orthogonal with how AFP is designed today.

Maybe Sample Tracks will be useful in the future if we are able to add these features?

badosu avatar Jan 09 '15 13:01 badosu

It's difficult, because today the only kind of sample treatment I am aware of that can be done natively by lmms is using AFP, things like slicing etc...

Right...

Maybe Sample Tracks will be useful in the future if we are able to add these features?

I tend to agree with your original statement... Reuse AFP at all costs. (or subclass it). But that's a very high-level hypothetical wish. I can't speak to the complexity of the implementation.

One thing is that AFP has some features which would almost certainly have to be disabled for SampleTrack, such as loop points, and probably most of the envelope features.

tresf avatar Jan 09 '15 13:01 tresf

Yeah, sorry for digressing a little, I just wanted to understand what is the role of Sample Track on LMMS today. This is relevant to plan how to enhance it.

badosu avatar Jan 09 '15 13:01 badosu

Yeah, sorry for digressing a little, I just wanted to understand what is the role of Sample Track on LMMS today. This is relevant to plan how to enhance it.

Absolutely. I don't see any digressing here. Part of solving a problem is understanding it, and I'm a huge proponent of that! :+1:

When it comes to solving this problem, I think we'll be faced with two approaches (improve SampleTrack versus extend AFP). Since basic wave editing is critical to sample track implementations in all DAWs, I would say AFP is the place to be. :)

tresf avatar Jan 09 '15 14:01 tresf

Of course it is, they are fundamental different, you don't use a Sampletrack for a drum kick, and you don't use AFP for a one minute long audio file.

Speak for yourself please. :wink:

tresf avatar Jan 09 '15 14:01 tresf

I often use sample tracks for beats I have made earlier. It is a bit tedious to copy one beat across an entire track. I tried to use AudioFileProcessor for it, both in piano roll and the beat editor, but I couldn't get them to line up correctly.

liftarn avatar Jan 09 '15 14:01 liftarn

Also Sample Tracks can be used to consolidate(resample) your instruments. You take and Render your CPU-heavy instrument, and import it back as a sample track, thus reducing CPU usage. It'd be wierd to use AFP for that.

Umcaruje avatar Jan 09 '15 14:01 Umcaruje

You take and Render your CPU-heavy instrument, and import it back as a sample track, thus reducing CPU usage. It's be wierd to use AFP for that.

Well, we're talking functionally. AFP can do exactly as you are describing, it just requires the use of a Piano Roll and is limited to a single sample per track. Yes, it is weird, but what you are describing is how I've chosen to use long samples anyway. Without the standard FX assignment, you can't EQ or add compression to lengthy recordings in a Sample Track. SampleTrack is mostly useless for serious compositions.

I think what you are referring to is the Song Editor's UI portion of AFP. Without question that is "weird" to use, but many of us are already doing it today since there is no equivalent functionality in the software. :)

image

tresf avatar Jan 09 '15 15:01 tresf

I think what you are referring to is the Song Editor's UI portion of AFP. Without question that is "weird" to use, but many of us are already doing it today since there is no equivalent functionality in the software. :)

Because of these limits I use AFP too, but @badosu asked about the point of Sample Tracks, so I said what they can be used for :) I hope they will get more features soon and become worthy using, but I agree that in their current state they are mostly useless.

Umcaruje avatar Jan 09 '15 15:01 Umcaruje

but @badosu asked about the point of Sample Tracks

Not trying to nitpick here, but he asked in comparison to AFP. You're example works fine with AFP, minus the weirdness. :turtle:

-Tres

tresf avatar Jan 09 '15 15:01 tresf

It would be easier to understand the difference if you didn't explain how you potentially could use AFP for the same as a Sampletrack with more effort, Tres :)

6 now, have a dozen later, I'm not sure what you are driving at. A feature is a feature. Mind that I also examined the sample track code and tried to fix a few bugs. I'm not firing off a wish list here, this is deductive problem solving and the question "WHY NOT USE AFP INSTEAD" is completely valid. No one is saying "I want AFP functionality in the GUI where Sample Track was, despite it sucking for a Sample Track", so don't think we're trying to candy coat something that doesn't work as the solution for something is broken.

Instead the discussion was a fundamental one about why a completely second plugin is necessary if one can do both functions. Graphically and functionally, we all want a real sample track. No one is trying to cloud that, I just think you're reading a bit into our conversations and trying to prevent a derailment that won't happen. :smiley:

i.e. if AFP is used, it would likely be a dual-functioning plugin. This is how most DAWs do it anyway.

tresf avatar Jan 10 '15 14:01 tresf

Right... He's trying to tackle it from a coding perspective. Something like shortening the sample length for example has already been handled in AFP. So has the chaining of FX effects, pitch support, FX channel assignment, etc. When fixing SampleTrack one must stop and ask "how much effort is worth it when we have most of this code already written".

I would like to see AFP operate in dual mode for this, but that's a tall request to make when I have no intentions of coding it... :smirk:

tresf avatar Jan 10 '15 20:01 tresf

This should be turned into a task list so its easier to mark fixed issues.

Umcaruje avatar Mar 02 '15 17:03 Umcaruje

What about change the name of the track?

image

Do you mean the individual segments?

tresf avatar Mar 03 '15 02:03 tresf

The default name of the track form sample track to audio track like in #1360.

Reaper10 avatar Mar 03 '15 03:03 Reaper10

That's just cosmetic. We could change that any time, but at this point I don't think it adds much value. We have some conversations in other threads about different names for existing components (Song Editor vs. Sequencer, BBEditor vs. Step Editor, etc). Better names is on our radar, but I'm intentionally leaving it off of this bug report. :+1:

tresf avatar Mar 03 '15 03:03 tresf

I saw https://www.youtube.com/watch?v=EPkd-xUTDrU and the function to loop a sample would be very nice to have for pre-recorded drums. It would probably not be enough to just start playing it again after the first iteration is done since they will drift over time so some kind of tempo matching would be needed.

liftarn avatar Mar 05 '15 19:03 liftarn

This is already easily doable in LMMS. You load the sample into an Audio File Processor that is in a Beat/Bass line pattern. You can use the A.F.P. To trim start and stop down to the sample, and then use pitch control for minute playback/pitch adjustments.

Then just drag that B/B track out on the song editor wherever you need it looped.

On Thu, Mar 5, 2015, 1:51 PM liftarn [email protected] wrote:

I saw https://www.youtube.com/watch?v=EPkd-xUTDrU and the function to loop a sample would be very nice to have for pre-recorded drums. It would probably not be enough to just start playing it again after the first iteration is done since they will drift over time so some kind of tempo matching would be needed.

— Reply to this email directly or view it on GitHub https://github.com/LMMS/lmms/issues/1471#issuecomment-77438140.

dednikko avatar Mar 05 '15 20:03 dednikko

You should add a open in AFP in song editor or open in AFP in B&B editor right click options to the Sample Track witch will auto load it into a new AFP in the song editor or open it into a new AFP in B&B editor.

Reaper10 avatar Mar 07 '15 02:03 Reaper10

Using AFP to loop a beat in the Beat/Bass editor would be very nice. Too bad it is near impossible to get a smooth loop. Either it is too long and you get double beats where it overlaps or it's too short so you get a silence at loop points.

liftarn avatar Mar 08 '15 20:03 liftarn

There are some amazing Free/Open Source plugins for sample handling/looping:

  • http://openavproductions.com/luppp/
  • http://drumkv1.sourceforge.net/drumkv1-index.html
  • http://samplv1.sourceforge.net/samplv1-index.html
  • https://objectivewave.wordpress.com/beatslash-lv2/

This requires lv2 support though, which is something I am studying to implement and embed on LMMS.

badosu avatar Mar 10 '15 01:03 badosu

@badosu -those are great links. Should we add them to wiki's useful-resources, eg, do they work as 'stand-alone' ?

musikBear avatar Mar 10 '15 12:03 musikBear

Should we add them to wiki's useful-resources

No until LMMS has lv2 support.

eg, do they work as 'stand-alone'

Some of them do, some not. If you use Jack you can plug Carla and make them work with lmms, see: http://kxstudio.sourceforge.net/Applications:Carla

Never done this though, heard of some people on #lmms that use this.

badosu avatar Mar 10 '15 18:03 badosu

#linuxonly

Sti2nd avatar Mar 10 '15 19:03 Sti2nd