{"id":14977966,"url":"https://github.com/raymondcm/mjpg_server","last_synced_at":"2025-10-28T07:30:38.928Z","repository":{"id":73405938,"uuid":"116595047","full_name":"RaymondCM/MJPG_Server","owner":"RaymondCM","description":"Multi-device camera streaming and preview over a network in python","archived":false,"fork":false,"pushed_at":"2018-02-15T11:31:22.000Z","size":40,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-02-01T12:44:11.799Z","etag":null,"topics":["camera","flir-cameras","http-client","http-server","javascript","python27","raspberry-pi-camera","stream","usb-cameras"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RaymondCM.png","metadata":{"files":{"readme":"docs/readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-07T20:02:48.000Z","updated_at":"2024-02-23T15:41:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"991dc861-8329-48ee-85db-f1e0ec00d092","html_url":"https://github.com/RaymondCM/MJPG_Server","commit_stats":{"total_commits":29,"total_committers":1,"mean_commits":29.0,"dds":0.0,"last_synced_commit":"ec04412de6845dc337cd48f2f6de13a79dee522c"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaymondCM%2FMJPG_Server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaymondCM%2FMJPG_Server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaymondCM%2FMJPG_Server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaymondCM%2FMJPG_Server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RaymondCM","download_url":"https://codeload.github.com/RaymondCM/MJPG_Server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238608385,"owners_count":19500370,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["camera","flir-cameras","http-client","http-server","javascript","python27","raspberry-pi-camera","stream","usb-cameras"],"created_at":"2024-09-24T13:56:36.961Z","updated_at":"2025-10-28T07:30:38.467Z","avatar_url":"https://github.com/RaymondCM.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MJPEG Camera Server\n\nProvides an interface to stream camera devices over an ethernet socket and preview them in most modern browsers. \nSupports the following devices [Lepton3 FLIR Camera](https://groupgets.com/manufacturers/flir/products/lepton-3-0), \n[Raspberry PI Cameras](https://www.raspberrypi.org/products/camera-module-v2/) and almost all USB plug and play web-cams\nand inbuilt devices supported by [OpenCV](https://opencv.org/).\n\n## Quick start\n\nRun the server on the camera device host.\n\n```bash\nusage: server.py [-h] [-b IP] [-p PORT] [-d DEVICE]\n\noptional arguments:\n  -h, --help  show this help message and exit\n  -b IP       Server IP Address [Default 0.0.0.0]\n  -p PORT     Server Port [Default: 8080]\n  -d DEVICE   Device Type [Default:auto] (pi|lepton|cv)\n  -w WIDTH    RPi Width [Default:320] \n  -h HEIGHT   RPi Height [Default:240]\n```\n\nRun the client python script on any other machine on the network to preview the camera. \nAlternatively go-to http://192.168.0.XXX:8080/index.html in any modern browser (Change the port and IP accordingly). \nSupport for publishing to a ros node has been added also via a command line argument -r.\n\n```bash\nusage: client.py [-h] [-b IP] [-p PORT] [-w WAIT] [-c BSIZE] [-n NAME]\n                 [-r ROS_SUP]\n\noptional arguments:\n  -h, --help  show this help message and exit\n  -b IP       Server IP Address [Default 127.0.0.1]\n  -p PORT     Server Port [Default: 8080]\n  -w WAIT     Wait for frame [Default: False]\n  -c BSIZE    Byte chunk size [Default: 2048]\n  -n NAME     Node name [Default: auto]\n  -r ROS_SUP  Publish on ros node [Default: False]\n```\n\n## Installation\n\nTo use the FLIR thermal camera run the following command in the project root (Supports Lepton3 only).\n\n```bash\ncd MJPG_Server\ngit clone https://github.com/RaymondKirk/pylepton.git --depth 1\n```\n\nTo use the pi-camera ensure the package is installed and up to-date. \n\n```bash\nsudo apt-get update\nsudo apt-get upgrade\nsudo apt-get install python-picamera\n```\n\nTo use USB camera devices or in-built ones, or to use the client python script, install [OpenCV](https://opencv.org/).\n\n```bash\npip install opencv-python\n```\n\n## Raspberry Pi Setup\n\nTo setup on a Raspberry Pi, follow these instructions [Raspberry Pi Setup](raspberry_pi_setup.md).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraymondcm%2Fmjpg_server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraymondcm%2Fmjpg_server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraymondcm%2Fmjpg_server/lists"}