|
@@ -56,7 +56,7 @@ export class SceneService implements OnModuleInit, OnModuleDestroy {
|
|
private joystickSub: any;
|
|
private joystickSub: any;
|
|
|
|
|
|
private streamServiceSub: any;
|
|
private streamServiceSub: any;
|
|
- private roQueue: RxQueue = new DelayQueue(10);
|
|
|
|
|
|
+ private roQueue: RxQueue = new DelayQueue(40);
|
|
private clickQueue: RxQueue = new DebounceQueue(500);
|
|
private clickQueue: RxQueue = new DebounceQueue(500);
|
|
private moveQueue: RxQueue = new DelayQueue(10);
|
|
private moveQueue: RxQueue = new DelayQueue(10);
|
|
private joystickQueue: RxQueue = new DebounceQueue(500);
|
|
private joystickQueue: RxQueue = new DebounceQueue(500);
|
|
@@ -250,16 +250,16 @@ export class SceneService implements OnModuleInit, OnModuleDestroy {
|
|
if (redisMeta && 'mediaSrc' in redisMeta) {
|
|
if (redisMeta && 'mediaSrc' in redisMeta) {
|
|
const mediaSrc: string = redisMeta.mediaSrc || '';
|
|
const mediaSrc: string = redisMeta.mediaSrc || '';
|
|
if (mediaSrc.length > 0) {
|
|
if (mediaSrc.length > 0) {
|
|
- let src = mediaSrc.split('?')[0];
|
|
|
|
|
|
+ const src = mediaSrc.split('?')[0];
|
|
// 临时本地替换路经
|
|
// 临时本地替换路经
|
|
- src = src.replace('/0000000001/', '');
|
|
|
|
|
|
+ // src = src.replace('/10086/', '');
|
|
// 判断不是同一条源时才推出
|
|
// 判断不是同一条源时才推出
|
|
if (src.length > 0) {
|
|
if (src.length > 0) {
|
|
// console.log('不同源');
|
|
// console.log('不同源');
|
|
// this.frameCnt += 1;
|
|
// this.frameCnt += 1;
|
|
this.holdSteam();
|
|
this.holdSteam();
|
|
this.lastRenderMedia = src;
|
|
this.lastRenderMedia = src;
|
|
- const clipPath = join(__dirname, `../ws/video/${src}`);
|
|
|
|
|
|
+ const clipPath = join(__dirname, `../ws/${src}`);
|
|
// console.log('src-clipPath', src, clipPath);
|
|
// console.log('src-clipPath', src, clipPath);
|
|
delete redisMeta.mediaSrc;
|
|
delete redisMeta.mediaSrc;
|
|
|
|
|
|
@@ -396,24 +396,26 @@ export class SceneService implements OnModuleInit, OnModuleDestroy {
|
|
this.onMoving.next(true);
|
|
this.onMoving.next(true);
|
|
this.holdSteam();
|
|
this.holdSteam();
|
|
|
|
|
|
- seqs.forEach((frame: StreamReplyType) => {
|
|
|
|
|
|
+ seqs.forEach((frame: StreamReplyType, index:number) => {
|
|
const mediaSrc = frame.mediaSrc;
|
|
const mediaSrc = frame.mediaSrc;
|
|
- let src = mediaSrc.split('?')[0];
|
|
|
|
|
|
+ const src = mediaSrc.split('?')[0];
|
|
// 临时本地替换路经
|
|
// 临时本地替换路经
|
|
- src = src.replace('/0000000001/', '');
|
|
|
|
- const clipPath = join(__dirname, `../ws/video/${src}`);
|
|
|
|
|
|
+ // src = src.replace('//', '');
|
|
|
|
+ const clipPath = join(__dirname, `../ws/${src}`);
|
|
const type = frame.type?.length ? frame.type.slice() : 'move';
|
|
const type = frame.type?.length ? frame.type.slice() : 'move';
|
|
|
|
|
|
console.log('type', frame.type);
|
|
console.log('type', frame.type);
|
|
delete frame.mediaSrc;
|
|
delete frame.mediaSrc;
|
|
delete frame.type;
|
|
delete frame.type;
|
|
-
|
|
|
|
|
|
+ //TODO
|
|
|
|
+ const random_boolean = Math.random() < 0.3;
|
|
|
|
+ // const random_index === 1 ? 3 : random_boolean ? 1 : 3;
|
|
const stream: StreamFrameType = {
|
|
const stream: StreamFrameType = {
|
|
frame: -1,
|
|
frame: -1,
|
|
clipPath: clipPath,
|
|
clipPath: clipPath,
|
|
metaData: JSON.stringify(frame),
|
|
metaData: JSON.stringify(frame),
|
|
serverTime: this.mockserverTime,
|
|
serverTime: this.mockserverTime,
|
|
- DIR: 1,
|
|
|
|
|
|
+ DIR: 3,
|
|
type: type,
|
|
type: type,
|
|
};
|
|
};
|
|
this.moveQueue.next(stream);
|
|
this.moveQueue.next(stream);
|
|
@@ -635,10 +637,10 @@ export class SceneService implements OnModuleInit, OnModuleDestroy {
|
|
if (redisData && 'mediaSrc' in redisData) {
|
|
if (redisData && 'mediaSrc' in redisData) {
|
|
const mediaSrc: string = redisData.mediaSrc || '';
|
|
const mediaSrc: string = redisData.mediaSrc || '';
|
|
if (mediaSrc.length > 0) {
|
|
if (mediaSrc.length > 0) {
|
|
- let src = mediaSrc.split('?')[0];
|
|
|
|
|
|
+ const src = mediaSrc.split('?')[0];
|
|
// 临时本地替换路经
|
|
// 临时本地替换路经
|
|
- src = src.replace('/0000000001/', '');
|
|
|
|
- const clipPath = join(__dirname, `../ws/video/${src}`);
|
|
|
|
|
|
+ // src = src.replace('/10086/', '');
|
|
|
|
+ const clipPath = join(__dirname, `../ws/${src}`);
|
|
delete redisData.mediaSrc;
|
|
delete redisData.mediaSrc;
|
|
this.logger.log(
|
|
this.logger.log(
|
|
`user:${this.user_id}:first render stream` +
|
|
`user:${this.user_id}:first render stream` +
|