diff --git a/daemon/media_player.c b/daemon/media_player.c index 2411d8373..a9c4f3b27 100644 --- a/daemon/media_player.c +++ b/daemon/media_player.c @@ -953,7 +953,7 @@ static const rtp_payload_type *media_player_play_init(struct media_player *mp) { // call->master_lock held in W -static void media_player_play_start(struct media_player *mp, const rtp_payload_type *dst_pt) { +static bool media_player_play_start(struct media_player *mp, const rtp_payload_type *dst_pt) { // needed to have usable duration for some formats. ignore errors. if (!mp->coder.fmtctx->streams || !mp->coder.fmtctx->streams[0]) avformat_find_stream_info(mp->coder.fmtctx, NULL); @@ -961,17 +961,17 @@ static void media_player_play_start(struct media_player *mp, const rtp_payload_t mp->coder.avstream = mp->coder.fmtctx->streams[0]; if (!mp->coder.avstream) { ilog(LOG_ERR, "No AVStream present in format context"); - return; + return false; } if (__ensure_codec_handler(mp, dst_pt)) - return; + return false; if (mp->opts.block_egress) MEDIA_SET(mp->media, BLOCK_EGRESS); if (media_player_cache_entry_init(mp, dst_pt)) - return; + return true; mp->next_run = rtpe_now; // give ourselves a bit of a head start with decoding @@ -986,6 +986,8 @@ static void media_player_play_start(struct media_player *mp, const rtp_payload_t av_seek_frame(mp->coder.fmtctx, 0, 0, 0); media_player_read_packet(mp); + + return true; } #endif @@ -1032,9 +1034,7 @@ bool media_player_play_file(struct media_player *mp, const str *file, media_play if (ret == MPC_ERR) return false; - media_player_play_start(mp, dst_pt); - - return true; + return media_player_play_start(mp, dst_pt); #else return false; #endif @@ -1171,9 +1171,7 @@ bool media_player_play_blob(struct media_player *mp, const str *blob, media_play if (ret == MPC_ERR) return false; - media_player_play_start(mp, dst_pt); - - return true; + return media_player_play_start(mp, dst_pt); } // call->master_lock held in W @@ -1280,9 +1278,7 @@ bool media_player_play_db(struct media_player *mp, long long id, media_player_op if (ret == MPC_ERR) return false; - media_player_play_start(mp, dst_pt); - - return true; + return media_player_play_start(mp, dst_pt); } // call->master_lock held in W @@ -1403,9 +1399,7 @@ bool media_player_start(struct media_player *mp) { if (!dst_pt) return false; - media_player_play_start(mp, dst_pt); - - return true; + return media_player_play_start(mp, dst_pt); #else return false; #endif