O que você precisa para executar o Owncast
É impossível dar uma resposta única sobre quais são os requisitos para você executar o Owncast ou quanto custará. É o seu servidor, e cabe a você decidir como configurá-lo e em quais ambientes você opta por executá-lo. Cada ambiente tem diferentes desempenho, preços e recursos.
Conhecimento básico
É muito útil para você entender o básico incluído no streaming de vídeo.
- CPU: Usado para transcodificar o vídeo em várias qualidades para que os espectadores possam assisti-lo em diferentes redes de velocidade.
- Largura de banda da rede: Usado para distribuir o vídeo para seus espectadores.
A contagem de espectadores não impacta o uso da CPU
Sabendo disso, você vê que o uso da CPU é o mesmo, independentemente de quantos espectadores você tem. 0 ou 100, a CPU ainda está realizando o trabalho. Pense nisso como criar um arquivo zip. Se você tem um arquivo de 100MB e o comprime para 70MB, você pode enviar esse arquivo de 70MB para quantas pessoas quiser, sem precisar compactar esse arquivo novamente para cada pessoa. Mas você ainda precisa enviar o arquivo para cada pessoa separadamente, exigindo largura de banda da rede a cada vez que você o enviar. No entanto, se você quiser enviar algumas pessoas uma versão de 70MB e outras uma versão de 50MB, precisará criar dois arquivos separados. Essa versão de 50MB levará mais tempo e usará mais CPU para ser criada, por causa do trabalho adicional que leva para compactar o arquivo mais. O mesmo se aplica ao vídeo. Quanto mais trabalho for necessário para codificar seu vídeo, mais CPU será necessário. Geralmente, quanto mais você precisa reduzir o tamanho e a taxa de bits do seu vídeo, mais CPU será usada. Mas oferecer versões de baixa taxa de bits/qualidade inferior do seu stream é importante para permitir que mais espectadores assistam de todo o mundo, em qualquer tipo de rede.
Sua largura de banda de upload como streamer
Antes que seu servidor possa distribuir vídeo para os espectadores, você precisa enviar seu stream para o servidor. Isso requer largura de banda de upload de onde você estiver transmitindo. Se você está transmitindo a 5000kbps, você precisa de uma velocidade de upload que possa sustentar essa taxa de forma confiável.
Regra geral: Sua velocidade de upload deve ser pelo menos 1.5x a taxa de bits do seu streaming para levar em conta flutuações e sobrecarga. Para um stream de 5000kbps, busque pelo menos 7.5 Mbps de upload.
| Taxa de streaming | Velocidade mínima de upload |
|---|---|
| 2500 kbps | 4 Mbps |
| 4000 kbps | 6 Mbps |
| 5000 kbps | 7.5 Mbps |
| 6000 kbps | 9 Mbps |
| 8000 kbps | 12 Mbps |
Considerações importantes:
- A internet residencial é frequentemente assimétrica: A maioria das conexões residenciais têm download muito mais rápido do que upload. Um plano de "100 Mbps" pode ter apenas 10-20 Mbps de upload. Verifique sua velocidade de upload real em speedtest.net ou similar.
- Conexões compartilhadas: Se outros na sua rede estão usando largura de banda enquanto você transmite, sua largura de banda de upload disponível diminui.
- Use uma conexão com fio: O WiFi adiciona latência e instabilidade. Uma conexão de ethernet com fio ao seu roteador é fortemente recomendada para streaming.
- Isso é separado da largura de banda do servidor: Seu upload leva o stream para o servidor. O servidor então precisa de sua própria largura de banda para distribuir aos espectadores.
Cenário de exemplo
Agora que você entende o básico, vamos usar um exemplo para ilustrar como sua configuração pode impactar os recursos do seu servidor e, mais importante, a experiência dos seus espectadores. É um pouco simplista e os números reais podem variar na vida real, mas pode ajudar a responder à pergunta "aproximadamente quanta largura de banda e CPU o Owncast usará?"
Você configurou sua fonte de transmissão (como OBS) para transmitir para sua instância do Owncast a 5000kbps. Você tem 25 espectadores. 5 deles estão em redes lentas ou móveis, 17 deles têm internet rápida e estável, e 3 deles têm internet rápida na maior parte do tempo, mas a velocidade oscila. Todos os 25 espectadores assistiram a um stream completo que dura duas horas. Você tem um provedor de hospedagem que lhe dá 4TB de largura de banda por mês.
Ofereça uma opção de alta e baixa qualidade
Você decide oferecer tanto uma opção de alta quanto de baixa qualidade, e você define a opção de alta qualidade para 5000kbps e a opção de baixa qualidade para 1500kbps.
Quanta largura de banda é usada em seu servidor para esse stream?
| Taxa de bits | Duração | Espectadores | Total |
|---|---|---|---|
| 0.000625 Gigabytes por segundo (5000kbps) | 7200 segundos | 20 | 90 Gigabytes |
| 0.0001875 Gigabytes por segundo (1500kbps) | 7200 segundos | 5 | 6.75 Gigabytes |
| Total: 96.75 Gigabytes |
Qual é a velocidade máxima da rede que seu servidor precisa?
Seu servidor deve ser capaz de sustentar a taxa de bits combinada para todos os espectadores ao mesmo tempo. Neste cenário: (20 espectadores × 5000kbps) + (5 espectadores × 1500kbps) = 107.5 Mbps. Seu plano de hospedagem precisa suportar pelo menos essa quantidade de saída.
Quanta CPU?
| Qualidade | Uso da CPU |
|---|---|
| 5000kbps | Leve (transcodificação mínima, corresponde à entrada) |
| 1500kbps | Moderado (codificação ativa para reduzir a taxa de bits) |
Como é a experiência do espectador?
| Qualidade | Espectadores | Experiência |
|---|---|---|
| 5000kbps | 20 | Boa |
| 1500kbps | 5 | Boa |
Resultado: Você ofereceu tanto uma opção de alta quanto de baixa qualidade para seus espectadores, para que aqueles com uma rede lenta tenham uma opção, e aqueles com uma rede rápida que podem diminuir periodicamente possam recorrer à qualidade inferior quando necessário. Além disso, neste caso, você economizou quase 16G de tráfego de largura de banda devido à oferta de uma qualidade inferior. Você está usando mais CPU para uma experiência muito melhor. Você seria capaz de transmitir 42 vezes em um mês antes de atingir seu limite de largura de banda.
Ofereça uma única opção de alta qualidade usando a menor quantidade de CPU
Você decidiu que deseja usar o mínimo de CPU possível em seu servidor Owncast, portanto, habilitou o modo "Passagem Direta de Vídeo" como a única saída disponível. Isso significa que o vídeo exato que você está enviando do seu software de transmissão local é o que é enviado para seus espectadores.
Quanta largura de banda é usada em seu servidor para esse stream?
| Taxa de bits | Duração | Espectadores | Total |
|---|---|---|---|
| 0.000625 Gigabytes por segundo (5000kbps) | 7200 segundos | 25 | 112.5 Gigabytes |
Qual é a velocidade máxima da rede que seu servidor precisa?
Todos os 25 espectadores estão recebendo o mesmo stream de 5000kbps: 25 × 5000kbps = 125 Mbps de saída sustentada.
Quanta CPU?
| Qualidade | Uso da CPU |
|---|---|
| 5000kbps | Mínimo (sem transcodificação) |
Como é a experiência do espectador?
| Qualidade | Espectadores | Experiência |
|---|---|---|
| 5000kbps | 17 | Boa |
| 5000kbps | 3 | Ruim |
| 5000kbps | 5 | Inassistível |
Resultado: Você não está usando muita CPU, mas apenas 68% dos seus espectadores estão tendo uma boa experiência. Os outros 32% estão tendo uma má experiência com buffering frequente, e 20% deles não conseguem assistir ao seu stream. Você seria capaz de transmitir 36 vezes em um mês antes de atingir seu limite de largura de banda.
Use um provedor de armazenamento compatível com S3 para largura de banda
Se você tem preocupações sobre seu plano de hospedagem, alocação de largura de banda ou crescimento de visualizações, pode usar um provedor de armazenamento S3 em vez de seu servidor para as responsabilidades de largura de banda. Neste exemplo, você novamente decide oferecer tanto uma opção de alta quanto de baixa qualidade, e define a opção de alta qualidade para 5000kbps e a opção de baixa qualidade para 1500kbps. A CPU utilizada é a mesma do exemplo acima para a opção de alta+baixa qualidade. Saiba mais sobre armazenamento compatível com S3.
Quanta largura de banda é usada em seu servidor para esse stream?
| Taxa de bits | Duração | Total |
|---|---|---|
| 0.000625 Gigabytes por segundo (5000kbps) | 7200 segundos | 4.5 Gigabytes |
| 0.0001875 Gigabytes por segundo (1500kbps) | 7200 segundos | 1.35 Gigabytes |
| Total: 5.85 Gigabytes |
Quanta largura de banda de saída é usada no seu provedor S3 para esse stream?
| Taxa de bits | Duração | Espectadores | Total |
|---|---|---|---|
| 0.000625 Gigabytes por segundo (5000kbps) | 7200 segundos | 20 | 90 Gigabytes |
| 0.0001875 Gigabytes por segundo (1500kbps) | 7200 segundos | 5 | 6.75 Gigabytes |
| Total: 96.75 Gigabytes |
Qual é a velocidade máxima da rede que seu servidor precisa?
Como os espectadores são atendidos a partir do S3, seu servidor não envia vídeo para os espectadores. Ele só precisa de largura de banda de saída suficiente para enviar uma cópia de cada stream de qualidade para o S3: 5000kbps + 1500kbps = 6500kbps = 6.5 Mbps. Isso permanece o mesmo, independentemente de você ter 0 espectadores ou 1.000. Your S3 provider handles the viewer-facing throughput, which in this scenario peaks at 107.5 Mbps, but that is their infrastructure, not yours.
Resultado: Você forneceu opções de qualidade alta e baixa para seus espectadores, para que aqueles com uma rede lenta tenham uma opção, e aqueles com uma rede rápida que pode desacelerar periodicamente possam entrar na qualidade baixa quando necessário. No entanto, essas qualidades de vídeo não estão sendo servidas a partir do seu servidor Owncast, mas sim de um provedor de armazenamento externo compatível com S3. Isso permite aumentar sua audiência e adicionar qualidades de vídeo adicionais sem se preocupar em esgotar a alocação de largura de banda do seu servidor. Você poderá transmitir 24 horas por dia, 7 dias por semana, sem se preocupar usando essa configuração, no entanto você usaria a mesma quantidade de largura de banda do seu servidor se tivesse zero espectadores ou 100 espectadores. O uso da sua CPU seria o mesmo como se você estivesse servindo o vídeo diretamente do seu servidor.
Referência Rápida
Quanto de largura de banda o Owncast usará?
Fórmula: (bitrate em kbps × duração em segundos × espectadores) ÷ 8.000.000 = GB
Estimativas rápidas para uma transmissão de 2 horas:
| Taxa de bits | 10 espectadores | 25 espectadores | 50 espectadores |
|---|---|---|---|
| 2000kbps | 18 GB | 45 GB | 90 GB |
| 4000kbps | 36 GB | 90 GB | 180 GB |
| 6000kbps | 54 GB | 135 GB | 270 GB |
Oferecer múltiplas opções de qualidade reduz a largura de banda total porque espectadores em conexões mais lentas usam a transmissão de bitrate mais baixo. Usar armazenamento compatível com S3 descarrega completamente a largura de banda do seu servidor.
Qual é a velocidade de rede de pico que meu servidor precisa?
Fórmula: bitrate em kbps × espectadores ÷ 1.000 = Mbps
Estimativas rápidas:
| Taxa de bits | 10 espectadores | 25 espectadores | 50 espectadores |
|---|---|---|---|
| 2000kbps | 20 Mbps | 50 Mbps | 100 Mbps |
| 4000kbps | 40 Mbps | 100 Mbps | 200 Mbps |
| 6000kbps | 60 Mbps | 150 Mbps | 300 Mbps |
Este é o throughput de saída sustentado que seu servidor precisa durante uma transmissão. Se você oferecer múltiplas opções de qualidade, calcule cada qualidade separadamente e some-as. A maioria dos provedores de VPS oferece portas de 1 Gbps, que suportam aproximadamente 200 espectadores a 5000kbps. Se seus espectadores excederem a capacidade de rede do seu servidor, eles experimentarão buffering. Usar armazenamento compatível com S3 elimina esse limite do seu servidor.
Quanto de CPU o Owncast usará?
These are rough examples from measured tests, not guarantees. Actual CPU use varies by codec, bitrate, resolution and encoder preset.
| Configuração | Uso da CPU |
|---|---|
| Qualidade de passagem única | Mínima |
| Qualidade transcodificada única | Leve |
| Duas qualidades (alta + baixa) | Moderada |
| Três qualidades ou compressão pesada | Pesada |
As a rough rule of thumb from measured examples, a single CPU core can often handle one transcoded output quality at 30fps, but this varies with codec, bitrate, resolution and encoder preset. O modo de passagem (sem transcodificação) usa muito pouca CPU, independentemente do bitrate. All CPUs are different in performance across hardware and hosting providers, so no guarantee can ever be made. Você precisará experimentar para descobrir o que funciona melhor para suas necessidades.
O uso da CPU aumenta com mais espectadores?
Não. Para codificação de vídeo, o uso da CPU permanece constante, seja você tiver 1 espectador ou 1.000. O vídeo é codificado uma vez e distribuído a todos os espectadores. Somente a largura de banda do servidor aumenta com o número de espectadores. O uso da CPU pode crescer um pouco com mais espectadores devido à atividade do chat e outros sobrecargas, mas isso é mínimo em comparação com a codificação de vídeo.
Como a taxa de quadros afeta o uso da CPU?
Taxas de quadros mais altas requerem mais CPU. Reducing frame rate is an effective way to lower CPU usage. These multipliers are rough measured examples and will vary by codec, bitrate, resolution and encoder preset:
| Taxa de Quadros | CPU Relativa |
|---|---|
| 60 fps | 2x baseline |
| 30 fps | 1x baseline |
| 24 fps | 0.8x |
Considere usar taxas de quadros mais baixas (24fps) para saídas de qualidade inferior a fim de economizar CPU enquanto mantém uma reprodução suave para espectadores com conexões lentas.
Quanto de espaço em disco o Owncast usará?
Live video needs very little disk space. Owncast writes HLS video segments to disk temporarily and cleans them up as the stream progresses, so you don't need to plan for video storage.
The data/ directory does persist and grow over time. It holds the Owncast database and its hourly backups, custom emoji, public files, viewer metrics, GeoIP data and, starting with Owncast 0.3.0, installed plugins and their data. Give it room to grow and include it in your backups.
Devo oferecer apenas a qualidade mais alta para manter as coisas simples?
Oferecer apenas vídeo de alta taxa de bits exclui espectadores em redes móveis e conexões mais lentas. Um stream de 5000kbps requer uma conexão estável de 5+ Mbps para assistir sem buffering. Muitos espectadores não têm isso, especialmente em dispositivos móveis.
Recommendation: Offering a second, lower quality option (1000-2000kbps) alongside your high quality one (4000-6000kbps) helps viewers on slow or mobile connections. That said, Owncast ships with a single variant by default, and the video documentation recommends starting with one variant and testing before adding more. Add a low quality option once your setup works and your CPU has headroom.
Calculadora de Recursos
Use esta calculadora interativa para estimar suas necessidades de largura de banda e CPU com base na sua configuração de streaming específica:
Saiba mais
Visite a documentação detalhada de vídeo para saber mais sobre como o Owncast lida com vídeo.
Improve this page
See something missing or incorrect? Edit this page and improve the documentation for everyone.
