}
private watchMasterFile () {
- this.filesWatcher.on('add', async path => {
+ const watcher = this.filesWatcher.on('change', async path => {
if (path !== join(this.outDirectory, this.streamingPlaylist.playlistFilename)) return
if (this.masterPlaylistCreated === true) return
try {
+ const masterPlaylistContent = await readFile(path, 'utf8')
+ // Not generated yet
+ if (!masterPlaylistContent) return
+
if (this.streamingPlaylist.storage === VideoStorage.OBJECT_STORAGE) {
const url = await storeHLSFileFromFilename(this.streamingPlaylist, this.streamingPlaylist.playlistFilename)
this.masterPlaylistCreated = true
logger.info('Master playlist file for %s has been created', this.videoUUID, this.lTags())
+
+ watcher.close()
+ .catch(err => logger.error('Cannot close watcher', { err }))
})
}