reprostim qr-parse

Utility to parse video *.mkv recorded by reprostim-videocapture utility and locate integrated QR time codes.

Usage

reprostim qr-parse [OPTIONS] PATH

Options

-m, --mode <mode>

Specify execution mode. Default is PARSE, normal execution. Use INFO to dump video file info like duration, bitrate, file size etc, (in this case PATH argument specifies video file or directory containing video files).

Default:

'PARSE'

Options:

PARSE | INFO

-g, --grayscale <grayscale>

Grayscale conversion method applied to each frame before QR decoding. opencv uses cv2.cvtColor (fast, recommended). numpy uses np.mean (slow, legacy). none passes raw frame as is — may cause errors with some decoders.

Default:

'opencv'

Options:

none | numpy | opencv

-x, --scale <scale>

Frame downscale factor in (0, 1]. At 0.5 frame area is reduced to 25%, cutting decode cost. At 1.0 (default) no resize is applied.

Default:

1.0

-s, --skip <skip>

Number of frames to skip after each processed frame. 0 = process every frame. 1 = process 1 of 2. 2 = process 1 of 3, etc.

Default:

0

-t, --std-threshold <std_threshold>

Grayscale std-deviation pre-filter threshold. Frames with std dev below this value are skipped before QR decode. Set to 0 or less to disable.

Default:

10.0

-q, --qr-decoder <qr_decoder>

QR decoding backend. pyzbar uses pyzbar.decode (default). opencv uses cv2.QRCodeDetector.detectAndDecode. none disables QR decoding entirely — useful for benchmarking.

Default:

'pyzbar'

Options:

none | opencv | pyzbar

-v, --video-decoder <video_decoder>

Video frame decoding backend. Currently only opencv (cv2.VideoCapture) is supported. Placeholder for future backends such as ffmpeg or pyav.

Default:

'opencv'

Options:

opencv

-Q, --qrdet

Enable qrdet-based GPU frame pre-filter. A YOLOv8 QR detector runs on each frame before the full QR decode; frames with no detected QR region are skipped. Requires qrdet and torch packages (pip install reprostim[gpu]).

Default:

False

-M, --qrdet-model-size <qrdet_model_size>

qrdet model size. n (nano) is fastest; s (small) balances speed/accuracy (default); m and l give higher accuracy at greater cost. Only used when –qrdet is set.

Default:

's'

Options:

n | s | m | l

-W, --qr-decoder-workers <qr_decoder_workers>

Number of worker threads for parallel QR decoding. 0 or 1 = sequential (default). N > 1 = parallel with N threads.

Default:

0

Arguments

PATH

Required argument