画面録画を MP4 や GIF にエクスポート
トップバーのエクスポートをクリックすると、エクスポートのダイアログが開きます。
形式
- MP4:画質は 720p、1080p、Source。フレームレートは 24 / 30 / 60 fps。コーデックは H.264(既定。対応するプレーヤーがより多い)または H.265。
- GIF:フレームレートは 15 / 20 / 25 / 30 fps、サイズは Medium / Large / Original。GIFをループの切り替えもあります。
VP9 は削除されました。ネイティブのパイプラインが対象とする GPU には VP9 のハードウェアエンコーダーがなく、ソフトウェアによるフォールバックは遅すぎて、ほかと同列の選択肢として提供できませんでした。
解像度
ダイアログには、タイムラインのアスペクト比に応じて、各画質で出力される正確なピクセルサイズが表示されます。
Source は、もっとも小さいクリップのクロップ後の実際のサイズに合わせるため、仕組み上アップスケールが起きません。タイムライン上のどのクリップも、実際の解像度を超えて引き伸ばされることはありません。固定の 720p と 1080p は、元のサイズに関係なく短辺を指定の値にそろえるため、小さなクリップをアップスケールすることがあります。その場合、ダイアログはその画質にバッジを表示します。
エクスポートの手順
- 形式と画質を設定し、エクスポートを押します。
- ネイティブのファイルダイアログで保存先を選びます。
- ダイアログには、エンコーダーからの実際の進行状況が表示されます。レンダリング済みのフレーム数と総フレーム数、残り時間が表示されたあと、書き込みの段階に移ります。
- 成功したら、フォルダーで表示でファイルの場所をすぐに開けます。
レンダリングや書き込みの途中で問題が起きた場合は、ダイアログにエラーが表示されるので、再試行できます。
MP4 のレンダリングの仕組み
MP4 のエクスポートは、ライブプレビューを描画しているのと同じネイティブの Rust コンポジター(Windows では Direct3D 11、macOS では Metal、Linux では wgpu/WGSL)を通り、クリップを 1 本ずつ、単一の GPU デバイス上で処理します(デマックス → デコード → 合成 → エンコード → マックス)。Windows では、AMD(AMF)と NVIDIA(NVENC)のエンコーダーが合成済みのフレームを GPU から直接受け取り、途中で CPU への読み戻しは発生しません。Intel Quick Sync、Media Foundation、ソフトウェアによるフォールバックには、システムメモリ上のコピーが渡されます。macOS では VideoToolbox がエンコードします。H.264 のエクスポートは、VideoToolbox が許す場合はエンコーダー自身のバッファーに直接レンダリングされます。一方、H.264 の再試行の経路、すべての H.265 のエクスポート、ソフトウェアによるフォールバックには、システムメモリ上のコピーが渡されます。Linux では、ドライバースタックが対応していれば、H.264 のエクスポートは VAAPI 経由で GPU エンコーダーに送られ、こちらも CPU へのコピーは発生しません。それ以外の場合と、すべての H.265 のエクスポートでは、フレームを読み戻してソフトウェアでエンコードします。エクスポート中はプレビューが自動的に一時停止し、両者が GPU を奪い合わないようにしています。
プレビューとエクスポートは同じシーン記述を使うため、見ているフレームがそのまま出力されます。エクスポート専用のレンダラーが別にあって結果がずれる、ということはありません。
MP4 と GIF のエクスポートは、どちらも Windows、macOS、Linux で動作します。違うのは Linux での速度です。H.264 が GPU を使うのは VAAPI と Vulkan デバイスが対応している場合だけで、H.265 は常にソフトウェアでエンコードされるため、Linux ではこれらのエクスポートに時間がかかります。GPU の経路に必要な条件は、Linux での MP4 エクスポートの注記にまとめています。
エクスポートしたファイルとプロジェクトファイル
エクスポートで作られるのは、完成してフラット化された動画(または GIF)で、あとから編集することはできません。あとで編集を続けたい場合は、代わりに .openscreen のプロジェクトとして保存してください(編集とタイムラインを参照)。プロジェクトファイルには、すべてのクリップ、ズーム、トリム、注釈、設定がそのまま保持されます。