お久しぶりです
aes67-web-monitor
ブラウザでAES67ストリームを検聴することができるサービスです。
https://github.com/nicolassturmel/aes67-web-monitor
今回はHyper-V上にUbuntu環境を作ってみました。
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.3 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.3 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
やっぱりLTSやろ
必要なのパッケージをインストール
$ sudo apt install nodejs npm git
$ node --version
v8.10.0
もし、aes67-web-monitorが起動できない場合は、
Nodeのバージョンをあげるといいかもしれません。
$ sudo npm install n -g
$ sudo n stable
$ node --version
v12.18.4
Git cloneして、Nodeの依存関係を解決します。
この作業をrootでやるとエラーするのでユーザーで行います。
$ git clone https://github.com/nicolassturmel/aes67-web-monitor
Cloning into 'aes67-web-monitor'...
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 59 (delta 28), reused 44 (delta 15), pack-reused 0
Unpacking objects: 100% (59/59), done.
$
$ cd aes67-web-monitor
$ ll
total 72
drwxrwxr-x 5 neko6 neko6 4096 9月 17 12:57 ./
drwxr-xr-x 17 neko6 neko6 4096 9月 17 12:56 ../
drwxrwxr-x 8 neko6 neko6 4096 9月 17 12:56 .git/
-rw-rw-r-- 1 neko6 neko6 13 9月 17 12:56 .gitignore
-rw-rw-r-- 1 neko6 neko6 1536 9月 17 12:56 README.md
drwxrwxr-x 2 neko6 neko6 4096 9月 17 12:56 html/
drwxrwxr-x 61 neko6 neko6 4096 9月 17 12:58 node_modules/
-rw-rw-r-- 1 neko6 neko6 15596 9月 17 12:56 package-lock.json
-rw-rw-r-- 1 neko6 neko6 804 9月 17 12:56 package.json
-rw-rw-r-- 1 neko6 neko6 5024 9月 17 12:56 rtp-worker.js
-rw-rw-r-- 1 neko6 neko6 9570 9月 17 12:56 server.js
-rw-rw-r-- 1 neko6 neko6 1222 9月 17 12:56 statistics.js
$
$ npm i
aes67-web-monitor@1.0.0 /home/neko6/aes67-web-monitor
├── UNMET PEER DEPENDENCY bufferutil@^4.0.1
├─┬ express@4.17.1
│ ├─┬ accepts@1.3.7
│ │ ├─┬ mime-types@2.1.27
│ │ │ └── mime-db@1.44.0
│ │ └── negotiator@0.6.2
│ ├── array-flatten@1.1.1
│ ├─┬ body-parser@1.19.0
│ │ ├── bytes@3.1.0
│ │ ├─┬ http-errors@1.7.2
│ │ │ ├── inherits@2.0.3
│ │ │ └── toidentifier@1.0.0
│ │ ├─┬ iconv-lite@0.4.24
│ │ │ └── safer-buffer@2.1.2
│ │ └── raw-body@2.4.0
│ ├── content-disposition@0.5.3
│ ├── content-type@1.0.4
│ ├── cookie@0.4.0
│ ├── cookie-signature@1.0.6
│ ├─┬ debug@2.6.9
│ │ └── ms@2.0.0
│ ├── depd@1.1.2
│ ├── encodeurl@1.0.2
│ ├── escape-html@1.0.3
│ ├── etag@1.8.1
│ ├─┬ finalhandler@1.1.2
│ │ └── unpipe@1.0.0
│ ├── fresh@0.5.2
│ ├── merge-descriptors@1.0.1
│ ├── methods@1.1.2
│ ├─┬ on-finished@2.3.0
│ │ └── ee-first@1.1.1
│ ├── parseurl@1.3.3
│ ├── path-to-regexp@0.1.7
│ ├─┬ proxy-addr@2.0.6
│ │ ├── forwarded@0.1.2
│ │ └── ipaddr.js@1.9.1
│ ├── qs@6.7.0
│ ├── range-parser@1.2.1
│ ├── safe-buffer@5.1.2
│ ├─┬ send@0.17.1
│ │ ├── destroy@1.0.4
│ │ ├── mime@1.6.0
│ │ └── ms@2.1.1
│ ├── serve-static@1.14.1
│ ├── setprototypeof@1.1.1
│ ├── statuses@1.5.0
│ ├─┬ type-is@1.6.18
│ │ └── media-typer@0.3.0
│ ├── utils-merge@1.0.1
│ └── vary@1.1.2
├── sdp-transform@2.14.0
├─┬ url@0.11.0
│ ├── punycode@1.3.2
│ └── querystring@0.2.0
├── UNMET PEER DEPENDENCY utf-8-validate@^5.0.2
├── vhost@3.0.2
└── ws@7.3.1
npm WARN ws@7.3.1 requires a peer of bufferutil@^4.0.1 but none was installed.
npm WARN ws@7.3.1 requires a peer of utf-8-validate@^5.0.2 but none was installed.
どうやら足りないものがあるようなので追加インストールします。
$ npm install bufferutil utf-8-validate
> bufferutil@4.0.1 install /home/neko6/aes67-web-monitor/node_modules/bufferutil
> node-gyp-build
> utf-8-validate@5.0.2 install /home/neko6/aes67-web-monitor/node_modules/utf-8-validate
> node-gyp-build
aes67-web-monitor@1.0.0 /home/neko6/aes67-web-monitor
├── bufferutil@4.0.1 extraneous
└── utf-8-validate@5.0.2 extraneous
これで準備はできました。
続きを読む →