LinkJS-用JavaScript编写编解码器软件
本文镜像https://linkpi.cn/archives/2298本文链接https://blog.csdn.net/weixin_45326556/article/details/163079286LinkJS-用JavaScript编写编解码器软件1. 行业的痛点2. 开启开发者模式3. 用LinkJS开发软件调试运行4. LinkJS的小例子程序4.1 HelloWorld4.2 Stream4.3 LCD4.4 SimpleWeb4.5 Decode4.6 Event4.7 Protocols4.8 Webrtc4.9 Record4.10 Snap4.11 Usb2Hdmi4.12 LED4.13 Uart4.14 Socket1. 行业的痛点市面的视音频编码器大都是嵌入式LINUX设备通常都是厂家配了软件客户的定制化的需求就需要找设备厂家去改软件有些厂家为了满足客户的定制化需求提供了基于C/C的API从理想的角度上看是可以满足部分客户的定制化需求的但实际上在嵌入式开发基于C/C的应用程序需要交叉编译等复杂的过程普通的软件开发者很难掌握。因此XX科技推出了基于JavaScript的开发接口LinkJS只要你会用JavaScript就可以编写视音频编解码器软件大大降低了开发的难度以满足客户的定制化需求。有关LinkJS开发的介绍请参见https://www.yuque.com/linkpi/linkjsLinkJS的小例子程序集合请参见https://gitee.com/LinkPi/ScriptExampleLinkJS是LinkSDK的JS版本开发时需要参考LinkSDK说明https://www.yuque.com/linkpi/linksdkLinkJS编写的完整Encoder请参见https://gitee.com/LinkPi/EncoderJSAI辅助编程的Agent请参见https://www.yuque.com/linkpi/agent2. 开启开发者模式编码器内嵌了LinkJS开发的IDE如需要用LinkJS开发就需要开启开发者模式设备出厂时是关闭的。首先需要登录编码器后台地址http://编码器IP/ 登录成功后不要关闭浏览器在浏览器的地址栏手工输入 http://编码器IP/fac.php 这样就可以看到开发者模式开关示意界面如下把关闭切换成开启系统会弹出重新启动确认按钮界面示意如下点击确认重启按钮系统会重新启动然后就可以进入开发模式了。3. 用LinkJS开发软件调试运行进入开发者模式时系统会提示输入账号密码界面示意图如下:默认账号为admin密码为admin登录后就看到如下的界面顶部的工具栏说明如下我们从项目栏里选择EncoderJS点击工具栏的运行按钮运行过程中的日志在屏幕下方示意图如下点击工具栏的访问项目网页按钮你就可以看到该项目的后台的网页配置示意图如下EncoderJS是一个完整的编码器软件代码量比较大建议新手从小的例子程序入手例如我们从项目栏里选择SimpleWeb示意图如下该项目是一个把VI输入和AI输入如果是ENC1-V3那就是HDMI的视音频输入编码压缩后通过rtmp流输出同时通过VO输出预览如果是ENC1-V3那就是HDMI OUT点击运行按钮程序就开始运行了界面示意如下点击工具栏的访问项目网页按钮你就可以看到该项目的后台配置示意图如下从上面可以看到RTMP流的码率我们还可以用VLC来收这个流示意图如下4. LinkJS的小例子程序为了方便客户理解LinkJS的接口我们提供了很多小例子程序新手可以先试试这些例子以免全面理解LinkJS的接口和开发方法。4.1 HelloWorld切换到开发者模式的默认项目用于展示项目目录结构。运行后可以看到HDMI输出、LCD小屏都会显示“Hello World”。可以在网页后台修改该字符串网页源码中展示了基础的前后端js通信方法。源码https://gitee.com/LinkPi/ScriptExample/tree/master/HelloWorld4.2 Stream音视频编码rtmp推流使用phpvue架构开发项目网页。源码https://gitee.com/LinkPi/ScriptExample/tree/master/Stream4.3 LCD在Stream项目的基础上引入核心库创建了设备上LCD小屏的控制菜单。通过这个项目开发者可以了解如何在LCD屏上实现参数配置等交互。LCD接口说明源码https://gitee.com/LinkPi/ScriptExample/tree/master/LCD4.4 SimpleWeb在LCD项目的基础上删除掉phpvue框架。使用最基本的js库实现前后端通信方便开发者了解并学习如何从零开发一套后台网页。源码https://gitee.com/LinkPi/ScriptExample/tree/master/SimpleWeb4.5 Decode音视频解码功能代码中的url需要在运行之前修改可以是rtsp/rtmp/srt等常见url。源码https://gitee.com/LinkPi/ScriptExample/tree/master/Decode4.6 Event用于展示如何使用模块事件以及调用模块方法的示例项目。该项目构建了一个gop间隔高达8秒的rtsp流通常播放器需要等待一段时间才能开始播放通过客户端接入事件和请求关键帧方法的配合实现了秒播的功能。源码https://gitee.com/LinkPi/ScriptExample/tree/master/Event4.7 Protocols展示了常见的串流协议的创建方法包括rtmp、rtsp、srt、hls、udp、ndi、rist源码https://gitee.com/LinkPi/ScriptExample/tree/master/Protocols4.8 Webrtc展示了如何创建一个webrtc流以及网页播放器。源码https://gitee.com/LinkPi/ScriptExample/tree/master/Webrtc4.9 Record展示了如何通过网页控制设备开始或停止录制以及录制文件的下载。源码https://gitee.com/LinkPi/ScriptExample/tree/master/Record4.10 Snap截图并在网页上刷新显示源码https://gitee.com/LinkPi/ScriptExample/tree/master/Snap4.11 Usb2Hdmi将USB摄像头转为HDMI输出可对接常见usb摄像头、运动相机、pocket3等设备。源码https://gitee.com/LinkPi/ScriptExample/tree/master/Usb2Hdmi4.12 LED用于测试LED接口的调用(Tally灯)实现不同的灯光变换效果。源码https://gitee.com/LinkPi/ScriptExample/tree/master/LED4.13 Uart串口读写源码https://gitee.com/LinkPi/ScriptExample/tree/master/Uart4.14 Sockettcp、udp使用方法源码https://gitee.com/LinkPi/ScriptExample/tree/master/Socket

相关新闻

2026香港医美行业合规观察:正规机构信息透明化成行业新标准

2026香港医美行业合规观察:正规机构信息透明化成行业新标准

随着大湾区跨境消费日趋成熟,大众对于香港医美服务的选择逻辑,已从传统口碑种草,逐步转向资质可查、信息透明、数据合规的理性判断。2026 年行业监管持续细化,医疗类线下机构的线上信息展示规则进一步规范化,单纯营销内…

2026/7/22 9:19:31阅读更多 →
服装短视频-服装电商主图视频展示

服装短视频-服装电商主图视频展示

一件秋装衣服的展示,再展示模特上身的效果图,再针对衣服的细节进行特写(分别是领子、扣子、袖口)。点击AI视频-服装视频-本地上传一件服装-点击立即生成。然后就出来了一条你家服装的主图视频展示。对于服装、童装、睡衣等服饰类目…

2026/7/22 9:19:31阅读更多 →
AI模型落地失败率高达68%?这5类典型场景错配案例,正在毁掉你的ROI

AI模型落地失败率高达68%?这5类典型场景错配案例,正在毁掉你的ROI

更多请点击: https://kaifayun.com 第一章:AI模型落地失败率的结构性归因 AI模型在实验室中表现优异,却在真实业务场景中频繁失效——麦肯锡2023年报告显示,约72%的企业AI项目未能进入规模化部署阶段。这一现象并非源于算法精度不…

2026/7/22 9:17:31阅读更多 →
Tiva™ TM4C129XNCZAD EEPROM初始化与寄存器操作全解析

Tiva™ TM4C129XNCZAD EEPROM初始化与寄存器操作全解析

1. 项目概述与EEPROM核心价值在嵌入式系统开发中,数据持久化是一个绕不开的核心议题。无论是工业控制器需要保存的PID参数、智能家居设备记录的用户习惯,还是车载设备存储的里程信息,这些数据都必须在系统断电后依然完好无损。这就引出了我们…

2026/7/22 10:43:43阅读更多 →
从零搭建你的第一个 Telegram Bot:Bot API 实战指南(Python)

从零搭建你的第一个 Telegram Bot:Bot API 实战指南(Python)

Telegram Bot API 提供了完整的机器人开发能力,支持消息处理、命令交互、Webhook 回调、内联按钮等功能。对于开发者来说,它是一套设计完善且易于上手的 Bot 开发接口。 本文将使用 Python 从零开始创建一个 Telegram Bot,并介绍消息处理机制…

2026/7/22 10:43:43阅读更多 →
记忆系统与 Agent 定制完全指南(六):Agent 编排与调度

记忆系统与 Agent 定制完全指南(六):Agent 编排与调度

title: 记忆系统与 Agent 定制完全指南(六)Agent 编排与调度——多 Agent 协作开发 date: 2026-07-10 category: AI 开发工具 tags: [Claude Code, Agent, 编排, 调度, 协作] 记忆系统与 Agent 定制完全指南(六):Agent…

2026/7/22 10:43:43阅读更多 →
Runtime 如何知道任务完成?

Runtime 如何知道任务完成?

这是 Runtime 最重要职责。 例如,模型输出:继续搜索。 Runtime:继续。 模型输出:修改代码。 Runtime:继续。 模型输出:运行测试。 Runtime:继续。 直到模型输出:Task Complete Runtime&#xff…

2026/7/22 10:43:43阅读更多 →
深入解析SCI/UART寄存器配置:中断、波特率与引脚复用实战

深入解析SCI/UART寄存器配置:中断、波特率与引脚复用实战

1. SCI模块核心架构与设计思路串行通信接口,也就是我们常说的SCI,或者更通俗的UART,是嵌入式开发里最基础、最核心的通信外设之一。说它基础,是因为几乎每个MCU都标配;说它核心,是因为它是设备与外界对话的…

2026/7/22 10:43:43阅读更多 →
大营销平台 —— 活动SKU库存扣减业务及其一致性处理

大营销平台 —— 活动SKU库存扣减业务及其一致性处理

一、前言前面我们搭建了活动订单业务的整体骨架,设计了整体的活动订单流程,我们在责任链中设计了两个节点,一个用于校验,一个用于扣减库存,但是在上一节我们是没有写逻辑的,所以这一节的第一件事就是去补齐…

2026/7/22 10:41:42阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 0:53:59阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/22 0:53:59阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/22 0:53:59阅读更多 →
中小企业小程序开发公司怎么选:预算、上手和售后避坑指南

中小企业小程序开发公司怎么选:预算、上手和售后避坑指南

中小企业做小程序,最常见的矛盾是预算有限,但又不希望功能太单薄;没有技术团队,但又希望后续能自己运营;想快速上线,又担心隐性收费和售后失联。选型时如果只看“低价套餐”或“案例数量”,很容…

2026/7/22 0:01:17阅读更多 →
GEO优化如何沉淀长期内容资产?广拓时代谈AI搜索时代的内容ROI

GEO优化如何沉淀长期内容资产?广拓时代谈AI搜索时代的内容ROI

企业做营销,最怕钱花完了,资产没有留下。 效果广告能带来一段时间的曝光,但预算停止后,流量往往也随之停止。短视频内容可能在几天内冲高,也可能很快沉下去。AI搜索时代,企业需要重新思考一个问题&#xff…

2026/7/22 0:01:17阅读更多 →
Agent 终态判定:何时该停止思考、给出最终回复

Agent 终态判定:何时该停止思考、给出最终回复

Agent 终态判定:何时该停止思考、给出最终回复 一、你的 Agent 在"再想想"的循环里绕了 12 轮,用户已经关窗口了 Agent 与人最大的区别是:人知道什么时候该停下来给答案,Agent 会一直"想"下去。你给 Agent 接…

2026/7/22 0:01:17阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/21 22:53:50阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/21 18:53:30阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/21 18:53:30阅读更多 →