Linuxのコマンドラインからスクリーンキャストを行う方法
デスクトップの動画を録画するスクリーンキャストに関して、多くの人は適切なユーザーインターフェースを持つデスクトップソフトウェアを思い浮かべるでしょう。Linuxでは、KazamやScreentoasterなどのいくつかのツールを紹介しました。多くの人が知らないのは、FFMPEGを介してコマンドラインからもスクリーンキャストができるということです。これは、デスクトップの動画を録画するためのシンプル(かつ非常に長い)な設定可能なコマンドです。
FFMPEGのインストール
FFMPEGはほとんどのディストリビューションのリポジトリにあります。以下のコマンドでインストールできます:
Ubuntu
sudo apt-get install ffmpegFedora
sudo yum install ffmpegOpenSUSE
sudo zypper install ffmpegArch Linux
sudo pacman -S ffmpegディストリビューションのリポジトリに見つからない場合は、ffmpeg.orgから直接ダウンロードしてインストールする必要があります。
コマンドのカスタマイズ
スクリーンキャストを行う前に、コマンドをニーズに合わせてカスタマイズする必要があります。以下のコマンドは解像度が指定されておらず、30 FPSでスクリーンキャストを行い、ファイルを.MKV形式で出力します。
ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s YxZ -i :0.0 -acodec pcm_s16le -vcodec libx264 -preset ultrafast -crf 0 -threads 0 output.mkv画面のネイティブ解像度を見つけて、YxZをそれに置き換えます(例:1920×1080)。30フレーム/秒だけでは満足できませんか?-r 30を希望のFPSに変更してください。
スクリーンキャスト
スクリーンキャストは、上記のコマンド(自分に合うように修正したもの)をターミナルに貼り付けるだけで簡単に行えます。コマンドが実行されている間、FFMPEGが何をしているのか正確に知ることができます。以下の画像に似たものが表示されるでしょう。

基本的にはこれだけです。その長いコマンドで、あなたはスクリーンキャストを行っています。キャプチャを停止したいですか?「q」キーを押すか、ターミナルウィンドウを完全に閉じてください。録画が終了したことに関する情報が表示されます。この情報は、プロセス中に何が起こったかをすべて教えてくれるので非常に便利です。
video: 3245kB audio: 6451kB subtitle: 0kB other streams: 0kB global headers: 0kB muxing overhead: 1.933424%
[libx264 @ 0xc35d40] frame I: 4 Avg QP: 0.00 size: 311776
[libx264 @ 0xc35d40] frame P: 985 Avg QP: 0.00 size: 2107
[libx264 @ 0xc35d40] mb I I16..4: 100.0% 0.0% 0.0%
[libx264 @ 0xc35d40] mb P I16..4: 30.5% 0.0% 0.0% P16..4: 0.0% 0.0% 0.0% 0.0% 0.0% skip: 69.5%
[libx264 @ 0xc35d40] coded y,u,v intra: 0.6% 0.1% 0.1% inter: 0.0% 0.0% 0.0%
[libx264 @ 0xc35d40] i16 v,h,dc,p: 99% 1% 0% 0%
[libx264 @ 0xc35d40] kb/s: 806.15FFMPEGのオーディオ入力の切り替え
すべてのアプリケーションと同様に、FFMPEGはPulse Audioを利用します。これは操作可能であることを意味します。デフォルトでは、すべての録音アプリケーションはデフォルトのサウンドデバイスを介して音声入力を受け取ります。コンピュータにマイク(または接続されたマイク)がある場合、FFMPEGは自動的にそれから音声を録音し、スクリーンキャストに追加します。これが望ましくない場合は、変更できます。
Pulse Audio Volume Controlをインストールします。これは非常に人気のあるツールで、ほとんどの人気のあるディストリビューションのリポジトリにあります。Ubuntu(またはUbuntuベースのディストリビューション)では、以下のコマンドでインストールできます:
sudo apt-get install pavucontrol他のディストリビューションでは、パッケージマネージャで「pavucontrol」を検索してインストールするだけです。インストールが完了したら、FFMPEGのスクリーンキャストを開始し、「Pulse Audio Volume Control」を開きます。ツール内で、録音タブをクリックします。

録音タブで、Built-in Audio Analog Stereoボタンをクリックします。選択メニューが表示されます。

メニューで、Built-in Audio Analog Stereoのモニターを選択します。これにより、FFMPEGはコンピュータのマイクではなく、システム音を録音します。このトリックは、ゲームプレイや音声が必要な何かを録音する場合に最適です。
結論
FFMPEGは多くのことができる素晴らしいツールです。スクリーンキャストはその能力の一つに過ぎません。高品質の映像をキャプチャし、優れたパフォーマンスを提供できる代替手段はほとんどありません。コマンドラインは素晴らしいもので、必要なだけ正確にすることができます。達成したいことを指定し、それが目の前に現れるのを見ることができます。