INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Thoughts on Per Song DSP  (Read 8121 times)

blgentry

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 8014
Thoughts on Per Song DSP
« on: December 03, 2015, 10:26:27 am »

Following the discussion here, I started thinking about what I think most people expect and want from per song DSP.  I think it boils down to wanting to ADD some DSP settings to the existing settings.  Generally speaking, this is probably equalization.  Most commonly for older songs that seem like they need bass boost or other tweaking.

A good number of people that use MC apply various types of DSP as a normal part of listening.  Not because they want to alter the sound, but because this makes the baseline of their system work.  Examples include crossovers, channel reassignments, and permanent speaker correction equalization.  These people would want all of these settings to stay in place while doing per song DSP.  They would want the per song DSP added on top of the existing DSP settings.

To use a pro audio analogy, these MC customers use the DSP as their "house EQ" to make the system work properly.  The per song DSP is equivalent to tweaking a second 1/3 octave racked EQ to compensate for something in the song, or the band, etc.  Everything else stays the same:  Only the EQ gets tweaked.

So what makes sense from an MC perspective to try to achieve this goal?  I think a separate bank in the DSP Studio that does Parametric EQ would work for the majority of uses.  Keep all of the existing PEQ and everything else.  Just add one more that gets turned on, with it's OWN preset on a per song basis.  If the song isn't tagged, don't turn it on.  If the song is tagged, turn it on with the named preset.  Easy.

It accomplishes what 99% of people want to do.  It would even allow the poster in the thread referenced above to do his stereo to mono processing on those songs he chose to do so.

Some questions remain of course.  What to do with the existing per song DSP?  There are numerous considerations. 

But what about the main idea I'm presenting here?  Does a per song bank of Parametric EQ make sense?  Are there any big shortcomings?  Is it better or worse than the existing system?  Is it difficult or time consuming to implement?  Would people use it?

Brian.
Logged

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Logged

mwillems

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5234
  • "Linux Merit Badge" Recipient
Re: Thoughts on Per Song DSP
« Reply #2 on: December 03, 2015, 12:48:08 pm »

I mostly agree, but I think a more robust "remembering" of old settings would probably solve the problem in a more generalizable way.  I think having a default EQ that untagged files return to on a per zone basis would solve a lot of the issues that people have.  

A lot of folks on the forum have balked when they realize that they'll lose all their existing settings unless they save them as a preset and then add a default tag to 100% of their files.  I think most of those people were expecting the per track DSP to turn on for that track and then turn back off once the track ended, not to replace the default settings permanently.

Add to that the zone issues: for example, I can't actually use the feature at the moment because I have a few zones with different output formats and EQ settings for different roles (audio vice video, etc.); if I tried to use the current feature it would wind up nuking one or more of my zones because the EQ applied by the per track changes overwrites whatever your current settings are.

The recommended solution (create a default preset and tag all files with that preset, and then branch out to other presets) is onerous for a non-power user.  But even for power users, it doesn't really solve the zone issue, because when you have more than one zone, files can't have multiple default EQ tags so one or more of your zones will get overwritten eventually.  

So even if I was willing to add a default tag to every file in my connection, it would still nuke my zones.
Logged

RD James

  • Citizen of the Universe
  • *****
  • Posts: 1871
Re: Thoughts on Per Song DSP
« Reply #3 on: December 03, 2015, 01:43:13 pm »

I think there are three changes that would fix presets.
1 - Save the full dsp state before loading a preset and restore it when the track changes.
2 - Or revert to the default preset for that zone if one exists. That would let you make temporary changes that reset when the file changes.
3 - I think the only thing that wouldn't nuke zones is the suggestion in this topic http://yabb.jriver.com/interact/index.php?topic=91072.msg629787
When you save a preset it gives you a list of what plug-ins to include instead of saving the state of all plug-ins.
Then you can create a preset which only does one thing like set a track to mono playback without also changing the zone to 5.1 96kHz or whatever.
Logged

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Thoughts on Per Song DSP
« Reply #4 on: December 03, 2015, 02:13:07 pm »

Does a per song bank of Parametric EQ make sense? Yes
Are there any big shortcomings? Not really
Is it better or worse than the existing system? Better, but don't get rid of the existing.
Is it difficult or time consuming to implement? It is very easy (just guessing  ;D)
Would people use it? Yes
Can it be selected in an app? Great idea!

I really think being able to assign a Zone to a DSP Preset takes care of a lot of issues and doesn't require a separate Equalizer DSP that is assignable on top of existing DSP.

Problem: Files might need different DSP per Zone.
Solution for developers:
  • Add a Zone dropdown to the DSP Preset to allow assigning a single Zone to a Preset.
  • Allow the DSP Tag to have multiple DSP Presets

Problem:  Files without DSP tags use the last DSP in use.
Solution for developers:  If a file has nothing in the DSP tag, use the DSP Preset with the name Default assigned to the Zone in use, otherwise use last DSP in use.

Problem:
How do I know which Preset I like best for a song? What if my mood changes or I'm testing Convolution filters?
Solution for developers:  Allow DSP presets to be selected in JRemote. If one selects the DSP button, the list of Presets assigned to that zone appear. One can select them and switch back and forth on the fly. One doesn't even need to use the DSP tag and can manually make selections to Playing Now. If one likes a certain Preset, they should be able to assign to the song in the app.


Example - DSP Presets saved as:
Default assigned to Zone 1, Default assigned to Zone 2, Default assigned to Zone 3
EQ1 assigned to Zone 1, EQ2 assigned to Zone 1, EQ3 assigned to Zone 3 (note: EQ1 & EQ3 could be identical, but are saved separately since they are assigned to different Zones)

File A has a DSP tag of EQ1;EQ3
File B has a DSP tag of EQ2
File C has no DSP tag

When File A is played in Zone 1, EQ1 will be used
When File A is played in Zone 2, the Zone 2 Default is used
When File A is played in Zone 3, EQ3 will be used

When File B is played in Zone 1, EQ2 will be used
When File B is played in Zone 2, the Zone 2 Default is used
When File B is played in Zone 3, the Zone 3 Default is used

When File C is played in any zone, that Zone's Default is used, otherwise the last DSP used will stay applied.

DSP Presets would be used in order they are assigned to a song - similar to how ZoneSwitch rules currently apply.

This method doesn't force anyone to create Default DSP Presets. They can keep using the existing system without doing anything. It adds additional functionality to those that need/want it.
Logged

mattkhan

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4226
Re: Thoughts on Per Song DSP
« Reply #5 on: December 03, 2015, 02:52:17 pm »

I think mojave's suggestions sound v sensible and they sound like they would cover what I would use this feature for.

I do have a couple of other, slightly abstract and mildly tangential, thoughts though....

Firstly, and most fundamentally, I think the conversation should not be able "how can we implement this" but should be about "what do I want to do with this", aka use cases. What do people want to do with DSP presets? Collecting those requirements in 1 thread would probably be v useful in making demand for the feature clear.

Secondly, and somewhat tangentially, I think that adding a feature that makes one want to create more DSP configurations without making DSP configurations much easier to manage is a UX fail. I would say this covers 2 main features, one is a way to import/export externalised configuration (e.g. a plain text descriptor) and the other is the ability to manage the configurations outside of an active zone (though the latter can be hacked by creating a test zone to manage the configuration).

To take my own medicine on the 1st point, my main use case for this is applying bass eq configurations. This means a PEQ bank that is track and zone specific combined with zone default configurations (and a remote based ability to switch them if I want to override).
Logged

RD James

  • Citizen of the Universe
  • *****
  • Posts: 1871
Re: Thoughts on Per Song DSP
« Reply #6 on: December 03, 2015, 04:51:12 pm »

That sounds complicated and restrictive.
There are three ways that I would like to use dsp.

1 - Tag a file to fix something wrong with it. Make an album mono. Apply a specific EQ tweak to an album. Invert the phase of one channel in a video. Swap the stereo channels to fix a video.
2 - Switch the default state of a zone. Select a speaker preset or a specific preset for each of my headphones. This involves switching VSTs on or off, changing the state of VSTs depending on the headphone, and applying a specific EQ curve for a specific headphone. Quickly enable or disable adaptive volume, separately from any of that. These ones would show in a drop-down list next to the shuffle/repeat buttons.
3 - Make temporary changes for the currently playing file. Sometimes I am listening to a podcast or watching a video and need to make quick changes for it to sound good. I don't plan on keeping this file or saving the changes to a preset, and would like it to return to the defaults for the zone when playback stops.

For this to work presets have to act on specific plugins and not the entire state of dsp studio.
No preset should store the state of output format because that is 5.1 in one zone, 2.0 in others, upsampled in one zone, converted to DSD in another. That applies to a lot of plugins.
Logged

blgentry

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 8014
Re: Thoughts on Per Song DSP
« Reply #7 on: December 04, 2015, 10:56:29 am »

Reading through this, I've got a conclusion or two and some questions.

I think it's fair to say that everyone here wants some sort of extra PEQ (or regular EQ) that can be turned on with a present name.  Whether this be to tweak on the fly or save on a per song basis. 

This is especially important for people that use PEQ for crossover and other "system level" functions.  It's rather awkward to try to save the system configuration and then add EQ or PEQ on top of that to tweak a particular song.

Questions about zones:  Do you guys actually want to be able to apply song specific PEQ that is DIFFERENT in each zone?  For example, bass boost in one zone, but treble shelving in another zone?  On a PER SONG basis?  I'm trying to imagine how this would be used.  It seems way overly tweaky, but maybe there are good reasons I'm not thinking of.  Seems like it would be really hard to manage from an end user perspective.

There are some interesting ideas here, but many are in a different scope than I was asking about.  Does anyone else think the original idea of a separate bank of PEQ that turns on and off on a per song basis is valuable?

Brian.
Logged

Arindelle

  • Citizen of the Universe
  • *****
  • Posts: 2772
Re: Thoughts on Per Song DSP
« Reply #8 on: December 04, 2015, 12:24:15 pm »

There are some interesting ideas here, but many are in a different scope than I was asking about.  Does anyone else think the original idea of a separate bank of PEQ that turns on and off on a per song basis is valuable?

Brian.
Frankly I have never really understood about the per song basis. This might or might not be easy to implement for the devs. I don't know. But to implement for the users? Assuming there is a metadata trigger, just getting it tagged for large libraries with 100K+ tracks sounds daunting to say the least. I can see why this might be more necessary for video playback though. Maybe even by album if you really want to mess with the original sound, but per track ? Maybe because they want it automated. Maybe for the DJs amongst us, or for parties.

I can see reasons to be able to switch zones on the fly though .. often I start playing music and actually want it played back in another zone with different dsps - usually for playlists. So short of having tons of zone switch rules, it would be nice to be able to use the "send to" tool which would stop or clear the last zone, and start playing in another one, sort of a compromise from on-the fly changes. In that way you wouldn't have to change the default state of the zone, you'd just change the zone easier than you can right now. separate zones replace eq presets in that way.

I'm sure I'm missing something though  :)
Logged

RD James

  • Citizen of the Universe
  • *****
  • Posts: 1871
Re: Thoughts on Per Song DSP
« Reply #9 on: December 04, 2015, 01:13:54 pm »

Questions about zones:  Do you guys actually want to be able to apply song specific PEQ that is DIFFERENT in each zone?  For example, bass boost in one zone, but treble shelving in another zone?  On a PER SONG basis?  I'm trying to imagine how this would be used.  It seems way overly tweaky, but maybe there are good reasons I'm not thinking of.  Seems like it would be really hard to manage from an end user perspective.
Can't think of a good reason for anyone to do that.
Zone presets (quick access menu) should be for things like speaker or headphone calibrations, or things like turning night mode on/off.
File presets (tags) should be for applying more permanent file-specific fixes like making an album mono or swapping the channels in a video or applying an EQ.

Restricting file presets to only the Parametric EQ would be quite limiting though.
A better solution would be to ask what plug-ins get saved when creating a new profile.
Then any profile could change the state of one plug-in, many plug-ins, or all plug-ins.
Logged

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Thoughts on Per Song DSP
« Reply #10 on: December 04, 2015, 01:20:54 pm »

Frankly I have never really understood about the per song basis. This might or might not be easy to implement for the devs. I don't know. But to implement for the users?
You are missing that it is already implemented.  ;)

The current implementation saves the entire DSP chain and applies a DSP Preset to tagged songs and stays in effect until a song with a different DSP tag is played. This means you have to tag your entire collection to use the feature since there is no default DSP for untagged songs.

Brian is requesting that a new PEQ DSP be added that is only applied to tagged files and won't permanently change the rest of the DSP settings. I think it is a great idea. However, I don't really do per song EQ changes and want greater flexibility. That is why I gave a couple suggestions that make it work (in my mind) for a lot more use cases.

Questions about zones:  Do you guys actually want to be able to apply song specific PEQ that is DIFFERENT in each zone?  For example, bass boost in one zone, but treble shelving in another zone?  On a PER SONG basis?  I'm trying to imagine how this would be used.  It seems way overly tweaky, but maybe there are good reasons I'm not thinking of.  Seems like it would be really hard to manage from an end user perspective.
It always amazes me how people end up using features in JRiver that don't really correspond with the original intent. Zones and ZoneSwitch became became useful for both different physical zones (different DAC, different room, etc.) and different types of content (music, movies, concerts, etc.). I believe the original discussion on Zones was more related to different rooms in the house.

I don't really want song specific PEQ that is different in each Zone. However, I do want a playlist that has file specific DSP. Currently I have zones for the following:  stereo music, multi-channel music, movies, concerts, and tv. Each of these has different bass management, channel outputs, JRSS, PEQ, etc. If I want a Playlist to have 5 stereo songs, 2 concert songs particles, and 3 multi-channel songs, with the DSP I desire, I can't currently do it unless I use the DSP tag. However, now if I play a song with a DSP tag it messes other things up in a zone and won't put the Zone back where it should be when playback stops.

Some might want to use the Room Correction DSP more than the PEQ:  you can adjust crossovers (both frequency and slope), bass levels,  and channel levels. For some movies I like the surrounds a little louder.

At Rocky Mountain Audio Fest, some of the concert Blu-rays sounded better with the two-channel PCM track upmixed to 5.1 with JRSS than using the original 5.1 DTS-HD track. Who wants to hear the drums from the rear right surround? This is another example of needing a per file DSP tag, but not related to PEQ.
Logged

Arindelle

  • Citizen of the Universe
  • *****
  • Posts: 2772
Re: Thoughts on Per Song DSP
« Reply #11 on: December 04, 2015, 01:27:06 pm »

@Mojave

Thanks for the clarification .. yes I can see how what you suggest be interesting to people ... its just the "per song" tagging that I have issues with .. not having a default for non-tagged files really makes it a gadget for me. So sure all makes sense now. :)
Logged

blgentry

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 8014
Re: Thoughts on Per Song DSP
« Reply #12 on: December 08, 2015, 11:00:07 am »

I don't really want song specific PEQ that is different in each Zone. However, I do want a playlist that has file specific DSP. Currently I have zones for the following:  stereo music, multi-channel music, movies, concerts, and tv. Each of these has different bass management, channel outputs, JRSS, PEQ, etc. If I want a Playlist to have 5 stereo songs, 2 concert songs particles, and 3 multi-channel songs, with the DSP I desire, I can't currently do it unless I use the DSP tag. However, now if I play a song with a DSP tag it messes other things up in a zone and won't put the Zone back where it should be when playback stops.

My proposed new PEQ bank that switches on and off per song, with presets, would make this scenario work correctly for you, right?

Quote
Some might want to use the Room Correction DSP more than the PEQ:  you can adjust crossovers (both frequency and slope), bass levels,  and channel levels. For some movies I like the surrounds a little louder.

At Rocky Mountain Audio Fest, some of the concert Blu-rays sounded better with the two-channel PCM track upmixed to 5.1 with JRSS than using the original 5.1 DTS-HD track. Who wants to hear the drums from the rear right surround? This is another example of needing a per file DSP tag, but not related to PEQ.

I see both of these points.  They seem like something that wouldn't be done nearly as often as the base case of just wanting to do a little EQ on a song.  I feel like adding a PEQ bank would be not all that hard for the JRiver team.  But when we start talking about some mechanism for turning on an off several banks (like room correction for example), things get more complicated.  Would you have *two* room correction banks?  One main and one that is per song?  What about everything else?

This is why I've suggested just the single PEQ bank; it's simple.  It doesn't cover everything.  Not even close.  But it covers a lot of cases that I think people would like to use.  Then again, I started this thread with this idea, so I might be just a LITTLE bit biased.  :) :)

Brian.
Logged
Pages: [1]   Go Up