Record as Ogg using MediaRecorder in Chrome

后端 未结 2 996
难免孤独
难免孤独 2020-12-10 17:13

Is there a way we could record ogg format in Chrome while working with MediaRecorder ? I believe, Chrome by default supports WebM. Following is what I do

            


        
2条回答
  •  無奈伤痛
    2020-12-10 17:39

    From the list of supported formats here, it appears it does not.

    However, here are some libraries that help you record to alternative formats:

    1) Opus Media Recorder: https://github.com/kbumsik/opus-media-recorder

    Formats (Container.Codec): Ogg.Opus, WebM.Opus, WAV.PCM
    Browsers: Chrome, Firefox, Safari, Edge

    Note: Does not let you change the sampling rate for Opus recording from the default of 48000hz. (For example, this means its output can't directly be submitted to DialogFlow, since it requires Opus audio to have a sample rate of 16000hz.)

    2) Opus Recorder: https://github.com/chris-rudmin/opus-recorder

    Formats: Ogg.Opus, WAV.PCM
    Browsers: Chrome, Firefox, Safari, Opera, Edge

    3) LibFlac: https://github.com/mmig/libflac.js

    Formats: FLAC.FLAC
    Browsers: (unknown, but probably same as the above)

    See the speech-to-flac example for how to use with microphone input.

    4) WebAudioRecorder: https://github.com/higuma/web-audio-recorder-js

    Formats: Ogg.Vorbis, MP3.MP3, WAV.PCM
    Browsers: (unknown, but probably same as the above)

    5) Libraries augmenting MediaRecorder with WAV/PCM support

    A: https://github.com/muaz-khan/RecordRTC (recorderType: RecordRTC.StereoAudioRecorder)
    B: https://github.com/streamproc/MediaStreamRecorder (mimeType: "audio/wav" or "audio/pcm")

    6) Manual WAV.PCM encoding

    For WAV.PCM, the format is simple enough you don't necessarily need a library. If you prefer a "lower level" approach, you can look through the examples here: https://stackoverflow.com/a/54213814/2441655

提交回复
热议问题