Connexion rapide:  

Forum: VirtualDJ 8.0 Technical Support

Sujet Problems with Visualizations

Ce topic est ancien et peut contenir des informations obselètes ou incorrectes.

I am posting this as there is confusion, bugs, and other problems with audio only visualizations. I would also like to move on and allow TM and TV to run as visualizations which I can do now but seems rather pointless since I don't need to be wasting time with bugs that are caused by VDJ.

o - this first thing is a bug and reported and has received no response - wonderful

http://www.virtualdj.com/forums/193762/VirtualDJ_8_bug-report_Forum/Release_not_called_for_Visualization_effects_in_some_cases.html

o - It is a misconception that audio only visualizations only run when an audio only file is run. They run any time the video window is up. The only thing that can cover it up is a video being run on a deck or an effect run on the master. If a video is run on a deck the audio only visualization is still running underneath eating CPU/GPU cycles.

o - it is probably ok if a visualization is run all the time because start up and shut down may not be as good (maybe). But a visualization effect should know it is being run as a visualization and should do it's processing accordingly. That is, if a video is running it should be smart enough not to display or process anything. So an effect knows when it is run on a master and it knows when it is active but it does not know what the current visualization is thru script as far as I can tell. No script to shut it off, turn it on, or query? At least I don't see it but it may be there somewhere. In other words, an effect needs to know when it is run as an audio only visualization so it can process only when needed. In the cause of TM, I could throw it into a pause mode, fade out or in, and not do any processing until needed. I could also silence audio if not muted already.

o - you can't turn off an audio visualization off easily. You have to go into options and physically delete it and hope it takes. There is no 'none' option in the drop down list for videoAudioOnlyVisualizations. If there is a script way of doing this I don't know what it is because I don't see that in the documentation for script.

o - When an audio only visualization is run, decks become useless for displaying any other effect. Only video on a deck or an effect on the master can overlay an audio only visualization. Would be good if an effect could indicate that it needs the display and to disable the audio only visualization while it is active.

o - Where to place data folders for an effect that may be run as a video effect or as a visualization. Most of the effects do not need this but some do.
 

Posté Wed 08 Oct 14 @ 5:14 am
SBDJPRO Infinity Member since 2006
Don Moir wrote :
o - this first thing is a bug and reported and has received no response - wonderful


I'm sure it will get looked at in due course.

Now you've mentioned it I just tested it and Release was called twice for my test plugin, one for each instance.

Don Moir wrote :
o - It is a misconception that audio only visualizations only run when an audio only file is run. They run any time the video window is up. The only thing that can cover it up is a video being run on a deck or an effect run on the master. If a video is run on a deck the audio only visualization is still running underneath eating CPU/GPU cycles.


I've just tested this in b1960 with a test plugin set as the visualisation for a 2 deck layout:

* Start video engine - plugin starts and OnDraw() is called as required
* Load audio onto deck 1 - OnDraw() still called
* Load audio onto deck 2 - OnDraw() still called
* Load video onto deck 1 - OnDraw() still called
* Load video onto deck 2 - OnStop() called, Release() called
* Load audio onto deck 1 - plugin starts and OnDraw() is called as required

As further verification I tested the current beta version of G-Force which installs as a VDJ8 visualisation and following the same steps you get to see the plugin reinitialize (you see the intro screen) at the last step.

Don Moir wrote :
o - it is probably ok if a visualization is run all the time because start up and shut down may not be as good (maybe). But a visualization effect should know it is being run as a visualization and should do it's processing accordingly. That is, if a video is running it should be smart enough not to display or process anything. So an effect knows when it is run on a master and it knows when it is active but it does not know what the current visualization is thru script as far as I can tell. No script to shut it off, turn it on, or query? At least I don't see it but it may be there somewhere. In other words, an effect needs to know when it is run as an audio only visualization so it can process only when needed. In the cause of TM, I could throw it into a pause mode, fade out or in, and not do any processing until needed. I could also silence audio if not muted already.


As shown above, my test effect was stopped automatically by VDJ when it was no longer required.

Don Moir wrote :
o - you can't turn off an audio visualization off easily. You have to go into options and physically delete it and hope it takes. There is no 'none' option in the drop down list for videoAudioOnlyVisualizations. If there is a script way of doing this I don't know what it is because I don't see that in the documentation for script.


Right click the option and choose the only available menu item 'Reset to default'.

You can do it via script, just like you can with any other option using the 'setting' script command.

Don Moir wrote :
o - When an audio only visualization is run, decks become useless for displaying any other effect. Only video on a deck or an effect on the master can overlay an audio only visualization. Would be good if an effect could indicate that it needs the display and to disable the audio only visualization while it is active.


Video effects can apply to visualisations. When milkdrop is active as the visualisation for example you can use things like negative or spectral. An effect can already disable the visualisation if it desires. If the visualisation is currently on the master rather than a deck then yes, obviously a deck effect won't affect it.

Don Moir wrote :
o - Where to place data folders for an effect that may be run as a video effect or as a visualization. Most of the effects do not need this but some do.


You can place them wherever you like really, but with v8 I would recommend against making subfolders in any of the Plugin subfolders since that's an annoyance.
 

Posté Wed 08 Oct 14 @ 8:27 am
Don Moir wrote :
o - this first thing is a bug and reported and has received no response - wonderful


This is fixed.

Don Moir wrote :
o - It is a misconception that audio only visualizations only run when an audio only file is run. They run any time the video window is up. The only thing that can cover it up is a video being run on a deck or an effect run on the master. If a video is run on a deck the audio only visualization is still running underneath eating CPU/GPU cycles.


SBDJ wrote :
I've just tested this in b1960 with a test plugin set as the visualisation for a 2 deck layout:

* Start video engine - plugin starts and OnDraw() is called as required
* Load audio onto deck 1 - OnDraw() still called
* Load audio onto deck 2 - OnDraw() still called
* Load video onto deck 1 - OnDraw() still called
* Load video onto deck 2 - OnStop() called, Release() called
* Load audio onto deck 1 - plugin starts and OnDraw() is called as required


I set TellyMedia as the audio only visualization using the 'latest' beta. I set it up to play audio so I could hear it. Normally would not make sense playing audio for a visualization but for this test it was convenient.

DId control+V to bring up the video window and TM started playing its audio.

Placed a video file on deck 1 and played it. TM is still playing indicating Stop / Release is not called for the audio only visualization while a video is being played on deck 1. Same thing with milkdrop but could only tell that noting the CPU usage was still up. The video was a simple video with no real CPU impact.

Don Moir wrote :
o - it is probably ok if a visualization is run all the time because start up and shut down may not be as good (maybe). But a visualization effect should know it is being run as a visualization and should do it's processing accordingly. That is, if a video is running it should be smart enough not to display or process anything. So an effect knows when it is run on a master and it knows when it is active but it does not know what the current visualization is thru script as far as I can tell. No script to shut it off, turn it on, or query? At least I don't see it but it may be there somewhere. In other words, an effect needs to know when it is run as an audio only visualization so it can process only when needed. In the cause of TM, I could throw it into a pause mode, fade out or in, and not do any processing until needed. I could also silence audio if not muted already.


SBDJ wrote :
As shown above, my test effect was stopped automatically by VDJ when it was no longer required.


My simpler test showed different. Is it such that any deck that is not playing video means to display the visualization ?

Don Moir wrote :
o - you can't turn off an audio visualization off easily. You have to go into options and physically delete it and hope it takes. There is no 'none' option in the drop down list for videoAudioOnlyVisualizations. If there is a script way of doing this I don't know what it is because I don't see that in the documentation for script.


SBDJ wrote :
Right click the option and choose the only available menu item 'Reset to default'.


Hidden from view at least. Think it would be better to have none as a choice in the drop down menu so it is clearly obvious and for consistency 'none' is a choice elsewhere.

SBDJ wrote :
You can do it via script, just like you can with any other option using the 'setting' script command.


Ok I will play games with setting. All it says in the doc is: "open the configuration window". Too many times I have to hunt and peck what actually works with script. Sometimes it has been a bug in VDJ and sometimes it is me just not knowing.

Don Moir wrote :
o - When an audio only visualization is run, decks become useless for displaying any other effect. Only video on a deck or an effect on the master can overlay an audio only visualization. Would be good if an effect could indicate that it needs the display and to disable the audio only visualization while it is active.


SBDJ wrote :
open Video effects can apply to visualisations. When milkdrop is active as the visualisation for example you can use things like negative or spectral. An effect can already disable the visualisation if it desires. If the visualisation is currently on the master rather than a deck then yes, obviously a deck effect won't affect it.


How do you disable the audio only visualization via script? How do you reference the audio only visualization versus a normal video effect? I have not tried but since you know you can tell me to save time. I guess it might be settings something but who knows, maybe you do :)

Don Moir wrote :
o - Where to place data folders for an effect that may be run as a video effect or as a visualization. Most of the effects do not need this but some do.


SBDJ wrote :
You can place them wherever you like really, but with v8 I would recommend against making subfolders in any of the Plugin subfolders since that's an annoyance.


So a folder off of ../documents/VirtualDJ would be ok then? When I tried this in VDJ7 way back I was told not to do it.

 

Posté Wed 08 Oct 14 @ 11:18 am
SBDJPRO Infinity Member since 2006
Don Moir wrote :
I set TellyMedia as the audio only visualization using the 'latest' beta. I set it up to play audio so I could hear it. Normally would not make sense playing audio for a visualization but for this test it was convenient.

DId control+V to bring up the video window and TM started playing its audio.

Placed a video file on deck 1 and played it. TM is still playing indicating Stop / Release is not called for the audio only visualization while a video is being played on deck 1.


That's because there is no file on deck 2 - if you load a video file on deck 2 then the visualisation should be terminated. As you say further down the thread

Don Moir wrote :
My simpler test showed different. Is it such that any deck that is not playing video means to display the visualization ?


Not 'any deck' but those attached to the video crossfader I believe.

Don Moir wrote :
Think it would be better to have none as a choice in the drop down menu so it is clearly obvious.


I will pass that along :)

Don Moir wrote :
Ok I will play games with setting. All it says in the doc is: "open the configuration window". Too many times I have to hunt an peck what actually works with script. Sometimes it has been a bug in VDJ and sometimes it is me just not knowing.


You're thinking of settings which opens the config window. setting is what you want :)

Don Moir wrote :
How do you disable the audio only visualization via script? How do you reference the audio only visualization versus a normal video effect? I have not tried but since you know you can tell me to save time. I guess it might be settings something but who knows, maybe you do :)


This will do the trick:

setting 'videoAudioOnlyVisualisation' ''


You can also use setting 'videoAudioOnlyVisualisation' with GetStringInfo to get the current vis so you can put it back afterwards.

Don Moir wrote :
So a folder off of ../documents/VirtualDJ would be ok then? When I tried this in VDJ7 way back I was told not to do it.


I don't see a problem personally, but I will double check. You could use a folder in Documents\VirtualDJ\Plugins too I guess.

 

Posté Wed 08 Oct 14 @ 12:02 pm
Ok that clears a lot up. Still it seems goofy to have the audio only vis playing under the video but now I can deal with it as long as in sync with crossfade.

I am not sure if 'setting' is defined in doc anywhere but I take it I am supposed to know by the tooltip that comes up but that says 'settings' :)

And please get back with folder location. I want to give it a permanent home and not have to move it again.

By the way, it may be nice if you could just deactivate the audio visualization and reactivate via script rather then replacing it. This probably does not work since you can't do it from the interface.
 

Posté Wed 08 Oct 14 @ 12:20 pm
PachNPRO InfinityMember since 2009
FYI, if you open the language.xml with an editor you can browse through all available actions ;)

There you will find "settings" and "setting".
 

Posté Thu 09 Oct 14 @ 3:09 am
Thanks PachN.

Just going thru some testing for visualizations and noting that activate on an audio only visualization causes a Stop and then a Start call which is probably a bug or at least someone thought this was convenient. Not a big deal because normally a user is not going to do that so just noting that here. Mostly just causes a flicker but there could be something more do it and just not known right now. I just look at it like a user will do anything they are allowed to do be it correct or not.
 

Posté Thu 09 Oct 14 @ 6:36 am
with nothing playing in VDJ:

ctrl+v starts audio only visualization as expected - can't deactivate as expected but annoying I think. Maybe audio vis should be indicated with color or something else to clearly mark as audio vis in the interface. Maybe it should have its own unique slot.

ctrl+v again to close the video window and visualization is still playing - you can manually deactivate now

So if part of the rules are to display the audio vis when the video window is up it seems it should be turned off when the video window is closed.
 

Posté Thu 09 Oct 14 @ 7:05 am
As far as I can tell, the Visualisations folder does not have a whole lot of meaning except it means to display the effect names in the drop down list for audio only visualizations. Other than that it does not seem to matter if it listed as a VideoEffect or as a Visualization. It does the same thing. I believe the thinking was probably to separate out effects that are actually useful for an audio only visualization. I am not sure if this has helped or added to confusion.

I would go ahead and install TM and TV in the Visualizations folder instead of the VideoEffect folder but since they both run in V7 or V8 it is best I just let them install in the VideoEffect folder as before. You can then copy the dll's to the Visualisations folder if you want in next release. The installer could just install them in each folder. The problem with this is that then you have say a TellyMedia in the VideoEffect folder and a TellyMedia in the Visualisations folder. Since these will come up as unique interfaces you would have 2 interfaces saying TellyMedia. You confused yet :) At any rate I am still looking this over but best thing would be to rename say TellyMedia to TellyMediaVis for example when in vis folder to avoid at least some confusion.

I think you are allowed to copy effects from one folder to another in VDJ interface ( i read it somewhere - did not work for me ) but having effects with same name in 2 different places just adds to confusion from my view point.

If you have the same effect with same name listed in the VideoEffect folder and the Visualisations folder, and it is selected as the audio only vis, the one that will be active is the one in the VideoEffect folder and not the one in the Visualisations folder so this just gets more confusing.
 

Posté Fri 10 Oct 14 @ 5:14 am
The new folder for TellyMediaData will be ..\Plugins\TellyData. If someone has a problem with this let me know. The installer for next versions will resolve all data previously stored in TellyMediaData into TellyData and you should notice no change from that. It will also update any TellyMedia.dll and TellyVisuals.dll that you might have renamed to the new versions. Probably best for me and you is to have a single installer that installs both TM and TV and resolves all references at same time and then deletes the TellyMediaData folder.

The moving of the folder like this is because of the new Visualisations folder ( which is somewhat useless ) and because they list the folder now even if it does not contain a dll. In 7 this did not occur but now you are supposed to be able to copy ( or move ? ) a dll to a folder from VDJ interface I think
 

Posté Fri 10 Oct 14 @ 5:47 am
SBDJPRO Infinity Member since 2006
Don Moir wrote :
As far as I can tell, the Visualisations folder does not have a whole lot of meaning except it means to display the effect names in the drop down list for audio only visualizations.


Correct. IIRC you can actually put almost any type of plugin in almost any plugin folder and it will still work.

Don Moir wrote :
I would go ahead and install TM and TV in the Visualizations folder instead of the VideoEffect folder but since they both run in V7 or V8 it is best I just let them install in the VideoEffect folder as before.


This is why I separated out my v7/v8 milkdrop plugins. The v7 one will refuse to run in v8 and is in the VideoEffect folder, the v8 one obviously won't run in v7 and is in the visualisations folder.

Don Moir wrote :
I think you are allowed to copy effects from one folder to another in VDJ interface ( i read it somewhere - did not work for me )


You can create and copy to subfolders, but only addon effects. Built in effects cannot be moved or removed.

Don Moir wrote :
If you have the same effect with same name listed in the VideoEffect folder and the Visualisations folder, and it is selected as the audio only vis, the one that will be active is the one in the VideoEffect folder and not the one in the Visualisations folder so this just gets more confusing.


Which is why it is best to install only one copy of the effect.

Don Moir wrote :
The new folder for TellyMediaData will be ..\Plugins\TellyData. If someone has a problem with this let me know.


I have no problem with that; it's where I store the milkdrop presets personally.
 

Posté Fri 10 Oct 14 @ 8:25 am
It really does not matter to much because installer can install a renamed file into the Visualisations. I also did not have the luxury of an early beta and inside knowledge to work with and think you initially used VideoEffect as well.

The Visualisation folder probably was not needed and don't think it helps. Nothing is preventing user from making multiple copies with same name in different folders anyway for addons. So then you run into the annoying detail of what actually gets run when using it as audio only vis. Technically does not matter too much but those are run as separate instances. The fact that you can easily copy from one folder to another for addons just adds to it since you then may have instances with same name and a confusion issue maybe. Could use the same data path or different but then user may not know very what stats he is setting for what or what will actually run.

At the very least if a user selects an audio only vis from the visualization list then that should run and not one with the same name elsewhere.
 

Posté Fri 10 Oct 14 @ 9:24 am
I was thinking I could detect when a plugin was running as a visualization and I probably want to do this. Since internally you are not flagged in any way I know of, I was thinking I could check that my plugin came out of the visualization folder and it is selected as the current visualization. Since a user can move an addon anywhere he wants, a visualization can be run that does not come out of the visualization folder even though user selected it out of the visualization list. For example, just copy an effect like milkdrop8 from the visualization folder to the VideoEffect folder or to a VideoEffect subfolder. Have it selected as the audio visualization. It will run from the VideoEffect folder and not the visualization folder.

So you have a name collision here. You allow copy of addons to subfolders which can cause a name collision. You can do it anyway via system interface and does have to be a subfolder. I suppose you could say, "Don't copy audio only vis addons to subfolders unless you change it to a unique name". I am pretty sure you don't want to have to say this :)

Here are a few points about this the way it is right now:

o - be careful of copying an effect that you will be using as an audio only visualization. If you do copy and don't change the name, you will have no idea what one is actually going to run. So if you set some behavior for the one in the visualization folder, the one that actually runs may not be this one and you will not know what is going on. It appears the audio only vis logic picks the first one it comes to in the list of effects with the correct name.

o - seems that a plugin has no real idea if it is being run as an audio only vis or not. ( because you don't know which one run will actually run ). Would be good if it was absolutely known internally that a plugin is being run as an audio vis. The guess work logic won't do it. If there is an absolute way let me know. Looking at your plugin name and looking at the current selected audio only vis won't do it because of name collisions.

o - i have no idea if this will be addressed or we just have to live with it.

o - the visualization folder seems useless to me and all it has done so far is to break backward compatibility and cause confusion. It may be useful if it actually served as a REAL visualization folder. Since the logic for selecting an audio only vis is broken, it has no real purpose.
 

Posté Sat 11 Oct 14 @ 7:45 am


(Les anciens sujets et forums sont automatiquement fermés)