WebMデスクトップレコーディングを作成する方法は?


13

WebM形式で出力できるデスクトップレコーダー/スクリーンキャストアプリケーション、または生成さgtk-recordmydesktopれた.ogv形式をWebMに変換できるプログラムを探しています。

必要な形式としてWebMを選択しました。これは、YouTubeがサポートする唯一の無料コーデックであるように思われるためです。過去に.ogvをアップロードしてみましたが、緑色のビデオが表示されるため、うまくいきません。

私はアメリカに住んでいますが、ソフトウェア特許の問題が発生する可能性のあるもの、gstreamer0.10-plugins-uglyまたはなどから離れようとすることを意識していますgstreamer0.10-plugins-bad。このため、私はもともとTibestiに興味がありました(たとえば)が、前述のようなパッケージのインストールが必要でした。

無料の(お金と自由の両方の)ソリューションをオンラインで検索しましたが、これまでのところ何も見つかりませんでした。助言がありますか?


あなたの場所を教えてもらえますか?
リンシティ

@Alaukik、私はアメリカに住んでいると述べた。どの州を知る必要がある場合、私はミシガン州に住んでいます。それ以上具体的になりたくありません。
クリストファーカイルホートン

@ Warriorlng64おっと!
リンシティ

回答:


6

12.04 LTS

と思われるffmpeg 、もはやが正常に動作しません変換するため、このリリースでrecordmydesktopWebMのにの.ogvの録音を。メンテナンスされなくなったため、avconv代わりにlibav-toolsパッケージで提供されている代替物を使用することをお勧めします(インストールされている場合ffmpegは自動的にインストールされるようです)。

avconv変換に使用するのに必要なコマンドは、次のものとそれほど違いはありませんffmpeg

avconv -i input.ogv output.webm

したがって、無料のパッケージのみを使用して、12.04(またはそれ以降)で.ogvから.webmに変換しようとするという同じ問題に直面している場合、これが解決方法です。これは、ビデオを使用して新機能を表示したり、問題を文書化するために記録を作成する場合に役立ちます。


最近、私はKazamの作業を開始しました。今ではVP8 / WebMおよびH264 / Matroska形式で記録できます。OneiricおよびPrecise用にPPAビルドを作成しました。録音にはgstreamerを使用し、ffmpegは不要です。追加のコーデックなしで、クリーンにインストールされたUbuntuで動作するはずです。
ビッグホエール

@BigWhaleブラウズコードはほとんどが、私は気づいたまだ依存しているようだgstreamer0.10-plugins-badgstreamer0.10-plugins-ugly。これらのパッケージには、前述のように、特許の問題のために回避しようとしているコーデックが含まれています。これらのパッケージに依存しない更新/代替ビルドが利用可能になった場合は、新しい回答でお知らせください。とにかくありがとう!
クリストファーカイルホートン

取得しますError while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
jrg

@jrg このrecordmydesktopバグレポートに投稿された回避策を使用して記録したビデオを変換すると、ラップトップで同様の問題が発生しました。不思議なことに、同じビデオをデスクトップマシンに取り込み、そこで変換すると、問題なく機能しました。だから...それはバグかもしれないが、私はまだ報告を提出するほどそれについて十分に知っているとは思わない。
クリストファーカイルホートン

1
サイドノートとして:FFMpegはまだ維持されています(実際にはバージョン1.0が最近リリースされました)が、一部の開発者の間でミニ戦争があり、それがfork avconvにつながりました。debian / ubuntuのメンテナーがavconvを支持しただけです。「このプログラムは廃止されました」というメッセージは完全に誤解を招くものです。現在の状況については、http//blog.pkh.me/p/13-the-ffmpeg-libav-situation.htmlをご覧ください。
フォイボス

6

私はそのようなものを使用しています:

avconv -f x11grab -s 1024x768 -r 24 -i 0:0 -deadline realtime -b 5000000 -minrate 200000 -maxrate 40000000 recording-filename-000.webm

どこ:

-f x11grab -入力の画面キャプチャ「フォーマット」を強制します。

-s 1024x768入力ファイルの解像度です(別名キャプチャ領域)。たとえば、デスクトップの解像度と同じです。それより小さい場合、記録領域は左上になります。この例では、1024x768の記録領域を使用しました。

-r 24- フレームレート。基本的に、スムーズな録画画像を提供するために実際の映画で使用される23〜30 FPS。ただし、スクリーンキャストでは、これを減らして、より低いビットレートでより良い画像を得ることができます。ゲーム画面のキャプチャには24を使用しました。

-i 0:0ソースとしてディスプレイ0:0を使用するためのヒントです(デバイスはxorg表記です)。モニターが1つしかなく、デフォルトのXorgセットアップがある場合、ほとんどの場合0:0で問題ありません。

-deadline realtime-libvpxへのヒントです。ライブキャプチャが必要です。リアルタイムのパフォーマンスが必要です。そのため、libvpxは、リアルタイムでVP8をエンコードするのが最善です。これを行うには、速度と品質をいくらか犠牲にします。与えられたビットレートでの品質は、非リアルタイムの方法よりも少し悪くなります。しかし、エンコード速度は急上昇します。したがって、私のハードウェアでは、フレームを落とさずに、1024x768 @ 24FPSの激しいシーンを処理できます(ただし、強力なCPUを推奨します)。この例では、適切なFPSで適切な品質のライブキャプチャと、か​​なり広いキャプチャ領域が必要でした。そのため、コーデックによるCPU使用率が問題になる可能性があります。良い結果を得るためにこのヒントが本当に必要だったのはそのためです。

-b 5000000-ビット/秒単位のターゲットビットレート。私は5Mビットを使用して、かなり激しいシーンの多かれ少なかれ良い画像を取得しました。コーデックは、ビデオの平均ビットレート速度をこの値に近づけようとします。この値が低いほど、品質が低下し、ファイルが小さくなります。少し実験して、特定の用途に適したビットレートを知ることができます。ビデオ共有サービスは、オーバーシュートするとビデオをダウンコンバートします。独自のサーバーを使用する場合は、トラフィックを処理するのはユーザー次第です。アンダーシュートすると、画質が悪くなります。価値を自由に変更して、自分に最適なアイデアを見つけてください。5Mbitsは、画像が過度に圧縮されているのを簡単に見ることができないゲームで、強烈なシーンの多かれ少なかれ目に心地よいライブキャプチャを目的としていました。静止アプリケーションをキャプチャするには、基本的にそれよりもはるかに少ない必要があります。

-minrate200000-コーデックの最小許容ビットレートです。キャプチャしたいものの性質に応じて、最小ビットレートを強制して、何があっても合理的に見えるピクタイアを維持したい場合があります。コーデックヒューリスティックにより、ビットレートが必要な値よりもはるかに低くなり、一部のシーンで不適切な画像が表示されることがあります。このオプションを使用すると、シーンが単純でビットレートを落とす可能性があるとコーデックが判断した場合でも、コーデックに強制的に最小ビットレートを維持させることができます。このパラメーターの値が大きいと、コーデックがより低いビットレートを使用できないため、ファイルサイズが大きくなる可能性があります。

-maxrate 40000000-この値は、激しいシーンでの最大バーストビットレートを制御します。一部のシーンで適切な品質を維持するために高速化が必須であると考えられる場合、コーデックを望ましい平均よりもはるかに高くするために、非常に高い値を使用しました。すべての条件で見栄えの良い画像を得るには、これを十分に高く設定することが望ましいです(40MbitsはBlueRayのような速度であり、トリックを行います)。一方、独自のサーバーを使用してストリーミングしようとする場合は、激しいシーンで画質を犠牲にしてこの値を下げる必要があります。それ以外のサーバーは、ユーザーにリアルタイムで配信できないため、目的のバーストビットレートに対応できない可能性があります。プレイヤーはバッファアンダーランに直面します(これは迷惑です)。ビデオ共有サービスは独自に注意を払い、通常は画質を犠牲にしてビデオをより低いパラメーターにダウンコンバートします。

recording-filename-000.webm-出力のファイル名です。.webm拡張子を使用する場合、ffmpeg / avconvは十分に賢く、WEBMが必要であることを理解できます。それは簡単です-avconvはファイル名から希望の形式を推測します。.WEBMファイルは内部のWEBMです。

それだけです-このコマンドはwebmファイルに直接画面記録を行います。追加の変換は必要ありませんlibvpx。可能な限り高速にすることをお勧めします。音声入力の仕様がないため、音声はありません。それはあなたが望むものかもしれませんし、そうでないかもしれません。サウンドの場合、サウンドストリームの入力ソースも指定する必要があります。

PSこれは少し複雑に見えるかもしれませんが、1日の終わりに1つのサイズがすべてに適合できないことがわかります。そのため、すべての状況で見栄えの良い画像を取得するには、コーデックのハンドルを使用して調整する必要があります。Ffmpegは、あなたが必要とするかもしれないすべてのハンドルを提供します。これは、ビデオ変換とエンコードの強力な武器です。したがって、この例は、多少高度なエンコーディングを実行したい人にとっては良い開始点であり、実際にまともな結果を得るために少し実験する準備ができています。


6

Ctrl+ Shift+ Alt+ Rキーの組み合わせを押すと、Ubuntu 11.10 + GNOME ShellでWebM記録を作成できます。

コンボを初めて押すと、通知領域に赤い丸が表示され、記録が開始されたことが示されます。2回目に押すと、赤い丸が消えて、${HOME}/Videosディレクトリに録音されます。

詳細はこちら:Gnome Shell Cheat Sheet:Screencast recording


最初にこれを尋ねたとき、GNOME Shellを持っていませんでした。しかしjhbuild、10.10 からコンパイルして、11.10システムにインストールしていましたが、これも機能することがわかっています。この回答を追加していただきありがとうございます!
クリストファーカイルホートン

現在のバージョン(16.04を使用)では、ビデオは~/Videosのファイル名で保存されますScreencast from {date} {time}.webm
カリーム

3

それを行うにはtransmageddonアプリを使用します。Gstreamerベースのアプリ

sudo apt-get install transmageddon またはここをクリックしてトランスマゲドンをインストール


sudo apt-get installを使用してtransmageddonの依存関係を調べたところ、上記のgstreamer-plugins-uglyパッケージがリストに含まれていました。繰り返しますが、これが私にとって完全に合法であるかどうかはわかりませんが、それは私にとって重要です。
クリストファーカイルホートン

2

Kazamを使用して記録します。

出力はmkvで、Youtubeでうまく機能します。Kazamだけがしばらく更新されていないようです。

ちなみに、私が正しく理解すれば、Tibestiを安全に使用できるはずです。もちろん、巨大なエイリアンの宇宙船があなたを誘aし、ソフトウェアを使用するために拷問を受けるという絶対的な妄想がない限り...


Kazamはsudo apt-getインストール中にffmpegのインストールを要求しますが、合法的に使用できるかどうかはわかりません。
クリストファーカイルホートン

@ Warrioring64、ffmpegは違法だとは思わない...
RolandiXor

私はアメリカにいて、ソフトウェア特許がここで施行されているので、それは私が心配しなければならないものです。私がここで得ていることを理解するのに役立つかもしれないなら、ウィキペディアのこの部分をください。
クリストファーカイルホートン

2
@ Warrioring64-Ubuntuに含まれているバージョンでは、これらのコーデックが削除されています。
RolandiXor

わかりました...しかし、与えられた依存関係をさらに調べてみると、libavcodec-extra-52とlibavutil-extra-52も見つかりました。少し難しいようでしたら申し訳ありませんが、そのようなソフトウェアを使用して現実的に捕まえられなくても、それが良心にあることは望みません。
クリストファーカイルホートン

2

11.10以前

ffmpeg追加のコーデックを必要とせずに、.ogvを.webmに直接変換するために使用できます。別の回答のコメントで述べたように、ffmpegUbuntuが提供するバージョンには、ソフトウェア特許の問題を引き起こす可能性のあるコーデックがデフォルトで付属していません。

これはコマンドラインプログラムです。使用するには、ターミナルウィンドウを開いて次のように入力します。

ffmpeg -i input.ogv output.webm

はい。medibuntuリポジトリなしでffmpegをインストールし、すべての無料バージョンのパッケージを取得し、ffmpeg -i file.wmv -f webm -sameq file.webmでwmvをwebmに簡単にエンコードしました
11

1

imo、動画をWebMに変換する最良の方法はFirefoggです。

  • これはfirefoxプラグインです(したがって、firefoxと同様にマルチプラットフォームツールです)
  • WebM形式に圧縮されます(オープンソース-Web互換コーデック)
  • 複数のエンコードサイズを提供します(最高の圧縮率を実現するのに非常に便利です)
  • 本当に効率的な圧縮率(少なくともH264と同じ)
  • とても使いやすい

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.