HTTPS Issue

I am loading a hls manifest from a https source. I can confirm using roUrlTransfer that the source does exists and is accessible. Further down the script, I attempt to load the same url but using an actual roVideoScreen object (in order to play the video). But the debug output keeps stating: “handshakefailed”. This is my code can anyone spot the problem? I have redacted the urls

sub Main()
    ?"Starting Application"

    streamUrl = "https://hls-encodes.[redacted URL].mp4/hls.m3u8"

    port = CreateObject("roMessagePort")
    screen=CreateObject("roScreen", true)
    screen.SetAlphaEnable(true)
    screen.SetMessagePort(port)

    ut = CreateObject("roUrlTransfer")
    'ut.SetCertificatesFile("pkg:/certs/AddTrustExternalCARoot.crt")
    ut.SetCertificatesFile("common:/certs/ca-bundle.crt")
    ut.setUrl(streamUrl)
    ?ut.getToString()

    player = CreateObject("roVideoPlayer")
    player.SetCertificatesFile("common:/certs/ca-bundle.crt")
    player.AddHeader("X-Roku-Reserved-Dev-Id", "")
    player.SetMessagePort(port)
    player.SetLoop(false)
    
    player.SetContentList([{
        StreamFormat: "hls"
        Streams: [{url: streamUrl}]
    }])

    ' debugging
    syslog = CreateObject("roSystemLog")
    syslog.SetMessagePort(port)
    syslog.EnableType("http.error")
    syslog.EnableType("http.connect")

    ?"Start Play"
    screen.clear(&h00000000)
    screen.swapBuffers()
    player.Play()

    while true
        ?"Looping ..."
        msg = wait(0, port)

        if type(msg) = "roVideoPlayerEvent" then
            print "msg = "; msg.getMessage() " | index = "; msg.GetIndex()
        elseif type(msg) = "roSystemLogEvent" then
            ?"System Log Event"
            info = msg.getInfo()
            ?info
        else
            print "Unexpected message class: "; type(msg)
        end if
    end while

end sub