ブラウザでデスクトップ録画ができるらしい

さっそく作ってみました。

https://devras.info/apps/scr/

 

navigator.mediaDevices.getDisplayMedia(option)

返り値はPromiseです。

var option = {
video: true,
audio: true,
};

navigator.mediaDevices.getDisplayMedia(option)
.then(function(stream) {
document.querySelector("video").srcObject = stream;
})
.catch(function(err) {
console.log(err);
});

オプションは従来の getUserMedia のものが使えます。

 

音声に関してはJavaScript側で設定するのと、ユーザー側が許可する必要があります。

 

ffmpeg による動画の圧縮処理

今回、とあるウェブサービスを実装するにあたり動画を圧縮する必要が出てきた。

圧縮すると画質は劣化するけど、容量を抑えるためには必須だよね。

 

それで

・サーバー上で実行できること

・コマンドラインで実行できること

・情報が豊富であること

の3拍子揃ったFFMPEGを使うことにした。

使い方はとってもシンプルだった。

mp4 から webm への変換は

$ ffmpeg -i input.mp4 output.webm

これだけ少し待てば output.webm が生成される。

容量はテスト動画だと2分の1になった。

画質は少し文字が見にくくなっている(ぼやけてる)

人によっては嫌う。

 

この処理をバックグラウンドで非同期に行うには

$ nohup ffmpeg -i input.mp4 output.webm > /dev/null &

でOK

> /dev/null はログを捨てていて

& で非同期にさせている

 

自宅鯖の立て方とメリットデメリット

自宅鯖とはそもそも何か

自宅鯖(自宅サーバ)とは、名前の通り自宅にサーバを立てることです。

サーバにはさまざまな種類、用途があります。

例えば、ウェブサーバ、ファイルサーバ、録画サーバ・・・など。

 

自宅鯖にひつようなもの 

・インターネット回線

・パソコン

続きを読む 自宅鯖の立て方とメリットデメリット