ImaginarySense / Imaginary-Teleprompter

Easy to use, free software, teleprompter app.
http://imaginary.tech/teleprompter
GNU General Public License v3.0
258 stars 51 forks source link

MacBook Pro M1 Max and External Monitor not matching #111

Open pjbarbour opened 2 years ago

pjbarbour commented 2 years ago

I have a MacBook Pro M1 Max that I'm using with a Ikan monitor, similar to this:

https://www.bhphotovideo.com/c/product/1405110-REG/ikan_pt17_hb_17_high_bright_teleprompter.html?ap=y&smp=y

I can't get the text for the teleprompter to match on both screens. And I don't have the ability to change resolutions on the MacBook Pro. Any advice?

Cuperino commented 2 years ago

When prompter instances fail to sync it is usually because font detail is rendered differently different font sizes, causing one or more words to sometimes wrap around to the next line, breaking with the premise that each prompter instance displays a prompt with text of the same relative proportions.

Although you can't strictly change the laptop screen resolution on Monterrey, you can configure scaling, which in fact changes the effective resolution in the eyes of software like Imaginary Teleprompter. The first thing I'd recommend you do is increase your Ikan monitor to its highest supported resolution. Follow that with setting the M1 Max to its "Larger Text" scale setting, which will reduce its effective resolution.

If that isn't doesn't bring the absolute text sizes close enough to solve the issue, try playing with the "Font size" and "Width" settings in Imaginary Teleprompter. This will make the words place into different positions. The chance of having the same words always wrap around into the next line are, so you should be able to find a good setting with this workaround.

Unfortunately this is not an issue that can be fixed in Imaginary Teleprompter, as it stems from an architectural limitation of how prompter instances are rendered and synchronized. QPrompt, my new teleprompter software, avoids this issue in its entirety by rendering only one prompter instance and making exact copies of it for use in other screens. This approach is much more expensive on the CPU than Imaginary Teleprompter's, but it ensures this issue can never occur with QPrompt.