audiogridder icon indicating copy to clipboard operation
audiogridder copied to clipboard

buiding server on linux

Open DCTech-lab opened this issue 3 years ago • 2 comments

DCTech-lab avatar Aug 16 '22 15:08 DCTech-lab

will take a look soonish. cheers.

apohl79 avatar Aug 18 '22 17:08 apohl79

Do you intend to add more to the PR? It is pretty much incomplete (screen capturing, keyboard & mouse support etc) and causes new compiler warnings. If this is really just to make it compile and use the the generic editor for plugins hosted on linux, you should

  • resolve the compiler warnings (I have seen some sign-conversion and c++17 warnings)
  • don't build the server per default on linux
  • run the code formatter (package/format.sh)

thanks for the PR!

apohl79 avatar Aug 19 '22 09:08 apohl79

Hi Apohl,

For native screen capturing, can't we use generic JUCE functions like createComponentSnapshot, as in below code: auto editor = plugin->getActiveEditor(); auto editorRectangle = editor->getBounds(); auto image = editor->createComponentSnapshot(editorRectangle, true); JPEGImageFormat jpegFormat = JPEGImageFormat(); jpegFormat.writeImageToStream(image, socket2Client);

Here we may not have fine control over brightness etc, but that is simple and plateform independent. Actually for linux part i thought to add in that way.

Also we can use generic JUCE key press events instead of plateform specific native code

Thanks,

DC-codes avatar Dec 15 '22 18:12 DC-codes

Hi Apohl,

For native screen capturing, can't we use generic JUCE functions like createComponentSnapshot, as in below code: auto editor = plugin->getActiveEditor(); auto editorRectangle = editor->getBounds(); auto image = editor->createComponentSnapshot(editorRectangle, true); JPEGImageFormat jpegFormat = JPEGImageFormat(); jpegFormat.writeImageToStream(image, socket2Client);

Here we may not have fine control over brightness etc, but that is simple and plateform independent. Actually for linux part i thought to add in that way.

Also we can use generic JUCE key press events instead of plateform specific native code

Thanks,

Hey Durgesh,

this was my very first approach, but the problem is that you can't capture context menus using this approach.

Best, Andreas

apohl79 avatar Dec 16 '22 17:12 apohl79

Fixed the warnings and did a rough implementation of screen capture and mouse / key handling. The changes in server.hpp is to remove conversion warning and was not due to my changes.

Could not test the feature as the plugin (chowmatrix from github) window doesnt show gui and later size becomes zero (though show plugin window button on from window client on reaper works). Needs fixing the plugin window issue first to test the feature. Code compiles and runs fine on windows and linux (xubuntu)

DCTech-lab avatar Jan 09 '23 10:01 DCTech-lab

Sorry for the delay. I just had one question, but I'm going to merge this soon. Thanks for this!

apohl79 avatar Feb 13 '23 16:02 apohl79