Amlogic DTB文件选择

这篇博客详细介绍了国内运营商针对S905系列芯片的不同机型所使用的DTB文件,包括gxl_p212_slowemmc.dtb、glx_p281_1g.dtb和gxbb_p200_1G_100M_RealtekWiFi等,涵盖了Q7、Q5、HM201等机型,并提到部分905L、905M2、905MB机型的适配情况。对于无法适配的905L-3B机型,作者表示将提供后续的修改教程。
摘要由CSDN通过智能技术生成

国内运营商的常见机型:

2018年上半年以前的s905L、905LBj、905M2、905MB机器(Q7、Q5、HM201、R3300L、MG101、M201S、M201D、部分E900V21C,中兴B860AV2.1,TY1208)使用gxl_p212_slowemmc.dtb

部分905L、905M2、905MB机型(部分中兴B860AV2.1,TY1208)使用glx_p281_1g.dtb

s905M的机型(江苏Q5、魔百盒G2 40F、百事通R3300-M)使用gxbb_p200_1G_100M_RealtekWiFi

其他机器所用的dtb:

amlogic s905=p200/p201

amlogic s905x=p212

amlogic s905D=p230/p231

amlogic s905W=p281

amlogic s912=q200/q201

另:大部分905L-B、905L-2B、905L-3B无法适配dtb文件,近期有朋友需要在905L-3B上的dtb,待修改验证后,将会出编写修改教程。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
以下是使用Amlogic平台播放MP4文件的示例代码: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <fcntl.h> #include <sys/stat.h> #include <sys/types.h> #include <sys/mman.h> #include <linux/videodev2.h> #include <linux/v4l2-controls.h> #define VIDEO_DEVICE "/dev/video10" int main(int argc, char **argv) { int fd = open(VIDEO_DEVICE, O_RDWR); if (fd < 0) { perror("Failed to open video device"); return -1; } struct v4l2_capability cap; if (ioctl(fd, VIDIOC_QUERYCAP, &cap) < 0) { perror("Failed to query capabilities"); close(fd); return -1; } struct v4l2_format fmt = { .type = V4L2_BUF_TYPE_VIDEO_OUTPUT, .fmt.pix = { .width = 1920, .height = 1080, .pixelformat = V4L2_PIX_FMT_H264, .field = V4L2_FIELD_NONE, .bytesperline = 0, .sizeimage = 0, .colorspace = V4L2_COLORSPACE_DEFAULT, }, }; if (ioctl(fd, VIDIOC_S_FMT, &fmt) < 0) { perror("Failed to set format"); close(fd); return -1; } struct v4l2_buffer buf = { .type = V4L2_BUF_TYPE_VIDEO_OUTPUT, .memory = V4L2_MEMORY_MMAP, }; if (ioctl(fd, VIDIOC_REQBUFS, &buf) < 0) { perror("Failed to request buffers"); close(fd); return -1; } buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT; buf.memory = V4L2_MEMORY_MMAP; if (ioctl(fd, VIDIOC_QUERYBUF, &buf) < 0) { perror("Failed to query buffer"); close(fd); return -1; } void *data = mmap(NULL, buf.length, PROT_READ | PROT_WRITE, MAP_SHARED, fd, buf.m.offset); if (data == MAP_FAILED) { perror("Failed to mmap buffer"); close(fd); return -1; } struct stat st; if (stat(argv[1], &st) < 0) { perror("Failed to stat file"); munmap(data, buf.length); close(fd); return -1; } int file = open(argv[1], O_RDONLY); if (file < 0) { perror("Failed to open file"); munmap(data, buf.length); close(fd); return -1; } int offset = 0; while (offset < st.st_size) { int size = read(file, data, buf.length); if (size < 0) { perror("Failed to read file"); munmap(data, buf.length); close(fd); close(file); return -1; } buf.bytesused = size; if (ioctl(fd, VIDIOC_QBUF, &buf) < 0) { perror("Failed to queue buffer"); munmap(data, buf.length); close(fd); close(file); return -1; } if (ioctl(fd, VIDIOC_DQBUF, &buf) < 0) { perror("Failed to dequeue buffer"); munmap(data, buf.length); close(fd); close(file); return -1; } offset += size; } munmap(data, buf.length); close(fd); close(file); return 0; } ``` 请注意,上面的代码仅适用于特定的Amlogic平台和特定的MP4文件。如果您想在其他平台或播放其他类型的文件,请根据需要进行修改。另外,请确保您已经安装了正确的视频驱动程序和相关的库。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EmuELEC源码分析

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值