前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开源项目:WPF在线音视频聊天项目

开源项目:WPF在线音视频聊天项目

作者头像
沙漠尽头的狼
发布2022-04-18 20:18:34
1.5K0
发布2022-04-18 20:18:34
举报
文章被收录于专栏:Dotnet9Dotnet9

一个基于.NET 6开发的在线音视频聊天项目,客户端使用WPF开发,后端使用.NET Core Web API

一. 项目介绍

一个基于.NET 6开发的在线音视频聊天项目,客户端使用WPF开发,后端使用.NET Core Web API

仓库地址:https://github.com/qian-o/Dimension

仓库截图:

项目代码结构:

二. 使用第三方依赖介绍

公用依赖

  1. log4net 日志记录。
  2. SignalR 用于服务器与客户端的通讯手段,该项目用于好友申请、消息提示、公告、聊天和音视频通话等一系列通知。
  3. EntityFrameworkCore 操作数据库的ORM工具,服务端使用SqlServer,客户端使用Sqlite。
  4. Newtonsoft.Json 序列化和反序列化JSON。

服务端

  1. TencentCloudSDK 操作腾讯云服务API,该项目用于管理通话房间。
  2. aliyun-net-sdk-core 操作阿里云服务API,该项目用于短信服务。
  3. CHSPinYinConv 获取中文拼音。
  4. Portable.BouncyCastle TRTC加密使用。
  5. SixLabors.ImageSharp 操作图片,因c#中操作图片需要微软的GDI绘图,但在linux上操作需要mono的libgdiplus库,处理效果并不理想。

WPF端

  1. TXLiteAV 操作腾讯云的TRTC服务,本地设备音视频推流、获取房间内其他用户音视频数据。
  2. XamlAnimatedGif 播放GIF,因设备效率问题,改动作者源码后重新打包使用。
  • 源库:https://github.com/XamlAnimatedGif/XamlAnimatedGif
  • 问题:https://github.com/XamlAnimatedGif/XamlAnimatedGif/issues/160

三. 项目配置

如果需要正常运行此项目,请了解相关配置。

3.1 后端配置:

后端使用 .NET Core Web API 开发,配置如下:

  1. 第三方服务配置

修改DimensionService.Common命名空间下 ClassHelper

请填写红框内付费服务内容,本程序使用阿里的短信服务腾讯的TRTC服务,填写内容请见官方说明。

  1. 数据库

该服务采用SQL Server 2019数据库,并使用EF CORE作为主要的ORM框架,首次使用需要迁移数据库。

打开程序包管理控制台,输入

代码语言:javascript
复制
Update-Database InitialCreate

该项目提供线上测试服务地址,http://47.96.133.119:5000 (站长注:目前无法访问此地址)

3.2 客户端配置

客户端使用WPF开发,如下图:

红框内容需与服务端保持一致

已实现的功能

  1. 登录|注册
  2. 添加好友
  3. 音视频在线通话
  4. 聊天(图片、文字、富文本)
  5. 截屏(多显示器不同dpi支持)

客户端部分截图:

站长没有条件,录制一个登录动画(哈哈):

下面是作者readmd和博客园的图片:

四. 功能演示

作者太懒,以后再写!

我还是提供的测试账号和程序地址吧。

不过需要安装NET6桌面运行时,这是下载地址:.NET 6桌面运行时

测试用户

1571221{1~9}177,

密码统一为12345678。

所有用户登录信息我都放在程序包里啦,并且都添加了我做为好友。😄

五. 程序包

链接:https://pan.baidu.com/s/1aTh_710GpKIIHOHpvVCpBw?pwd=cp4o

六. 演示视频

链接:https://pan.baidu.com/s/1n-sQZFgO9GEhS80jHLVouA?pwd=85x3

七. 项目仓库地址

GitHub地址:https://github.com/qian-o/Dimension

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-04-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Dotnet9 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一. 项目介绍
  • 二. 使用第三方依赖介绍
  • 三. 项目配置
    • 3.1 后端配置:
      • 3.2 客户端配置
      • 四. 功能演示
        • 测试用户
        • 五. 程序包
        • 六. 演示视频
        • 七. 项目仓库地址
        相关产品与服务
        实时音视频
        实时音视频(Tencent RTC)基于腾讯21年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档