X-Git-Url: https://git.distorted.org.uk/~mdw/termux-packages/blobdiff_plain/96015885ef1de1311c40327fe60fbb8649a72950..382cfb780ca9a40f80e3932544bd32aeccb66e5a:/packages/termux-api/termux-camera-photo diff --git a/packages/termux-api/termux-camera-photo b/packages/termux-api/termux-camera-photo index d96e022b..7b3836ff 100755 --- a/packages/termux-api/termux-camera-photo +++ b/packages/termux-api/termux-camera-photo @@ -1,38 +1,32 @@ -#!/system/bin/sh - +#!/bin/sh set -e -u +SCRIPTNAME=termux-camera-photo show_usage () { - echo "usage: termux-camera-photo [OPTIONS] " - echo "" - echo "Take a photo and save it in a file. Valid options:" - echo " -c, --camera the ID of the camera to use" - echo "Use termux-camera-info for information about available camera IDs." + echo "Usage: termux-camera-photo [-c camera-id] output-file" + echo "Take a photo and save it to a file in JPEG format." + echo "" + echo " -c camera-id ID of the camera to use (see termux-camera-info), default: 0" + echo "" + exit 0 } -PARAM_CAMERA="" -PARAM_SIZE="" -O=`getopt -l camera: -l help -l size -- c:hs: "$@"` -eval set -- "$O" -while true; do -case "$1" in - -c|--camera) PARAM_CAMERA="--ei camera $2"; shift 2;; - -h|--help) show_usage; exit 0;; - -s|--size) PARAM_SIZE="--ei size_index $2"; shift 2;; - --) shift; break;; - *) echo Error; exit 1;; -esac + +PARAMS="" +while getopts :hc: option +do + case "$option" in + h) show_usage;; + c) PARAMS="--es camera $OPTARG";; + ?) echo "$SCRIPTNAME: illegal option -$OPTARG"; exit 1; + esac done +shift $(($OPTIND-1)) -touch $1 -FILE=`realpath $1` +if [ $# = 0 ]; then echo "$SCRIPTNAME: missing file argument"; exit 1; fi +if [ $# != 1 ]; then echo "$SCRIPTNAME: too many arguments"; exit 1; fi -# Output is like: -# Broadcasting: Intent { cmp=com.termux.api/.PhotoActivity } -# Broadcast completed: result=13, data="http://fornwall.net" -OUTPUT=`am start --user 0 $PARAM_CAMERA $PARAM_SIZE --es file $FILE -n com.termux.api/.PhotoActivity | grep result=1 | cut -d ' ' -f 4` +touch $1 +PARAMS="$PARAMS --es file `realpath $1`" -if [ $? != "0" ]; then - echo "termux-camera-photo failed - see logs by executing 'adb logcat -s termux-api:*'" - exit 1 -fi +@TERMUX_API@ CameraPhoto $PARAMS