编译器

终端支持音视频 fec 编码抗网络丢包 负责软件开发 技术点:  海思3536平台音视频处理接口的使用  基于C、C++语言开发  linux下多线程编程,线程保护机制,锁使用  fec 编解码算法的移植与平台兼容  fec 编解码接口的使用  音视频收发包接受与缓存逻辑处理  丢包统计的实现  与服务器端的联动和联调  wireshark抓包分析音视频 项目描述: 背景: 随着公司终端的用户越来越多,使用场景越来越复杂,不可避免的会因为网络不稳定造成音视频的丢包, 这样就会造成音 视频卡顿,花屏。 原理: 每包码流经过 fec 算法的编码会多编出几包冗余包,丢包后,收到 fec 编码码流的终端会根据冗余包,把 丢掉的包还原出来。 过程: 该功能需要移植 fec 编码算法,当终端连续2S检测到当前时间在丢包,就会上报服务器端,下发开启 fec 编码指令给被收看终端,被收看终端则 fec 编码一路720*576的视频码流和音频码流,服务器端则把这个码流调给丢包终 端,丢包终端收到 fec 编码码流把原始流还原出来。
540C/C++嵌入式操作系统
网球预约产品系统
网球预约系统解决方案简介 一、方案定位与核心问题解决(30%) 本系统面向网球爱好者、俱乐部运营方及场馆管理者,聚焦解决传统网球预约流程中的三大核心痛点: 1. **用户端**:信息不对称导致场地难预约、时段冲突频发、订场流程繁琐(如需电话/到场排队); 2. **运营端**:人工排班效率低、场地利用率不均衡、会员管理与费用结算耗时; 3. **服务端**:缺乏数据化运营工具,无法精准掌握用户行为偏好及场地资源调度优化方向。 #### 二、市场差异化特点(50%) 相较于市场常规预约工具,本方案通过“智能化+场景化+一体化”设计,构建核心竞争优势: 1. **AI智能动态排班**:基于历史预约数据预测高峰时段,自动推荐最优订场时段,并支持用户自定义偏好(如灯光场地、搭档水平匹配),预约成功率提升40%; 2. **全流程数字化闭环**:集成在线支付、会员卡管理、教练预约、赛事报名等功能,用户无需切换多平台即可完成“订场-缴费-履约-评价”全流程,操作步骤减少60%; 3. **场馆运营管理中枢**:为管理者提供实时场地监控、会员数据分析看板(如活跃时段、消费频次)、自动分账结算工具,人力成本降低30%,场地利用率平均提升25%; 4. **社交化互动功能**:内置“约球配对”社区,用户可发布约战信息、组建临时球队,结合LBS定位推荐附近球友,增强用户粘性与平台活跃度。 #### 三、产品组成与技术选型(20%) **产品矩阵**: - **用户端**:微信小程序/APP(支持iOS/Android),核心功能包含场地预约、在线支付、约球社交、个人中心; - **管理端**:Web后台系统,提供场地管理、会员管理、数据分析、财务报表等模块; - **硬件集成**(可选):对接智能门禁/灯光控制系统,支持扫码入场、自动开灯,实现无人化值守。 **技术架构**: - 前端:React Native(跨平台开发)、微信小程序原生框架; - 后端:Spring Boot(微服务架构)、MySQL(关系型数据)、Redis(缓存优化); - 核心算法:基于协同过滤的用户偏好推荐模型、LSTM时序预测算法(场地使用率预测); - 部署方式:云服务器容器化部署(Docker+K8s),支持高并发场景弹性扩容。 通过技术与业务深度融合,本系统旨在为网球运动生态提供“高效、智能、便捷”的数字化解决方案,推动行业从传统运营向数据驱动转型。
2180JavaspringBoot
终端翻译产品系统
1.面向英语不好的, 2.终端翻译,解决专业词汇 3.我们的终端翻译项目致力于打破语言障碍,为用户提供高效、精准的翻译服务。通过先进的翻译技术与专业的人工审核相结合,我们确保每一次翻译都能准确传达原意,同时保留语言的自然流畅性。无论是技术文档、商务合同,还是日常交流,我们的终端翻译都能满足您的需求。支持多种语言互译,操作简单便捷,随时随地帮助您跨越语言的界限。
740C/C++编译器
一、软件面向的行业和业务场景 该软件适用于电商、金融、零售等行业。在电商场景中,可通过爬虫获取竞品价格、销量数据;利用 pandas 分析销售趋势、用户行为数据;借助 pyautogui 自动化处理订单录入、报表生成等重复操作。在金融领域,可爬取市场行情数据,通过 pandas 进行风险评估、投资分析,并用 pyautogui 自动化生成财务报告。 二、项目功能模块及用户功能 数据采集模块:通过 playwright(处理动态网页)和 beautifulsoup(解析静态网页)爬取网站数据,如商品信息、新闻资讯、市场数据等,支持用户自定义爬取目标与规则。 数据处理与分析模块:利用 pandas 进行数据清洗、转换、统计分析,生成可视化报表,帮助用户挖掘数据价值,支持复杂查询与批量处理。 自动化操作模块:基于 pyautogui 实现界面自动化,如自动登录系统、批量文件处理、表单填写等,减少人工重复劳动,提升办公效率。 三、项目技术选型和架构特点 技术选型:pyautogui 跨平台(Windows/macOS/Linux),简单实现 GUI 自动化;pandas 高效处理结构化数据,集成丰富分析工具;playwright 支持浏览器自动化与动态内容抓取,beautifulsoup 轻量级解析 HTML/XML。 架构特点:采用 “数据采集→处理分析→自动化应用” 的流水线架构,各模块解耦。爬虫模块适配不同网页结构,pandas 模块支持灵活扩展分析逻辑,pyautogui 模块对接各类桌面应用,整体架构具备高扩展性与实用性,兼顾数据获取、处理及业务流程自动化需求。
1470Python可视化
1. 软件面向的行业和业务场景 该项目是基于强化学习的自我博弈模型,主要面向人工智能(AI)和机器学习领域,特别是在棋类游戏和智能对弈的应用场景。其核心目标是训练一个能够与人类对弈并不断优化策略的 AI 玩家。通过强化学习与蒙特卡洛树搜索(MCTS)相结合,这个软件可以应用于任何需要决策优化和策略训练的领域,如自动驾驶、金融预测、机器人控制等。 业务场景包括: 人工智能竞技游戏:用于训练 AI 玩家,模拟自我博弈,提升 AI 策略。 游戏开发与优化:游戏公司可以用该技术提升 NPC(非玩家角色)智能,增强游戏体验。 教育与研究:为机器学习和强化学习的研究者提供实用工具,帮助学习和理解深度强化学习的应用。 2. 项目分为哪些功能模块,对使用者来说具体实现哪些功能 该项目包括以下主要功能模块: Board(棋盘信息模块):该模块存储并管理棋盘的信息,定义了棋局的状态和每个玩家的操作。 MCTS(蒙特卡洛树搜索模块):用于构建决策树,通过模拟多次博弈来选择最优的落子策略。其核心思想是利用树状结构进行搜索,并根据模拟结果做出决策。 Residual Neural Network(残差神经网络模块):该模块用于训练 AI 玩家,通过深度神经网络辅助预测最佳的落子位置。网络结构采用残差神经网络(ResNet),以提高训练效果和预测准确性。 AI Player(AI 玩家模块):将蒙特卡洛树搜索与神经网络结合,构建出一个能够自我学习和对弈的智能 AI 玩家。 Game(游戏过程模块):该模块定义了自我博弈和人类对战的流程,确保系统能够支持多种游戏模式,包括 AI 自我对弈和与人类对弈。 MetaZeta(主程序和 GUI 模块):该模块整合了所有功能模块,并提供图形用户界面(GUI)进行操作。用户可以通过界面启动自我对弈或与 AI 对战的模式。 具体功能包括: AI 自我对弈:用户点击“AI 自我对弈”按钮,系统将启动 AI 玩家进行自我博弈,训练其棋局策略。 与 AI 对战:用户可以与训练好的 AI 玩家进行对弈,测试 AI 的下棋水平。 3. 项目的技术选型和架构特点 该项目采用了以下技术选型: 操作系统:Ubuntu 18.04.6 LTS。 深度学习框架:TensorFlow GPU 2.6.2,用于加速深度学习模型的训练和推理。 编程语言:Python,用于开发所有功能模块,具有良好的扩展性和兼容性。 项目的架构特点: 模块化架构:整个项目由多个独立的模块组成,包括棋盘信息管理、蒙特卡洛树搜索、残差神经网络、AI 玩家、游戏过程控制等。各模块通过接口进行交互,保证了系统的灵活性和可扩展性。 强化学习与 MCTS 结合:通过强化学习算法(自我博弈)与蒙特卡洛树搜索相结合,AI 玩家可以从对弈中不断学习和优化策略,从而提高游戏水平。 GUI 界面:项目提供了图形化界面,方便用户启动不同的模式(自我对弈或与 AI 对战)。用户通过简洁的界面与 AI 进行交互,增加了使用的友好性。
1710python机器学习/深度学习
1、参与项目的维护 2、参与产品的测试 3、参与服务器的维护 4、与客户交流问题,解决系统bug 5、参与数据库的查验以及数据的查询
3900javajQuery 地图插件
该项目包括以下核心模块: 1.数据预处理模块: 通过屏蔽底层数据库表结构的差异和业务数据来源,为上层程序提供统一有效的数据录入接口。 2.决策分析支持模块: 整合各种信息输入,提供图像化显示,并为用户提供决策和数据修改功能,以支持后续计划编制和决策输出。 3.计划智能编制模块: 在符合用户录入的规则前提下,以有效时间内返回用户较为满意的作业计划推荐结果为目标。 4.结果输出模块: 将计划结果录入数据库,并在客户端界面同步以图像化方式显示结果。 本人在项目中承担以下职责: a.提供原型设计。 b.搭建C++代码整体框架。 c.管理并掌控项目整体执行进度,确保项目顺利达成交付目标。
1960C/C++编译器
(1) 有限自动机原理 (2) 词法分析器原理 (3)形式语言基础及其文法运算 (4) 语法分析原理以及3种常用的语法分析方法 (5) 语义分析原理 步骤: 按理说设计一个扫描器首先应该先定义一套形式文法,然后根据文法设计自动机,这些过程实验指导书中已经为我们准备好了; 在此基础上,我自己定义了一套数据结构对字符串插入查找的效率加以优化,并对整个程序的结构进行了调整优化; 在经过自动机状态、状态转移与每个状态所执行的动作后,该Scanner会将源程序解析成相应的Token序列,以作为下一步Translator的输入; 在Translator中,我根据指导书中给出的算数表达式文法结合课上所学内容,自己设计了基于自顶向下推导的Recursive Subroutine过程,并在相应位置添加了语义动作,根据这些进行Recursive Subroutine的代码实现; 我分别为Scanner和Translator设计了测试用例,对程序进行测试,结果和期望相吻合;
2840C/C++自然语言处理
开发一个C++科学计算器项目,你可以采用面向对象的编程思想,设计出合理的类结构,并使用相关的数学库来实现各种科学计算功能。以下是一些基本的技术要点和功能: 1. **技术栈**: - 核心语言:C++ - 可能用到的库:STL(用于字符串处理、容器等)、(提供标准数学函数) 2. **类结构设计**: - `Calculator` 类:作为主计算器类,包含主要的计算逻辑。 - `ExpressionParser` 类:负责解析用户输入的表达式。 - `Function` 类:抽象基类,包含各类数学函数如sin, cos, log等。 - `Number` 类:封装数值类型,支持复数运算(如果需要)。 3. **功能模块**: - 基本算术运算:加减乘除、取模、幂运算等。 - 科学计算功能:三角函数、对数函数、指数函数、阶乘、平方根、开方、常数π、e等。 - 复数运算(可选)。 - 历史记录保存与查询。 - 表达式求值。 - 错误处理机制,包括但不限于除数为零、无效输入等异常情况。 4. **用户界面**: - 控制台版:通过循环读取用户输入进行计算,输出结果。 - GUI版(可选):可以使用Qt、wxWidgets等库构建图形用户界面。 在实际编写过程中,应注重代码的可读性和模块化,合理利用函数重载、运算符重载等特性提高代码质量。同时,对于复杂的表达式求值问题,可能需要用到递归下降解析器或者词法分析、语法分析等编译原理知识。
2080C/C++数据处理
基于VSCode的调试适配器插件,该系统基于VSCode,遵循微软相关适配器协议,通过设计开发前端UI扩展和后端全平台通用调试适配器相结合 该插件由本人100%独立完成开发,可以灵活定制功能
2710javascript编译器
链接与装载(HOOK 库) PLT hook 的流程: - 读取进程的 maps 信息,获取到 ELF 文件在进程的 maps 中的内存基地址 - 验证 ELF 文件的头信息 - 从 PHT(`program header table`) 中找到类型为 `PT_LOAD` 且 offset 为 `0` 的 segment。计算 ELF 基地址。 - 从 PHT 中找到类型为 `PT_DYNAMIC` 的 segment,从中获取到 `.dynamic` section,从 `.dynamic` section中获取其他各项 section 对应的内存地址。 - 在 `.dynstr` section 中找到需要 hook 的 symbol 对应的 index 值。 - 遍历所有的 `.relxxx` section(重定位 section),查找 symbol index 和 symbol type 都匹配的项,对于这项重定位项,执行 hook 操作。 - hook 的流程如下: - 读取 maps,确认当前 hook 地址的内存访问权限 - 如果权限不是可读可写,则使用 `mprotect` 修改访问权限为可读可写 - 将 hook 地址的值替换为新的值 - 如果之前用 `mprotect` 修改过内存访问权限,现在还原到之前的权限 - 清除 hook 地址所在内存页的处理器指令缓存
2590C/C++c++
优化 ASAN: 在 C/C++ 中,内存越界问题特别难排查,比如,线程 A 在写内存时,写越界了,操作了线程 B 的内存,线程 B 可能过了很久才去访问这块被写坏的内存,然后引起了问题,我们几乎无法从 core 文件中得到有用的信息。 ASAN 是业界所有的内存检测工具中性能最好的。与之对比的 valgrind、gperftools 会严重拖慢程序运行。 ASAN 是集成在 gcc、llvm 中的,由于我们使用的是 gcc 编译器,因此我优化了 gcc 源码中 ASAN 的运行时库实现。也就是优化了 ASAN 库中关于 malloc、free 的实现。
2820C/C++编译器
AssemblyScript 是一个将 TypeScript 编译成 WebAssembly 的编译器,使用了 binaryen,binaryen 是一个用于 WebAssembly 的编译器基...
2630JavaScript编译器
sccache 是一个类似于 ccache 的编译器缓存工具。它用作编译器包装器并尽可能避免编译,将缓存结果存储在本地磁盘或多个云存储后端之一中。 sccache 包括对 C/C++ 代码、 R...
3350Rust编译器
C2Rust工具能够将大多数C模块翻译成语义上等价的rust代码。这些模块将单独编译,以生成兼容的对象文件。支持C99标准。 在我们的工具翻译C源代码之前,使用clang对其进行分析和类型检查。...
3150Rust编译器
Cannoli 是一个 Rust 编写的 Python(Python 3.6.5) 编译器,旨在评估对性能有负面影响的 Python 语言特性。 Cannoli 使用 Rust 编写,并将 Py...
2390Python编译器
Go-pry,一个交互式的 Go REPL,Go-pry 是使用 meta programming 和大量反射相结合构建的。调用 go-pry 命令时,它会查看上述目录中的 go 文件(或者是当...
2220Google Go编译器
Zapcc 是基于 LLVM/Clang 的缓存型 C++ 编译器,旨在执行更快的编译。 Zapcc 在 client-server 架构中使用 in-memory 技术来编译缓存,它会记住运行...
2420C/C++编译器
Dotty 是 Scala 的下一代编译器,也是 Scala 的新语言概念和编译器技术研究平台。 具有以下特性: Union, intersection and literal singleto...
2600Scala编译器
'kan-java' is '砍-java', speak frankly & literally. 这是一个java代码动态编译工具,也就是能够把String形式的java代码实时地编译为字节...
2350Java编译器
当前共95个项目
×
寻找源码
源码描述
联系方式
提交