@foone you might be able to create a userscript for the fedi frontend that you use which grabs the PNG, dumps it into an html canvas, and then exports it as a jpeg, then replaces the file in the file input element with the jpeg. Like a greasemonkey script.
I did this pattern in my own app once, looking back at the code https://git.sequentialread.com/forest/graffiti-app/src/branch/main/static/app.js#1454
I think I ended up nixing the client side conversion to jpeg because it didn't work properly in every browser. Image rotation issues on iOS probably related to apples proprietary photo format
@foone https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/toDataURL. I think this might make a DOM blob instead of a huge string? Or maybe there's a different method that does that, I don't remember and I can't find the old code from my phone rn