20240626让飞凌的OK3588-C开发板在相机使用1080p60分辨率下预览

20240626让飞凌的OK3588-C开发板在相机使用1080p60分辨率下预览

2024/6/26 15:15

4.2.1 全编译测试

在源码路径内,提供了编译脚本 build.sh,运行该脚本对整个源码进行编译,需要在终端切换到解压

出来的源码路径,找到 build.sh 文件。

forlinx@ubuntu:~$ cd /home/forlinx/3588/OK3588_Linux_fs

以下操作需要在源码目录下操作,全编译方法:

1、生成编译所需配置(此时需要 forlinx 用户密码,密码也是 forlinx)

forlinx@ubuntu: ~/3588/OK3588_Linux_fs$ sudo ./build.sh BoardConfig-linuxfs-ok3588.mk

2、进行全编译

forlinx@ubuntu: ~/3588/OK3588_Linux_fs$ sudo ./build.sh

编译成功后,使系统镜像将在 rockdev 文件夹下生成,如下图:

4.2.2 单独编译

用户在内核源码路径下进行操作。

forlinx@ubuntu: ~/3588/OK3588_Linux_fs$ sudo ./build.sh kernel

v4l2-ctl --list-devices

v4l2-ctl --list-formats-ext -d /dev/video0

抖动

gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, format=NV12, width=1920,height=1080, framerate=30/1 ! waylandsink

出错

gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, format=NV12, width=1920,height=1080, framerate=60/1 ! waylandsink

抖动

gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, format=NV12, width=1920,height=1080 ! waylandsink

root@ok3588:/#

root@ok3588:/#

V12, width=1920,height=1080, framerate=30/1 ! waylandsink! video/x-raw, format=NV

Setting pipeline to PAUSED ...

Using mplane plugin for capture

Pipeline is live and does not need PREROLL ...

Pipeline is PREROLLED ...

Setting pipeline to PLAYING ...

New clock: GstSystemClock

Redistribute latency...

^Chandling interrupt.

Interrupt: Stopping pipeline ...

Execution ended after 0:00:29.580406555

Setting pipeline to NULL ...

Caught SIGSEGV

exec gdb failed: No such file or directory

Spinning. Please run 'gdb gst-launch-1.0 1570' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.

^C
root@ok3588:/#
root@ok3588:/#
V12, width=1920,height=1080, framerate=60/1 ! waylandsink! video/x-raw, format=NV
Setting pipeline to PAUSED ...
Using mplane plugin for capture
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.001854125
Setting pipeline to NULL ...
Freeing pipeline ...
root@ok3588:/#

root@ok3588:/#

root@ok3588:/#

root@ok3588:/#

V12, width=1920,height=1080 ! waylandsinkice=/dev/video0 ! video/x-raw, format=NV

Setting pipeline to PAUSED ...

Using mplane plugin for capture

Pipeline is live and does not need PREROLL ...

Pipeline is PREROLLED ...

Setting pipeline to PLAYING ...

New clock: GstSystemClock

Redistribute latency...

^Chandling interrupt.

Interrupt: Stopping pipeline ...

Execution ended after 0:00:03.758202503

Setting pipeline to NULL ...

Caught SIGSEGV

exec gdb failed: No such file or directory

Spinning. Please run 'gdb gst-launch-1.0 1588' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.

^C

root@ok3588:/#

录像时在HDMI OUT可以预览
gst-launch-1.0 v4l2src device=/dev/video0 num-buffers=100000 ! video/x-raw,format=NV12, width=1920,height=1080 ! tee name=t ! queue ! mpph264enc ! queue ! h264parse ! qtmux ! filesink location=fpga10000-9500.mp4 t. ! queue ! waylandsink

在HDMI OUT预览时不要保存mp4文件

gst-launch-1.0 v4l2src device=/dev/video0 num-buffers=100000 ! video/x-raw,format=NV12, width=1920,height=1080 ! tee name=t ! queue ! mpph264enc ! queue ! h264parse ! qtmux t. ! queue ! waylandsink

在HDMI OUT预览时,帧数也不要了!
gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,format=NV12, width=1920,height=1080 ! tee name=t ! queue ! mpph264enc ! queue ! h264parse ! qtmux t. ! queue ! waylandsink

root@ok3588:/#

! qtmux t. ! queue ! waylandsinkame=t ! queue ! mpph264enc ! queue ! h264parse

Setting pipeline to PAUSED ...

Using mplane plugin for capture

Pipeline is live and does not need PREROLL ...

Pipeline is PREROLLED ...

Setting pipeline to PLAYING ...

New clock: GstSystemClock

Redistribute latency...

^Chandling interrupt.

Interrupt: Stopping pipeline ...

Execution ended after 1:00:46.847308499

Setting pipeline to NULL ...

Freeing pipeline ...

root@ok3588:/#

D:\20240423wyb\20240626>

D:\20240423wyb\20240626>

D:\20240423wyb\20240626>adb pull /fpga10000-9500.mp4

/fpga10000-9500.mp4: 1 file pulled, 0 skipped. 6.0 MB/s (3281516705 bytes in 522.460s)

D:\20240423wyb\20240626>

相关推荐
东巴图25 分钟前
分解如何利用c++修复小程序的BUG
开发语言·c++·bug
祁同伟.26 分钟前
【C++】二叉搜索树(图码详解)
开发语言·数据结构·c++·容器·stl
恒者走天下26 分钟前
AI智能网络检测项目(cpp c++项目)更新
开发语言·c++
shayudiandian1 小时前
JavaScript性能优化实战
开发语言·javascript·性能优化
老K的Java兵器库1 小时前
集合性能基准测试报告:ArrayList vs LinkedList、HashMap vs TreeMap、并发 Map 四兄弟
java·开发语言
枫叶丹41 小时前
【Qt开发】多元素类控件(二)-> QTableWidget
开发语言·qt
bin91531 小时前
当AI开始‘映射‘用户数据:初级Python开发者的创意‘高阶函数‘如何避免被‘化简‘?—— 老码农的函数式幽默
开发语言·人工智能·python·工具·ai工具
Nebula_g2 小时前
Java哈希表入门详解(Hash)
java·开发语言·学习·算法·哈希算法·初学者
努力努力再努力wz2 小时前
【C++进阶系列】:万字详解unordered_set和unordered_map,带你手搓一个哈希表!(附模拟实现unordered_set和unordered_map的源码)
java·linux·开发语言·数据结构·数据库·c++·散列表