Skip to content

Instantly share code, notes, and snippets.

View mqp's full-sized avatar

Marshall Polaris mqp

  • Mountain View, CA
View GitHub Profile
@mqp
mqp / gist:7c935aad1a831bff21d9e1ae7c92e7c0
Created December 7, 2017 00:20
Valgrind output for ICE handle free race
==19910== Thread 8:
==19910== Invalid read of size 4
==19910== at 0x6B581A4: pthread_mutex_lock (pthread_mutex_lock.c:81)
==19910== by 0x16EFE6: janus_plugin_handle_sdp (janus.c:2818)
==19910== by 0x16C5AC: janus_plugin_push_event (janus.c:2657)
==19910== by 0x14467F4C: janus_plugin_sfu::push_response (in /opt/janus/lib/janus/plugins/libjanus_plugin_sfu.so)
==19910== by 0x1446BB09: janus_plugin_sfu::handle_message_async (in /opt/janus/lib/janus/plugins/libjanus_plugin_sfu.so)
==19910== by 0x1444EA23: std::sys_common::backtrace::__rust_begin_short_backtrace (in /opt/janus/lib/janus/plugins/libjanus_plugin_sfu.so)
==19910== by 0x1444FD22: std::panicking::try::do_call (in /opt/janus/lib/janus/plugins/libjanus_plugin_sfu.so)
==19910== by 0x1449DB1C: __rust_maybe_catch_panic (lib.rs:99)
@mqp
mqp / plans.md
Created December 20, 2017 00:20
Social MR planning

Here are some different things that seem potentially valuable which we could consider to produce next year, roughly ordered by how useful I think they would be, with the most useful at the top. It's possible I forgot some things.

WebXR client infrastructure work

Right now, I observe that not many people are making any XR thing on the web. Part of it might be that WebXR is new, but part is that it's relatively bad. Naively, my guess is that three.js and A-Frame tooling and performance (and WebXR browser features) is where most of the gap is, and making them more competitive with Unreal or Unity would be attacking that problem. Something like the Unity editor, for example, would go a long way. Improving networked-aframe could be useful. Adding browser features to make the experience of using WebXR smoother could be useful. I defer to

@mqp
mqp / janus-udp-failure.log
Created July 3, 2018 21:18
Janus failing to complete ICE over UDP on Nightly
Janus commit: 3c5ad1b125f696a32c85420f31a24eec79b35028
Compiled on: Tue Jul 3 14:07:51 PDT 2018
---------------------------------------------------
Starting Meetecho Janus (WebRTC Gateway) v0.4.3
---------------------------------------------------
Checking command line arguments...
[janus.cfg]
[general]
@mqp
mqp / express-wrapper.js
Created February 6, 2020 05:27
Fancy Express error handling
const app = require('express')();
const fs = require('fs');
// Resolves with a list of the filenames in dir, or rejects if dir doesn't exist or if something else goes wrong.
function readFileNames(dir) {
  return new Promise((resolve, reject) => {
    fs.readdir(dir, (err, files) => {
      if (err) {
        reject(err);
      } else {
@mqp
mqp / express-basic.js
Created February 6, 2020 05:28
Simple Express error handling
const app = require('express')();
const fs = require('fs');
// Resolves with a list of the filenames in dir, or rejects if dir doesn't exist or if something else goes wrong.
function readFileNames(dir) {
return new Promise((resolve, reject) => {
fs.readdir(dir, (err, files) => {
if (err) {
reject(err);
} else {