GithubHelp home page GithubHelp logo

Is it possible/good practice to not get blobs after certain intervals, but rather as one full webm file after hitting stop? about mediastreamrecorder HOT 10 OPEN

streamproc avatar streamproc commented on June 3, 2024
Is it possible/good practice to not get blobs after certain intervals, but rather as one full webm file after hitting stop?

from mediastreamrecorder.

Comments (10)

muaz-khan avatar muaz-khan commented on June 3, 2024

Actually MediaStreamRecorder is a modified version of RecordRTC. You should try RecordRTC instead:

RecordRTC provides startRecording/stopRecording methods:

from mediastreamrecorder.

muaz-khan avatar muaz-khan commented on June 3, 2024

Just for clarifications, MediaStreamRecorder also provides "stop" method:

var mediaRecorder = new MediaStreamRecorder(stream);
mediaRecorder.mimeType = 'video/webm';
mediaRecorder.start(60 * 60 * 1000); // 1 hour recording

btnStopRecording.onclick = function() {
    mediaRecorder.stop(); // stop any time!
};

from mediastreamrecorder.

stevemccann avatar stevemccann commented on June 3, 2024

Much thanks. I actually happened to find RecordRTC just after I posted this.

I'm currently unclear - does the PHP-and-FFmpeg work with Chrome to capture audio + video at the same time?

from mediastreamrecorder.

muaz-khan avatar muaz-khan commented on June 3, 2024

In Chrome

RecordRTC can merely record audio as "WAV" and video as "WebM".

So, we always need a media processing mechanism to combine/merge both files in one.

All following demos are using ffmpeg on server side for encodnig/muxing job:

There are some demos that are using ffmpeg-asm.js to encode/decode inside the browser:

In Firefox

Firefox is supporting recording of both audio+video in single WebM or Mp4 container. Firefox also supports Audio-only recording in Ogg container. So we don't need any ffmpeg solution to merge files.

from mediastreamrecorder.

stevemccann avatar stevemccann commented on June 3, 2024

Ok, thanks for the clarification. So in Chrome Audio + Video can be recorded at the same time, sent to the server and merged.

It also appears that RecordRTC.js is in two different repositories? I'll use https://github.com/muaz-khan/RecordRTC for my current work as I imagine it will be the most current versions.

from mediastreamrecorder.

Param-Harrison avatar Param-Harrison commented on June 3, 2024

In RecordRTC, if we record more than 10minutes or so, chrome crashes? Any idea, How to rectify this...

from mediastreamrecorder.

muaz-khan avatar muaz-khan commented on June 3, 2024

Use MediaStreamRecorder.js and concatenate blobs on node.js server using ffmpeg. You can even migrate this library:

Unit32Array/Float64Array/ArrayBuffer: All types are having limitations.

from mediastreamrecorder.

chanesteves avatar chanesteves commented on June 3, 2024

Hi there,

Do you have version of this for IE and/or Edge?

from mediastreamrecorder.

muaz-khan avatar muaz-khan commented on June 3, 2024

StereoAudioRecorder.js ( this one as well ) is supported on Edge however there is NO-support for IE.

from mediastreamrecorder.

hoangbienit avatar hoangbienit commented on June 3, 2024

Dear Muaz-Khan,
I recorded video and uploaded to web server as blob in each 2 seconds. In the uploads folder have many video files ater recording.
How to concatenate all video files to 1 file?

Thank you so much,
Bien

from mediastreamrecorder.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.