Opa, @JoshBass , tudo tranquilo?
Então, vou te trazer em exemplo, mas só funciona usando no x11, não funciona no Wayland (O Linux Mint tá rodando x11 preferencialmente, por enquanto, pode ser uma opção de sistema pra você se não conseguir resolver o problema em outros):
Ao usar o comando xrandr você deve obter um resultado parecido com isso aqui:
Screen 0: minimum 320 x 200, current 5120 x 1440, maximum 16384 x 16384
DisplayPort-0 connected 2560x1440+2560+0 (normal left inverted right x axis y axis) 597mm x 336mm
2560x1440 59.95*+ 155.00 120.05 96.02 72.01 60.01 50.00 48.01 143.91 120.00
1920x1200 59.95
1920x1080 120.00 119.88 60.00 60.00 50.00 59.94
1600x1200 59.95
1280x1440 59.91
1680x1050 59.95
1280x1024 75.02 60.02
1440x900 59.95
1280x800 59.95
DisplayPort-1 connected primary 2560x1440+0+0 (normal left inverted right x axis y axis) 597mm x 336mm
2560x1440 59.95*+ 155.00 120.05 96.02 72.01 60.01 50.00 48.01 143.91 120.00
1920x1200 59.95
1920x1080 120.00 119.88 60.00 60.00 50.00 59.94
1600x1200 59.95
1280x1440 59.91
1680x1050 59.95
1280x1024 75.02 60.02
1440x900 59.95
1280x800 59.95
Como você pode ver não existe o modo 1280x720 nativamente, vamos criar esse modo:
Primeiro digite:
cvt 1280 720 60
Isso vai retornar uma linha começando com Modeline. Copie tudo após o termo “Modeline” e copie após xrandr --newmode.
# 1280x720 59.86 Hz (CVT 0.92M9) hsync: 44.77 kHz; pclk: 74.50 MHz
Modeline "1280x720_60.00" 74.50 1280 1344 1472 1664 720 723 728 748 -hsync +vsync
O comando para criar o novo modo 720p, nesse caso, fica assim:
xrandr --newmode "1280x720_60.00" 74.50 1280 1344 1472 1664 720 723 728 748 -hsync +vsync
Agora vamos adicionar o modo criado as duas saídas:
xrandr --addmode DisplayPort-0 1280x720 && xrandr --addmode DisplayPort-1 1280x720
E por ultimo espelhar:
xrandr --output DisplayPort-0 --mode 1280x720 --output DisplayPort-1 --mode 1280x720 --same-as DisplayPort-0
Ai você tem que adequar o comando a sua realidade, substituindo os valores nos comandos.
Pode ser que o sistema que você esteja usando não esteja usando x11, nesse caso os comandos podem não dar certo.
Se você tiver feito com sucesso o que te expliquei acima e não quer ter que fazer isso toda vez que inicia o sistema, você vai precisar de um script.
Vou te mostrar um exemplo de script pra você não ter que fazer tudo isso toda hora que iniciar o sistema substitua os comandos com as informações da suas telas do jeito que te mostrei:
#!/usr/bin/env bash
# Cria o modo 720p
xrandr --newmode [tudo que está depois de modeline no resultado do comando cvt 1280 720 60]
# Adiciona às saídas
xrandr --addmode [nome-da-saida-do-monitor] 1280x720_60.00
xrandr --addmode [nome-da-saida-da-tv] 1280x720_60.00
# Aplica o espelhamento
xrandr --output [nome-da-saida-do-monitor] --mode 1280x720_60.00 --output [nome-da-saida-da-tv] --mode 1280x720_60.00 --same-as [nome-da-saida-do-monitor]
Faça as modificações no script, salve o script, dê permissão de execução chmod +x nome_do_seu_script.she adicione o script nos aplicativos de inicialização
Respondendo a sua pergunta:
O Windows provavelmente gerência de outra forma. Ele é muito agressivo ao usar o escalonador interno da placa de vídeo. Ele frequentemente renderiza a imagem em uma resolução (ex: 1280x720) e faz o “esticamento” ou “encolhimento” digital (Upscaling/Downscaling) para que o sinal caiba no monitor, mesmo que o monitor reclame que aquela não é sua resolução nativa.
No linux usando o x11 isso é diferente. O sistema é honesto com você e não joga a responsabilidade diretamente pra placa de video pra ser feito upscaling ele espera que você diga pra ele que quer essa opção (é isso o que você ta fazendo nesses comandos) “Eu sei que este monitor não diz que suporta 720p, mas crie essa opção para mim mesmo assim”.