added controls

This commit is contained in:
ston1th 2021-02-07 14:41:48 +01:00
commit 45063b7d97
3 changed files with 167 additions and 3 deletions

View file

@ -5,8 +5,8 @@ import (
//"encoding/hex"
"fmt"
"image"
"image/jpeg"
"os"
//"image/jpeg"
//"net/http"
"git.giftfish.de/ston1th/webcam"
"time"
@ -22,6 +22,20 @@ func main() {
}
defer cam.Close()
ctrl := cam.GetControls()
for k, value := range ctrl {
fmt.Fprintln(os.Stderr, k)
for _, v := range value {
fmt.Fprintln(os.Stderr, " "+v)
}
}
// https://www.kernel.org/doc/html/latest/userspace-api/media/v4l/control.html#control-ids
err = cam.SetControl(webcam.V4L2_CID_CONTRAST, 0)
if err != nil {
panic(err.Error())
}
formats := cam.GetPixelFormats()
println("Available formats: ")
for k, value := range formats {
@ -65,10 +79,13 @@ func main() {
default:
panic(err.Error())
}
frm, err := cam.ReadFrame()
//frm, err := cam.ReadFrame()
o := jpeg.Options{100}
img, err := cam.ReadJPEG()
jpeg.Encode(os.Stdout, img, &o)
if err == nil {
//print(".")
os.Stdout.Write(frm)
//os.Stdout.Write(frm)
os.Stdout.Sync()
}
}