Skip to content

Instantly share code, notes, and snippets.

View leewardbound's full-sized avatar

Leeward Bound leewardbound

View GitHub Profile
@leewardbound
leewardbound / 0_reuse_code.js
Created September 24, 2016 06:59
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console

Keybase proof

I hereby claim:

  • I am leewardbound on github.
  • I am lwbco (https://keybase.io/lwbco) on keybase.
  • I have a public key ASBkBR6DJfO6alTv9DkSlWngLzkc49nvm4FxB6Fmj-fkvwo

To claim this, I am signing this object:

[{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","
const process = require('process')
const puppeteer = require('puppeteer')
const env = process.env
async function launchPeer() {
const browser = await puppeteer.launch({
args: [
@leewardbound
leewardbound / README.md
Last active August 31, 2021 18:48
rtmp to ion room

Instructions

go run cmd/signal/allrpc/main.go -jaddr :7000 -gaddr :50051 -- in the ion-sfu project, to start the allrpc interface

go run main.go -- start RTMP server

gst-launch-1.0 videotestsrc ! video/x-raw,format=I420 ! x264enc speed-preset=ultrafast tune=zerolatency key-int-max=20 ! flvmux name=flvmux ! rtmpsink location=rtmp://localhost:1935/publish/foobar audiotestsrc ! alawenc ! flvmux. -- test RTMP feed

ffprobe version 4.2.2-1ubuntu1 Copyright (c) 2007-2019 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-3ubuntu1)
configuration: --prefix=/usr --extra-version=1ubuntu1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --
> GST_DEBUG=3 gst-launch-1.0 filesrc location=/home/linked/movie.mov ! decodebin name=d ! queue ! videoconvert ! video/x-raw,format=I420 ! x264enc speed-preset=ultrafast tune=zerolatency key-int-max=20 ! flvmux name=flvmux ! rtmpsink location=rtmp://localhost:1935/publish/foobar d. ! queue ! audiorate ! audioconvert ! alawenc ! flvmux.
Setting pipeline to PAUSED ...
0:00:00.016766001 1985518 0x55568474b010 WARN basesrc gstbasesrc.c:3600:gst_base_src_start_complete:<filesrc0> pad not activated yet
Pipeline is PREROLLING ...
0:00:00.019906061 1985518 0x555684750f00 WARN qtdemux qtdemux_types.c:239:qtdemux_type_get: unknown QuickTime node type chan
0:00:00.019921827 1985518 0x555684750f00 WARN qtdemux qtdemux.c:7790:qtdemux_parse_container:<qtdemux0> length too long (873924 > 17)
0:00:00.019941892 1985518 0x555684750f00 WARN qtdemux qtdemux.c:3237:qtdemux_parse_trex:<qtdemux0> failed to find fragment defaults for stream 1
0:00:00.019987877 1985518 0
GST_DEBUG=3 gst-launch-1.0 filesrc location=/home/linked/movie.mov ! decodebin name=d ! queue ! videoconvert ! video/x-raw,format=I420 ! x264enc speed-preset=ultrafast tune=zerolatency key-int-max=20 ! flvmux name=flvmux ! rtmpsink location=rtmp://localhost:1935/publish/foobar d. ! queue ! audiorate ! audio/x-raw,channels=1 ! alawenc ! flvmux.
Setting pipeline to PAUSED ...
0:00:00.017335589 2015504 0x558df6d5fa30 WARN basesrc gstbasesrc.c:3600:gst_base_src_start_complete:<filesrc0> pad not activated yet
Pipeline is PREROLLING ...
0:00:00.020963675 2015504 0x558df6d67f00 WARN qtdemux qtdemux_types.c:239:qtdemux_type_get: unknown QuickTime node type chan
0:00:00.020984242 2015504 0x558df6d67f00 WARN qtdemux qtdemux.c:7790:qtdemux_parse_container:<qtdemux0> length too long (873924 > 17)
0:00:00.021007619 2015504 0x558df6d67f00 WARN qtdemux qtdemux.c:3237:qtdemux_parse_trex:<qtdemux0> failed to find fragment defaults for stream 1
0:00:00.021054080 2
GST_DEBUG=3 node gst.js [625c9e3]
{ headless: false,
args:
[ '--enable-usermedia-screen-capturing',
'--allow-http-screen-capture',
'--auto-select-desktop-capture-source=broadcast',
'--load-extension=/home/linked/Nextcloud/home/p/net-prophet/streamhuddle/standup/recorder_extension',
'--disable-extensions-except=/home/linked/Nextcloud/home/p/net-prophet/streamhuddle/standup/recorder_extension',
'--disable-infobars',
'--no-sandbox',