feat: remove Receiver#createVideoStream

nah
This commit is contained in:
Elysia
2024-09-16 22:01:58 +07:00
parent 99e348fe2b
commit f4a4fb6416
3 changed files with 4 additions and 58 deletions

View File

@@ -4,7 +4,6 @@ const EventEmitter = require('events');
const { Buffer } = require('node:buffer');
const crypto = require('node:crypto');
const { setTimeout } = require('node:timers');
const { IvfJoinner } = require('./video/IvfJoinner');
const Speaking = require('../../../util/Speaking');
const secretbox = require('../util/Secretbox');
const { SILENCE_FRAME } = require('../util/Silence');
@@ -27,7 +26,7 @@ class PacketHandler extends EventEmitter {
this.receiver = receiver;
this.nonce = null;
this.streams = new Map();
this.videoStreams = new Map();
this.videoStreams = new Map(); // Placeholder
this.speakingTimeouts = new Map();
}
@@ -64,14 +63,6 @@ class PacketHandler extends EventEmitter {
return stream;
}
makeVideoStream(user) {
if (this.videoStreams.has(user)) return this.videoStreams.get(user);
const stream = new IvfJoinner('VP8'); // Test VP8 ok
stream.stream.on('end', () => this.videoStreams.delete(user));
this.videoStreams.set(user, stream);
return stream;
}
parseBuffer(buffer) {
const { secret_key, mode } = this.receiver.connection.authentication;
// Open packet
@@ -118,20 +109,6 @@ class PacketHandler extends EventEmitter {
packet = Buffer.from(packet);
break;
}
case 'xsalsa20_poly1305_lite': {
packet = secretbox.methods.open(buffer.slice(12, buffer.length - 4), this.nonce, secret_key);
break;
}
case 'xsalsa20_poly1305_suffix': {
packet = secretbox.methods.open(buffer.slice(12, buffer.length - 24), this.nonce, secret_key);
break;
}
case 'xsalsa20_poly1305': {
packet = secretbox.methods.open(buffer.slice(12), this.nonce, secret_key);
break;
}
default: {
throw new RangeError(`Unsupported decryption method: ${mode}`);
}
@@ -158,7 +135,7 @@ class PacketHandler extends EventEmitter {
push(buffer) {
const ssrc = buffer.readUInt32BE(8);
const userStat = this.connection.ssrcMap.get(ssrc) || this.connection.ssrcMap.get(ssrc - 1); // Maybe vidoe_ssrc ?
const userStat = this.connection.ssrcMap.get(ssrc) || this.connection.ssrcMap.get(ssrc - 1); // Maybe video_ssrc ?
if (!userStat) return;

View File

@@ -53,37 +53,6 @@ class VoiceReceiver extends EventEmitter {
}
return stream;
}
/**
* Creates a new video receiving stream. If a stream already exists for a user, then that stream will be returned
* rather than generating a new one.
* @param {UserResolvable} user The user to start listening to.
* @returns {IvfJoinner}
* @deprecated Only support VP8
* @example
* const video = connection.receiver.createVideoStream('1071734918972985395');
* video.stream.pipe(fs.createWriteStream('test.ivf'));
* setTimeout(() => {
* video.stop();
* video.createFinalFile(
* fs.createReadStream('test.ivf'),
* fs.createWriteStream('final.ivf'),
* );
* }, 10_000);
*/
createVideoStream(user) {
user = this.connection.client.users.resolve(user);
if (!user) throw new Error('VOICE_USER_MISSING');
const stream = this.packets.makeVideoStream(user.id);
return stream;
}
createTestVideoStream(user) {
user = this.connection.client.users.resolve(user);
if (!user) throw new Error('VOICE_USER_MISSING');
const stream = this.packets.makeTestVideoStream(user.id);
return stream;
}
}
module.exports = VoiceReceiver;