mirror of
https://github.com/Monibuca/engine.git
synced 2025-10-06 17:16:55 +08:00
feat: 增加publisher的比较
This commit is contained in:
@@ -29,10 +29,13 @@ func (p *Publisher) getAudioTrack() common.AudioTrack {
|
|||||||
func (p *Publisher) getVideoTrack() common.VideoTrack {
|
func (p *Publisher) getVideoTrack() common.VideoTrack {
|
||||||
return p.VideoTrack
|
return p.VideoTrack
|
||||||
}
|
}
|
||||||
|
func (p *Publisher) Equal(p2 IPublisher) bool {
|
||||||
|
return p.getIO() == p2.getIO()
|
||||||
|
}
|
||||||
func (p *Publisher) OnEvent(event any) {
|
func (p *Publisher) OnEvent(event any) {
|
||||||
switch v := event.(type) {
|
switch v := event.(type) {
|
||||||
case IPublisher:
|
case IPublisher:
|
||||||
if v.getIO() == p.getIO() { //第一任
|
if p.Equal(v) { //第一任
|
||||||
p.AudioTrack = p.Stream.NewAudioTrack()
|
p.AudioTrack = p.Stream.NewAudioTrack()
|
||||||
p.VideoTrack = p.Stream.NewVideoTrack()
|
p.VideoTrack = p.Stream.NewVideoTrack()
|
||||||
} else { // 使用前任的track,因为订阅者都挂在前任的上面
|
} else { // 使用前任的track,因为订阅者都挂在前任的上面
|
||||||
|
Reference in New Issue
Block a user