15-06-2020

OSP, la alternativo al Twitch

3 minutoj

Antaŭ ne longe mi malkovris la projektojn Open Streaming Platform (aŭ OSP), kiuj celas alporti alternativon al la retejo Twitch aŭ Youtube por vivfluoj kun memgasta solvo.

Ni esploris kaj demandis la teamon Tedomum, ni deplojis ekzemplon por testi nin mem. Same kiel Peertube, OSP permesas al la uzanto krei plurajn kanalojn sen devi krei plurajn kontojn, kio estas oportuna se vi volas ordigi viajn kanalojn laŭ temo (ludado, desegnado, intervjuspektakloj…). OSP ankaŭ permesas vin registri aŭtomate viajn fluojn, afiŝi filmetojn kaj registri klipojn, same kiel la aliaj platformoj.

La programaro mem facile funkciis, ĉar ni uzas Docker & “docker-compose”. La problemoj, kiujn ni renkontis, estis datumbazaj problemoj, ĉar la programaro ankoraŭ estas beta, la migraj skriptoj estas tiuj defaŭlte por flakona projekto kaj ne migras la DB ĝuste. Se vi renkontos ĉi tiun problemon, vi eble devos malaltigi la version, iri al la administra panelo, elŝuti kopion de la datumbazo, reagordi la ekzemplon per la nova versio kaj restarigi la datumbazan dosieron ĉe la instalado. Jen kiel aspektas la Dockerfile (Noto: la plej nova revizio 0.7 nuntempe ne estas subtenata de Docker):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
version: '2.1'

services:
  redis:
    image: redis:latest

  osp:
    image: deamos/openstreamingplatform:latest
    volumes:
      - ./data:/var/www
    labels:
      - traefik.enable=true
      - traefik.frontend.rule=Host:${hostname}
      - traefik.port=80
      - traefik.frontend.headers.STSSeconds=315360000
      - traefik.frontend.headers.browserXSSFilter=true
      - traefik.frontend.customResponseHeaders=Server:www||X-Powered-By:www
    environment:
      - REDIS_HOST=redis
      - FLASK_SECRET
      - FLASK_SALT
      - OSP_ALLOWREGISTRATION
      - OSP_REQUIREVERIFICATION
      - DB_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db/${POSTGRES_USER}
    depends_on:
      - "db"
      - "redis"
    ports:
      - "${ipv4}:1935:1935"
      - "${ipv6}:1935:1935"

  db:
    image: postgres:11
    volumes:
      - ./db:/var/lib/postgresql/data
      - ./wal:/wal
      - ./postgresql.conf:/var/lib/postgresql/data/postgresql.conf
    environment:
      - POSTGRES_USER
      - POSTGRES_PASSWORD

networks:
  default:
    enable_ipv6: true
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: "${prefix}/80"
          gateway: "${prefix}1"

Notu ankaŭ, ke postgres ne estas uzataj oficiale de OSP, vidu ilian vikion por la oficialaj subtenataj datumbazoj. La haveno 1935 devas esti malfermita por ke OBS (aŭ iu ajn alia flua programaro) povu sendi la datumojn al rmtp://<via domajna nomo>/stream

Je la fino, OSP estas vere bona programero, ekzemple mi kutime elsendas (de mia labortablo) kun rezolucio de 1080p ĉe 60 kadroj sekunde kun bitofteco de 5000Kbps kaj OSP bone traktas ĝin. Ĉe la versioj 0.6, la programistoj ankaŭ aldonis eblon transkodi en realtempa fluo, do ĝi videblas multe pli rezulte, sed ni ne aktivigis ĝin ĉe nia kazo, ĉar ĝi konsumas multe da CPU.

La plej nova versio tiutempe (0.7) aldonas vere interesan funkcion: la babilejo nun servas kun XMPP kaj aliaj uzantoj de aliaj XMPP-serviloj povas aliĝi kaj interrilati kun la babilejo sen bezono de konto ĉe la kazo. Bedaŭrinde, kiel dirite pli frue, ĉi tiu eldono ankoraŭ ne estas “Docker-preta”, do ni devos ludi la atendoludon.

Por mi OSP estas projekto, kiun vi devas atente atenti se vi amas streaming sed ankaŭ volas povi dividi vian enhavon en senpagaj platformoj.

Jen ĉio por hodiaŭ, Mi vizitos vin la venontan fojon!