UJP - 技術情報1

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

Surface Go 2 on Ubuntu Serverでフロントカメラをcamコマンドで使ってみた

Surface Go 2 on Ubuntu Serverでフロントカメラをcamコマンドで使ってみた


概要

更新履歴

  • 2026/05/06 初版

目次

はじめに

  • このドキュメントは,Microsoft Surface Go 2にUbuntu Serverをインストールして,擬似モーションセンサーとして動作する様にセットアップしたあと,X Windowsで動作するカメラアプリでインカメラで撮影をしてみる.
  • 一応,映る程度.

gstreamer1.0-libcameraをインストール

  • gstreamer1.0-libcamera はLinuxの強力なマルチメディアフレームワークである GStreamer で,Surfaceなどのカメラ(libcamera)を扱えるようにするための「仲介役(プラグイン)」.
  • libcamera対応のカメラ映像を、いろいろなアプリで使える形式に変換して流し込むための部品.
  • Surfaceのカメラは特殊なため多くのアプリ(Zoom, Discord, ブラウザなど)が標準で使っている「V4L2」という古い規格をそのままでは理解できません.
ujpadmin@okachimachi:~$ sudo apt install libcamera-tools gstreamer1.0-libcamera🆑
[sudo] password for server:🔑
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done

カメラが他のプロセスに占有されているか確認

  • 現在カメラデバイスを利用しているプロセスを確認.
ujpadmin@okachimachi:~$ sudo fuser /dev/video* /dev/media*
ujpadmin@okachimachi:~$
  • ない模様.
  • デバイスファイルを開いているか確認.
ujpadmin@okachimachi:~$ sudo lsof /dev/video* 2>/dev/null🆑
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
cam     2488 root   15u   CHR   81,4      0t0  763 /dev/video4
cam     2488 root   16u   CHR   81,6      0t0  774 /dev/video6
cam     2488 root   17u   CHR   81,7      0t0  777 /dev/video7
cam     2488 root   18u   CHR   81,5      0t0  764 /dev/video5
cam     2488 root   19u   CHR   81,8      0t0  778 /dev/video8
cam     2488 root   21u   CHR   81,9      0t0  779 /dev/video9
cam     2488 root   22u   CHR  81,11      0t0  781 /dev/video11
cam     2488 root   23u   CHR  81,12      0t0  782 /dev/video12
cam     2488 root   24u   CHR  81,10      0t0  780 /dev/video10
cam     2488 root   25u   CHR  81,13      0t0  783 /dev/video13
cam     2488 root   29u   CHR   81,0      0t0  752 /dev/video0
cam     2488 root   32u   CHR   81,1      0t0  753 /dev/video1
ujpadmin@okachimachi:~$
  • camコマンドが掴んでいる模様.

presence-brightnessのタイマーが動いていたら止める

  • presence-brightnessは擬似モーションセンサーとして動作させているプロセス.
ujpadmin@okachimachi:~$ sudo systemctl stop presence-brightness.timer🆑
ujpadmin@okachimachi:~$
  • プロセスがあったら停止する.
ujpadmin@okachimachi:~$ sudo pkill -9 cam
ujpadmin@okachimachi:~$
  • 再度,カメラデバイスを使っているプロセスがないか確認する.
ujpadmin@okachimachi:~$ sudo lsof /dev/video* 2>/dev/null
ujpadmin@okachimachi:~$

camコマンドを実行する

  • X Windowsを起動し,QTerminalからqcamコマンドを実行する.
ujpadmin@okachimachi:~$ cam &🆑
ujpadmin@okachimachi:~$
  • 次の様な画面が起動する.

  • カメラデバイスを選択する.LNK1はフロントカメラになる.
  • フロントカメラが動作すると,あなたが映ります.

  • camコマンドは,従来の仕組み(V4L2)では動かないカメラを制御するが,ホワイトバランスなどの調整はしないので荒い感じ.
  • 他のカメラアプリをインストールして使おうとすると,ちょっと大変っぽいね.

広告スペース
Google