我有一个由几个 Uint8Array 组成的数组。类似的东西:
[Uint8Array(16384), Uint8Array(16384), Uint8Array(16384), Uint8Array(16384), Uint8Array(16384), Uint8Array(8868)]
我如何将它们合并/连接/加入(不确定正确的术语是什么)到单个 ArrayBuffer?
这里的关键是我需要的输出必须是一个 ArrayBuffer。
在 galeksandrp 的演示中: https://github.com/galeksandrp/hls.js/tree/hlstorrent他使用 webtorrent 和 hls.js 创建 P2P 流。该演示非常适合我,但我需要使用字符串变量,而不是使用 hls.loadSource('193039199_mp4_h264_aac_ld_7.m3u8') 加载外部播放列表。
有人做过类似的事情吗?简单地尝试加载字符串会给出:“尝试解析基本 URL 时出错”,这是可以理解的,因为 URLToolkit 尝试从 loadSource 括号内的任何内容构建绝对 URL,因此它不会有可以解析的 URL。
strings 变量的内容与 '193039199_mp4_h264_aac_ld_7.m3u8' 相同
strings = ['#EXTM3U',
'#EXT-X-VERSION:3',
'#EXT-X-PLAYLIST-TYPE:VOD',
'#EXT-X-TARGETDURATION:10',
'#EXTINF:10.000,',
'magnet:?xt=urn:btih:5493683624141c381fa19c9ed3bf00be2e0d96af',
'#EXTINF:10.000,',
'magnet:?xt=urn:btih:1ec3227aabe562cf2b244a41b93fa0a1aa423f4d',
'#EXTINF:10.000,',
'magnet:?xt=urn:btih:3cbd1622487f202f11aea838b0984a1478054456',
'#EXTINF:10.000,',
'magnet:?xt=urn:btih:9cf20cfe4fd1745ea4f72067192681b30b52a8c5',
'#EXTINF:10.000,',
'magnet:?xt=urn:btih:0c96911da7c860a9ae2a26ed8a96c10590508407',
'#EXT-X-ENDLIST'];
Run Code Online (Sandbox Code Playgroud) 如何通过其值从数组中删除项目,但仍保留索引顺序而不是重新索引项目的数组?为了更清楚,下面的代码将按值删除项目,但它将重新索引值,这意味着在我们拼接5之后,15将具有0而不是1的索引.
var arr = [5, 15, 110, 210, 550];
var index = arr.indexOf(5);
if (index > -1) {
arr.splice(index, 1);
}
Run Code Online (Sandbox Code Playgroud) 我的应用程序可以在localhost上正常运行,但是一旦上载,我会不断收到“ socket.io/?EIO=3&transport=polling&t=Lvm1SGO”404错误,该错误始终在控制台中列出。抱歉,如果这是一个愚蠢的问题,但是我对socket.io还是很陌生。您可以在此处检查并查看操作中的错误:http: //95.211.186.223/projects/webrtc/work/P2PImage/
我的client.js文件:
// this file is meant to be browserified
var P2P = require("socket.io-p2p");
var io = require("socket.io-client");
var ss = require("socket.io-stream");
var socket = io();
var opts = {autoUpgrade: true, peerOpts: {numClients: 10}};
var p2p = new P2P(socket, opts);
var $ = require("jquery");
p2p.on("peer-num", function(num) {
console.log("You are peer number " + num);
$(".peerNum").html( "Number " + num );
});
p2p.on("file", function(stream) {
//console.log(stream);
var img = document.createElement("img");
img.src = (window.URL || window.webkitURL).createObjectURL(new Blob(stream));
document.getElementById("receivedImages").appendChild(img);
});
$(function() …Run Code Online (Sandbox Code Playgroud) 我正在使用包含四个异步函数的这段代码。我需要他们严格执行。
我该如何执行它们将按照示例中给出的顺序执行?
我的用例在Lambda中,并且可以访问异步。
function scanProducts() {
dynamoClient.scan(productParams, function (err, data) {
});
}
function scanCoupons() {
dynamoClient.scan(couponsParams, function (err, data) {
});
}
function scanRetailers() {
dynamoClient.scan(retailerParams, function (err, data) {
});
}
function sendEmail(ses) {
var email = {
"Source": "test@gmail.com",
"Template": "test-template",
"Destination": {
"ToAddresses": ["test@gmail.com"]
},
"TemplateData": `{}`
}
ses.sendTemplatedEmail(email);
}
Run Code Online (Sandbox Code Playgroud) javascript asynchronous amazon-web-services node.js amazon-dynamodb
javascript ×3
arrays ×2
node.js ×2
asynchronous ×1
browserify ×1
hls.js ×1
indexing ×1
socket.io ×1
sockets ×1
typed-arrays ×1