Answers.Body: <p>The Mainconcept or Sony codecs in Vegas are subpar for low-bitrate output such as needed for HTML5 use. Use ffmpeg to generate your HTML5 videos. Yes, mono audio is acceptable for HTML5 use, but once you use ffmpeg/x264 for generating those videos, the 6kB/s savings you get from switching to mono audio won't matter much if at all.</p>
  
  <p>Get the 32-bit static build of ffmpeg from <a href="http://ffmpeg.zeranoe.com/builds/" rel="nofollow noreferrer">here</a>. Render a high bitrate Mainconcept MP4 from Vegas, say, 12 Mbps. And then run the following ffmpeg command:</p>
  
  <pre><code>ffmpeg -i "vegas-output.mp4" -crf 23 -c:a aac -b:a 96k -strict -2 -movflags +faststart "html5-video.mp4"
  </code></pre>
  
  <p>If you still want mono audio, insert</p>
  
  <pre><code>-ac 1
  </code></pre>
  
  <p>after aac.</p>
  
  <p>If you don't like the quality or size is too large, then play around with the CRF value. They go from 0 to 63 with lower being better. 18 to 28 is the usual range you want to stick with. </p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-11-19T18:02:49.380Z
Answers.Text: Thank you. I'll give this a go and report back. A few things 1) Why is Vegas Pro not better suited for this? Is that by intentional design or a flaw? 2) Where did you get 6kbps? My understanding is that the difference between a 128kbps mono stream and a 128kbps stereo stream is that the mono stream is double the rate of any of the two stereo channels. In speech, the quality difference between 64kbps and 128kbps is remarkable, and on a one hour lecture is close to 50MB. Multiplied by thousands of lectures (which I have) that's a notable consideration.
Answers.UserDisplayName: user3643
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-11-19T18:14:18.917Z
Answers.Text: Not Vegas the editor, but the third-party MP4 encoders included in it i.e. Mainconcept (a German software company), also used by Adobe, and Sony, which may not be from the same division as Vegas. Those encoders are good for broadcast quality output but x264 (available standalone or within ffmpeg) has developed some tricks which allows it to shine at the low-bitrates used in web videos.
Answers.UserDisplayName: Gyan
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-11-19T18:18:35.793Z
Answers.Text: I see I misread your question, which says, "if I want 96kbps mono, I actually end up with stereo, 48kbps on each channel". I thought you wanted only a single 48 kbps mono stream, hence the 6kB/s savings from discarding one channel. In which case, render out your audio at 192 kbps or higher from Vegas before feeding it to ffmpeg.
Answers.UserDisplayName: Gyan
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-01-26T08:28:12.743Z
Answers.Text: Seems to work, except `-a:c 1` is not the correct command. Should be `-ac 1`. Submitted an edit for the post.
Answers.UserDisplayName: user3643
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-11-18T20:22:00.590Z
Answers.LastActivityDate: 2017-01-26T08:34:25.137Z
Answers.LastEditDate: 2017-01-26T08:34:25.137Z
Answers.UserDisplayName: Gyan
Body: <p>I'm doing some rendering in Vegas Pro and notice that if I select MainConcept (which gives me an HTML5 compatible MP4) the audio tab only has options for the bit rate and the sample rate. Before rendering, I combined both left and right channels on the timeline, but once rendered, the video file has two audio channels.</p>
  
  <p>This is normally not a problem, but in this case, the audio is only voice and I'm concerned about file size, so if I could render with a mono channel, I would be able to get a higher bit rate for audio quality, but keep the file size small.</p>
  
  <p>What Vegas is doing is taking the single channel audio from the timeline, duplicating it, setting a left and right channel, then cuts the set bitrate in half for each channel. So if I want 96kbps mono, I actually end up with  stereo, 48kbps on each channel.</p>
  
  <p>Is this an inherent issue with MainConcept file types? I notice that with others I can actually select mono in the audio tab, but not with MainConcept. I thought I read a short half sentence saying as much on some forum, but not sure.</p>
  
  <p>If there is a way to have an HTML5 compatible MP4 with mono audio, please tell me how.</p>
  
Tags: <audio><mp4><stereo>
Title: Does the MP4 HTML5 compatible video type allow for mono audio?
UserDisplayName: user3643
ThreadText: # Does the MP4 HTML5 compatible video type allow for mono audio?
  
  (Asked by: username_0 on 2015-11-18)
  
  I'm doing some rendering in Vegas Pro and notice that if I select MainConcept (which gives me an HTML5 compatible MP4) the audio tab only has options for the bit rate and the sample rate. Before rendering, I combined both left and right channels on the timeline, but once rendered, the video file has two audio channels.
  
  This is normally not a problem, but in this case, the audio is only voice and I'm concerned about file size, so if I could render with a mono channel, I would be able to get a higher bit rate for audio quality, but keep the file size small.
  
  What Vegas is doing is taking the single channel audio from the timeline, duplicating it, setting a left and right channel, then cuts the set bitrate in half for each channel. So if I want 96kbps mono, I actually end up with stereo, 48kbps on each channel.
  
  Is this an inherent issue with MainConcept file types? I notice that with others I can actually select mono in the audio tab, but not with MainConcept. I thought I read a short half sentence saying as much on some forum, but not sure.
  
  If there is a way to have an HTML5 compatible MP4 with mono audio, please tell me how.
  
  **Tags:** audio, mp4, stereo
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2015-11-18. Score: 5 | Accepted answer
  
  The Mainconcept or Sony codecs in Vegas are subpar for low-bitrate output such as needed for HTML5 use. Use ffmpeg to generate your HTML5 videos. Yes, mono audio is acceptable for HTML5 use, but once you use ffmpeg/x264 for generating those videos, the 6kB/s savings you get from switching to mono audio won't matter much if at all.
  
  Get the 32-bit static build of ffmpeg from [here](http://ffmpeg.zeranoe.com/builds/). Render a high bitrate Mainconcept MP4 from Vegas, say, 12 Mbps. And then run the following ffmpeg command:
  
  ```
  ffmpeg -i "vegas-output.mp4" -crf 23 -c:a aac -b:a 96k -strict -2 -movflags +faststart "html5-video.mp4"
  
  ```
  
  If you still want mono audio, insert
  
  ```
  -ac 1
  
  ```
  
  after aac.
  
  If you don't like the quality or size is too large, then play around with the CRF value. They go from 0 to 63 with lower being better. 18 to 28 is the usual range you want to stick with.
  
  > **Comments:**
  > **username_0**: Thank you. I'll give this a go and report back. A few things 1) Why is Vegas Pro not better suited for this? Is that by intentional design or a flaw? 2) Where did you get 6kbps? My understanding is that the difference between a 128kbps mono stream and a 128kbps stereo stream is that the mono stream is double the rate of any of the two stereo channels. In speech, the quality difference between 64kbps and 128kbps is remarkable, and on a one hour lecture is close to 50MB. Multiplied by thousands of lectures (which I have) that's a notable consideration.  
  > **username_1**: Not Vegas the editor, but the third-party MP4 encoders included in it i.e. Mainconcept (a German software company), also used by Adobe, and Sony, which may not be from the same division as Vegas. Those encoders are good for broadcast quality output but x264 (available standalone or within ffmpeg) has developed some tricks which allows it to shine at the low-bitrates used in web videos.  
  > **username_1**: I see I misread your question, which says, "if I want 96kbps mono, I actually end up with stereo, 48kbps on each channel". I thought you wanted only a single 48 kbps mono stream, hence the 6kB/s savings from discarding one channel. In which case, render out your audio at 192 kbps or higher from Vegas before feeding it to ffmpeg.  
  > **username_0**: Seems to work, except `-a:c 1` is not the correct command. Should be `-ac 1`. Submitted an edit for the post.  
  
  ---
  
  