Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] - Problema com a leitura de imagens na tela do OBS Studio para Tibia Global #82

Open
agtsl1 opened this issue Jul 24, 2023 · 2 comments
Labels
bug Something isn't working

Comments

@agtsl1
Copy link

agtsl1 commented Jul 24, 2023

Descrição do problema:

Estou tentando ler imagens Tibia Global no OBS Studio usando seu script do Python. No entanto, estou encontrando dificuldades, pois o código não consegue encontrar as imagens que preciso, no entanto no otserver funciona normalmente.

Informações adicionais:

Tentei várias abordagens, incluindo a utilização das bibliotecas win32gui, win32ui, ctypes, PIL, cv2, numpy, dxcam, pyautogui. No entanto, nenhuma dessas abordagens resultou em uma solução funcional, tentei modificar a transparência do tibia para 1 que no caso na teoria resolveria o problema, mas mesmo assim não deu, também modifquei alguns códigos para o projetor em janela do obs para ver se resolvia e também não mudou nada. Fiz inúmeros testes e ele não conseguiu ler a tela do tibia ou do obs, em alguns teste ele até conseguia ler a tela do obs utilizando o win32ui mas não conseguia executar os comandos na janela do tibia.

Anexos:

Tentei mudar para o projetor em janela para ver se ajudava:

def getTibiaWindows(self):
def enum_windows_callback(hwnd, results):
if win32gui.IsWindowVisible(hwnd):
window_title = win32gui.GetWindowText(hwnd)
if re.match(r"Projetor em janela (fonte) - tibia.*", window_title):
results.append(window_title)
results = []
win32gui.EnumWindows(enum_windows_callback, results)
return results

    def setTibiaWindowMiddleware(context: Context) -> Context:
if context['window'] is None:
    windowsList: list = []
    win32gui.EnumWindows(
        lambda hwnd, param: param.append(hwnd), windowsList)
    windowsNames = list(
        map(lambda hwnd: win32gui.GetWindowText(hwnd), windowsList))
    regex = re.compile(r'Projetor em janela \(fonte\) - tibia')
    windowsFilter = list(
        filter(lambda windowName: regex.match(windowName), windowsNames))
    if len(windowsFilter) > 0:
        context['window'] = gw.getWindowsWithTitle(windowsFilter[0])[0]
return context
@agtsl1 agtsl1 added the bug Something isn't working label Jul 24, 2023
@agtsl1
Copy link
Author

agtsl1 commented Jul 24, 2023

@lucasmonstrox

@thiagoretes
Copy link

Tenta utilizar a versão 24~26 do OBS e vê se resolve. Aqui sempre que atualizo o OBS tenho que instalar a versão 24 denovo pra funcionar.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants