v4l2-compliance - クラウドでオンライン

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの 4 つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド v2lXNUMX-compliance です。

プログラム:

NAME


v4l2-compliance - video4linux ドライバーをテストするアプリケーション

SYNOPSIS


v4l2-準拠 [-h] [-d ] [-r ] [-V ] [-S ] [-e ] [-s ]
[-f] [-a] [-c 色= 、スキップ= ,perc=] [-n] [-T] [-v] [-w]

DESCRIPTION


v4l2 準拠ツールは、ビデオ、vbi、ラジオ、またはビデオのいずれかの video4linux デバイスをテストするために使用されます。
swradio、入力と出力の両方。 V4L2 デバイスのほぼすべての側面をテストしようとします。
ほぼすべての V4L2 ioctl をカバーしています。 ビデオキャプチャのサポートが非常に優れており、
出力、VBI キャプチャと出力、および (ソフトウェア) 無線チューニングと送信。

現時点では、メモリ間デバイスのサポートは制限されています。

v4l2 への準拠について質問がある場合は、Linux にメールしてください。
media@vger.kernel.org メーリングリスト。

ドライバーをテストするときは、常に git からの最新のソース コードからユーティリティをコンパイルします。
リポジトリ (http://git.linuxtv.org/cgit.cgi/v4l-utils.git/)。 Linuxが提供するバージョン
ディストリビューションはほぼ確実に古すぎます。

さらに、テストが失敗した場合は、失敗したソースと行が出力されます。
そのため、テストの内容を確認するにはソース コードにアクセスする必要があることがよくあります。

v4l2-compliance は、V4L2 API に対する準拠性をテストするだけでなく、
ドライバーがすべての正しいフレームワークを使用しているかどうか。 これらのフレームワークは多くの場合、
厳密に言えばオプションですが無料で提供される ioctl を自動的に提供します
それらのフレームワークを使用する場合。 v4l2-compliance ユーティリティは、それらの存在を要求することにより、
その使用を強制します。

新しい V4L2 ドライバーを送信する場合、そのドライバーは v4l2 準拠に合格する必要があります。
失敗のないテスト。 このツールを使用してドライバーをテストする最良の方法は、まず次のことです。
ストリーミング オプションを使用せずにテストし、最初に報告された障害から次の障害まですべての障害を修正します。
最後。 場合によっては、以前の障害が後の障害を生み出す可能性があるため、まずは修正を開始してください
それらを順番に実行し、修正するたびに再度テストします。

次にドライバーをテストします。 -s 基本的なストリーミング テストを実行するオプション。 これには必要です
有効な入力または出力があることを確認します。

v4l2-compliance を実行するたびに、現在のドライバーの状態が保存され、復元されます。
すべてのテストが完了した後 (Ctrl-C を押したときを含む)。 すべてのストリーミング テストは次のとおりです。
保存された設定を使用して実行されます。 これにより、
v4l2-compliance を呼び出す前にデバイスを構成してストリーミング テストを実行します。

最後に、次を使用してドライバーをテストする必要があります。 -f-c すべてのビデオを確認するオプション
ピクセル形式が正しくサポートされています。 XNUMX つのストリーミング テストをすべて実行する必要があります。
すべての入力と出力。 使用できます -a 可能であればそれを自動化するオプション
あなたのハードウェア。

ドライバーがすべてのテストに合格した場合、ドライバーは非常に優れた状態にあると確信できます。
いい形!

OPTIONS


-d, - 端末=
デバイスを使用するビデオデバイスとして。 もしは数字、その後は /dev/video は
中古。

-V, --vbi デバイス=
デバイスを使用するvbi デバイスとして。 もしは数字、その後は /dev/vbi は
中古。

-r, --無線デバイス=
デバイスを使用する無線装置として。 もしは数字、その後は /dev/radio は
中古。

-S, --sdr-デバイス=
デバイスを使用するSDR デバイスとして。 もしが数字の場合、/dev/swradio は
中古。

-e, --exp-buf-デバイス=
デバイスを使用するDMABUF を実行するための DMABUFFer のエクスポートに使用されるビデオ デバイスとして
ストリーミングテスト。 もしは数字、その後は /dev/video 使用されている。 このオプションの場合
が指定されていない場合、DMABUF ストリーミング テストはスキップされます。

-s, --ストリーミング=
ストリーミング テストを有効にします。 セットストリーミングするフレーム数 (デフォルト)
60)。 これには、v4l2-compliance が呼び出される前にデバイスが
有効な入力 (または出力) と周波数で構成されている (デバイスに
チューナー)。 DMABUF テストの場合は、--expbuf-device も設定する必要があります。

v4l2-compliance が呼び出されたときのドライバーの構成が使用されます。
ストリーミングテスト用。

-f, --stream-all-formats
利用可能なすべての形式をストリーミングできるかどうかをテストします。 これは、次を使用してストリーミングを試みます
MMAP モードまたは読み取り/書き込み (V4L2_MEMORY_MMAP が使用できない場合) XNUMX 秒間
すべてのフォーマット、すべてのサイズ、すべての間隔、すべてのフィールド値。 加えて、
ドライバーがスケーリング、トリミング、合成をサポートしている場合は、それもテストします。
さまざまな組み合わせ。 ドライバーが多くの組み合わせをサポートしている場合、このテストは
長い時間がかかる場合があります。

v4l2-compliance が呼び出されたときのドライバーの構成が使用されます。
ストリーミングテスト用。

-c, --ストリームオールカラー=カラー=赤|緑|青,スキップ=,=
サポートされているすべての非圧縮形式ストリームの場合フレーム。 最後に
フレームはすべてのピクセルを調べて、R、G、B の色成分のどれを計算するか
ピクセルの値が最も高く、それを赤、緑、または青のピクセルとしてカウントします。 の
少なくとも次の場合にテストは成功します フレームのパーセントには指定された値があります カラー。 この
有効な、主に赤、緑、または青のビデオ信号が存在する必要があります
入力上で。 もし スキップ が指定されていない場合は、最初のフレームをキャプチャするだけです。 あ
ゼロ以外 スキップ この値は、デバイスのキャリブレーションに数フレームかかる場合に役立ちます。
If が指定されていない場合、デフォルトの 90% になります。

ほとんどの信号発生器は、純粋な赤、青、または緑のビデオを生成できます。 のために
カメラでは、完全に赤、緑、または青の写真を印刷し、事前に保持することができます。
カメラ。

このテストの目的は、すべてのピクセル形式が赤を解釈できるかどうかを判断することです。
緑と青の色が正しく表示され、色成分が交換されていないことを確認します。

v4l2-compliance が呼び出されたときのドライバーの構成が使用されます。
ストリーミングテスト用。

-a, --stream-all-io
あなたは -s, -c-f ストリーミングテストだけではなく、すべての入力または出力をテストします。
現在の入力または出力。 これには、有効なビデオ信号がすべてのデバイスに存在する必要があります。
入力、またはすべての出力が接続されていることを確認します。

-n, -警告なし
警告メッセージをオフにします。 それらは引き続き概要にカウントされますが、表示されません
それら。

-T, - 痕跡
ioctl と呼ばれるすべてをトレースします。

-v, -詳細
詳細レポートをオンにします。

-w, --ラッパー
すべての V4L2 デバイス アクセスには、libv4l2 ラッパー ライブラリを使用します。 これを行うと、
libv4l2 ライブラリが完全には V4L2 ではないため、一部のテストが失敗します。
準拠しています。 デフォルトでは、v4l2-compliance は libv4l2 をバイパスし、V4L2 にアクセスします。
デバイスを直接操作します。

-h, - 助けて
ヘルプメッセージを出力します。

EXIT ステータス


成功すると0を返します。それ以外の場合は、エラーコードを返します。

onworks.net サービスを使用してオンラインで v4l2 準拠を使用する



最新のLinuxおよびWindowsオンラインプログラム