- 博客(201)
- 资源 (1)
- 收藏
- 关注
原创 软件接口设计
接口就是互相联系的双方共同遵守的一种协议规范。在我们软件系统内部,一般的接口是指通过定义一组API函数来约定软件模块之间的沟通方式。换句话说,接口具体定义软件模块对系统的其他部分提供怎样的服务,以及系统的其他部分如何访问所提供的服务。
2024-08-27 09:00:00 1543
原创 技术规划怎么做
比如:是否引入敏捷开发,是否微服务,是否容器化,是否devops等等,规划和完善研发的技术基础设施,形成自己公司的一套行业。技术规划类似技术远景。当前问题包括:代码质量,code review,编写速度,编译速度,快速上线,并行开发,第三方库,自动化测试平台,线上bug率,架构演进,开发技术水平及培训,新技术引入,开发人员熟悉业务等。通俗来说:技术规划,就是技术团队集体梳理接下来一段时间,围绕行业和公司业务需求,有哪些工作可以做,哪些方面可以优化,哪些先进理念、技术,平台,框架可以引进,可以落地实施。
2024-08-23 08:45:00 430
原创 安全架构设计
系统安全架构设计,主要包含:物理安全,网络安全,系统安全,数据安全,应用安全。完整性(Integrity)是指要防止系统的数据和资源在未经授权情况下被修改;机密性 (Confidentiality)是指要防止系统的数据和资源在未授权的情况下被披露。安全架构需求分析主要包括以下几个方面:明确系统安全的最终目标,例如保护用户隐私、防止未授权访问等。根据系统的功能和业务特点,划分出不同层次的安全需求,并给予相应的优先级。对系统可能面临的安全威胁进行详细的分析和识别,包括外部攻击、内部员工策反等。
2024-08-22 08:30:00 613
原创 可扩展架构设计
可扩展架构是指系统设计和构建时考虑到未来需求增长和变化的能力,能够方便地扩展和适应新的业务要求而不影响系统的整体性能和稳定性。这种架构允许系统在需要时通过增加资源或组件而无需进行大规模的重构或升级。面向对象开闭原则可扩展架构的重要性适应业务增长随着业务规模的不断扩大,系统需求也会随之增加。可扩展架构能够支持系统的水平和垂直扩展,确保系统能够容纳更多的用户、数据和业务流程,适应业务的增长。降低维护成本可扩展架构使得系统的不同组件相互独立,降低了模块之间的耦合度。
2024-08-20 19:20:12 878
原创 流媒体协议详解
流媒体协议相关的有tcp,udp,http1.0/1.1/2.0/3.0,rtp/rtcp,rtmp,rtsp,hls,dash,webrtc,以及广电行业广泛使用的ndi协议。
2023-05-20 14:46:50 579
原创 rtmp协议
包头可以是4种长度的任意一种:12, 8, 4, 1 byte(s).完整的RTMP包头应该是12bytes,包含了时间戳,AMFSize,AMFType,StreamID信息, 8字节的包头只纪录了时间戳,AMFSize,AMFType,其他字节的包头纪录信息依次类推。包体最大长度默认为128字节,通过chunkSize可改变包体最大长度,通常当一段AFM数据超过128字节后,超过128的部分就放到了其他的RTMP封包中。(后六个bits==1):基本头长度为3字节,第二三个字节表示快流ID。
2023-05-19 20:24:32 961
原创 http协议
http0.91991年发布, 没有header,功能非常简单,只支持GEThttp1.01996年发布,明文传输安全性差,header特别大。增加了header(使用元数据与数据解耦)增加了status code,用于声明请求的结果。content-type可以传输其它文件。请求头增加了http/1.0版本号。支持GET, POST 和 HEAD方法缺点:短连接,每请求一次资源就新建一次tcp连接http1.11997发布,是现在使用最广泛的版本。
2023-05-17 14:47:15 559
原创 mxf文件格式详解
MXF文件的逻辑模型是一种基于对象的数据结构,主要由头部元数据中的结构元数据定义。MXF文件也可包含一个可选的索引表(Index Table),该索引表可用于将基于采样的索引(如时码)快速换算到对应的要素容器在MXF文件中的偏移地址,以实现视音频的快速预览和定位。它使用可变长的字节来表示非常宽的长度范围,该域总是按MSB(高字节优先)编码,如果第一个字节的bit7为0,那么低7位代表了0~127范围的长度,如果bit7为1,那么低7位代表长度域的字节个数。
2023-05-04 19:47:45 4728
原创 autosar
AUTOSAR,汽车开放系统架构(AUTomotive Open System Architecture)是一家致力于制定汽车电子软件标准的联盟。AUTOSAR是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立,各成员保持开发合作伙伴关系。在autosar之前,车企通常使用osek架构,软硬件层次存在严重耦合。所以各车企联合推出autosar分层架构模式:应用层,RTE,系统服务层,硬件层。开发周期短,可重用,另外有图形配置工具davinci,不需要手写代码即可生成高质量代码。
2023-04-26 20:29:48 1843
原创 智能座舱域
这种技术一般应用于 IO 设备虚拟化,采用前后端的方式来实现 IO 设备虚拟化,在 Guest OS(VM2标示android系统) 中实现前端驱动,在 Hypervisor 或 Host OS(VM1标示qnx系统) 中实现后端驱动,前后端一般按照 VirtIO 标准来实现,后端驱动作为硬件的实际访问方。虚拟化是安全可靠、弹性灵活的优选方案,是软件定义汽车的重要支撑技术。硬件隔离域的性能、安全可靠性最好,但灵活性、可配置性差,不能实现硬件共享,导致整个系统的资源利用率差,不能充分达到软件定义汽车的目标。
2023-04-22 15:44:16 1554
原创 TCP流量和拥塞控制
使用范围TCP为用户提供了高可靠性的网络传输服务,但可靠性保障措施也影响了传输效率。因此,在实际工程应用中,只有关键数据的传输才采用TCP,而普通数据的传输一般采用高效率的UDP。FEC前向纠错技术(Forward Error Correction)在确保信号的长距可靠传输方面也起着非常重要的作用,借用网友一张图来说明FEC。FEC在光通信中的位置码字经过信道到达接收端之后,如果错误在可纠范围之内,通过译码即可检查并纠正错误bit,从而抵抗信道带来的干扰,提高通信系统的可靠性。
2023-03-16 16:41:23 1786
原创 CarAudio音量调节详解
首先,我们按音量调节键使得media音量逐级增加到最大。STREAM_MUSIC流的音量分为15级,调用堆栈如下:AudioManger/handleKeyDownadjustSuggestedStreamVolumeAudioService/adjustSuggestedStreamVolumeadjustStreamVolumeMSG_SET_SYSTEM_VOLUMEsetSystemVolumeAudioSystem/setStreamVolumeIndexjni调用
2022-07-19 22:16:42 2061
原创 android播放器:MediaPlayer ExoPlayer ijkplayer
android播放器:MediaPlayer ExoPlayer ijkplayer比较
2022-06-16 15:03:03 4074
原创 android进程分析
ubuntu20调试android进程,方法如下:1 安装adb手机调试工具 sudo apt install android-tools-adb2 手机开发者模式,依次选择 文件传输模式 允许调试3 adb shell //进入手机4 ps -ef //查看所有android进程...
2022-06-01 10:44:54 1665
原创 android硬编解码MediaCodec
一 mediacodec简介 MediaCodec 类可以用来访问底层媒体编解码器,即编码器/解码器的组件。 它是 Android 底层多媒体支持架构的一部分(通常与 MediaExtractor,MediaSync,MediaMuxer,MediaCrypto,MediaDrm,Image,Surface 和 AudioTrack 一起使用)。 编解码器可以处理三类数据:压缩数据、原始音频数据、原始视频数据。a Compressed Buffers 压缩缓冲区输...
2022-05-26 21:00:08 5090 1
原创 SurfaceFlinger详解
Surface进行merge可以采用两种方式,一种就是采用软件的形式来merge,还一种就是采用硬件的方式,软件的方式就是我们的SurfaceFlinger,而硬件的方式就是Overlay。 SurfaceFlinger 是一个独立的Service, 它接收所有Window的Surface作为输入,根据ZOrder, 透明度,大小,位置等参数,计算出每个Surface在最终合成图像中的位置,然后交由HWComposer或Ope...
2022-05-24 14:12:02 2607
原创 车载总线简介
CAN:Controller Area Network,控制器局域网络总线。控制单元通过CAN网络交换数据。它是由德国博世公司于上世纪80年代初,为了解决众多传感器与执行器之间的数据交换而开发的一种串行通讯协议。绝大多数汽车制造厂商采用CAN总线来实现汽车内部控制系统之间的数据通信。 can是一种总线,也是一种协议。CAN协议和CANOpen协议是两套不同的协议。从软硬件层次来划分,CAN协议属于硬件协议,而CANOpen属于软件协议。CAN网络可以理解为多台CAN设备连接在同...
2022-05-21 16:00:43 5916
常见15种设计模式(附源码)
2021-07-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人