Skip to content

Instantly share code, notes, and snippets.

View ykst's full-sized avatar

YUKISHITA Yohsuke ykst

  • Mount Fuji, Japan
View GitHub Profile
@ykst
ykst / gist:6e80e3566bd6b9d63d19
Last active May 5, 2024 03:40
WebAudio+WebSocketでブラウザへの音声リアルタイムストリーミングを実装する

WebAudio+WebSocketでブラウザへの音声リアルタイムストリーミングを実装する

WebRTCでやれよ!と言われそうなところですが、 WebSocket+WebAudioの組み合わせで音声ストリーミングをシンプルに構成する方法を紹介してみます。

サーバーサイド(Node.js + ws + pcm)

サーバーサイドは何でも良いのですが、 とりあえずNode.jsでtest.mp3というサンプルファイルをpcmモジュールでデコードし、 wsでクライアントに垂れ流す作りにしておきます。

@ykst
ykst / lua-nginx-cheatsheet.md
Last active February 7, 2024 15:17
逆引きlua-nginx-module
@ykst
ykst / mongodb.md
Last active February 1, 2024 10:02
逆引きmongodb

逆引きmongodb

バージョン3以降対象

環境系

認証

use 
@ykst
ykst / cypher.md
Created December 19, 2018 16:48
逆引きCypher

逆引きCypher

特に断りがない限り、環境はOSX、neo4jは3.4.5を参照。

メンテナンス系

ユーザーパスワードの変更

REST APIの/user/<user name>/passwordに対してPOSTする。

@ykst
ykst / gist:8bcefdd86e23b660cdf7
Created January 28, 2015 14:56
イベント駆動アーキテクチャ心得集

#イベント駆動アーキテクチャ心得集

  • イベントを設計するのではなく、責任分界点を設計せよ

  • 命令形ではなく過去形を使用せよ

  • ディスパッチャーはリスナーの存在を想定してはならない

  • ディスパッチャーはリスナーの数を想定してはならない

@ykst
ykst / local_ssl.md
Last active April 20, 2023 09:13
LANのIPアドレスに対してSANを適用して真正なSSL証明書を作成する手順

LANのIPアドレスに対してSANを適用して真正なSSL証明書を作成する手順

概要

テスト用に自己証明書を用いてローカルhttpsサーバーを立てるなどの際に、クライアントから危険な接続として扱われないように証明書を設定をする方法について説明する。 通常ホストの真正性を確認するためにはドメイン名を使用するが、環境の都合上ローカルにDNSを立てるのが難しい場合がある。クライアントへの介入が難しい場合は/etc/hostによる書き換えも出来ない。 そこで、x509.v3のsubjectAltName拡張を用いてIPをホスト名の代わりに使用し、任意のIPアドレスに立てたサーバーを真正なものとして扱えるようにする。

手順

  • openssl設定ファイルの指定(任意)
@ykst
ykst / transparent_proxy_osx.md
Last active September 27, 2022 17:57
mitmproxyでOSX上に透過型プロクシを立てる方法

mitmproxyでOSX上に透過型プロクシを立てる方法

概要

httpプロクシによるペネトレーションテストを行う際に、対象となるアドレスが不定であったりOSのプロクシ設定に従わないようなクライアントがあるとする。 この場合でも全ての対象ドメインが数え上げられる場合はDNSスプーフィングによって介入することが出来るが、透過型プロクシを使うのがより確実な方法である。 ここではOSX上のmitmproxyをプロクシサーバーとして使用し、任意のドメインとポートを対象としたhttp(s)通信へ介入する手法について説明する。 前提として、対象クライアントは既にプロクシの証明書を信用済みであるとする。

手順

@ykst
ykst / postgres_memo.md
Last active February 20, 2018 04:39
逆引きPostgresql

逆引きPostgresql

導入(OSX)

インストール

$ brew install postgresql

立ち上げ

$ brew services start postgresql
@ykst
ykst / gist:8557e2ce9280111c41b6
Created January 28, 2015 14:11
glsl-optimizerでGLSLのオフライン最適化を行う

glsl-optimizerでGLSLのオフライン最適化を行う

OpenGLにコンパイルしてもらう時点でシェーダにはある程度最適化が行われるようですが、 モバイルデバイスではあまりコストの掛かる最適化は行われないだろうという事で、 オフラインでGLSLの最適化をしてくれるフレームワークとしてglsl-optimizerがあります。 サポートされているGLSLバージョンはES2.0とES3.0もカバーしていますが、未対応の拡張もあります。

元々はUnityが機械生成した冗長なGLSLを最適化するために作られたようですが、 一応手書きのシェーダの最適化に使うこともできます。 ただし、組み込みを前提としているようでコマンドラインからキックするバイナリは提供されていません。

@ykst
ykst / gist:d54cd1f40e93087646be
Created January 28, 2015 14:05
iOSでWebRTCアプリを作ってみる (組み込み編)

iOSでWebRTCアプリを作ってみる (組み込み編)

webrtcのObj-Cポーティングもそろそろ落ち着いてきた(?)頃合いなので、iOSの実機にWebRTCを組み込んでみます。 本記事中でSVNのバージョンは http://webrtc.googlecode.com/svn/trunk のr7864を使用しています。

まずはビルド

この記事でも書きましたが、webrtcのiOSビルドは、 How to get started with WebRTC and iOS without wasting 10 hours of your life ↑この記事が親切かつ、まめにアップデートされているのでオススメです。