> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dwe.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# dweOS para OBS Studio

> Este guia ajuda você a configurar a transmissão do dweOS para o OBS Studio.

<Warning>
  O dweOS não suporta oficialmente a transmissão para o OBS. As etapas a seguir são apenas para Linux e Windows.
</Warning>

<Steps>
  <Step title="Verifique o dweOS">
    Após seguir a configuração do dweOS, prossiga para as próximas etapas.

    <Note>
      Anote a(s) porta(s) para as quais está sendo feita a transmissão.
    </Note>
  </Step>

  <Step title="Instale o OBS Studio">
    <Card title="Baixar OBS Studio" icon="video" href="https://obsproject.com/">
      Clique aqui para baixar o OBS Studio para desktop no seu laptop/PC.
    </Card>
  </Step>

  <Step title="Instale o GStreamer">
    <Tabs>
      <Tab title="Para Linux">
        No terminal, execute:

        ```sh theme={null}
        sudo apt install gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools                
        ```

        Instale também os cabeçalhos de desenvolvimento para uso de plugins:

        ```sh theme={null}
        sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
        ```
      </Tab>

      <Tab title="Para Windows">
        <Steps>
          <Step title="Instalar o GStreamer">
            <Card title="Baixar o framework GStreamer" icon="stream" href="https://gstreamer.freedesktop.org/download/#windows">
              Clique aqui para baixar o GStreamer para desktop no seu laptop/PC.

              <Note>
                Certifique-se de baixar a versão MinGW e instalar tanto o runtime quanto o development.
              </Note>
            </Card>

            <Tip>
              Na dúvida, instale a versão de 64 bits, pois é a mais comum.
            </Tip>

            <Warning>
              O GStreamer seria instalado automaticamente na unidade D se você tiver mais de uma unidade no seu PC. Você pode alterar para a unidade C ao fazer uma instalação personalizada.

              Se você instalá-lo na unidade D, apenas tenha isso em mente ao configurar as variáveis de ambiente abaixo.
            </Warning>
          </Step>

          <Step title="Configurar variáveis de ambiente">
            <Steps>
              <Step>
                Para acessar as variáveis de ambiente, pressione `Win + R`
              </Step>

              <Step>
                Digite:

                ```
                SystemPropertiesAdvanced
                ```

                e pressione `Enter`
              </Step>

              <Step>
                Clique em `Variáveis de Ambiente...`

                <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/system-properties-dialog.png?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=e43b7911ce525ec2b854c971afa1266b" width="80%" alt="Diálogo de Propriedades do Sistema" data-path="dwe-os/legacy/images/system-properties-dialog.png" />
              </Step>

              <Step>
                Destaque a variável `Path` em `Variáveis de usuário` clicando nela e depois clique em `Editar…` sob a caixa `Variáveis de usuário`.

                <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/environment-variables-dialog.png?s=2d7ac09a6778fd1ceafd7a177335a9eb" width="80%" alt="Diálogo de Variáveis de Ambiente" data-path="dwe-os/legacy/images/environment-variables-dialog.png" />
              </Step>

              <Step>
                Uma nova janela deve aparecer e você deve clicar em `Novo` e adicionar um caminho para a pasta bin à lista. Neste caso, é:

                ```
                C:\gstreamer\1.0\mingw_x86_64\bin
                ```

                O caminho para o seu bin pode variar e pode ser encontrado onde você instalou o GStreamer nas etapas anteriores.

                <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/environment-variables-dialog-2.png?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=84f2d6d273839b4a87e6f3346a66014b" width="80%" alt="Segundo Diálogo de Variáveis de Ambiente" data-path="dwe-os/legacy/images/environment-variables-dialog-2.png" />
              </Step>

              <Step>
                Depois disso, clique em `OK` em ambas as janelas e você deve estar pronto para prosseguir!
              </Step>
            </Steps>
          </Step>

          <Step title="Sucesso!">
            Você agora deve ter o GStreamer configurado e pronto para as próximas etapas!
          </Step>
        </Steps>

        <Tip>
          Para verificar a configuração do GStreamer, abra o `CMD` e execute o seguinte:

          ```sh theme={null}
          gst-launch-1.0 --version
          ```

          Isso deve resultar em uma saída como:

          ```sh theme={null}
          gst-launch-1.0 version 1.16.2
          GStreamer 1.16.2
          https://launchpad.net/distros/ubuntu/+source/gstreamer1.0
          ```
        </Tip>
      </Tab>
    </Tabs>
  </Step>

  <Step title="Instale o plugin OBS GStreamer">
    <Tabs>
      <Tab title="Para Linux">
        <Steps>
          <Step>
            Baixe a última versão do plugin [aqui](https://github.com/fzwoch/obs-gstreamer/releases/).
          </Step>

          <Step>
            Do arquivo `.zip` extraia e localize o arquivo `obs-gstreamer.so` dentro da pasta `linux`.
          </Step>

          <Step>
            Em outro explorador de arquivos, localize a pasta `obs-plugins` ou execute este comando no terminal para obter o caminho:

            ```sh theme={null}
            sudo find /usr/lib -name "obs-plugins" -type d
            ```

            <Tip>
              Isso provavelmente será algo como `/usr/lib/x86../obs-plugins`.
            </Tip>
          </Step>

          <Step>
            Mova o arquivo `.so` para a pasta `obs-plugins` ou, a partir do terminal, execute:

            ```sh theme={null}
            sudo mv ~/Downloads/linux/obs-gstreamer.so /usr/lib/x86_64-linux-gnu/obs-plugins/
            ```

            <Warning>
              Neste caso a localização do meu `obs-gstreamer.so` é `~/Downloads/linux/obs-gstreamer.so`; certifique-se de substituí-la pelo caminho onde você extraiu o arquivo `obs-gstreamer.so`.

              Lembre-se de substituir também o `/usr/lib/x86../obs-plugins` pelo caminho da sua pasta `obs-plugin`.
            </Warning>
          </Step>

          <Step>
            Reinicie o OBS Studio caso ele esteja em execução.
          </Step>
        </Steps>
      </Tab>

      <Tab title="Para Windows">
        <Steps>
          <Step>
            Baixe a última versão do plugin [aqui](https://github.com/fzwoch/obs-gstreamer/releases/).
          </Step>

          <Step>
            Do arquivo `.zip` extraia e localize o arquivo `obs-gstreamer.dll` dentro da pasta `windows`.
          </Step>

          <Step>
            Em outro explorador de arquivos, localize a pasta `obs-plugins\64-bit` (ou o tamanho de bits que você instalou)

            <Tip>
              Isso provavelmente será algo como `C:\Program Files\obs-studio\obs-plugins\64bit`.

              Se você não conseguir encontrá-la, clique com o botão direito no atalho do OBS Studio na área de trabalho ou no Menu Iniciar, selecione `Abrir local do arquivo` e navegue um nível acima até a pasta principal `obs-studio`, onde você encontrará a pasta `obs-plugins`.
            </Tip>
          </Step>

          <Step>
            Mova o arquivo `.dll` para a pasta `obs-plugins\64-bit`.

            <Note>
              O Windows provavelmente pedirá permissão de administrador para mover arquivos para C:\Program Files. Clique em `Continuar` ou `Sim`.
            </Note>
          </Step>

          <Step>
            Reinicie o OBS Studio caso ele esteja em execução.
          </Step>
        </Steps>
      </Tab>
    </Tabs>
  </Step>

  <Step title="Configurar transmissão">
    O processo a partir daqui é praticamente idêntico em todos os sistemas operacionais.

    <Steps>
      <Step>
        No OBS Studio, na aba `Sources`, pressione o botão `+` e adicione uma GStreamer Source.

        <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/add-gstreamer.png?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=39211fa2050be04adcf73369809e8ea8" width="50%" alt="Adicionar GStreamer Source" data-path="dwe-os/legacy/images/add-gstreamer.png" />

        Em `Create new`, dê o nome que quiser e confirme.
      </Step>

      <Step>
        Você será apresentado a uma janela como esta:

        <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/add-gstreamer-code.png?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=e77c79eb26e7664556f14242431dded0" width="80%" alt="Adicionar código GStreamer" data-path="dwe-os/legacy/images/add-gstreamer-code.png" />

        Na entrada `Pipeline`, substitua o código existente por:

        ```sh theme={null}
        udpsrc port=5600 ! application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264 ! rtph264depay ! avdec_h264 output-corrupt=false ! videoconvert ! video.
        ```

        <Warning>
          Substitua o `5600` em `port=5600` pela porta para a qual está sendo feita a transmissão do dweOS 2.
        </Warning>

        <Note>
          O Windows pode apresentar um aviso e, nesse caso, habilite o OBS tanto para redes privadas quanto públicas

          <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/gstreamer-windows-prompt.jpg?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=6319bd32c55564f834fd1c70f9072b67" width="80%" alt="Prompt do Windows para GStreamer" data-path="dwe-os/legacy/images/gstreamer-windows-prompt.jpg" />
        </Note>
      </Step>
    </Steps>
  </Step>

  <Step title="Adicionando transmissões adicionais">
    Se você quiser adicionar mais de uma transmissão, basta repetir a partir da etapa `5`.

    <Warning>
      Lembre-se de substituir o número da porta conforme especificado na etapa anterior!
    </Warning>

    Mais transmissões devem aparecer na janela principal do OBS. Você pode clicar na exibição do vídeo para redimensioná-la à sua preferência.
    Aqui está um exemplo de configuração com 3 exploreHDs!

    <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/gstreamer-setup-example.jpg?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=da82fbd3df7e69a122e13f2bf65a9ae9" alt="Exemplo de configuração do GStreamer" width="1981" height="1128" data-path="dwe-os/legacy/images/gstreamer-setup-example.jpg" />
  </Step>

  <Step title="Otimização">
    Para otimizar a configuração, navegue até `File > Settings > Output`.

    Em Output, defina `Output Mode` como `Advanced` para acessar configurações adicionais.

    Considerando que cada câmera está definida como 10Mb/s como bitrate padrão, o streaming e a gravação devem corresponder a isso. No caso de 3 câmeras, fornecer pelo menos 30Mb/s de bitrate de streaming e gravação deve proporcionar alta qualidade.

    <img src="https://mintcdn.com/deepwaterexplorationinc/NrWVR9Qe6FWmBE6d/dwe-os/legacy/images/obs-settings.jpg?fit=max&auto=format&n=NrWVR9Qe6FWmBE6d&q=85&s=32db2daea921d912b7bdbd778c93f3d0" alt="Configurações do OBS" width="974" height="752" data-path="dwe-os/legacy/images/obs-settings.jpg" />
  </Step>

  <Step title="Sucesso!">
    Maravilhoso! Você agora deve ver as transmissões configuradas com o OBS Studio.
  </Step>
</Steps>

<Warning>
  Aviso: <br />
  Com uma configuração de 3 transmissões, essa configuração dependerá de uma GPU poderosa para reproduzir
  os vídeos suavemente. Descobrimos que o OBS é muito mais intensivo em recursos quando
  comparado ao Discovery. Certifique-se de que seu laptop seja poderoso o suficiente para executá-lo ou
  você pode diminuir a resolução de algumas das transmissões para 720p.
</Warning>
