feat: add Chromecast playback support
This commit is contained in:
@@ -813,6 +813,18 @@ static void reporting(const std::string &base, const std::string &fixtures) {
|
||||
std::abs([rows[0][@"position_seconds"] doubleValue] - 50) < .03 &&
|
||||
[rows[0][@"completion_eligible"] boolValue],
|
||||
"initial report is restored native position, not pre-resume zero");
|
||||
PlayerState receiver = player_get_state(player.get());
|
||||
receiver.position = 114;
|
||||
receiver.status = PLAYER_PAUSED;
|
||||
require(player_report_remote_state(player.get(), &receiver), "receiver-confirmed progress accepted");
|
||||
require(player_close(player.get()), "close immediately after receiver progress");
|
||||
until(player.get(), [&](auto state) {
|
||||
auto current = progressRecords(path);
|
||||
return state.status == PLAYER_EMPTY && [current.lastObject[@"event"] isEqualToString:@"closed"] &&
|
||||
[current.lastObject[@"position_seconds"] doubleValue] == 114;
|
||||
}, "closing drains final Cast position instead of abandoned decoder position");
|
||||
require([progressRecords(path).lastObject[@"completion_eligible"] boolValue],
|
||||
"receiver-confirmed video remains completion eligible");
|
||||
require(openNetwork(player.get(), base, "/failure/av.mp4", "", 4, false, true, second),
|
||||
"failed requested identity accepted asynchronously");
|
||||
until(player.get(), [](auto state) { return state.status == PLAYER_ERROR; }, "failed reported open", true);
|
||||
|
||||
Reference in New Issue
Block a user