Can't get same audio quality recording with Quicktime vs using Web Audio












0















I'm working on https://www.crayon.pro, a website for creating Khan-Academy-style lectures straight from the browser. For this purpose, I'm trying to use the Web Audio API to record audio with the best possible quality from the user's mic.



The problem is: using the same computer (Mid 2012 Retina Macbook Pro) and same microphone (Bose QC20), I get significantly different results from getUserMedia and any native audio recording app such as Quicktime Player.



I tested Chrome, Firefox and Safari and got similar results in terms of audio quality using my website or this demo: https://webaudiodemos.appspot.com/AudioRecorder/index.html



The voice recorded by Quicktime sounds overall clearer, less prone to pops (those loud sounds when you speak directly against the mic, or wind blows into it) and less metallic (this one is somewhat hard to explain - I feel it like an overall "buzziness" in the audio). This gets me thinking the reason might be that Quicktime isn't recording "raw mic input" but actually applying some filters to the audio as it's recorded.



I know that things such as echo cancellation and noise suppression can also be configured in the browser using MediaTrackConstraints, so I played around with those settings, but without success.



So my questions are:




  • What could be the reason for the inferior recorded audio quality in the browser?


  • If it's a matter of Quicktime having superior filtering algorithms, any recommendations to open source libraries I could use to achieve a similar result?


  • Is it possible that I'm loosing quality by recording only 1 audio channel (mono), instead of recording 2 (stereo) and merging the two streams into 1 in a "clever" way?











share|improve this question



























    0















    I'm working on https://www.crayon.pro, a website for creating Khan-Academy-style lectures straight from the browser. For this purpose, I'm trying to use the Web Audio API to record audio with the best possible quality from the user's mic.



    The problem is: using the same computer (Mid 2012 Retina Macbook Pro) and same microphone (Bose QC20), I get significantly different results from getUserMedia and any native audio recording app such as Quicktime Player.



    I tested Chrome, Firefox and Safari and got similar results in terms of audio quality using my website or this demo: https://webaudiodemos.appspot.com/AudioRecorder/index.html



    The voice recorded by Quicktime sounds overall clearer, less prone to pops (those loud sounds when you speak directly against the mic, or wind blows into it) and less metallic (this one is somewhat hard to explain - I feel it like an overall "buzziness" in the audio). This gets me thinking the reason might be that Quicktime isn't recording "raw mic input" but actually applying some filters to the audio as it's recorded.



    I know that things such as echo cancellation and noise suppression can also be configured in the browser using MediaTrackConstraints, so I played around with those settings, but without success.



    So my questions are:




    • What could be the reason for the inferior recorded audio quality in the browser?


    • If it's a matter of Quicktime having superior filtering algorithms, any recommendations to open source libraries I could use to achieve a similar result?


    • Is it possible that I'm loosing quality by recording only 1 audio channel (mono), instead of recording 2 (stereo) and merging the two streams into 1 in a "clever" way?











    share|improve this question

























      0












      0








      0








      I'm working on https://www.crayon.pro, a website for creating Khan-Academy-style lectures straight from the browser. For this purpose, I'm trying to use the Web Audio API to record audio with the best possible quality from the user's mic.



      The problem is: using the same computer (Mid 2012 Retina Macbook Pro) and same microphone (Bose QC20), I get significantly different results from getUserMedia and any native audio recording app such as Quicktime Player.



      I tested Chrome, Firefox and Safari and got similar results in terms of audio quality using my website or this demo: https://webaudiodemos.appspot.com/AudioRecorder/index.html



      The voice recorded by Quicktime sounds overall clearer, less prone to pops (those loud sounds when you speak directly against the mic, or wind blows into it) and less metallic (this one is somewhat hard to explain - I feel it like an overall "buzziness" in the audio). This gets me thinking the reason might be that Quicktime isn't recording "raw mic input" but actually applying some filters to the audio as it's recorded.



      I know that things such as echo cancellation and noise suppression can also be configured in the browser using MediaTrackConstraints, so I played around with those settings, but without success.



      So my questions are:




      • What could be the reason for the inferior recorded audio quality in the browser?


      • If it's a matter of Quicktime having superior filtering algorithms, any recommendations to open source libraries I could use to achieve a similar result?


      • Is it possible that I'm loosing quality by recording only 1 audio channel (mono), instead of recording 2 (stereo) and merging the two streams into 1 in a "clever" way?











      share|improve this question














      I'm working on https://www.crayon.pro, a website for creating Khan-Academy-style lectures straight from the browser. For this purpose, I'm trying to use the Web Audio API to record audio with the best possible quality from the user's mic.



      The problem is: using the same computer (Mid 2012 Retina Macbook Pro) and same microphone (Bose QC20), I get significantly different results from getUserMedia and any native audio recording app such as Quicktime Player.



      I tested Chrome, Firefox and Safari and got similar results in terms of audio quality using my website or this demo: https://webaudiodemos.appspot.com/AudioRecorder/index.html



      The voice recorded by Quicktime sounds overall clearer, less prone to pops (those loud sounds when you speak directly against the mic, or wind blows into it) and less metallic (this one is somewhat hard to explain - I feel it like an overall "buzziness" in the audio). This gets me thinking the reason might be that Quicktime isn't recording "raw mic input" but actually applying some filters to the audio as it's recorded.



      I know that things such as echo cancellation and noise suppression can also be configured in the browser using MediaTrackConstraints, so I played around with those settings, but without success.



      So my questions are:




      • What could be the reason for the inferior recorded audio quality in the browser?


      • If it's a matter of Quicktime having superior filtering algorithms, any recommendations to open source libraries I could use to achieve a similar result?


      • Is it possible that I'm loosing quality by recording only 1 audio channel (mono), instead of recording 2 (stereo) and merging the two streams into 1 in a "clever" way?








      audio audio-recording web-audio microphone audio-processing






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 24 '18 at 17:26









      Marcello SalomãoMarcello Salomão

      4118




      4118
























          0






          active

          oldest

          votes











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53460658%2fcant-get-same-audio-quality-recording-with-quicktime-vs-using-web-audio%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53460658%2fcant-get-same-audio-quality-recording-with-quicktime-vs-using-web-audio%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          To store a contact into the json file from server.js file using a class in NodeJS

          Redirect URL with Chrome Remote Debugging Android Devices

          Dieringhausen