public async Task RecordAsync()
        {
            var ss = await GetStreamServerAsync(Endpoints.StreamServer,
                                                new Dictionary <string, string> {
                { "target", Options.TwitCaster }, { "mode", "client" }
            }).ConfigureAwait(false);

            if (!ss.Movie.Live)
            {
                throw new TaskCanceledException($"{Options.TwitCaster} is not streaming");
            }

            // Add Headers
            WebSocketClient.AddDefaultHeader("Host", $"{ss.Fmp4.Host}");

            await ConnectAsync(ss).ConfigureAwait(false);
        }