スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« Ubuntu18.04LTSをメイン環境に | トップページ | 多分、MJPEGにも対応 »

WebcamRecorderの開発を開始

この1ヶ月で、Ubuntu用ソフトを3つリリースし、その中には、Windows環境用のAG-デスクトップレコーダー相当のソフトもあったのだが、AG-Webカメラレコーダー相当のソフトは無かった。なので、今日からUbuntu向けにWebcamRecorderの開発を始めた。

Googleで検索しても出てこないので、何時だったかは判らないのだが、ここ数カ月以内くらいには、このブログに、UbuntuでWebカメラを扱うのは可能で、その処理用APIについても、大体の情報収集は終わった、みたいな話を書いている筈だ。

で、最近は、新しいWebカメラを購入してWindows PCで利用する場合にも、同梱ソフトをインストールしなくても使える様になったのだが、これは、ほぼ全てのWebカメラがUSB接続になって、オープンな規格に従って動作する様になったので、使用するにあたって、その機種専用のデバイスドライバは不要になったから、だと思われる。

その結果として、Webカメラのメーカーからデバイスドライバが提供されない筈のUbuntu環境でも、前述のオープンな規格に従った使い方をする様にすれば、Windows環境と同様に、新しいWebカメラでも、と、いうか、新しいWebカメラなら、利用可能になった訳だ。

同様の話はUSB接続のスピーカーについても言える筈なので、昨日書いた様に、作者のUSB接続のJBLスピーカーも、普通に、Ubuntu18.04LTSで利用できた訳なので、ある意味、Linuxからしてみれば、USB様様かもしれない。

更に言えば、Webカメラを扱うアプリケーションも、上記のオープンな規格の仕様に従って作っておけば、異なるメーカー製のWebカメラでも、同じ処理コードで操作可能になるので、USB規格様様、かもしれない。

もっとも、アプリケーションソフトにしてみれば、USB規格があろうが無かろうが、普通は、OS側が異なるメーカー間の仕様の違いを吸収して、同じAPIをアプリケーション用に提供するので、普通は、ハードウェア仕様の事は気にする必要がなく、そのデバイスを使用するために、メーカー製のデバイスドライバが必要になるか、OSが実装している共通ドライバで事足りるのかは問題にはならない。

しかしまあ、PC用の周辺機器は、大昔から、その殆どはWindows向けで、たまに、Macにも対応!、みたいな機器はあるにしても、Ubuntuに対応!!なんてモノは存在しない訳だ。

なので、アプリケーションソフト側としても、そんな、殆ど対応機器がない機器向けにソフトを組む気にはならなかった訳なのだが、前述の様に、最近は、少なくとも、USB接続のWebカメラについては、「USB Video Class」という規格に則った機器が殆どの筈なので、メーカーがUbuntuに対応!と言っていなくても、OS側で、この規格に則ったドライバーを実装しておけば、Windows/macOS環境と同様に、利用可能になった訳だ。

と、言うことで、Ubuntu環境では、Windows/macOS環境と同様に、巷で売られている殆ど全てのWebカメラを普通に利用可能な時代になったので、作者的にも、Webカメラ関連のソフトを開発する事にした訳なのだが、ここの所、気温の上下が激しかったからか、今日は風邪気味で、少し頭痛がしたりもしている。

なので、今日はあまり作業は進まなかったのだが、以前、バラックで組んた処理ルーチンでは、既に、接続しているWebカメラの名称だとか解像度なんかの列挙や映像の読み込みが行えているので、これからの開発では、それらの処理ルーチンを使って、普通に使えるWebカメラレコーダーを作っていくだけだ。

で、このWebカメラレコーダーについても、TiDesktopRecorderと同様に、出力形式はAGM形式に限定する事にするので、半分くらいの処理コードは、TiDesktopRecorderから流用できる。

なので、今日は、とりあえず、TiDesktopRecorderのプロジェクトを変更する形で、TiWebCamRecorderのプロジェクトを作成し、起動すると、ダイアログが表示される所までは持ってきたので、これから行う開発用の環境は構築できた、という事にはなる。

« Ubuntu18.04LTSをメイン環境に | トップページ | 多分、MJPEGにも対応 »

2019年9月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google