# Producer AudioTrack and VideoTrack

**URL:** <https://mediasoup.discourse.group/t/producer-audiotrack-and-videotrack/3568>\
**Category:** mediasoup libraries\
**Created:** [November 12, 2021, 2:04pm UTC](https://mediasoup.discourse.group/t/producer-audiotrack-and-videotrack/3568 "2021-11-12T14:04:28Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![metasebiya](https://avatars.discourse-cdn.com/v4/letter/m/b77776/32.png) [@metasebiya](https://mediasoup.discourse.group/u/metasebiya)\
**Post date:** [November 12, 2021, 2:04pm UTC](https://mediasoup.discourse.group/t/producer-audiotrack-and-videotrack/3568/1 "2021-11-12T14:04:28Z")

</div>

I find the following solution from the mediasoup discourse group while I was searching solution to the same problem: either audio or video is sent to the consumer; I couldn’t send send both the video and audio to the consumer,  
the solution doesn’t seem to work for my case;

```auto
try {

    media_stream = await getUserMedia(mediaInputSource);
    // console.log('media_stream :', media_stream)
    const track = media_stream.getVideoTracks()[0];

    const audioTrack = media_stream.getAudioTracks()[0];

    const params = { track };

    const params2 = { audioTrack };

    if (chk_Simulcast.checked) {
      params.encodings = [
        { maxBitrate: 100000 },
        { maxBitrate: 300000 },
        { maxBitrate: 900000 },
      ];
      params.codecOptions = {
        videoGoogleStartBitrate : 1000
      };
    }
    videoProducer = await transport.produce(params);
    audioProducer = await transport.produce(params2)

  } 
  catch (err) {

    publish_status.innerHTML = err;

  }

```

---

<div class="post-metadata">

**Author:** ![ibc](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/ibc/32/1540_2.png) [@ibc](https://mediasoup.discourse.group/u/ibc)\
**Post date:** [November 12, 2021, 2:19pm UTC](https://mediasoup.discourse.group/t/producer-audiotrack-and-videotrack/3568/2 "2021-11-12T14:19:32Z")

</div>

There is clear documentation about how to do that in the website.
