您尚未登录。

#1 Re: 全志 SOC » 有朋友在TINA下试过AWTK吗? » 2020-08-28 17:26:24

awtk我没有用过,不过在tina底下如果跑gui程序出现不能跑的情况
有可能是开机脚本里
启动了一个自带gui的进程
导致再运行一个gui的时候会冲突
尤其是对fb的操作
之前也是被自带的minigui影响到过

#3 Re: 全志 SOC » 求个F1C的工程师 » 2020-06-11 17:35:25

就差个蓝牙没调,视频播放也现成

#4 Re: 全志 SOC » 求个F1C的工程师 » 2020-06-11 17:33:15

最近答辩,结束后倒是有兴趣一试,播放MP3的app现成

#6 Re: 技术人生/软件使用技巧/破解经验/技术吐槽/灌水 » 有没有熟悉minigui的前辈指教一下如何使用自定义的按键,不用键盘,我想通过自己的实体按键去控制gui » 2020-05-03 15:04:17

case MSG_TIMER:
        if(wParam == _ID_TIMER)
        {
            //hdc=GetClientDC(hWnd);
            SelectFont(hdc,logfont_rbf_gb16_song);;
            SetBkColor (hdc, PIXEL_black );
            SetBkMode( hdc,BM_TRANSPARENT);
            SetTextColor (hdc, PIXEL_lightwhite);
            SetDlgItemText (hWnd, _ID_TIME_STATIC, GetTime (psTime));
            SetDlgItemText (hWnd, _ID_DATE_STATIC, GetDate(psDate));
            int keys_fd;                                                    
            struct input_event key_event;
            keys_fd = open(DEV_PATH, O_RDONLY);
   
            if(keys_fd <= 0)
            {
                printf("open /dev/input/event0 device error!\n");
                return -1;
            }
            else 
            printf("open /dev/input/event0 device successfuly.\n");
       
        if(read(keys_fd, &key_event, sizeof(key_event))==sizeof(key_event))
            {
                if(key_event.type==EV_KEY && key_event.value==EV_PRESS)
                {
                    printf("\ntplayerdemo_key#");   
                    switch(key_event.code)
                {
                    case VOL_UP:
                        tplayer_setvolume(20);
                        break;
                    case VOL_DOWN:
                        tplayer_setvolume(0);
                        break;
                    default:    break;
                }
                }
            }

            //ReleaseDC(hdc);
        }
在定时器中加了按键识别,read调用是会阻塞吗

#8 Re: 技术人生/软件使用技巧/破解经验/技术吐槽/灌水 » MiniGui使用,每隔一秒在静态框中显示系统时间,有时会闪一下,有大佬看看代码哪有问题吗,官方的例子 » 2020-04-22 09:24:33

novice 说:

试试这样:
CreateInfo.dwExStyle = WS_EX_TOOLWINDOW | WS_EX_CLIPCHILDREN;

感谢前辈们的评论,这个我看文档写的影响绘图效率就没加,不过问题我找到了:
首先官方3.0文档定时器例子部分代码确实有问题,其中少了一个大括号,其次这段程序也许在x86上跑不会出现问题(本地环境没搭所以没测,直接上板子),但是低端嵌入式产品绘制的时候文字带背景绘图就会在定时绘图的情况下绘图出现文字背景的噪点,只要是字符串都有这毛病(是不是时间无关),将文字背景改成透明的就行了,用什么写字的API都可以。
minigui用的人是不是太少了,网上讨论的帖子也很旧,多来些大佬讨论讨论哈哈

#9 技术人生/软件使用技巧/破解经验/技术吐槽/灌水 » MiniGui使用,每隔一秒在静态框中显示系统时间,有时会闪一下,有大佬看看代码哪有问题吗,官方的例子 » 2020-04-18 21:25:13

ffplay
回复: 3

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <time.h>

#include <minigui/common.h>
#include <minigui/minigui.h>
#include <minigui/gdi.h>
#include <minigui/window.h>
#include <minigui/control.h>

#define _ID_TIME_STATIC     110
#define _ID_TIMER           100

static PLOGFONT logfont_rbf_gb12_song,logfont_rbf_gb16_song;//创建逻辑字体

static char* mk_time (char* buff)
{
    time_t t;
    struct tm * tm;

    time (&t);
    tm = localtime (&t);
    sprintf (buff, "%02d:%02d:%02d", tm->tm_hour, tm->tm_min, tm->tm_sec);

    return buff;
}

static int TaskBarWinProc (HWND hWnd, int message, WPARAM wParam, LPARAM lParam)
{
    char buff [20];
    HDC hdc,timeedit;

    switch (message) {
    case MSG_CREATE:
    {
        timeedit=CreateWindow (CTRL_STATIC, mk_time (buff), WS_CHILD | WS_BORDER | WS_VISIBLE | SS_CENTER,_ID_TIME_STATIC,0, 550, 284, 50, hWnd, 0);
        logfont_rbf_gb12_song = CreateLogFont("ttf", "simsun", "UTF-8",
                FONT_WEIGHT_DEMIBOLD, FONT_SLANT_ROMAN,
                FONT_FLIP_NIL, FONT_OTHER_AUTOSCALE,
                FONT_UNDERLINE_NONE, FONT_STRUCKOUT_NONE, 40, 0);
        logfont_rbf_gb16_song = CreateLogFont ("rbf", "song", "GB2312-0",
                FONT_WEIGHT_BOOK, FONT_SLANT_ROMAN,
                FONT_FLIP_NIL, FONT_OTHER_AUTOSCALE,
                FONT_UNDERLINE_NONE, FONT_STRUCKOUT_NONE,
                32, 0);
        SetWindowFont (timeedit, logfont_rbf_gb16_song);
        SetTimer (hWnd, _ID_TIMER, 100);
        break;
    }
    break;

    case MSG_TIMER:
    {
        SetDlgItemText (hWnd, _ID_TIME_STATIC, mk_time (buff));
        break;
    }
       
    case MSG_CLOSE:
        KillTimer (hWnd, _ID_TIMER);
        DestroyAllControls (hWnd);
        DestroyMainWindow (hWnd);
        PostQuitMessage (hWnd);
        return 0;
    }

    return DefaultMainWinProc (hWnd, message, wParam, lParam);
}

int MiniGUIMain  (int argc, const char* argv[])
{
    MAINWINCREATE CreateInfo;
    HWND hMainWnd;
    MSG Msg;

    CreateInfo.dwStyle = WS_ABSSCRPOS | WS_VISIBLE|WS_CAPTION;
    CreateInfo.dwExStyle = WS_EX_TOOLWINDOW;
    CreateInfo.spCaption = "TaskBar" ;
    CreateInfo.hMenu = 0;
    CreateInfo.hCursor = GetSystemCursor (0);
    CreateInfo.hIcon = 0;
    CreateInfo.MainWindowProc = TaskBarWinProc;
    CreateInfo.lx = 0;
    CreateInfo.ty = 0;
    CreateInfo.rx = 1024;
    CreateInfo.by = 600;
    CreateInfo.iBkColor = PIXEL_black;
    CreateInfo.dwAddData = 0;
    CreateInfo.hHosting = HWND_DESKTOP;

    hMainWnd = CreateMainWindow (&CreateInfo);

   if (hMainWnd == HWND_INVALID)
        return -1;
    ShowWindow (hMainWnd, SW_SHOWNORMAL);
    while (GetMessage (&Msg, hMainWnd)) {
            TranslateMessage (&Msg);
            DispatchMessage (&Msg);
        }
MainWindowThreadCleanup (hMainWnd);
    return 0;
}
#ifndef _MGRM_PROCESSES
#include <minigui/dti.c>
#endif

#11 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2020-01-16 11:56:21

dgtg 说:

这个界面不错噢,请问用的是什么GUI ?

纠正一下错误,这个开机图片是全志的minigui

#13 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2020-01-02 09:35:39

Biftor 说:

Thank you,
Do you mean this http://www.yunshengec.com/en/contact.html company?I am asking because i have doubt about it, it seems their majority not related.

The full name of the company is “深圳市云盛科技有限公司”.Sorry,I don't know which is the official website.You should check it.

#14 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-12-31 09:29:20

Biftor 说:

Hello
Could you please share the tina sdk sources, some how?
I will be grateful.
I really need it.
Thanks.

Try to contact Yunsheng Technology Co., Ltd,they will give you permission to download。

#15 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-12-30 15:59:19

volume2019-12-27.zip
200s播放器,可支持LRADC按键控制音量加减,默认循环播放(有没有大佬解决了循环播放跳转事件太长的问题)

#16 Re: 全志 SOC » 荔枝派音频驱动 » 2019-12-30 15:13:17

qinxiongxu 说:

联系方式吗?

百度搜下公司联系方式呀

#17 Re: 全志 SOC » 荔枝派音频驱动 » 2019-12-29 12:47:53

qinxiongxu 说:

请问tina3.0如何可以获取到,我们项目有需求,谢谢~

联系云盛公司

#18 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-12-28 17:32:17

hxhlb 说:

为自己的不严谨道歉, 和LCD刷新率也有关系, 也同样和framebuffer一样有关系.

改不改framebuffer有影响吗,我没测试出来,就改刷新频率就可以不抖正常播了,你改了有没有什么提升呀

#20 Re: 全志 SOC » 试一试 Ubuntu 18.04 编译f1c200s tina 3.x » 2019-11-22 11:06:01

围观:16.04的编译
此为root模式下编译:
1.error: dereferencing pointer to incomplete type 'RSA {aka struct rsa_st}
解决方法:https://blog.csdn.net/rainforest_c/article/details/82722333
在tina\tools\mkimage\patches下添加对应的文件。

2.error:you should not run configure as root (set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check)
解决方法:https://www.cnblogs.com/djiankuo/p/6230792.html
输入指令:export  FORCE_UNSAFE_CONFIGURE=1
不在root下编译则无2错误,其他错误照着提示安装对应的依赖库。

#21 Re: 全志 SOC » f1c100s USB otg device 模式可以用吗? » 2019-11-21 16:06:53

szyusong 说:

3.10 内核的 RNDIS 搞定了。

f1c100s 的手册中关于 USB 有这样的说明:
Supports up to 3 User-Configurable Endpoints for Bulk , Isochronous, Control and Interrupt
bi-directional transfers (Endpoint1, Endpoint2)
支持 INT 传输的只有 EP1 和 EP2,目前代码采用的是 EP4,是无法工作的。

按如下修改后,在 Windows 下 RNDIS 没问题了。

static const char ep0name [] = "ep0";
static const char ep1in_bulk_name []  = "ep1in-bulk";
static const char ep1out_bulk_name [] = "ep1out-bulk";
#if 1
static const char ep2in_bulk_name []  = "ep2-int"; // 作为 INT 节点,为了 usb_ep_autoconfig 能查询到
#else
static const char ep2in_bulk_name []  = "ep2in-bulk";
#endif
static const char ep2out_bulk_name [] = "ep2out-bulk";
static const char ep3_iso_name []     = "ep3-iso";
static const char ep4_int_name []     = "ep4-int";
static const char ep5in_bulk_name []  = "ep5in-bulk";
static const char ep5out_bulk_name [] = "ep5out-bulk";
	.ep[3] = {
		.num			= 2,
		.ep = {
			.name		= ep2in_bulk_name,
			.ops		= &sunxi_udc_ep_ops,
			.maxpacket	= SW_UDC_EP_FIFO_SIZE,
		},
		.dev		        = &sunxi_udc,
		//.fifo_size	        = SW_UDC_EP_FIFO_SIZE,
		.bEndpointAddress   = (USB_DIR_IN | 2),
#if 1
		.bmAttributes	    = USB_ENDPOINT_XFER_INT,
#else
		.bmAttributes	    = USB_ENDPOINT_XFER_BULK,
#endif

是在sunxi_udc.h和sunxi_udc.c里修改吗?

#22 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-11-21 10:35:21

本帖问题已找出,仔细浏览一下之前的楼层!!!

#23 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-11-14 10:31:21

dgtg 说:

我也想玩硬解H264...

搞个官方的sdk就成啦

#24 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-11-11 13:43:59

dgtg 说:
傅伟清 说:

11-8.zip200s华嵌40pin通用液晶点屏,视频播放不抖动的镜像,背光脚为PE6,PE9(需手动拉高https://whycan.cn/files/members/1833/VID_20191108_182643.mp4)

C200,这个是用官方的Linux bsp播放H264的文件吗?

嗯嗯,硬解的

#25 Re: 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-11-05 19:54:37

QQ图片20191105195154.jpg

参数没问题的,启动log都显示出来了
我现在只在怀疑framebuffer的大小了
暂时还不知道在哪改,明天弄些图片刷刷再测试下

#26 全志 SOC » F1C100s tina3 程序, 请教屏闪是怎么回事? » 2019-11-05 19:28:48

ffplay
回复: 57




------------------------------------------
问题已解决, 在 11 楼 提供固件下载:

烧录固件下载: 11-8.zip

#30 Re: 全志 SOC » 关于分辨率 » 2019-11-01 10:40:56

我记得 V3s 只要改一次 u-boot 的分辨率就行, Linux 自动跟着修改了。

可能由于Linux4.14 之后显示驱动架构修改了, 所以 linux 的 dts 还要调整一次 lcd 的分辨率等参数。

#32 Re: 全志 SOC » 关于分辨率 » 2019-11-01 10:17:56

f1c100s 改 u-boot 的参数:

CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:87,ri:40,up:31,lo:13,hs:1,vs:1,sync:3,vmode:0"

#35 Re: 全志 SOC » V3s SPI NAND u-boot @openwrt » 2019-11-01 08:11:16

楼主这是三下五除二就搞定了spi nand, 牛叉牛叉。

#37 Re: 全志 SOC » V3s支持SPI NAND吗?感觉spi nor的速度太慢了 » 2019-10-31 14:51:27

@shaoxi2010 感谢解答, 现在我的情况是, 使用spi nand,  spi & u-boot 都跑起来了, 但是不知道如何读取 spi nand 上的数据, 比如zImage & dtb, 这里需要怎么修改 u-boot 代码呢?

#42 Re: 全志 SOC » V3s支持SPI NAND吗?感觉spi nor的速度太慢了 » 2019-10-31 08:27:23

shaoxi2010 说:

晕哥提到过,spl分页写对就行,改改spi flash驱动就可以了

然后在 u-boot 加载 zImage 和 dtb 那个地方需要修改吗?如果需要, 应该怎么修改呢?

#45 Re: 全志 SOC » xboot 启动代码分析 » 2019-10-30 19:55:42

用心的楼主, 居然跟着注释看懂一点点了.

#48 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 野火开始预售imx6ull开发板了,价格还不错。 » 2019-10-30 18:52:14

kekemuyu 说:

我挺住了没有买,国庆就抢了优惠券,思想斗争还是放弃了。

定力好, 我没有禁住诱惑, 估计又得吃灰了.

#51 Re: 全志 SOC » V3s支持SPI NAND吗?感觉spi nor的速度太慢了 » 2019-10-30 18:25:08

shaoxi2010 说:

uboot需要SPL魔改,改完还是可以的

请问有修改方法吗?

#55 Re: 计算机图形/GUI/RTOS/FileSystem/OpenGL/DirectX/SDL2 » ZLG开源 GUI 引擎 AWTK 1.1 发布 » 2019-10-17 13:57:14

lixianjing 说:
ffplay 说:

请教楼主,可以用scons命令转为 msvc 工程吗?

因为我还是不习惯命令行编程

scons没这个功能。scons + VSCode挺好用的,你可试试。

VSCode是导入一个文件夹编辑对吧?可以单步调试吗?

#56 Re: 计算机图形/GUI/RTOS/FileSystem/OpenGL/DirectX/SDL2 » ZLG开源 GUI 引擎 AWTK 1.1 发布 » 2019-10-17 11:38:20

请教楼主,可以用scons命令转为 msvc 工程吗?

因为我还是不习惯命令行编程

#57 Re: 全志 SOC » 如何把esp32作为WiFi设备挂在到linux内核上 » 2019-10-16 10:13:33

我记得ESP32有个AT固件,就是干这个活的

#58 Re: 全志 SOC » 请问 @晕哥:有打算实验V3S/S3上安装tiny core linux 吗? » 2019-10-13 21:49:02

哪位把 tiny core 做个 V3s 的固件, 我来试一试, 哈哈

#60 Re: 计算机图形/GUI/RTOS/FileSystem/OpenGL/DirectX/SDL2 » arm linux 下littlevgl设置成部分全透明的效果? » 2019-10-08 17:02:57

楼上朋友说得有道理,靠软件去合成界面效率太低了,除非画面很小帧率才会上去.

#61 Re: Php/Nodejs/Web/HTML5/Javascript/微信开发/Python » 现在web前端设计效果比起从前的MFC酷多了 » 2019-10-07 15:33:52

Gentlepig 说:

正在学qt,是不是可以考虑放弃了?

Qt的widget确实不酷了,但是QML还是挺有趣的,类似html5,用用类似javascript的脚本编程,qss渲染界面。

#62 Re: 全志 SOC » v3s如何查看及设置主频 » 2019-10-06 16:09:52

好像这里没有适配好,只能自己改代码,或者通过读寄存器值,自己算一次。

#68 Re: 全志 SOC » v3s开发板,想用按钮驱动产生中断实现开关led灯 » 2019-09-25 14:25:43

可能有,再仔细找找,实在没有就照着抄一次,有错改错。

#71 VMWare/Linux/Ubuntu/Fedora/CentOS/U-BOOT » 刚刚VMWware Ubuntu18.04 挂了, 开机提示硬盘出错, 吓傻我了 » 2019-09-18 19:04:11

ffplay
回复: 2

还好, 根据提示输入 fsck /dev/sda1 抢救回来了, 校验了一下, 重要的文件都还在.

好险, 差点工作不保, 好在 ext4 容错能力还不错.

#73 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-09-17 22:41:49

luo 说:

有弄硬编么?

公司正在申请 tina 的 sdk, 要过些时间才会开始.

#75 Re: 全志 SOC » 新人求教!V3s的启动文件在哪?如何添加开机图片logo » 2019-09-11 15:53:54

bsp的u-boot追求极速启动,不知道默认有没有驱动lcd呢

#76 Re: 全志 SOC » 测试测试 g_serial / g_ether USB Gadget (RNDIS) » 2019-09-06 22:37:43

喜欢 usb rndis 这个大杀器,调试好方便。

#79 Re: Nuvoton N32905/N32926/NUC972/N9H20/N9H26/N9H30 » 请教关于内存的压力测试问题。 » 2019-09-02 19:05:40

sysbench --test=memory 测试内存的分配和传输速度

    我们关注执行的总时间
    --memory-block-size=SIZE 内存块的大小默认 [1K]
    --memory-total-size=SIZE 总的传输文件大小,默认[100G]
    --memory-hugetlb=[on|off] allocate memory from HugeTLB pool [off]
    --memory-oper=STRING 内存操作类型 read/write 默认write
    --memory-access-mode=STRING memory access mode {seq,rnd} [seq]

#80 Re: Nuvoton N32905/N32926/NUC972/N9H20/N9H26/N9H30 » 请教关于内存的压力测试问题。 » 2019-09-02 19:03:47

Linux中测内存读写速度可以使用以下命令:

dd if=/dev/zero of=/dev/null bs=1M count=1024

#82 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 18:04:20

感谢楼上朋友耐心指教,请问默认情况下 ff_simple_idct_arm 这个函数是汇编优化的吗?我还有优化的空间吗?目前就是因为摄像头驱动没有搞定,我猜想着先用文件测试,确定编码器速率没有问题才去弄摄像头驱动程序。

看来是不是应该用 f1c200s, 用内存做文件存储,先排除问题。

#83 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 16:46:46

晕哥小弟 说:

1、效果就是看转换的帧数?
2、为什么不用硬件的编码?

1. 一楼红色圈圈那一行可以看帧率,总帧数等
2. 因为还不会,只能先软件搞搞

#84 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 16:27:30

晕哥小弟 说:

那不就是软件编码么?

对, 就是测试软编码, 哎,太耗CPU了。

#85 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 16:22:32

不是的, 就是把一个 YUV420P 格式的纯像素文件 rawvideoA.yuv 编码成 jpeg格式的文件,

用于测试 f1c100s 的编码能力。

#86 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 16:13:40

# ffmpeg -s 320x240 -pix_fmt yuv420p -i rawvideoA.yuv -vcodec mjpeg -qscale 31 -vb 100k outputA.mov 
ffmpeg version 3.4.5 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7.4.0 (Buildroot 2019.02.2)
  configuration: --enable-cross-compile --cross-prefix=/opt/f1c100s/buildroot-2019.02.2/output/host/bin/arm-buildroot-linux-gnueabi- --sysroot=/opt/f1c100s/buildroot-2019.02.2/output/host/arm-buildroot-linux-gnueabi/sysroot --host-cc=/usr/bin/gcc --arch=arm --target-os=linux --disable-stripping --pkg-config=/opt/f1c100s/buildroot-2019.02.2/output/host/bin/pkg-config --disable-static --enable-shared --prefix=/usr --enable-avfilter --disable-version3 --enable-logging --enable-optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec --enable-avformat --enable-network --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-dxva2 --enable-runtime-cpudetect --disable-hardcoded-tables --disable-mipsdsp --disable-mipsdspr2 --disable-msa --enable-hwaccels --disable-cuda --disable-cuvid --disable-nvenc --disable-avisynth --disable-frei0r --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libdc1394 --disable-libgsm --disable-libilbc --disable-libvo-amrwbenc --disable-symver --disable-doc --enable-gpl --enable-nonfree --enable-ffmpeg --enable-ffplay --enable-ffserver --enable-avresample --enable-ffprobe --enable-postproc --enable-swscale --enable-indevs --disable-alsa --enable-outdevs --enable-pthreads --enable-zlib --disable-bzlib --disable-libfdk-aac --disable-libcdio --disable-gnutls --enable-openssl --disable-libdrm --disable-libopenh264 --disable-vaapi --disable-vdpau --disable-mmal --disable-omx --disable-omx-rpi --disable-libopencv --disable-libopus --disable-libvpx --disable-libass --disable-libbluray --disable-librtmp --disable-libmp3lame --disable-libmodplug --disable-libspeex --disable-libtheora --disable-libwavpack --disable-iconv --enable-libfreetype --disable-fontconfig --disable-libopenjpeg --disable-libx264 --disable-libx265 --disable-x86asm --disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --disable-armv6 --disable-armv6t2 --disable-vfp --disable-neon --disable-altivec --extra-libs=-latomic --enable-pic --cpu=arm926ej-s
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
[rawvideo @ 0x6e400] Estimating duration from bitrate, this may be inaccurate
Input #0, rawvideo, from 'rawvideoA.yuv':
  Duration: 00:00:09.76, start: 0.000000, bitrate: 23040 kb/s
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 320x240, 23040 kb/s, 25 tbr, 25 tbn, 25 tbc
Please use -q:a or -q:v, -qscale is ambiguous
File 'outputA.mov' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 0x9cf80] deprecated pixel format used, make sure you did set range correctly
Output #0, mov, to 'outputA.mov':
  Metadata:
    encoder         : Lavf57.83.100
    Stream #0:0: Video: mjpeg (jpeg / 0x6765706A), yuvj420p(pc), 320x240, q=2-31, 100 kb/s, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.107.100 mjpeg
    Side data:
      cpb: bitrate max/min/avg: 0/0/100000 buffer size: 0 vbv_delay: -1
frame=  244 fps= 27 q=31.0 Lsize=     673kB time=00:00:09.72 bitrate= 567.2kbits/s speed=1.09x    
video:671kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.247602%

320x240 分辨率可以接近 30fps

#87 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 15:45:30

# ffmpeg -s 640x480 -pix_fmt yuv420p -i rawvideoA.yuv -vcodec mjpeg -qscale 3 outputA.mov
ffmpeg version 3.4.5 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7.4.0 (Buildroot 2019.02.2)
  configuration: --enable-cross-compile --cross-prefix=/opt/f1c100s/buildroot-2019.02.2/output/host/bin/arm-buildroot-linux-gnueabi- --sysroot=/opt/f1c100s/buildroot-2019.02.2/output/host/arm-buildroot-linux-gnueabi/sysroot --host-cc=/usr/bin/gcc --arch=arm --target-os=linux --disable-stripping --pkg-config=/opt/f1c100s/buildroot-2019.02.2/output/host/bin/pkg-config --disable-static --enable-shared --prefix=/usr --enable-avfilter --disable-version3 --enable-logging --enable-optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec --enable-avformat --enable-network --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-dxva2 --enable-runtime-cpudetect --disable-hardcoded-tables --disable-mipsdsp --disable-mipsdspr2 --disable-msa --enable-hwaccels --disable-cuda --disable-cuvid --disable-nvenc --disable-avisynth --disable-frei0r --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libdc1394 --disable-libgsm --disable-libilbc --disable-libvo-amrwbenc --disable-symver --disable-doc --enable-gpl --enable-nonfree --enable-ffmpeg --enable-ffplay --enable-ffserver --enable-avresample --enable-ffprobe --enable-postproc --enable-swscale --enable-indevs --disable-alsa --enable-outdevs --enable-pthreads --enable-zlib --disable-bzlib --disable-libfdk-aac --disable-libcdio --disable-gnutls --enable-openssl --disable-libdrm --disable-libopenh264 --disable-vaapi --disable-vdpau --disable-mmal --disable-omx --disable-omx-rpi --disable-libopencv --disable-libopus --disable-libvpx --disable-libass --disable-libbluray --disable-librtmp --disable-libmp3lame --disable-libmodplug --disable-libspeex --disable-libtheora --disable-libwavpack --disable-iconv --enable-libfreetype --disable-fontconfig --disable-libopenjpeg --disable-libx264 --disable-libx265 --disable-x86asm --disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --disable-armv6 --disable-armv6t2 --disable-vfp --disable-neon --disable-altivec --extra-libs=-latomic --enable-pic --cpu=arm926ej-s
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
[rawvideo @ 0x6e380] Estimating duration from bitrate, this may be inaccurate
Input #0, rawvideo, from 'rawvideoA.yuv':
  Duration: 00:00:02.44, start: 0.000000, bitrate: 92160 kb/s
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 640x480, 92160 kb/s, 25 tbr, 25 tbn, 25 tbc
Please use -q:a or -q:v, -qscale is ambiguous
File 'outputA.mov' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 0x809d0] deprecated pixel format used, make sure you did set range correctly
Output #0, mov, to 'outputA.mov':
  Metadata:
    encoder         : Lavf57.83.100
    Stream #0:0: Video: mjpeg (jpeg / 0x6765706A), yuvj420p(pc), 640x480, q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.107.100 mjpeg
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
frame=   61 fps=5.9 q=3.0 Lsize=    1257kB time=00:00:02.40 bitrate=4289.1kbits/s speed=0.232x    
video:1256kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.076685%

品质各种调整 3 (2 - 31) 帧率也没什么变化。

#88 Re: 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 15:12:40

ffplay@ubuntu:/mnt/hgfs/D/newfiles$ ffmpeg -s 640x480 -pix_fmt yuv420p -i /tmp/rawvideoA.yuv -vcodec mjpeg /tmp/outputA.mov 
ffmpeg version 0.8.6-6:0.8.6-1ubuntu2, Copyright (c) 2000-2013 the Libav developers
  built on Mar 30 2013 22:20:06 with gcc 4.7.2
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
[rawvideo @ 0x2244360] Estimating duration from bitrate, this may be inaccurate
Input #0, rawvideo, from '/tmp/rawvideoA.yuv':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0.0: Video: rawvideo, yuv420p, 640x480, 25 tbr, 25 tbn, 25 tbc
File '/tmp/outputA.mov' already exists. Overwrite ? [y/N] y
Incompatible pixel format 'yuv420p' for codec 'mjpeg', auto-selecting format 'yuvj420p'
[buffer @ 0x224cec0] w:640 h:480 pixfmt:yuv420p
[avsink @ 0x2243d00] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0x2245600] w:640 h:480 fmt:yuv420p -> w:640 h:480 fmt:yuvj420p flags:0x4
Output #0, mov, to '/tmp/outputA.mov':
  Metadata:
    encoder         : Lavf53.21.1
    Stream #0.0: Video: mjpeg, yuvj420p, 640x480, q=2-31, 200 kb/s, 25 tbn, 25 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press ctrl-c to stop encoding
frame=  275 fps=210 q=24.8 Lsize=    2538kB time=11.00 bitrate=1890.5kbits/s    
video:2536kB audio:0kB global headers:0kB muxing overhead 0.110687%

用 辣鸡电脑Ubuntu 试了一下, 同样的品质, 电脑可以达到 200fps 以上。

#89 全志 SOC » 主频提升到 816Mhz, f1c100s 主线软件编码640x480 YUV文件为JPEG 格式, 帧率也只有6fps » 2019-08-31 15:07:22

ffplay
回复: 31
# ffmpeg -s 640x480 -pix_fmt yuv420p -i rawvideoA.yuv -vcodec mjpeg outputA.mov
ffmpeg version 3.4.5 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7.4.0 (Buildroot 2019.02.2)
  configuration: --enable-cross-compile --cross-prefix=/opt/f1c100s/buildroot-2019.02.2/output/host/bin/arm-buildroot-linux-gnueabi- --sysroot=/opt/f1c100s/buildroot-2019.02.2/output/host/arm-buildroot-linux-gnueabi/sysroot --host-cc=/usr/bin/gcc --arch=arm --target-os=linux --disable-stripping --pkg-config=/opt/f1c100s/buildroot-2019.02.2/output/host/bin/pkg-config --disable-static --enable-shared --prefix=/usr --enable-avfilter --disable-version3 --enable-logging --enable-optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec --enable-avformat --enable-network --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-dxva2 --enable-runtime-cpudetect --disable-hardcoded-tables --disable-mipsdsp --disable-mipsdspr2 --disable-msa --enable-hwaccels --disable-cuda --disable-cuvid --disable-nvenc --disable-avisynth --disable-frei0r --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libdc1394 --disable-libgsm --disable-libilbc --disable-libvo-amrwbenc --disable-symver --disable-doc --enable-gpl --enable-nonfree --enable-ffmpeg --enable-ffplay --enable-ffserver --enable-avresample --enable-ffprobe --enable-postproc --enable-swscale --enable-indevs --disable-alsa --enable-outdevs --enable-pthreads --enable-zlib --disable-bzlib --disable-libfdk-aac --disable-libcdio --disable-gnutls --enable-openssl --disable-libdrm --disable-libopenh264 --disable-vaapi --disable-vdpau --disable-mmal --disable-omx --disable-omx-rpi --disable-libopencv --disable-libopus --disable-libvpx --disable-libass --disable-libbluray --disable-librtmp --disable-libmp3lame --disable-libmodplug --disable-libspeex --disable-libtheora --disable-libwavpack --disable-iconv --enable-libfreetype --disable-fontconfig --disable-libopenjpeg --disable-libx264 --disable-libx265 --disable-x86asm --disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --disable-armv6 --disable-armv6t2 --disable-vfp --disable-neon --disable-altivec --extra-libs=-latomic --enable-pic --cpu=arm926ej-s
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
[rawvideo @ 0x6e370] Estimating duration from bitrate, this may be inaccurate
Input #0, rawvideo, from 'rawvideoA.yuv':
  Duration: 00:00:02.44, start: 0.000000, bitrate: 92160 kb/s
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 640x480, 92160 kb/s, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 0x7fcf0] deprecated pixel format used, make sure you did set range correctly
Output #0, mov, to 'outputA.mov':
  Metadata:
    encoder         : Lavf57.83.100
    Stream #0:0: Video: mjpeg (jpeg / 0x6765706A), yuvj420p(pc), 640x480, q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.107.100 mjpeg
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
frame=   61 fps=6.2 q=24.8 Lsize=     504kB time=00:00:02.40 bitrate=1718.8kbits/s speed=0.243x    
video:503kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.188468%

2019-08-31_150655.png

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn