Debianで画面を録画して軽量のgifにする

追記@2015-04-28

特定のWindowを録画するには、

$ xwininfo

として、マウスで調べたいwindowをクリックすることでwindowのidが表示されます。そして

$ recordmydesktop --windowid <windowのID>

とすればOKです。たとえばxwininfoの結果が0x2c0003eなら、

$ recordmydesktop --windowid 0x2c0003e

とします。


追記@2015-06-02

gifsicleでdelayのオプションがないと早送りな感じになるので、–delay=7としておおよそ撮影時と同じ速度になるように修正しました。


gifはたいていの環境で再生可能なので便利に使っています。何かを作って見せるときに画面を録画してgifにして貼っつけておくのが個人的な流行なので、Debianでもそれをやりたいなと思いました。ちなみにMacの場合、LICEcapというもので簡単に出来ます。

Debianで録画するには、

– recordmydesktopとffmpegとgifsicleをインストール
– recordmydesktopで録画
– ffmpegでgif化
– (オプション) gifsicleで軽量化 (ただし、gifsicleで処理すると早送りのような感じになります)

という手順です。

まず必要なパッケージをインストールします。

$ sudo aptitude install recordmydesktop ffmpeg gifsicle

そしてrecordmydesktopで録画します(GUIで「アプリケーション」→「サウンドとビデオ」にあると思います)。

録画して出来たファイル(video.ogvとします)、ffmpegでgifにして、さらに必要であればgifsicleで軽量化します。

$ ffmpeg -i video.ogv -pix_fmt rgb24 output.gif
$ gifsicle --delay=7 -O3 < output.gif > new.gif

以上です。gifsicleのdelayオプションで7ぐらいを指定すると、おおよそ撮影時の挙動に近いかと思います。ファイルサイズですが、

– recordmydesktopで撮影したファイル(ogv形式): 2.8MB
– ffmpegでgif化したもの: 437MB
– gifsicleで軽量化したもの: 756KB

でした。ogvは小さくていいんですが、MacやSlackでは再生されずなのでgifにしてます。

Bookmark the permalink.

Comments are closed.