35 lines
No EOL
1.7 KiB
Markdown
35 lines
No EOL
1.7 KiB
Markdown
#Pixelflut as a Service
|
|
... oder eher einfach nur in der cloud....
|
|
|
|
Ein paar Befehle um Pixelflut mit nginx-rtmp auf nem server in der cloud laufen zu lassen und das dann als rtmp-stream auszugeben.
|
|
|
|
konfiguration von ein paar Umgebungsvariablen:
|
|
````
|
|
export DISPLAY=:3 # kann jede Nummer sein, 3 is gewählt, damit das sicher frei ist
|
|
export IP=127.0.0.1 # der Pixelflut-server läuft auf localhost, genauso wie der vnc-server
|
|
export RESOLUTION=1920x1080 # FullHD weil $Gründe, insbesondere aber einfach weil das die Stream-Auflösung ist
|
|
export BITDEPTH=24 # Gewählt weil $Gründe
|
|
````
|
|
Dann ist es sinnvoll den Pixelflut-Server zu starten. <br/>
|
|
Dafür nimmt man am Besten einfach den von TobleMiner her: https://github.com/TobleMiner/shoreline <br/>
|
|
nach der Installation kann der Nerver mit
|
|
````
|
|
./shoreline/shoreline -f vnc -d "playing around with pixelflut" -w 1920 -h 1080
|
|
````
|
|
gestartet werden.
|
|
- [ ] Todo: fonts zum Laufen bringen
|
|
|
|
daraufhin können der Reihe nach die Befehle für den Stream gestartet werden:
|
|
````
|
|
Xvfb $DISPLAY -screen 0 "$RESOLUTION"x"$BITDEPTH" -ac & # erstellen eines virtuellen Framebuffer
|
|
ratpoison & # Xserver starten
|
|
vncviewer 127.0.0.1 -viewonly & # vncviewer starten
|
|
````
|
|
|
|
Zuletzt muss noch alles zusammen mit ffmpeg aufgenommen und an einen rtmp-server geschickt werden (in diesem Fall ist der auch lokal)
|
|
Außerdem muss noch eine stille Audiosrc erstellt werden, weil sonst die ffmpeg-pipeline in nginx-rtmp kaputt geht.
|
|
````
|
|
ffmpeg -f x11grab -s 1920x1080 -r 30 -i :3 -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 -f flv rtmp://127.0.0.1/stream/testing_pixelflut
|
|
````
|
|
|
|
Dann sollte der stream laufen. |