Skip to main content

Add your description here

Project description

pogucam - Poor Guy Camera

Overview

pogucam is a simple camera utility that can read JPEG streams from an IP address, capture video from a local video device, or experimentally receive images from a local MQTT server.

Input Sources

  • JPEG stream from IP address (default port 8000)
  • Video device at /dev/videoX (default 0)
  • Experimental: image topic from local MQTT server 'image/raw8000'

Running pogucam

Run pogucam from the command line with the following syntax:

pogucam [URL] [-r RESOLUTION] [-f FOURCC]

Arguments:
  URL           IP address or device path (default: 127.0.0.1)

Options:
  -r, --resolution RESOLUTION   Set resolution (default: 640x480)
  -f, --fourcc FOURCC           Set pixel format: YUYV or MJPG (default: YUYV)

Examples:
  pogucam 192.168.1.10 -r 800x600 -f MJPG
  pogucam /dev/video0
 # for video 0 with resolution and mode
  pogucam  0 -f YUYV -r 1920x1080

Keypress Commands Summary

  • S: Save image
    • S: save one image
    • Shift+S: toggle saving all images
    • Ctrl+Shift+S: toggle saving JPG format
    • Alt+S: toggle saving FITS only
  • X: Switch resolution / extend image
    • X: toggle local 2x image extend
    • Shift+X: send remote switchreson command
    • Ctrl+X: send remote switchresoff command
  • P: Toggle print text overlays
    • P: toggle terminal text
    • Shift+P: toggle overlay text
  • E: Adjust exposure (remote)
    • E: increase exposure
    • Shift+E: decrease exposure
    • Ctrl+E: reset exposure
  • G: Adjust gain (remote)
    • G: increase gain
    • Shift+G: decrease gain
    • Ctrl+G: reset gain
  • Y: Adjust gamma (remote)
    • Y: increase gamma
    • Shift+Y: decrease gamma
    • Ctrl+Y: reset gamma
  • D: Adjust local gamma
    • D: increase gamma
    • Shift+D: decrease gamma
    • Ctrl+D: reset gamma
  • W: Open web browser to URL (local)
  • Z: Zoom (local)
    • Z: zoom in
    • Shift+Z: zoom out
    • Ctrl+Z: reset zoom
  • H, J, K, L: Move red cross (local) or send remote commands with Ctrl+Shift
  • V: Toggle green cross (remote)
  • C: Toggle red cross (local)
  • I: Integrate accumulate (local/remote)
    • I: increase integration
    • Shift+I: decrease integration
    • Ctrl+I: reset integration
    • Ctrl+Shift+I: toggle show accumulation buffer
    • Alt+I: toggle accumulation display mode (avg/sum)
  • B: Background image operations (local/remote)
  • F: Foreground image operations (local)
  • R: Rotate image (local)
  • 1,2,3,4: Load/save configurations
  • T: Test commands and timelapse (local/remote)
  • A: Timelapse control (local)
  • Esc or Q: Quit application

Notes

  • Remote commands are sent via sendcommand with JSON data.
  • Local commands affect display or saving behavior.
  • Some commands print helpful info or ffmpeg usage hints.

MQTT

There are mqtt functionalities in development:

Raw Image sent to mqtt

Raw image means no jpg artifacts when YUYV mode is used. With the image to image/raw8000{.verbatim} topic (for now [2025-07-25 Fri]), other information is encoded and reported.

height, width = image.shape[:2]
header = struct.pack(
    '!HHQddIfff',
    width,
    height,
    int(framenumber),
    timestamp.timestamp(),
    recording_started.timestamp(),
    0,  # padding for alignment if needed
    float(exposition),
    float(gain),
    float(gamma)
)
payload = header + image.tobytes()

Accepting expo,gain,gamma commands

Not

Hanging on topics to display widgets

Not

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pogucam-0.1.23.tar.gz (897.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pogucam-0.1.23-py3-none-any.whl (42.0 kB view details)

Uploaded Python 3

File details

Details for the file pogucam-0.1.23.tar.gz.

File metadata

  • Download URL: pogucam-0.1.23.tar.gz
  • Upload date:
  • Size: 897.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.16

File hashes

Hashes for pogucam-0.1.23.tar.gz
Algorithm Hash digest
SHA256 d127c8550f1429861314694e671c284c7c59df430e67f66b609085b542e4c2b3
MD5 6cf2bb927fe453b8eba2c558e773b05f
BLAKE2b-256 015db9e16932bad6fe779e4ea74a1f9963c3b0398200d41814773295a7b1baa2

See more details on using hashes here.

File details

Details for the file pogucam-0.1.23-py3-none-any.whl.

File metadata

  • Download URL: pogucam-0.1.23-py3-none-any.whl
  • Upload date:
  • Size: 42.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.16

File hashes

Hashes for pogucam-0.1.23-py3-none-any.whl
Algorithm Hash digest
SHA256 41de02ec3a80e67d1744016d9015a724690583128ac42b5f82c51a6ef86ae5ba
MD5 0a9ba44e8b4cff11318581f850e096a6
BLAKE2b-256 5e4ebd8954d968291e37d3b38d23d192414d8bdcabd8cd922e43ffd19d330066

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page