• sudo apt-get install kernel-package fakeroot build-essential libssl-dev
  • sudo apt-get build-dep linux-image-$(uname -r)
  • git clone -b amd-staging-4.7 --single-branch git://people.freedesktop.org/~agd5f/linux/
  • make localmodconfig
  • fakeroot make-kpkg --append-to-version "-amd" --initrd -j 8 linux-image linux-headers
  • sudo dpkg -i ../linux-*
  • sudo apt-get remove yournewkernelhere

A overview of AV1 Codec

Resources:

Patched LAVFilter with av1 decoding (8/10/12 bit) thanks to 06_taro/mmm-hd

mmm-hd builds (Should be able to output 8/10/12bit) thanks to 06_taro/mmm-hd

Nwgat Win64 Builds

Compiling

Encoding

aomenc -v --good --target-bitrate=6000 -o output.webm outputgirl.1080p.y4m

Settings

  • --best (like placebo slow, probably removed soon?)
  • --good (faster)
  • -target-bitrate= (bitrate?)
  • -v (verbose)

AOM AV1 Supports:

  • --yv12 Input file is YV12
  • --i420 Input file is I420 (default)
  • --i422 Input file is I422
  • --i444 Input file is I444
  • --i440 Input file is I440

Decoding

realtime playback
aomdec test.webm | mpv -

decoder export to raw frames
aomdec test.mkv -o test.raw

  • apt-get install python-software-properties dpkg-dev git
  • add-apt-repository ppa:nginx/stable && sudo apt-get update
  • mkdir build && cd build
  • apt-get source nginx-full && cd nginx-*
  • apt-get build-dep nginx-full
  • git clone git://github.com/arut/nginx-rtmp-module.git debian/modules/nginx-rtmp-module
  • nano debian/rules
  • insert--add-module=$(MODULESDIR)/nginx-rtmp-module \ in common
  • dpkg-buildpackage -uc -b
  • dpkg -i ../nginx-common_1.10.0-0ubuntu0.16.04.4_all.deb ../nginx-full_1.10.0-0ubuntu0.16.04.4_amd64.deb

Create your own vps streaming server :)

Sample 1080p60 AVC@10Mbps AAC@192kbps

VPS (or use your own)

  • Go to digitalocean.com
  • Create a account
  • Select Size 512MB
  • Select Region closest to you
  • Select Image ubuntu 16.10 x64

Install nginx with rtmp

  • wget https://awesome.nwgat.ninja/nginx-rtmp/nginx-common_1.10.1-0ubuntu1.2_all.deb
  • wget https://awesome.nwgat.ninja/nginx-rtmp/nginx-full_1.10.1-0ubuntu1.2_amd64.deb
  • dpkg -i nginx-full_1.10.1-0ubuntu1.2_amd64.deb nginx-common_1.10.1-0ubuntu1.2_all.deb
  • apt-get install -f

or you can follow Building Nginx with rtmp support

Setting up

  • ufw allow 1935 (rtmp)
  • ufw allow 80 (dash)
  • wget https://awesome.nwgat.ninja/nginx-rtmp/rtmp.conf && cat rtmp.conf >> /etc/nginx/nginx.conf
  • wget https://awesome.nwgat.ninja/nginx-rtmp/dash.conf -O /etc/nginx/sites-enabled/dash.conf
  • rm -rf /etc/nginx/sites-enabled/default (interferes with our configs so backup if you need it

Setup Dash.js

  • cd /var/www && git clone https://github.com/arut/dash.js.git
  • cd dash.js && git checkout live
  • nano baseline.html
  • replace http://dash.edgesuite.net/envivio/dashpr/clear/Manifest.mpd with http://vpsip/dash/live.mpd
  • systemctl restart nginx && systemctl status nginx

Streaming (AMD ReLive)

there is no password or restrictions so you need to add ip whitelisting or user/password
https://helping-squad.com/nginx-rtmp-secure-your-nginx-server/

Crimson Settings > ReLive > Streaming > Custom Stream
Server URL: rtmp://vpsip:1935/live/
Connection Key: live
Streaming Profile: Custom (1080p60 @ 10Mbps/192kbps)

Notes:

  • The quality varies by scenes/games
  • AMD seems to be doing CABAC coding with 2-Pass which is nice
  • no HEVC streaming (yet) even with a custom server
  • rant: why only 10mbps max?????
  • with custom servers you can have a master stream at 25mbps and then transcode it lower on the server side

Streaming (OBS Studio)

there is no password or restrictions so you need to add ip whitelisting or user/password
https://helping-squad.com/nginx-rtmp-secure-your-nginx-server/

  • Settings > Stream > Custom Streaming Server
  • URL rtmp://vpsip:1935/live/
  • Key is live

Watching

  • you can now play rtmp://vpsip:1935/live/live in your player
  • mpv rtmp://vpsip:1935/live/live
  • vlc rtmp://vpsip:1935/live/live

or watch it on the web http://vpsip/dash.js/baseline.html

Save Stream

  • ffmpeg -i rtmp://vpsip:1935/live/live -vcodec copy -acodec copy live.mp4

Sources:

  • apt-get remove golang --purge
  • wget https://storage.googleapis.com/golang/go1.7.3.linux-amd64.tar.gz
  • sudo tar -zxvf go1.7.*.linux-amd64.tar.gz -C /usr/local
  • echo 'export GOROOT=/usr/local/go/bin/go' >> ~/.bashrc
  • echo 'export GOPATH=$HOME/go' >> ~/.bashrc
  • echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> ~/.bashrc

compile something

  • go get github.com/ncw/rclone
  • go get github.com/mholt/caddy/caddy
  • $HOME/go/bin/rclone help
  • $HOME/go/bin/caddy -h
Easily deploy an SSD cloud server on @DigitalOcean in 55 seconds. Sign up using my link and receive $10 in credit
Proudly published with Ghost | Theme based on Draugur | Header Image by GUWEIZ@DeviantArt
Creative Commons Licence