Gnomes 3のデフォルトのデスクトップレコーダーで1つのウィンドウのみを記録する


10

Gnomeの3は、下の素晴らしい機能を持っているCtrl- Alt- Shift- Rショートカット1これはイスタンブールだと思います。 イスタンブールではないようです...しかし、このプログラムに関する情報は見つかりません。

manページはどこにありますか?どうすればコンソールから実行できますか?
そして最も重要なこと:どうすれば1つのウィンドウのみを記録できますか(Alt+ と同様Print Screen)?


私はあなたがすでに試したと思いますman istanbulか?
user1686

@grawity:実行してみましman istanbulたが、イスタンブールのページがありませんでした。また、istanbul使用できるコマンドはありません。たぶんGnome 3のデフォルトのレコーダーはイスタンブールではありませんか?それは何ですか?
seler

回答:


14

GNOME APIドキュメントによれば、gnome-shell(shell-recorder class)スクリーンレコーダーは、基本的にすべてのスクリーンショット出力をパイプラインにパイプライン化し、GStreamerによってエンコードされます。

dconf-editorアプリケーションを使用してに移動できます。org.gnome.shell.recorderこのスキーマには3つのオプションがあります。

  • ファイル拡張子-私のボックスのデフォルト webm
  • フレームレート-私のボックスの30に逆らって
  • パイプライン-ストリームをエンコードするためにデフォルトでGStreamer vp8encにパイプラインします。 vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! queue ! webmmux

では、コマンドラインで記録パイプラインを複製するにはどうすればよいでしょうか。これを行うには、gstreamer-toolのgst-launchコマンドを使用します。まず、ボックスにgst-toolsをインストールする必要があり、gstreamer!で遊ぶことができます。以下にいくつかの例を示します。

webmに記録(vp8ビデオ&vorbisオーディオ):

gst-launch ximagesrc ! ffmpegcolorspace ! queue ! vp8enc quality=10 speed=2 ! mux. alsasrc ! audio/x-raw-int ! queue ! audioconvert ! vorbisenc ! mux. webmmux name=mux ! filesink location=screencast.webm

Ctrl + Cを押して、記録を停止します。

ogvへの記録(theoraビデオとvorbisオーディオ):

gst-launch ximagesrc ! ffmpegcolorspace ! queue ! theoraenc ! mux. alsasrc ! audio/x-raw-int ! queue ! audioconvert ! vorbisenc ! mux. oggmux name=mux ! filesink location=screencast.ogv

Ctrl + Cを押して、記録を停止します。

パイプラインはgst-launchによって実行されます。彼らがすることはここにあります:

  • Xビデオ画像(デスクトップ)を取得する
  • ビデオを許容可能な形式に自動的に変換します
  • ビデオ処理を続行するためにバックグラウンドスレッド[t1]を生成します
  • [t1]ビデオをエンコードする(vp8またはtheoraのいずれかに)
  • [t1]ビデオをビデオシェル(webmまたはogg)にマージするための準備
  • オーディオ入力を生(マイク)として取得する
  • オーディオ処理を続行するためにバックグラウンドスレッド[t2]を生成します
  • [t2]音声を適切な形式に自動的に変換します
  • [t2]音声をvorbisにエンコードします
  • [t2]オーディオをビデオシェル(webmまたはogg)にマージするための準備
  • エンコードされたオーディオとビデオをビデオファイルに書き込む

これで、gstreamerパイプラインを怖がる必要がなくなりました。\ o /


9

最も重要な。1つのウィンドウのみを記録するにはどうすればよいですか?

ウィンドウのXIDを取得できる場合は、ximagesrcに渡すことができます。たとえば、ウィンドウの一意のタイトルがわかっている場合は、xwininfoと小さな魔法を使って取得できます。bashでは:

TITLE="Terminal Six"
WINDOW_XID=$(xwininfo -tree -root -all | egrep $TITLE | sed -e 's/^ *//' | cut -d\  -f1)`

これで、そのXIDをximagesrcに渡すだけで、もちろんパイプラインを完成させることができます。

gst-launch-1.0 ximagesrc xid=$WINDOW_XID ! video/x-raw,framerate=30/1 ! videoconvert ! queue ! ...

そして参考までに、1.0バージョンのgstreamerを使用してこれを示しています。ffmpegcolorspaceはなくなり、代わりにvideoconvertを使用します(FFmpegの最新バージョンでは、名前が「libav」に変更されたため、名前が変更されました)。


0

Gnome 3の記録では、GStreamer FFmpegプラグインを使用して、ユーザーの家の下に.webmを出力します。

GStreamer FFmpegプラグイン

http://gstreamer.freedesktop.org/modules/gst-ffmpeg.html

そして最も重要なこと:どうすれば1つのウィンドウのみを記録できますか?

ウィンドウをフルスクリーンにズームできますか?


つまり、自分のビデオに、記録しているウィンドウの解像度を持たせたいということです。また、現在の時刻、通知、ネットワークステータス、音量レベルなどを他の人に示す必要はありません
。edit

gnome3に組み込まれている録音は非常に限られており、カジュアルな使用のように感じる音もありません。ArchLinuxフォーラムには、recordMyDesktopとffmpegスクリプトがあります。私にとって、これらはすべてGnome3よりもうまく機能します。
ロニー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.