on Demand broadcasts for offline viewing
use Carp qw( croak );
use HTTP::Tiny ();
use JSON::PP qw( decode_json );
use Video::NRK::Cache::ProgramId;
use Video::NRK::Cache::Ytdlp;
my $version = $Vi
s,
);
}
method get_json ($endpoint) {
my $json_url = "$psapi_base$endpoint" =~ s/\{id\}/$program_id/r;
my $res = $ua->get($json_url, {headers => { Accept => 'application/json' }});
my $error = $
de_json $res->{content};
}
method get_metadata () {
my $json = $self->get_json("/playback/metadata/program/{id}");
my $title = $json->{preplay}{titles}{title} // '';
if (my $subtitle = $json->{