private async sendPendingChunks (): Promise<any> {
if (this.ended) return Promise.resolve()
+ const promises: Promise<any>[] = []
+
for (const playlist of this.pendingChunksPerPlaylist.keys()) {
for (const chunk of this.pendingChunksPerPlaylist.get(playlist)) {
logger.debug(`Sending added live chunk ${chunk} update`)
}
}
- this.updateWithRetry(payload)
- .catch(err => logger.error({ err }, 'Cannot update with retry'))
+ promises.push(this.updateWithRetry(payload))
}
this.pendingChunksPerPlaylist.set(playlist, [])
}
+
+ await Promise.all(promises)
}
private async updateWithRetry (payload: LiveRTMPHLSTranscodingUpdatePayload, currentTry = 1): Promise<any> {