here is my task:
async Task TTS(string voiceId, string Text)
{
    byte[] PrefixAudio = null;

    if (checkBox1.Checked)
    {
        PrefixAudio = File.ReadAllBytes(MyLink.Text);
    }
    else
    {
        PrefixAudio = null;
    }
    // Construct your request object including the new voice ID
    var request = new
    {
        model = "Zyphra/Zonos-v0.1-transformer",
        input = Text,
        language = "en-us",
        voice = voiceId,
        emotion = new
        {
            happiness = float.Parse(HappyBox.Text),
            sadness = float.Parse(SadBox.Text),
            disgust = float.Parse(GrossBox.Text),
            fear = float.Parse(ScaredBox.Text),
            surprise = float.Parse(ShockedBox.Text),
            anger = float.Parse(AngryBox.Text),
            other = float.Parse(OtherBox.Text),
            neutral = float.Parse(NeutralBox.Text)
        },
        response_format = "wav",
        vq_single = 1.0f,
        fmax = 24000.0f,
        pitch_std = 2f,
        speaking_rate = float.Parse(SpeechSpeedBox.Text),
        dnsmos_ovrl = 0.0f,
        speaker_noised = false,
        cfg_scale = float.Parse(CFGBox.Text),
        min_p = 0.15f,
        seed = GenerateRandomSeed(),
        randomize_seed = true,
        unconditional_keys = string.Empty,
        prefix_audio = PrefixAudio
    };

    // Serialize the request object into JSON
    var json = JsonConvert.SerializeObject(request);
    var content = new StringContent(json, Encoding.UTF8, "application/json");

    try
    {
        // Send a POST request to the speech generation endpoint
        var response = await MyClient.PostAsync($"{baseUrl}/v1/audio/speech", content);
        response.EnsureSuccessStatusCode();

        // Read the response content as a stream
        var audioStream = await response.Content.ReadAsStreamAsync();

        // Specify the output path for the generated audio
        var outputFilePath = @"H:\Hot\Pookie\Poo\poo\api\zonos.git\app\audio.wav"; // Update this to .wav extension

        // Save the audio stream to a file
        using (var fileStream = new FileStream(outputFilePath, FileMode.Create, FileAccess.Write))
        {
            await audioStream.CopyToAsync(fileStream);
        }

        duration = GetWaveFileDuration(outputFilePath);
        audioFilePath = outputFilePath;
        PlayAudio(ISim, duration, false);
    }
    catch (HttpRequestException e)
    {
        MessageBox.Show("Error sending request to the speech generation server:\n" + e.Message);
    }
    catch (TaskCanceledException e)
    {
        MessageBox.Show("The request timed out:\n" + e.Message);
    }
    catch (Exception ex)
    {
        MessageBox.Show("An unexpected error occurred:\n" + ex.Message);
    }
}

Here is my class:
using Newtonsoft.Json;
using System.Text;

public class LocosTTS
{
    private readonly string url;

    public LocosTTS(string url)
    {
        this.url = url;
    }

    public async Task<(bool success, string resultWav)> GenerateAudio(
        string modelChoice,
        string text,
        string language,
        List<float> emotions,
        float vqSingle,
        float fmax,
        float pitchStd,
        float speakingRate,
        float dnsmosOvrl,
        bool speakerNoised,
        float cfgScale,
        float minP,
        int seed = 0,
        bool randomizeSeed = false,
        List<string> unconditionalKeys = null,
        byte[] speakerAudio = null,
        byte[] prefixAudio = null)
    {
        using (var client = new HttpClient())
        {
            var jsonBody = new
            {
                model_choice = modelChoice,
                text,
                language,
                emotions,
                vq_single = vqSingle,
                fmax,
                pitch_std = pitchStd,
                speaking_rate = speakingRate,
                dnsmos_ovrl = dnsmosOvrl,
                speaker_noised = speakerNoised,
                cfg_scale = cfgScale,
                min_p = minP,
                seed,
                randomize_seed = randomizeSeed,
                unconditional_keys = unconditionalKeys,
                prefix_audio = prefixAudio
            };

            // Serialize the JSON object
            var jsonString = JsonConvert.SerializeObject(jsonBody);
            var jsonContent = new StringContent(jsonString, Encoding.UTF8, "application/json");

            // Send the request
            var response = await client.PostAsync(url, jsonContent);

            if (response.IsSuccessStatusCode)
            {
                var responseData = await response.Content.ReadAsStringAsync();
                dynamic result = JsonConvert.DeserializeObject(responseData);
                return (true, result.audio_filepath);
            }
            else
            {
                var errorMessage = await response.Content.ReadAsStringAsync();
                Console.WriteLine($"Error: {errorMessage}");
                return (false, errorMessage);
            }
        }
    }
}

Here is my progress bars name:
toolStripProgressBar1

is it possible to update the progress of this to my progress bar?