我正在使用 mjpg-streamer在 BeagleBone 上的 Angstrom Linux 上,并且已经能够从流中捕获图像。然而,我似乎无法将分辨率提高到 640x480 以上。当我尝试设置该选项时,结果显示它正在以我选择的分辨率进行流式传输,但该软件实际上并未保存任何图像。
例如,这个有效:
# ./mjpg_streamer -i "./input_uvc.so -d /dev/video0 -r 640x480 -yuv -n -f 1 -q 80" -o "./output_file.so -f ./tests/ -d 5000"
MJPG Streamer Version: svn rev:
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 1
i: Format............: YUV
i: JPEG Quality......: 80
o: output folder.....: ./tests
o: input plugin.....: 0: ./input_uvc.so
o: delay after save..: 5000
o: ringbuffer size...: no ringbuffer
o: command...........: disabled
虽然这不是:
# ./mjpg_streamer -i "./input_uvc.so -d /dev/video0 -r 1280x720 -yuv -n -f 1 -q 80" -o "./output_file.so -f ./tests/ -d 5000"
MJPG Streamer Version: svn rev:
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 1280 x 720
i: Frames Per Second.: 1
i: Format............: YUV
i: JPEG Quality......: 80
o: output folder.....: ./tests
o: input plugin.....: 0: ./input_uvc.so
o: delay after save..: 5000
o: ringbuffer size...: no ringbuffer
o: command...........: disabled
不过,我成功地将分辨率更改为低于的默认值。
# ./mjpg_streamer -i "./input_uvc.so -d /dev/video0 -r 320x240 -yuv -n -f 1 -q 80" -o "./output_file.so -f ./tests/ -d 5000"
MJPG Streamer Version: svn rev:
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 320 x 240
i: Frames Per Second.: 1
i: Format............: YUV
i: JPEG Quality......: 80
o: output folder.....: ./tests
o: input plugin.....: 0: ./input_uvc.so
o: delay after save..: 5000
o: ringbuffer size...: no ringbuffer
o: command...........: disabled
我试过调整帧率但无济于事。
感谢任何帮助。
最佳答案
我之前也遇到过同样的问题(不过我用的是树莓派),调整目标文件夹的权限即可。我在文件夹 777 上设置了权限,只是为了测试目的,我运行了一个类似于你使用的命令 ./mjpg_streamer -i "input_uvc.so -y --device/dev/video0"-o "output_file.so -f/home/pi/images -d 1500"
而且效果很好
附言不太确定为什么它仍然显示:o: ringbuffer size...: no ringbuffer
.. 但它有效!!
关于streaming - 使用 mjpg-streamer 以高于 640x480 的分辨率捕获图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10742867/