A basic photo application which allows for zooming, panning, rotating, mirroring, and framing of both image preview and capture when using IP cameras providing an HTTP/MJPG image stream. This app mimics many of the features provided by the iOS version 'SCSnapShot' for built-in cameras. Moreover, there is a macOS version available as well.
Important: All connections to cameras are currently made using http. Camera passwords are saved as unencrypted text in Core Data. Therefore, this app is currently designed to be used within a properly secured and trusted local area network.
Images can be automatically cropped when saving to Photos (if 'AutoCrop' is on in 'Settings'). Zooming is not limited to the center camera preview. You can frame/crop the preview or captured image to the five standard frame sizes of 3x5, 4x6, 5x7, 11x14, and 4x5, or dynamically create your own (long press then drag within image). Moreover, a frame can be adjusted for fine tuning. Lastly, image zoom, pan, and framed area can be locked to prevent accidental changes while mirroring or rotating and before saving image; long press either the frame or lock buttons at bottom to toggle between their locked and unlocked states.
The preview can be rotated and/or mirrored to account for phyical orientation of the device and its intended use in 'Settings'. Captured images can be rotated and mirrored using simple gestures (rotation gesture and two-finger swipe either horizontally or vertically). Additionally, a two-finger double tap undoes any applied rotation or mirroring of captured images. The preview and captured images automatically rotate with the device in addition to any set and/or applied rotation.
Important: IP Camera resolution and other camera features must be set via the camera's own interface software or web portal, as SCSnapShotIP simply requests and then displays the video stream provided by the IP camera.
SCSnapShotIP has been designed around the capturing of images which can subsequently be quickly rotated, mirrored, and cropped as needed. At this point separate image editing tools are necessary to perform all other image manipulation that might be desired after capturing and then saving images to 'Photos'.
The D-Link DCS-933L and Amcrest 1080P IP cameras are currently being used for development and testing.
P.S.: Knowledge of URL(s) for one or more HTTP compliant IP cameras connected to your local area network is required when utilizing the 'Sources' dialog (upper right-hand button on primary interface - the gear) to configure connection(s). Currently a web search is required to determine an http URL for a given make and model of IP camera. Note, not all IP cameras have HTTP MJPG streaming support, and when provided the resolutions and frame rates may not be ideal. Finally, actively monitored security system cameras may very well not support HTTP MJPG streams and can be encrypted, preventing any access to the video stream.