JavaScript
クライアントは読んだので、次はサーバーを。 OSSのWebRTC SFU mediasoup v3のコードを読む(クライアント編) - console.lealog(); こっちもまだ未リリースですが、読むだけなら損はないだろうという話。
`addStream()`は死にました。 5バージョンくらい前のChromeをサポートしたいとか理由がない限り、忘れてしまってよいです。他人のコードを読んでてコレが出てきたら、メンテされてない or 古いバージョンをサポートしようとしてるの2択です。これからのWebRT…
プロトコルの実装でよく出てくるやつのまとめです。Node.jsの`Buffer`を通して得た、オクテットバイトストリームってやつを対象に。普通に`Buffer`のメソッドを使うこともあるし、特定のバイトからビットを取り出すこともあるはずで、そのバリエーションのメ…
OSSのSFUである`mediasoup`のコードを読みました。サーバーの実装とJS-SDKがあって、JS-SDKの方です。 GitHub - versatica/mediasoup-client: mediasoup client side JavaScript library 現時点でのstableはv2.xなので、今回読んだv3は次期バージョン。つま…
[WebAudio API] AudioWorklet の使い方 | g200kg Music & Software この大先生の記事を読んで、自分の知ってるWebAudio知識のアップデートをしときたいなーと思って調べたことのメモです。なので重複する部分もあるけど、+ αな部分もあります。 20191129: あ…
“Unified Plan” Transition Guide (JavaScript) - Google ドキュメント なんかそのうち仕事で見返しそうな感じがあったので訳してみた。
なんと、ブラウザで顔認識ができる時代になりました。試したのはChrome 70.0.3530.0(Official Build)canary (64 ビット)で。 仕様 Accelerated Shape Detection in Images Accelerated Shape Detection in Images なる仕様らしく、大きく2つのAPIが定義…
幸か不幸か、この2つについていろいろ調べた機会があったのでメモ。結果、個人的には、hyperHTML推しです。
GitHub - webrtc/adapter: Shim to insulate apps from spec changes and prefix differences. Latest adapter.js release: 界隈で脊髄反射的に必要って言われてる気がする 個人的にはお世話になったことはない SkyWayのJS-SDKでもサンプルでも使ってないし…
SkyWay UG Tokyo #3 - connpass 今回はDEJIMAというスペースにて。めっちゃおしゃれ空間やった。 品川から歩いて20分くらい。 Innovation Space DEJIMA
去年の末から地道に対応が進んでたのですが、ついに出ましたねー。作者によるサマリー記事とあわせて公開されました↓ MobX 4: Better, simpler, faster, smaller – Michel Weststrate – Medium ちゃんとv3からv4へのマイグレーションガイドもあります。 Migr…
`navigator.mediaDevices.getUserMedia()`することで手に入る`MediaStream`を、それ以外の手段でどうやって自作するかという話です。どんな形であれ思いついたのをメモっておきます。
2018年2月verです。 基本的に2017年8月に書いた記事と変わってない。NO進歩。 2017年版: getUserMedia()で画面のストリームを取得する - console.lealog(); この記事に書いてること + さらに最近調べたことをメモ。 なんかおかしかったら教えてください。
webpackみたく、複数のアプリを1つの設定ファイルでよしなにしてほしい。この気持ち・・わかりますか!
GitHub - mweststrate/immer: Create the next immutable state by mutating the current one (MobXの作者による)イミュータブルに状態を操作するユーティリティライブラリ。ちなみに、この世で最初にスターしたのは俺ですw
こういう書き方にしてしまったせいで、テストの時にうまくモックできず困ったよというメモ。
beforeAll afterAll beforeEach afterEach jestではこの4つがあるけど、この中で非同期処理をすると、途端にテスト実行時のログの体裁がおかしくなるという話。あと、`--forceExit`というオプションを組み合わせるとまた違った体裁になってよーわからんとい…
Media Capture and Streams この仕様書をだらーっと流し読みしたので、知らんかったことをメモ。 あとついでに気になった指定について調べたことも。
WebRTC界隈で、 Chromeの`video.srcObject = stream`はバグってるから使っちゃダメ 代わりに`video.src = URL.createObjectURL(stream)`を使え という噂があって。とはいっても、 Safariでは`URL.createObjectURL(stream)`がエラーになる URL.createObjectUR…
タイトルに収まらんwSafariのWebRTCは新しめの仕様なので、`createOffer()`にオプションを渡して`recvonly`にする方法が使えない。 pc.createOffer({ offerToReceiveAudio: true, offerToReceiveVideo: true, }) こういうやつ。なので、代わりに、 pc.addTr…
間違ってたら教えてください。
こういうやつ。 import EventEmitter from 'events'; const ee = new EventEmitter(); // <- コレ これはあくまで例で、Node標準の`events`のEventEmitterなら、Flowがビルトインで型情報を持ってるので困りません。 でも似たようなのを自分で書いたり、他の…
個人の意見 aka ポエムです。 界隈的には今さら感がすごいけど。そんな今さらポエった事情としては、 とある案件でSPAをReactで作りつつサーバーサイドレンダリング(以下SSR)をすることになるかも SPAじゃないページもまとめてReactでSSRすることになるか…
に、考慮しておかないと確実にハマること・・。 濁点・半濁点 UTF-8-MAC NFC / NFD `rsync --iconv=UTF-8-MAC,UTF-8` `String.prototype.normalize()` このあたりがキーワードです。
ReactなプロジェクトでEdgeでだけ動かないケースがあって調べてた。 Expression-body arrow function parameter destructuring "Use before declaration" error when parameter is only used in an inner function · Issue #2606 · Microsoft/ChakraCore · G…
未来の自分のためのメモです。 仕事でやってないせいですぐ忘れるし、都度思い出すの大変なので・・。ただまぁだいたいの人はSkyWayとかEasyRTCとか何かしらのライブラリを使うはずで、そういう人たちにはあまり関係ない内容かも。 生のjsでWebRTCを書くとき…
ReactEurope 2017のDay2より。動画とスライドのリンクはこちらから。 ReactEurope 2017 Day 2 AM - YouTube / slides MobXのサブプロジェクトみたいな存在である`mobx-state-tree`についてのトークです。
東京は東京でも有楽町だった回。 Node学園 24時限目 - connpass
過去に何回も書いてるはずやのに、どういうわけか毎度ハマる。 今度こそメモっておく。
最低限な要件だけ使ってみるにしても罠だらけだったのでメモ。 調べてもろくな情報出てこなかったので、業務レベルではまじで誰も使ってないんじゃねーのって気持ちがある。願わくばもう使いたくない( ˘ω˘)