|
|
|
@ -1621,7 +1621,7 @@ const char * call_play_media_for_ml(struct call_monologue *ml, |
|
|
|
codec_update_all_source_handlers(ml, flags); |
|
|
|
|
|
|
|
/* this starts the audio player if needed */ |
|
|
|
update_init_subscribers(ml, OP_PLAY_MEDIA); |
|
|
|
update_init_monologue_subscribers(ml, OP_PLAY_MEDIA); |
|
|
|
/* media_player_new() now knows that audio player is in use |
|
|
|
* TODO: player options can have changed if already exists */ |
|
|
|
media_player_new(&ml->player, ml, NULL, &opts); |
|
|
|
@ -1652,7 +1652,7 @@ long long call_stop_media_for_ml(struct call_monologue *ml) |
|
|
|
long long ret = media_player_stop(ml->player); |
|
|
|
/* restore to non-mixing if needed */ |
|
|
|
codec_update_all_source_handlers(ml, NULL); |
|
|
|
update_init_subscribers(ml, OP_STOP_MEDIA); |
|
|
|
update_init_monologue_subscribers(ml, OP_STOP_MEDIA); |
|
|
|
/* mark MoH as already not used (it can be unset now) */ |
|
|
|
ml->player->opts.moh = 0; |
|
|
|
return ret; |
|
|
|
@ -1998,7 +1998,7 @@ static void media_player_run(void *ptr) { |
|
|
|
MEDIA_CLEAR(mp->media, BLOCK_EGRESS); |
|
|
|
|
|
|
|
codec_update_all_source_handlers(mp->media->monologue, NULL); |
|
|
|
update_init_subscribers(mp->media->monologue, OP_PLAY_MEDIA); |
|
|
|
update_init_monologue_subscribers(mp->media->monologue, OP_PLAY_MEDIA); |
|
|
|
|
|
|
|
rwlock_unlock_w(&call->master_lock); |
|
|
|
} |
|
|
|
|