Skip to content

Latest commit

 

History

History
31 lines (31 loc) · 1.52 KB

TODO.md

File metadata and controls

31 lines (31 loc) · 1.52 KB
  • Get bayer images from sensor
  • print out the format that has been set
  • [-] name devices and streams
  • Buffer carousel: on each pad/endpoint have an outstanding buffer. It gets replaced any time a new buffer is dequeued. Similar with inverse direction: buffers returning from outside are written into a queue. - [x] Q: how should it signal buffer availability in both ways, if the other side is idle and waiting? A: seems to just work -- poll() only wakes up whenever something does change and can be polled.
  • Buffer pumper: pump buffers between endpoints on select/poll/epoll. This is the thing that should poke carousels above. How? It should also be aware of buffer being in use (esp. for DMABUF stuff). Threading? E.g. writing into a file/network/etc
  • ❌ Use /dev/video12 to convert bayer to YUV or something mjpeg supports
    • is it the right one? -- this is a simple ISP, it lacks various image controls.
    • It also doesn't work for some reason. → decided not to use
  • Use /dev/video31 (??) to encode MJPEG.
  • Make UVC gadget device to send all this crap into.
    • set it up
    • open v4l
    • feed it
  • configurable debug messages
  • graceful stream on/off
  • controls
  • sensor flipping and format
  • expand to h=992 instead of cropping to 976 - possibly set isp to 992, and then crop image_encode to 990
  • crop from center
  • resolution selector
  • framerate selector
  • format selector
  • more camera types