davidliu
Committed by GitHub

expose mime type and participant name (#36)

* expose track mimeType and participant name

* update test for name
... ... @@ -51,6 +51,7 @@ open class Participant(
@get:FlowObservable
var audioLevel: Float by flowDelegate(0f)
internal set
/**
* Changes can be observed by using [io.livekit.android.util.flow]
*/
... ... @@ -63,6 +64,10 @@ open class Participant(
}
}
internal set
@get:FlowObservable
var name by flowDelegate<String?>(null)
/**
* Changes can be observed by using [io.livekit.android.util.flow]
*/
... ... @@ -104,6 +109,7 @@ open class Participant(
@get:FlowObservable
var tracks by flowDelegate(emptyMap<String, TrackPublication>())
protected set
/**
* Changes can be observed by using [io.livekit.android.util.flow]
*/
... ... @@ -113,6 +119,7 @@ open class Participant(
.map { it.filterValues { publication -> publication.kind == Track.Kind.AUDIO } }
.stateIn(scope, SharingStarted.Eagerly, emptyMap())
)
/**
* Changes can be observed by using [io.livekit.android.util.flow]
*/
... ... @@ -204,6 +211,7 @@ open class Participant(
identity = info.identity
participantInfo = info
metadata = info.metadata
name = info.name
}
override fun equals(other: Any?): Boolean {
... ... @@ -237,7 +245,10 @@ open class Participant(
internal fun onTrackStreamStateChanged(trackEvent: TrackEvent.StreamStateChanged) {
val trackPublication = tracks[trackEvent.track.sid] ?: return
eventBus.postEvent(ParticipantEvent.TrackStreamStateChanged(this, trackPublication, trackEvent.streamState), scope)
eventBus.postEvent(
ParticipantEvent.TrackStreamStateChanged(this, trackPublication, trackEvent.streamState),
scope
)
}
}
... ...
... ... @@ -32,6 +32,8 @@ open class TrackPublication(
internal set
var source: Track.Source = Track.Source.UNKNOWN
internal set
var mimeType: String? = null
internal set
var participant: WeakReference<Participant>
... ... @@ -53,5 +55,6 @@ open class TrackPublication(
simulcasted = info.simulcast
dimensions = Track.Dimensions(info.width, info.height)
}
mimeType = info.mimeType
}
}
... ...
... ... @@ -31,6 +31,7 @@ class ParticipantTest {
assertEquals(INFO.sid, participant.sid)
assertEquals(INFO.identity, participant.identity)
assertEquals(INFO.metadata, participant.metadata)
assertEquals(INFO.name, participant.name)
assertEquals(INFO, participant.participantInfo)
}
... ... @@ -118,6 +119,7 @@ class ParticipantTest {
.setSid("sid")
.setIdentity("identity")
.setMetadata("metadata")
.setName("name")
.build()
val TRACK_INFO = LivekitModels.TrackInfo.newBuilder()
... ... @@ -125,6 +127,7 @@ class ParticipantTest {
.setName("name")
.setType(LivekitModels.TrackType.AUDIO)
.setMuted(false)
.setMimeType("audio/mpeg")
.build()
}
}
\ No newline at end of file
... ...
Subproject commit 88ab66e0e761ff304042b286c41de3c803b45576
Subproject commit 2c4c8d7764edf02818d1af686acc89165a5128bc
... ...