import memoizee = require('memoizee')
interface MuxingSessionEvents {
- 'master-playlist-created': ({ videoId: number }) => void
+ 'master-playlist-created': (options: { videoId: number }) => void
- 'bad-socket-health': ({ videoId: number }) => void
- 'duration-exceeded': ({ videoId: number }) => void
- 'quota-exceeded': ({ videoId: number }) => void
+ 'bad-socket-health': (options: { videoId: number }) => void
+ 'duration-exceeded': (options: { videoId: number }) => void
+ 'quota-exceeded': (options: { videoId: number }) => void
- 'ffmpeg-end': ({ videoId: number }) => void
- 'ffmpeg-error': ({ videoId: string }) => void
+ 'ffmpeg-end': (options: { videoId: number }) => void
+ 'ffmpeg-error': (options: { videoId: number }) => void
- 'after-cleanup': ({ videoId: number }) => void
+ 'after-cleanup': (options: { videoId: number }) => void
}
declare interface MuxingSession {
private readonly bitrate: number
private readonly ratio: number
+ private readonly hasAudio: boolean
+
private readonly videoId: number
private readonly videoUUID: string
private readonly saveReplay: boolean
bitrate: number
ratio: number
allResolutions: number[]
+ hasAudio: boolean
}) {
super()
this.bitrate = options.bitrate
this.ratio = options.ratio
+ this.hasAudio = options.hasAudio
+
this.allResolutions = options.allResolutions
this.videoId = this.videoLive.Video.id
bitrate: this.bitrate,
ratio: this.ratio,
+ hasAudio: this.hasAudio,
+
availableEncoders: VideoTranscodingProfilesManager.Instance.getAvailableEncoders(),
profile: CONFIG.LIVE.TRANSCODING.PROFILE
})