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>

相关推荐
初见无风20 分钟前
4.4 Boost库工具类assign 的使用
开发语言·c++·boost
cs麦子22 分钟前
C语言--详解--冒泡排序(Bubble Sort)
c语言·算法·排序算法
月夜的风吹雨25 分钟前
【C++ STL容器适配器】:解密Stack、Queue与Priority Queue的设计智慧
开发语言·c++·stl·优先级队列··队列·适配器
二川bro29 分钟前
第45节:分布式渲染:Web Workers多线程渲染优化
开发语言·javascript·ecmascript
2501_9411119336 分钟前
基于C++的区块链实现
开发语言·c++·算法
czxyvX1 小时前
010-C++之List
开发语言·c++·list
小艳加油1 小时前
生态学研究突破:利用R语言多元算法实现物种气候生态位动态分析与分布预测,涵盖数据清洗、模型评价到论文写作全流程
开发语言·算法·r语言
程序猿_极客1 小时前
【2025 最新】 Maven 下载安装与配置教程(超详细带图文Windows 版):从入门到实战
java·开发语言·windows·maven·maven安装
励志前端小黑哥1 小时前
uv包管理器--python也有自己的pnpm了
开发语言·python·uv
阿龍17872 小时前
媒体文件问题检测脚本(一)(python+ffmpeg)
开发语言·python