2023年6月8日

[C#] FFmpeg 音视频开发总结

摘要: 为什么选择FFmpeg? 延迟低,参数可控,相关函数方便查询,是选择FFmpeg作为编解码器最主要原因,如果是处理实时流,要求低延迟,最好选择是FFmpeg。 如果需要用Opencv或者C#的Emgucv这种库来处理视频流,也多是用FFmpeg做编解码然后再转换图像数据给Opencv去处理。用Ope 阅读全文

posted @ 2023-06-08 16:54 jack_Meng 阅读(467) 评论(0) 推荐(0) 编辑

C#获取枚举描述的值

摘要: 首先定义枚举 工具类如下,通过扩展方法的方式实现: public static string GetDescription(this Enum value) { Type enumType = value.GetType(); // 获取枚举常数名称。 string name = Enum.GetN 阅读全文

posted @ 2023-06-08 16:50 jack_Meng 阅读(693) 评论(0) 推荐(0) 编辑

使用c#实现23种设计模式

摘要: 使用c#实现23种常见的设计模式 设计模式通常分为三个主要类别: 创建型模式 结构型模式 行为型模式。 这些模式是用于解决常见的对象导向设计问题的最佳实践。 以下是23种常见的设计模式并且提供c#代码案例: 创建型模式: 1. 单例模式(Singleton) public sealed class 阅读全文

posted @ 2023-06-08 16:47 jack_Meng 阅读(188) 评论(0) 推荐(0) 编辑

.NET Core 实现 Windows 系统 Development、Staging、Production 三种环境的无感部署

摘要: 阅读目录 〇、前言 一、配置文件 二、程序读取配置 1. 配置文件信息读取实现 2. 关于本机测试 三、Windows 服务器配置 回到顶部 〇、前言 日常开发中,程序的环境切换是相当频繁的了,如果不同环境中的某些参数不同,那就需要每次编辑之前手动进行修改,比较麻烦,效率低下。 本文将以 .NET 阅读全文

posted @ 2023-06-08 16:11 jack_Meng 阅读(147) 评论(0) 推荐(0) 编辑

C# 中的yield return机制和原理

摘要: 前言# 当我们编写 C# 代码时,经常需要处理大量的数据集合。在传统的方式中,我们往往需要先将整个数据集合加载到内存中,然后再进行操作。但是如果数据集合非常大,这种方式就会导致内存占用过高,甚至可能导致程序崩溃。 C# 中的yield return机制可以帮助我们解决这个问题。通过使用yield r 阅读全文

posted @ 2023-06-08 16:04 jack_Meng 阅读(1387) 评论(2) 推荐(3) 编辑

如何自动转发接收的请求报头?

摘要: 了解OpenTelemetry的朋友应该知道,为了将率属于同一个请求的多个操作(Span)串起来,上游应用会生成一个唯一的TraceId。在进行跨应用的Web调用时,这个TraceId和代表跟踪操作标识的SpanID一并发给目标应用,W3C还专门指定了一份名为Trace Context的标准,该标准 阅读全文

posted @ 2023-06-08 15:30 jack_Meng 阅读(20) 评论(0) 推荐(0) 编辑

如何兼顾性能+实时性处理缓冲数据?

摘要: 我们经常会遇到这样的数据处理应用场景:我们利用一个组件实时收集外部交付给它的数据,并由它转发给一个外部处理程序进行处理。考虑到性能,它会将数据存储在本地缓冲区,等累积到指定的数量后打包发送;考虑到实时性,数据不能在缓冲区存太长的时间,必须设置一个延时时间,一旦超过这个时间,缓冲的数据必须立即发出去。 阅读全文

posted @ 2023-06-08 15:28 jack_Meng 阅读(28) 评论(0) 推荐(0) 编辑

导航