前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >【新知实验室 基于WEB的实时音视频(TRTC)案例搭建】

【新知实验室 基于WEB的实时音视频(TRTC)案例搭建】

作者头像
用户2225445
发布于 2023-10-15 01:13:32
发布于 2023-10-15 01:13:32
50700
代码可运行
举报
文章被收录于专栏:IT从业者张某某IT从业者张某某
运行总次数:0
代码可运行

1. 实时音视频(TRTC)

1.1 实时音视频(TRTC)概述

实时音视频(TRTC) 是腾讯云提供的一套低延时、高质量的音视频通讯服务,致力于为腾讯云客户提供稳定、可靠和低成本的音视频传输能力。您可以使用该服务快速构建“视频通话”、“在线教育”、“直播连麦”、“在线会议”等对通信延时要求比较苛刻的音视频应用。 参考链接:https://cloud.tencent.com/document/product/647

1.2 实时音视频(TRTC)功能集成

腾讯云音视频(TRTC)功能集成分为包含UI组件集成方案和无 UI 组件集成方案。

1.2.1 含 UI 组件集成方案

实时音视频(TRTC)开发了一组标准化的 UI 组件,并提供了源代码,使用中可以直接将适合的 UI 组件导入到您的项目中,并在需要的时候加载他们。该集成方案的速度非常快,通常一个小时就能完成集成。

1.2.2 无 UI 组件集成方案

如果不需要同时可以在项目中直接导入 TRTC SDK,并通过 SDK API 以构建自己期望的业务形态。该集成方案相比UI集成的自由度很高,同时腾讯云音视频(TRTC)提供了各个平台 SDK 的 API 示例源码,源码文件夹中的 Basic 目录包含了基础功能的示例代码,Advanced 目录则包含了高级功能(比如设置分辨率、背景音效、网络测速等)的示例代码。 参考链接为: Demo体验: 代码示例:

1.3 实时音视频(TRTC)架构

实时音视频(TRTC)可以对接多种端,使用的架构如下:

2. 使用体验

2.1 注册腾讯云

先注册腾讯云,大多数朋友已经都有腾讯云账户,如果需要注册,链接如下:腾讯云官网

2.2 申请实时音视频(TRTC)应用

点击如下链接,可以快速注册一个实时音视频(TRTC)引用。 链接

初次点击,会提示申请一个TRTC应用,申请完成,点击左侧的应用管理,可以查看到申请完成的应用

这里有SDKAppID和密钥SecretKey,需要保护好哦。 初次申请,有10000分钟的免费额度,🐧🐧鹅厂🐧🐧真是财气逼人啊!!

2.3 下载SDK的Demo源码

全部的SDK即Demo下载地址见官网 我的案例为基于WEB的案例,下载地址如下: github仓库地址地址的访问速度,可以是gitee镜像 https://gitee.com/liteavsdk/TRTC_Web下载。 下载后,解压,目录如下:

2.4 获取 SDKAppId 和 密钥(SecretKey)

在腾讯云的TRTC应用中复制创建好的 SDKAppId 和 密钥(SecretKey)完成。

在下载好的SDK源码包中有readme.md文档,点击里面的原生JS在线Demo,在线链接。输入SDKAppId 和 密钥(SecretKey),如下:

点击Join Room后,视频就开始了,真是不到一个小时啊,真的快。

3. 创建自己的会议室应用

3.1 参考快速上手

进入腾讯云的应该管理界面,点击功能配置:

查看快速上手文档:

3.2 下面开始模拟复现快速上手

3.2.1 找到鉴权文件

安装快速上手中的第3个步骤,我们找到需要的文件/base-js/js/debug/GenerateTestUserSig.js

3.2.2 填写自己的SDKAppId 和 密钥(SecretKey)

备注:官方有明确支出,SDKAppId 和 密钥(SecretKey)不要写在前端js中,正式上线前请将 UserSig 计算代码和密钥迁移到您的后台服务器上,以避免加密密钥泄露导致的流量盗用。操作步骤参考如下UserSig 相关:

3.2.3 基于base代码测试
1.打开工程

把base-js文件夹拖拽vscode中,打开index.html右键open with live server

弹出如下页面:

2. 开始测试

依次测试各个环境

检测完成后,可以查看检测报告

3. 进入房间

输入用户名和房间号

点击进入房间

目前只有我一个人啊,哈哈

4. 重新打开一个然后进入房间

在vscode的index.html重新右键,open with live server

输入用户名和房间号

5. 同时进入会议室后的效果

点击结束可以推出会议室,点击分享可以共享整个屏幕或是应用等。

4. 本地基于flask运行会议室应用

4.1 环境创建

本地创建一个python工程pythontrtc,并安装flask

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install flask

在pythontrtc工程下创建一个app.py文件,内容为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from flask import Flask, render_template

app = Flask(__name__)


@app.route("/")
def root():
    return render_template('Index.html')


if __name__ == '__main__':
    app.run(debug=True, host='127.0.0.1', port=5050)

4.2 配置trtc文件

创建一个static文件夹,把base-js目录下的.\css,.\js,.\data,.\img等文件夹拖到static目录下:

创建一个templates文件下。把base-js目录下index.html拖拽到templates目录下。

修改html中的引入路径,把所有的

./img替换为./static/img ./js替换为./static/js ./css替换为./static/css ./data替换为./static/data

4.3 运行

在控制台运行python app.py 然后在浏览器运行localhost:5050,打开2个窗口后,加入会议室,完成如下:

4.4 flask总结

到目前位置,基于flask的实时音视频项目完结,但这里的不足在于usersig依然从前端计算出来,下一步骤可以参考官网提出的python文件,实现server计算sig,然后传递给前端。 参考连接

5. 总结

感觉真的好用,未来我会尝试完成后端生成sig,并尝试把这个功能放在移动端,毕竟这种场景还是移动端更多些,结论是真的好用,比自己写的要优美很多!!! 附上自己的调用时长。

还有好多分钟可以使用,可以多研究下,最后感慨下,真是一个好产(有)品(钱)啊!!!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-11-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
实时音视频开发学习10 - 小程序端一
小程序端双人通话、多人会议和语音聊天室三个功能。双人通话中实现1V1视频通话,在结合Web IM SDK可实现在线问诊或客服;语音聊天室能支持多人互动语音聊天,混音、混响等声音特效,适用于狼人杀、在线语音直播等社交场景;多人会议支持多路音视频通话、大小画面和屏幕分享等功能,适用于远程培训、在线教育等。
金林学音视频
2020/08/27
1.4K0
实时音视频开发学习10 - 小程序端一
实时音视频开发学习9 - 进房权限和画质
开启进房权限的目的是为了避免非会员模式能够进入高级房间,同时解决客户端限制被破解的问题。目前进房权限在iOS、Android、Windows、Electron、微信小程序和Chrome 浏览器都支持。
金林学音视频
2020/08/27
1.8K0
实时音视频开发学习9 - 进房权限和画质
从零开始创建一个超简单的TRTC音视频通讯程序(小程序篇)
出于政策和合规的考虑,微信暂未放开所有小程序对实时音视频功能(即 <live-pusher> 和 <live-player> 标签)的支持:
F颜
2020/06/18
2.1K0
使用TRTC Web SDK实现实时音视频通话
在使用 TRTC Web SDK 中,经常需要使用到两个对象,Client 客户端对象,Stream 流对象:
yuliang
2021/03/03
3.6K0
实时音视频 TRTC 常见问题汇总---集成接入篇
TRTC 的日志默认压缩加密,后缀为 .xlog。日志是否加密是可以通过 setLogCompressEnabled 来控制,生成的文件名里面含 C(compressed) 的就是加密压缩的,含 R(raw) 的就是明文的。
腾讯视频云-Zachary
2019/11/01
14.3K1
实时音视频 TRTC 常见问题汇总---集成接入篇
从零开始创建一个超简单的TRTC音视频通讯程序(web篇)
WebRTC 技术由 Google 最先提出,目前主要在桌面版 Chrome 浏览器、桌面版 Safari 浏览器以及移动版的 Safari 浏览器上有较为完整的支持,其他平台(例如 Android 平台的浏览器)支持情况均比较差。
F颜
2020/06/19
4.5K7
从0到1搭建视频通话系统,我1天就搞定了
最近被老大分配了一个任务,他打开微信视频聊天,发起多人视频,指着功能界面说,“你看我们的产品也是有多人会议的场景,我们也加一个这样的功能,也不用很复杂,就仿照微信或者QQ的多人视频做一个出来,能实时视频通话,这个应该也不难吧,给你一个礼拜搞定,可以吗?” 
腾讯云音视频
2018/09/12
2.8K0
从0到1搭建视频通话系统,我1天就搞定了
新知实验室TRTC初体验
一次偶然的邂逅,让我知道了TRTC实时音视频这个神奇的东西,于是便开始研究起来这个鬼东西,接下来将详细记录一下开发过程,以便后期使用.
全栈若城
2024/02/29
1970
新知实验室TRTC初体验
实时音视频SDK,如何实现类似微信的纯语音通话功能?
实时音视频TRTCSDK适用的业务场景是视频会议、坐席视频、在线教育等,如果您希望实现类似微信的语音通话、语音会议功能,TRTCSDK也是支持的,只需要微调几个参数就可以实现,将采集音视频的api,换成只采集音频。
腾讯云-chaoli
2019/03/05
8K2
实时音视频SDK,如何实现类似微信的纯语音通话功能?
【新知实验室-TRTC开发】实时音视频之web端云监工系统(Vue3+Element plus+TS+Pinia)
在线上线下一体化、虚拟现实加速融合的趋势下,音视频已经演进成一种基本能力,深刻变革了社会的交互方式。未来,音视频作为全真互联时代的重要基石,将持续推动互联网和实体产业的数字化创新与升级。
中杯可乐多加冰
2024/09/28
2230
实时音视频,小程序端WebRTC互通
我们在 LiteAVSDK 的最新版本里面加入了对 WebRTC 的支持能力,并且已经跟随微信APP的 6.6.6 版本发布出来,此文档主要介绍如何使用原生的 <live-pusher> 和 <live-player> 标签实现 WebRTC 互通能力。
用户5916837
2019/09/24
2.9K0
实时音视频,小程序端WebRTC互通
实时音视频 TRTC 常见问题汇总---咨询问题篇
支持的平台包括 iOS、Android、Windows(C++)、Windows(C#)、Mac、Web、Electron、微信小程序、Flutter,更多详情请参见 平台支持。
腾讯视频云-Zachary
2019/11/01
13.2K0
实时音视频 TRTC 常见问题汇总---咨询问题篇
iOS音视频接入 - TRTC多人视频会议
官方SDK中提供了可复用的UI和封装了TRTCCloud的model,具体位置见下图。
小明同学接音视频
2020/10/15
2.4K0
iOS音视频接入 - TRTC多人视频会议
TRTC零基础入门之Web篇(一)
在建立这个在线课堂应用过程中,可能会使用到腾讯云的IM、云直播等服务,以及对应安卓端SDK,下面将通过三篇文章来记录这个过程,本文为第一篇。
天上云间
2020/12/20
4.2K2
TRTC零基础入门之Web篇(一)
新知实验室-基于腾讯云音视频TRTC的微信小程序实践
腾讯会议是我们常用的一款线上会议软体,如果想要使用,我们需要下载软体使用,相比之下,基于腾讯云音视频的TRTC提供了一个很好的解决方案,我们通过接入到小程序中来实现快捷的开始会议,加入会议。
知识浅谈
2022/12/02
1.4K0
新知实验室-基于腾讯云音视频TRTC的微信小程序实践
【新知实验室 TRTC&IM】实时互动课堂最佳实践
活动链接:https://marketing.csdn.net/p/637c852aedd21c0ef20754a7d7635e6d 活动链接:https://marketing.csdn.net/p/637c852aedd21c0ef20754a7d7635e6d 活动链接:https://marketing.csdn.net/p/637c852aedd21c0ef20754a7d7635e6d
指剑
2022/11/28
1.5K0
【新知实验室 TRTC&IM】实时互动课堂最佳实践
产品动态 | TRTC Web 推拉流组件助力“直播+”场景
导语:直播作为营销和转化的有力工具,已经逐渐被大众所认可,直播场景常态化、规范化。细分之下,直播也分为众多的的赛道,企业直播、电商带货、知识传播纷纷拥抱直播渠道。开箱即用、稳定流畅、支持定制成为了企业快速上线属于自己的直播工具的核心诉求。 - TRTC 推出带 UI 的 Web 端推拉流组件 - 为助力客户快速上线支持推拉流及个性化设置场景的产品,腾讯云实时音视频 TRTC 联合腾讯云即时通信 IM 推出 Web 端直播场景推拉流解决方案 TUIPusher(推流端场景化组件) 及 TUIPlay
腾讯云音视频
2021/12/06
1.3K0
实时音视频开发学习14 - 常见问题
V1和V2主要区别在于IM的SDK是否内嵌于TRTC中,V1线路是内嵌,而V2则可选,默认不打包IM的SDK包。V2在通话质量、线路规格、接入难度以及功能扩展上均比V1更有优势。
金林学音视频
2020/08/30
2.7K0
实时音视频开发学习14 - 常见问题
实时音视频开发学习3 - 实现web端跑通知识储备
本节内容主要讲解如何快速使用SDK包,SDK集成方式,SDK目录结构解释以及在web端和小程序端进行跑通。
金林学音视频
2020/08/21
1.6K0
实时音视频开发学习3 - 实现web端跑通知识储备
实时音视频开发学习1 - 音视频初体验
随着移动互联网速度越来越快的发展,实时音视频的发展也越来越收到重视。腾讯实时音视频(Tencent Real-Time Communication,TRTC)经过了10多年在网络音视频技术的发展与积累,并以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,使得开发者能快速实现低成本、低延时、高品质的音频互动解决方案。
金林学音视频
2020/08/20
3.9K0
实时音视频开发学习1 - 音视频初体验
推荐阅读
相关推荐
实时音视频开发学习10 - 小程序端一
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档