You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
814 B
35 lines
814 B
|
2 years ago
|
package tv.anypoint.proxy.model.agent
|
||
|
2 years ago
|
|
||
|
|
data class Cue(
|
||
|
|
var id: Long = 0,
|
||
|
|
var ppId: Int = 0,
|
||
|
|
/** 큐 시작 시각 (ms) */
|
||
|
|
var time: Long = 0,
|
||
|
|
/** 큐 길이 (ms) */
|
||
|
|
var duration: Int = 0,
|
||
|
|
var type: CueType = CueType.NORMAL,
|
||
|
|
var placementId: Int = 0,
|
||
|
|
var startPts: Long = 0,
|
||
|
|
var multicastUri: String = "",
|
||
|
|
var isPushCue: Boolean = false,
|
||
|
|
var owner: CueOwner = CueOwner.OTT
|
||
|
|
) {
|
||
|
|
/** 큐 종료 시각 (ms) = [time] + [duration] */
|
||
|
|
val endTime: Long
|
||
|
|
get() = time + duration
|
||
|
|
}
|
||
|
|
|
||
|
|
enum class CueType(val v: Byte) {
|
||
|
|
INVALID_CUE_TYPE(Byte.MIN_VALUE),
|
||
|
|
NORMAL(0),
|
||
|
|
CANCEL(1),
|
||
|
|
REPLACE(2)
|
||
|
|
;
|
||
|
|
|
||
|
|
companion object {
|
||
|
|
operator fun get(v: Byte): CueType {
|
||
|
|
return values().find { it.v == v } ?: INVALID_CUE_TYPE
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|