Real-time filter / layer style plugin

Is it possible at all to write a filter plugin that gets applied in real-time, as the user draws on a layer?
I'm thinking of something similar to layer styles (such as drop shadow) that get applied immediately while the user is drawing on a canvas. As far as I can see there is no API to add new filter styles, but maybe there is a workaround to achieve a similar behavior using filters?
I want to create a simple mirror filter/style that mirrors the right-hand side of a layer onto the left-hand side as the user draws on a layer, because this would be very useful for sketching symmetric structures.
Or could this be achieved by using multiple layers? E.g. Layer 2 sitting on top of Layer 1, where the right half of Layer 2 is fully transparent and the left half of Layer 2 contains a mirrored version of Layer 1? But then how could one continuously update Layer 2 while the user is drawing on Layer 1?
Any help appreciated!

You can do that within your plugin, like Liquify does.
But, as explained in the SDK, you cannot write a plugin that does live updates on the document or adds to layer styles.
As for symmetric painting - that is already available in Photoshop Extended using 3D texture mapping.

Similar Messages

  • Accesing layer styles from a filter plugin

    It's possibile to acces a layer style (ex. drop shadow) from a filter plugin?

    Yes, from an automation plugin you can get the parameters to the layer styles. On the layer object (descriptor) there is a keyLayerEffects, classLayerFXVisible object (descriptor). That has objects (descriptors) such as keyInnerGlow or keyInnerShadow. Build the Getter plug-in and install it. Make your file with your layer effects. Then run getter from the File > Automate > Getter menu and you will get a Getter.log file on your desktop that shows all the things available in your document. Remember that the Getter code is reusing the Listener code so there is a bit more work for using the Getter output. All the ->Put* routines need to be converted to ->Get* routines and you need to invert the order of the calls. Here is some code that I just did this exercise on, in JavaScript, but you should get the idea. This code gets all the brush toolPresets and sees if the Preset I'm looking for is present. You can find the 'keys' in the PITerminology.h and PISTringTerminology.h files in your SDK. 'capp' is classApplication for example. You would want 'Lyr ' for classLayer.
    // find if the following brush is loaded
    FindBrushPresetByName( "foo" ).toString() + " : " + FindBrushPresetByName( "Restore Brush - PA" ).toString();
    function FindBrushPresetByName( brushPresetName ) {
         var ref = new ActionReference();
         var presetManagerStrID = stringIDToTypeID( 'presetManager');
         ref.putProperty( charIDToTypeID( 'Prpr' ), presetManagerStrID );
         ref.putEnumerated( charIDToTypeID( 'capp' ), charIDToTypeID( 'Ordn' ), charIDToTypeID( 'Trgt' ) );
         var desc = executeActionGet( ref );
         if ( desc.count > 0 && desc.hasKey( presetManagerStrID ) ) {
              var list = desc.getList( presetManagerStrID );
              var toolPresetClassID = stringIDToTypeID( 'toolPreset' );
              for ( var i = 0; i < list.count; i++ ) {
                   var listType = list.getObjectType( i );
                   if ( listType == toolPresetClassID ) {
                        var toolDescObj = list.getObjectValue( i );
                        var keyName = charIDToTypeID( 'Nm  ' );
                        if ( toolDescObj.count > 0 && toolDescObj.hasKey( keyName ) ) {
                             var toolNameList = toolDescObj.getList( keyName );
                             for ( var ii = 0; ii < toolNameList.count; ii++ ) {
                                  var toolName = toolNameList.getString( ii );
                                  if ( toolName == brushPresetName ) {
                                       return true;
         return false;
     

  • How can I change a Mixer filter in real-time? (11.5)

    Hi all,
    I'm currently coding (or trying to code) an interactive soundboard that users can play with in their software. They can turn inputs on and off, increase the volume, change the EQ, etc. The nice is, and I was really pleased to discover this, Director already has a feature called an 'Audio Mixer' that has filters to satisfy all these functionalities! The bad thing, I can't figure out how to change these filters in real time.
    For example, here's the code to MUTE a specific mixer (activated when the user toggles a button):
    member("channelOneMix").mute()
    But how do I tell it go INTO that mixer, find the existing High Pass Filter, and change the value of that High Pass Filter's 'highCutOffFreq' property? It's a classic case of knowing exactly what I need to tell the code to do, but I have no idea of the SYNTAX of actually telling it to do that.
    I hate to be 'that guy', but it is somewhat urgent. This is for a college assignment due Wednesday (yikes!). I didn't quite know what I was getting myself into with this code, but the end is in sight if I can figure out how to write this particular code.
    Many gratuitous thanks in advance for any assistance!
    PS: It won't be enough to simply add a new filter to the list. The user needs to be able to turn a dial up or down to increase or decrease the High Pass Filter, in conjunction with several other dials manipulating other filters. I need to be able to actually change what the filter's value is.

    Thanks for your help!
    The problem is that I think that I changed the "default" name for the state where the photos were taken. I have 50 differents locations, that are all correct, and photo per photo, I can modify the original location, but only at "local" level.
    How can I change the name displayed in State section as "Casa David i Mireia" for "Catalunya" that is the real name for the State where the photos where taken?
    I don't if this post is comprehensive. I'm not sure.
    Thanks for your time!
    Jordi

  • Filter Effect and Layer Style in the same layer vs separate layers

    I'm adjusting a photographic image and am using both a filter effect and a layer style in the same layer on a Smart Object.  I want to separate the two effects into two layers, so one layer has the filter effect (Nik) and one layer has the layer style (Color Overlay) (with the goal of merging/rasterizing the Nik filter effect with the Smart Object but keeping the layer style unmerged).  I can make two layers and move one effect without problem, but the visual result of each effect on a separate layer is quite different from having both effects in the same layer.   The Blend Mode for all my layers is Normal.  Within the Color Overlay panel, the blend mode is Linear Burn.
    I don't understand why the visual result is different.  I'm not an advanced user of Photoshop, so maybe I'm missing something.  This is a trial of CS6 that I'm using.
    Layer 1: a layer style and a filter effect, stacked
    looks very different from....
    Layer 2:  a layer style
    Layer 1:  a filter effect

    If you want two separate layers, then on the duplicate layer with the Color Overlay layer style you might try different layer blending modes.
    For example, below looks the same having the Color Overlay with linear burn on the second layer and changing the layers blend mode to Hue.
    You could also put the layer in a group and apply the layer style to the group.
    (i deleted the previous post because of pilot error)
    Message was edited by: R_Kelly

  • Acrobat Plugin Can be involved in Real-time processing

    Hi,
    I am implementing an acrobat plug-in solution for color separation and generation of PRN file for the given PDF file.
    Is the Plugin Architecture is good for the real time processing and RIPPIng?  I have a doubt like the Acrobat Process
    is involved in exectuing the each and every plugin HFT functions, is that would be fine for my plug-in to respond
    in realtime?
    Please suggest me.
    Thanks & Regards,
    Abdul Rasheed.

    First and foremost, Acrobat can NOT be used on a server, right?  So this is going to be a user-invoked process, correct?
    Beyond that, what do you thin would be a problem?
    From: Adobe Forums <[email protected]<mailto:[email protected]>>
    Reply-To: "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>>
    Date: Wed, 21 Sep 2011 07:29:28 -0700
    To: Leonard Rosenthol <[email protected]<mailto:[email protected]>>
    Subject: Acrobat Plugin Can be involved in Real-time processing
    Acrobat Plugin Can be involved in Real-time processing
    created by skrasheed<http://forums.adobe.com/people/skrasheed> in Acrobat SDK - View the full discussion<http://forums.adobe.com/message/3929688#3929688

  • My layer styles filter stopped working?

    out of the blue, my layer styles have stopped working --- can't stroke, emboss, drop shadow anything. instead i get a "could not complete your request because of a program error" message.
    what's going on?
    i recently installed Alien Skin's Snap Art 3, but uninstalling the program has had no effect?
    (btw, running windows 7, CS6)
    Message was edited by: studiorobb

    The first thing i would try is resetting the photoshop cs6 preferences:
    http://tv.adobe.com/watch/the-complete-picture-with-julieanne-kost/how-to-reset-photoshop- cs6s-preferences-file/

  • I get "overLIB 4.10 or later is required for the CSS Style Plugin" every time I open certain sites, could you tell me what I need to do for this? Thank you.

    I get "overLIB 4.10 or later is required for the CSS Style Plugin" on certain websites, could you please advice me as to what to do to stop this window from popping up?
    Thank you

    Troubleshooting Plugins
    https://support.mozilla.com/en-US/kb/Troubleshooting%20plugins
    Check and tell if its working.

  • Separate layer styles panel

    Hey all.
    I was wondering if anyone knoew of an extension/plugin for Photoshop which essentially mimics the "Attributes" panel in Illustrator, but showing all the layer styles applied (or not applied) to a selected layer.
    Currently, we need to select the layer and 'open' the layer styles options to see/edit them. Having to open/close these for each layer can get tedious, so I was thinking a separate panel which simply showed the same info as the open/close options would be handy to have open at all times.
    I'm 99.9% sure PShop can't do this on it's own, and wanted to know if anyone knew of an extension/plugin that does this. I haven't been able to find one anywhere online.
    Thanks for any info!

    Hello everyone ...
    So, the Reset button in the Layer Styles panel never reset the default settings. But after trying several times I was able to manually enter the settings I thought I recalled being the default settings and then clicked on the Make Default button which finally worked.

  • Real-time control of properties

    I'm poking around for a way to manually control a property of a layer in real-time, like you might do with pitch, playback speed, and volume on a MIDI controller.  Ideally, I'd like for AfterEffects to capture the changes as keyframes, or something like that.  I'd love to be able to drag a scrubber, or draw on a canvas with a stylus, and have AE translate those real-time movements into changes in clip properties.
    I don't have a lot of experience with expressions, but I know how to write code.  I think, with some research, I can get this to happen by using the Write-On effect, drawing on a canvas with the stylus, and then linking various properties to the X and Y coordinates of the brush.  This is a decent partial solution -- at least I could capture organic movement and apply it to these properties, so I wasn't so hung up working with curves and Eases and quirky intermediate keyframes.
    But it would be awesome if there was a plugin... or some precedent technique or expression... that would let me preview the clip in real time at a low resolution, and then use the stylus or mouse to capture movement as I watched.  It would be a great tool for syncing certain properties to a soundtrack, creating complex and organic animations, stuff like that.  I'd love to be able to do this with the TimeWarp property, and preview it as I went along.
    "Changing properties" and "Controlling behavior" plus "Real-time" didn't come up with anything relevant, either here or in Google.  Anyone have any leads as to how this type of thing might be achieved?

    As Mylenium says, Motion Sketch is one way. There are also some specific features that have this kind of thing built in, like sketching with the Puppet tools and recording paint strokes.

  • I'm trying to install a layer style (.asl) in photoshop cc 2014 and I get the error message 'Could not place the document 'filename.asl' because no parser or file format can open the file.' Any suggestions?

    I get the same error when trying the same thing with the default styles, so it's not the file.

    So, if you click on one on of the layer style sets already on the list, such as Text Effects 2, you get the same message?
    Which version of mac os x are you using?
    Did you upgrade your mac os with photoshop cc 2014 already installed?
    Do you have the lastest version of photoshop cc 2014, which should be 2014.2.1
    (listed at the top of Help>System Info from within photoshop)
    Do you see the same layer styles as shown above on your list?
    Have you moved/copied any plugins from an earlier version of photoshop to the photoshop cc 2014 plugins folder?
    The layer styles shown on the list above are the styles that ship with cc 2014 and should be in
    /Applications/Adobe Photoshop CC 2014/Presets/Styles
    (the mac applications folder where all the other mac applications are installed)
    You might try resetting the preferences, but you might need to uninstall photoshop cc 2014 and then reinstall.
    (don't drag the cc 2014 to the trash, but use the Uninstall Adobe Photoshop CC 2014 in the photoshop cc 2014 application folder)
    To reset the preferences
    Press and hold down the Shift+Command+Option keys while starting photoshop cc 2014
    Keep holding the keys down until you get a dialog asking if you want to delete the adobe photoshop settings file
    Press Yes

  • InDesign auto-size frame feature not working in real time in InCopy why?

    We have just recently migrated from InCopy CS4 to CS6 to take advantage of the new features like the auto resize frame option, however it now seems that this feature is not working in real-time.
    Basically the steps are needed to be complete before it auto-resizes the frame in InCopy, we use both layout and assignment based workflows:
    1. From an ID document ('doc1'), exported a 'layer' to IC, certain frames are set to auto-size in height using the text frame options. So that editorial can review and make changes to text and the frame should resize according to the specifications set. IC stories are saved to a folder located in a content folder inside the top issue working folder.
    2. Editorial opens the IC software, then opens the ID 'doc1'. Check’s out correct .icml file and makes edits to frame with auto resize.
    3. Frame does not resize according to text frame set options and InCopy file does not respond in same fashion as InDesign.
    4. Change only occurs when InCopy file is closed and updated in InDesign, which is frustrating as this feature would save huge amounts of time serving editorial requests.
    Has anybody experienced this type of workflow problem? If anyone can provide mw with some pointers as to what can I do to get this to update in real time perhaps run a script? Update file in InCopy and refresh I will very much appreciate their assistance. I have run out of ideas.
    Thanks!

    We've had all sorts of problems with this feature as it should've worked straight out of the box but after some testing we have found that its something to do with the way you open the actual file in InCopy. Which is far from ideal and should have been UAT by Adobe before release.
    This will not work consistently work if you open the designed .indd or .icma file in InCopy using the file open command within the application.
    If you need this to work, the InCopy user has to open the .indd or .icma file by dragging and droping from OS windows explorer into InCopy, we use Windows 7 acrros all the teams. Check out .icml files add text changes to the set auto resized frames, this process will expand/collapse the frames to fit the content but as you have to use the drag and drop method to open the .indd and .icma file, 2 users cannot access the same time doc at the same time (a serious flaw in the programming architecture!) which stops people working in parallel. Save changes, check in .icml content and close .indd or .icma.
    However the flaw comes in if you then open the .indd and .icma file in InCopy using the file open command within the application, before an InDesign user opens and saves the file (updates the design). The corrections added in the previous stage above, will not show the frames expanded/collapsed to take in the added text and instead show over matter???? The only way around this is to ask an InDesign user to open, update and save the design that way the InCopy user will see the same result no matter what file open method they use.
    Another suggestion is to design the page to have some of the auto resize frames anchored within main body of text and that way the frames will expland/collapse when checking out and editing the content. However, this does cause issues with InDesign crashing etc. so we have tried to stop this method within the working group.
    Have you experienced other more serious issues with InDesign crashing consistently when re-importing .icml files? See other forums here:
    http://forums.adobe.com/thread/671820?start=80&tstart=0
    http://forums.adobe.com/message/5045608#5045608
    As far as we can see this is a major flaw in how the application(s) work, we have an enterprise agreement with Adobe and purchase a large volume of Adobe products globally but so far the technical support team are unable to find a solution to this and I'm not hopeful of any resolution soon even with the new release of Adobe CC.

  • Buliding real-time relationships between fields

    Hello,
    we're looking for a solution about building real-time realtionships in MDM 5.5. So, based on the selection in field A I would like to narrow the values in field B, which depend on field A - all this should happen "real-time".
    Maybe an example will help best for this issue:
    I have a table countries, which lists all the counties in Europe and another one containing the country/states relationship. So, the "simple" problem is, that, based on the selection in  the "country" field, I would like to display just the states belonging to that particular country - and not all the countries/states of Europe.
    I think, that MDM has to send a request to the database to update the "states" field. But this is, in my opinion, not possible during the process of data administration.
    Has anybody an idea what could be a good solution for this?
    Thanks for the replies,
    Andreas

    Andreas,
    If you are trying to filter by using the Seatch pane in Data Manager, then whatever Jorge has explained works perfectly fine.
    But, if you are talking about the two fields and automatic population in the drop downs based on the first field selection, then this can not be done as of now using MDM Data Manager.
    If you are not refering to the above two scenarios but something else, then please let us know.
    Regards,
    Rajani Kumar

  • How to copy data from a Input query to real time Infocube

    Hi All, I need some help on IP related stuff. The details are as below:
    I am using two real time infocubes and one Multiprovider on them.
    First Infocube u2018PRODUCTu2019  with the following Objects:
    Product Group ,Product,Region ,Fiscal Year , Fiscal Year Varient ,0currency
    Gross Sales
    Second Infocube u2018C_PRODUCT u2018 with the following Objects:
    Product Group ,Product,Region ,Fiscal Year , Fiscal Year Varient ,0currency
    Gross Sales and Forecast Sales
    ( u2018Forecast Salesu2019 in the extra object in the second Infocube. Remaining objects are same in the both the cubes)
    First Infocube  u2018Productu2019 has data but the second cube does not have any data.
    I have created a Multiprovider ZMulti and in that I have included these two cubes. On this Multi Provider, I have created a Aggrigation Level(The details of the aggregation level is provided in the next page).
    On this Aggrigation level  I have built a Input Query by which I run the report.
    (In the Rows area, I have taken Product Group, Product, Region and Fical year.
    In the Key Figure section, I have taken Gross Sales and Forecast Sales( which is part of the second Infocube C_Product). These two Key Figures are made Input as Input ready. And the Query is Input ready query. In the Filter, I have taken Fiscal Year Variant. )
    Data available in the first cube and no data currently in the second cube. Now executed the report and report displayed information from the first cube.
    EX:
    Product     Product     Region          Year     Gross Sales     Forecast Sales
    Group
    PG01           Beer           North           2008            10000           u2026u2026u2026
    PG01           Beer          South          2008          20000           u2026u2026u2026
    PG01          Beer          East          2008          15000           u2026u2026u2026
    The second column is empty and there is no data for the Forecast sales Key Figure in the column.
    Things look OK till the above.
    Now based on the Gross Sales, I am entering  forecast Sales values and I need to save the entire record to the second cube.
    For this in the report, I have given the Forecast sales values in the second column and right clicked the mouse and form the menu which I got, selected the u2018SAVEu2019 Option to save the data. For some time, I can see u2018Processingu2019 message and later values at u2018Forecast Salesu2019 are disappearing.
    Data is not saving to the cube second cube.
    ====================================================
    Am I missing any thing?
    In the Query, Do I need to provide InfoProvider and restrict it to specific value?
    In the query, Do I need to include, 0currency object?
    Could you please guide me on this?
    =============================================
    Details of the Aggrigation level.
                I have created an Aggrigation Level ZAL_Prod  on MultiProvider.
                Selected all the objects and activated.
                In the Filter, I have taken 0Fiscal Year Variant  and saved it.

    Restrict Forecast sales to the Plan cube in the Query.
    that should fix it.

  • RAM Previews No Longer Real Time

    Work computer.   Mid 2010 Mac Pro with 64GB of RAM.  Running After Effects version 11.0.4.2.   Multiprocessing off.   AJA Control Panel v3.
    1920 x 1080 comps, 29.97 fps, no 3D.
    The Mac was running Mountain Lion and RAM previews were FINE.  Zero issues.             Ever.
    The computer was upgraded to Mavericks 10.9.5.      I use the term upgrade loosely, BTW.       Now  ...  RAM previews no longer play in real time.  Most I get - and it fluctuates - is 19, 20, 23 frames per second, never 29.97.    Sometimes it blasts all the way up to 40, 45, 47 like it’s playing catch-up, but that’s rare.
    - Restarted the computer. No change.
    - All projects.   Makes no difference, old legacy projects or new.
    - Even simple 1-layer projects with simple position animation, no effects - not real time.
    - 8 bit mode, not just 16 or 32 bit.
    - Color management both on and off.
    - Simulate output on and off.
    - Preferences -> Video Preview was set to AJA, so I tried Computer Monitor Only.  That doesn’t work either.
    - Full Rez, Half, Quarter. . .. . doesn’t matter.    Never real-time.
    I've seen others ask about this issue but none of the posts ever resulted in "you need to set 'this' to 'that'" etc.        Have any suggestions? 
    Thank you,
    Marc

    Marc Trzepla wrote:
    I am not a programmer but I've always run under the assumption that things "get faster", not slower.  The fact that what once worked flawlessly was crippled by an "upgrade" boggles me.     
    Mavericks and Yosemite have both have quite a number of issues when folks upgrade to them.
    Apple is really starting to bother me lately. First the attitude evident in the Final Cut debacle, then the Mac Pro annoyance, and now the OS upgrade issues... I know smartphones are making them boatloads of money, but they really seem to be neglecting their professional users who've been with them for years before iPhones were even a thing!

  • What is the best way to match clip and sequence settings for real-time editing?

    I am a long time FCP user and trying to make the After Effects workflow a little smoother by utilizing the Adobe suite.
    One of the most valuable things I miss about FCP is that when I drop a clip in a blank sequence (no matter what the settings of the seq) it will ask if I want to match the settings of the clip. This ensures that no rendering is required to quickly edit the video in real-time.
    Is there a plugin or function in Premiere CS4 that I am missing that will afford me this feature? Currently i am doing everything I can to match the clip settings when creating a sequence, but sadly i'm still having to render the timeline to preview the edit.
    lh

    And in CS4, if there is not a matching Preset, you can choose the Desktop Preset, which will allow you to customize nearly every attribute to match your source footage. The name is a bit of a misnomer, but has been around for a long time. I would have called it the "Custom Preset," but Adobe never called.
    Good luck,
    Hunt
    PS - I just learned something new about CS5 from Curt, because of your question - thanks!

Maybe you are looking for