pili-engineering / qnrtc-web Goto Github PK
View Code? Open in Web Editor NEWQNRTCWeb 是七牛云推出的一款适用于 Web 平台的实时音视频 SDK,提供了包括音视频通话、静音、发布、订阅多种功能,提供灵活的接口,支持高度定制以及二次开发。
Home Page: https://demo-rtc.qnsdk.com/
License: Apache License 2.0
QNRTCWeb 是七牛云推出的一款适用于 Web 平台的实时音视频 SDK,提供了包括音视频通话、静音、发布、订阅多种功能,提供灵活的接口,支持高度定制以及二次开发。
Home Page: https://demo-rtc.qnsdk.com/
License: Apache License 2.0
这个好像是用户退出的事件回调中有问题。
TrackModeSession.handlePlayerOut
renderer.js:39 message: Uncaught TypeError: Cannot read property 'userId' of undefined source: C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\pili-rtc-web\build\index.js
window.onerror @ renderer.js:39
renderer.js:39 TypeError: Cannot read property 'userId' of undefined
at C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\pili-rtc-web\build\index.js:1
at remove (C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\lodash.remove\index.js:1804)
at TrackModeSession.handlePlayerOut (C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\pili-rtc-web\build\index.js:1)
at SignalingWS.emitEvent (C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\wolfy87-eventemitter\EventEmitter.js:394)
at SignalingWS.emit (C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\wolfy87-eventemitter\EventEmitter.js:421)
at SignalingWS.receiveWsMsg (C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\pili-rtc-web\build\index.js:1)
at WebSocket.SignalingWS.onWsMsg (C:\Users\cricket\AppData\Local\Programs\yun-mai\resources\app.asar\node_modules\pili-rtc-web\build\index.js:1)
window.onerror @ renderer.js:39
.container {
overflow: hidden;
width: 200px;
height: 150px;
position: relative;
margin: 0 2px;
video {
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
object-fit: cover !important;
z-index: 9;
}
}
使用外部音频导入时,在发布阶段一切正常,外部音频轨的类型还是AudioSourceTrack类型的对象,但是在订阅后拿到的轨道类型变成了普通的AudioTrack,然后就无法使用AudioSourceTrack封装的方法了
屏幕共享变得模糊了
PC端chrome和chrome视频正常,手机端chrome和chrome不行,报错,RTCPeerConnection连接无法建立。
QNRTC.deviceManager.getLocalStream({
audio: { enabled: true },
video: { enabled: false },
});
报错信息
plugin directly instead
i 「wds」: Project is running at http://localhost:4000/
i 「wds」: webpack output is served from /
i 「wds」: Content not from webpack is served from F:\qiniu\workspace\QNRTC-Web-master\Demo\public
i 「wds」: 404s will fallback to /index.× 「wdm」: 720 modules
ERROR in F:\qiniu\workspace\QNRTC-Web-master\Demo\src\app\components\RemotePlayer\index.tsx
./app/components/RemotePlayer/index.tsx
[tsl] ERROR in F:\qiniu\workspace\QNRTC-Web-master\Demo\src\app\components\RemotePlayer\index.tsx(35,30)
TS2345: Argument of type 'HTMLElement' is not assignable to parameter of type 'HTMLVideoElement | HTMLAudioElement'.
Type 'HTMLElement' is not assignable to type 'HTMLAudioElement'.
ERROR in F:\qiniu\workspace\QNRTC-Web-master\Demo\src\app\components\RemotePlayer\index.tsx
./app/components/RemotePlayer/index.tsx
[tsl] ERROR in F:\qiniu\workspace\QNRTC-Web-master\Demo\src\app\components\RemotePlayer\index.tsx(41,30)
TS2345: Argument of type 'HTMLElement' is not assignable to parameter of type 'HTMLVideoElement | HTMLAudioElement'.
Type 'HTMLElement' is not assignable to type 'HTMLAudioElement'.
DEMO源码有互动白板就好了😄
是否支持ie 浏览器
piliRTC.joinRoomWithToken return 401 error code, what meaning?
报错信息:Could not start audio source。
SKD版本,2.1。
electron版本:4.1.3。
每个客户端都可以获取到其他客户端的stream对象然后通过play在前端播放视频,如果我想将获取到的某个stream流对象里的媒体流进行推流,请问有什么api可以让我可以获取到该媒体流吗?
navigator.mediaDevices
返回undefined
,所以navigator.mediaDevices.enumerateDevices()
报错了
多方连麦中,中途有线路接入,调用 session.addMergeStreamTracks
它是 async 异步方法,可是 await 调用,没有返回,没有异常。一直等待~~~
回音杂音怎么处理,你们echoCancellation和noiseSuppression不管用,有没有好的处理办法
我发现接入以后,pc和ios端语音聊天,ios端没有回音,但是web端,有很大回音,请问该怎么处理
获取标签后,播放本地audio。在另一个web客户端上可以看到 audio标签已经生成。但是无法听到声音!!
localTrack.play(localElement, true);
安装的是2.2.0版本,定位到第1行第61399列后是const r={...e}
,2.2.1版本也是报错,2.2.0-alpha.4版本是正常的。
扩展运算符在Node 6.x版本中暂不支持。
环境 : typescript version: 3.6.3
提示如下:
node_modules/pili-rtc-web/build/core.d.ts(2,8): error TS1192: Module '"/Users/xxx/development/upfm/upfm-websocket/node_modules/wolfy87-eventemitter/EventEmitter"' has no default export.
node_modules/pili-rtc-web/build/device.d.ts(1,8): error TS1192: Module '"/Users/xxx/development/upfm/upfm-websocket/node_modules/wolfy87-eventemitter/EventEmitter"' has no default export.
Can't resolve '@babel/runtime/core-js/object/keys' 提示balel里对应的文件找不到
我如果要切换摄像头,需要怎么操作呢
在使用 vue-cli 生成的项目中,使用 npm 添加 v2.0.0 版本的 pili-rtc-web ,编译会报错。因为对象扩展运算符是 ES-2018 中提出的语法,在编译过程中未能被识别。想要在项目中支持 node_modules 中 js 文件的编译需要很大的调整,十分的不友好。希望能在输出的文件中所使用的语法尽量只使用 ES-2015 所支持的语法。
Failed to compile
/Users/aba/Downloads/QNRTC-Web-2.1.0/Demo/src/pages/settings.tsx
Type error: Type '{ children: Element[]; value: "288p" | "480p" | "540p" | "720p"; onChange: (e: any) => void; }' is not assignable to type 'IntrinsicAttributes & Props'.
Property 'children' does not exist on type 'IntrinsicAttributes & Props'. TS2322
109 | <Grid item container wrap="nowrap" justify="center" spacing={16}>
110 | <Grid item>
111 | <Select
| ^
112 | value={roomStore.selectVideoConfig}
113 | onChange={(e) => roomStore.setSelectVideoConfig(e.target.value as keyof publishVideoConfigs)}
114 | >
npm run-script build
项目布置到iss后访问页面空白。没有报错。
资源都可以找到
微信小程序是否可以使用Web SDK,还是有专门的小程序SDK?
Uncaught (in promise) DOMException: Could not start audio source 报错信息是这个,火狐浏览器能正常进行
系统:macOS 10.13
浏览器:chrome 69
错误信息:
DOMException: Failed to execute 'addTransceiver' on 'RTCPeerConnection': This operation is only supported in 'unified-plan'. 'unified-plan' will become the default behavior in the future, but it is currently experimental. To try it out, construct the RTCPeerConnection with sdpSemantics:'unified-plan' present in the RTCConfiguration argument.
经测试,之前的chrome版本正常
订阅到的是1080P高清流,如何以720P调用play方法?
1.支持移动端
2.新增切换前后置摄像头的逻辑
3.修复挂断后切换设备后会自动呼叫的为你
An error occurs when the following statement is executed:
const localTracks = await QNRTC.createMicrophoneAndCameraTracks();
Excuse me, what is the reason and how to solve it?
import * as media from 'pili-rtc-web'
这样一引入 就如标题报错了
想要获取网络质量,但是调用此方法返回的是空数组。
文档有写到【获取当前 Track 的传输状态数据,SDK 内部会每秒更新一次。】这个自动执行的结果,怎样可以拿到呢?
rtc.publish(stream) 时,出现的错误
Uncaught (in promise) 1st argument is not instance of RTCPeerConnection.
一定要刷新页面,再重新进入房间吗?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.