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>

相关推荐
知识领航员1 小时前
蘑兔AI音乐深度实测:功能拆解、实测表现与适用场景
java·c语言·c++·人工智能·python·算法·github
吴声子夜歌1 小时前
Go——并发编程
开发语言·后端·golang
ooseabiscuit1 小时前
Laravel4.x:现代PHP框架的奠基之作
java·开发语言·php
c1s2d3n4cs2 小时前
Qt模仿nlohmann::json进行序列化和反序列化
开发语言·qt·json
AiTop1003 小时前
Claude Code 推出 Agent View:命令行编程正式进入“多线程并发“时代
开发语言·人工智能·ai·aigc
jf加菲猫3 小时前
第21章 Qt WebEngine
开发语言·c++·qt·ui
码农-阿杰3 小时前
深入理解 synchronized 底层实现:从 HotSpot C++ 源码看对象锁与 Monitor 机制
开发语言·c++·
2401_832298103 小时前
AI智能体监管落地,OpenClaw率先建立行业合规标准
开发语言
geovindu4 小时前
go: Lock/Mutex Pattern
开发语言·后端·设计模式·golang·互斥锁模式
知识分享小能手4 小时前
R语言入门学习教程,从入门到精通,R语言日期和时间序列(6)
开发语言·学习·r语言