4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GStreamer勉強会 第1回|カメラ映像をリアルタイム表示してみよう!

Last updated at Posted at 2025-07-01

GStreamer勉強会 第1回 カメラ映像をリアルタイムに表示してみよう!

こんにちは!本記事は「GStreamer勉強会」シリーズの第1回です。

第1回は、 PCに接続されたカメラの映像を表示 してみます。

インストール手順

以下のコマンドで GStreamer をインストールします。

macOSの場合
brew install gstreamer gst-plugins-base gst-plugins-good
Windowsの場合
choco install gstreamer --package-parameters="'/Full'" -y

インストールが完了したら、一旦、ターミナルを再起動しましょう。

カメラ映像を表示する

以下のコマンドで、カメラ映像をウィンドウにリアルタイム表示できます!

macOSの場合
gst-launch-1.0 avfvideosrc ! videoconvert ! queue ! autovideosink
Windowsの場合
gst-launch-1.0 mfvideosrc ! videoconvert ! queue ! autovideosink
  • 初回実行時にカメラの使用許可を求められる場合があります
  • macOSの場合、 設定 > プライバシーとセキュリティ > カメラ から、ターミナルにカメラの使用を許可してください

カメラが映らないときの対処法

  • Zoom, OBS, Teams等の他のアプリがカメラを使用中でしたら、止めてください。
  • gst-launch-1.0 の後に -v オプションをつけて実行すると、詳細なログが表示されます

使用エレメントの解説

GStreamer では、エレメントと呼ばれる小さな処理単位をパイプラインでつなぎます。

エレメント Windows macOS 役割
mfvideosrc カメラ入力(ソース)。Windows の Media Foundation を使用してカメラから映像を取得します。
avfvideosrc カメラ入力(ソース)。macOS の AVFoundation を使用してカメラから映像を取得します。
videoconvert 映像フォーマット変換。後続エレメントが扱える形式に整えます(ピクセルフォーマットなど)。
queue 非同期バッファ。エレメント間の処理を独立させ、映像をスムーズに表示できるようにします。
autovideosink 映像の表示。OSに応じた最適な描画バックエンドを自動で選び、画面に表示します。

! の意味

!エレメント同士をつなぐ演算子です。
「このエレメントの出力を、次のエレメントの入力へ流す」という意味になります。

A ! B ! C

これは「A → B → C の順に処理される」ことを表します。

さいごに

次回は、GStreamer を使って カメラ映像をリアルタイムにRTSP配信する方法を解説します!

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?