Change ListSizes function for V4L2 device
This commit is contained in:
@@ -58,9 +58,9 @@ func apiV4L2(w http.ResponseWriter, r *http.Request) {
|
|||||||
|
|
||||||
if source.Name != "" {
|
if source.Name != "" {
|
||||||
sizes, _ := dev.ListSizes(fourCC)
|
sizes, _ := dev.ListSizes(fourCC)
|
||||||
for i := 0; i < len(sizes); i += 2 {
|
for _, wh := range sizes {
|
||||||
size := fmt.Sprintf("%dx%d", sizes[i], sizes[i+1])
|
size := fmt.Sprintf("%dx%d", wh[0], wh[1])
|
||||||
if i > 0 {
|
if source.Info != "" {
|
||||||
source.Info += " " + size
|
source.Info += " " + size
|
||||||
} else {
|
} else {
|
||||||
source.Info = size
|
source.Info = size
|
||||||
|
|||||||
@@ -66,8 +66,8 @@ func (d *Device) ListFormats() ([]uint32, error) {
|
|||||||
return items, nil
|
return items, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *Device) ListSizes(pixFmt uint32) ([]uint32, error) {
|
func (d *Device) ListSizes(pixFmt uint32) ([][2]uint32, error) {
|
||||||
var items []uint32
|
var items [][2]uint32
|
||||||
|
|
||||||
for i := uint32(0); ; i++ {
|
for i := uint32(0); ; i++ {
|
||||||
fs := v4l2_frmsizeenum{
|
fs := v4l2_frmsizeenum{
|
||||||
@@ -85,7 +85,7 @@ func (d *Device) ListSizes(pixFmt uint32) ([]uint32, error) {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
items = append(items, fs.discrete.width, fs.discrete.height)
|
items = append(items, [2]uint32{fs.discrete.width, fs.discrete.height})
|
||||||
}
|
}
|
||||||
|
|
||||||
return items, nil
|
return items, nil
|
||||||
|
|||||||
Reference in New Issue
Block a user