This feature is not on a current W3C standards track, but it is supported on the Firefox OS platform. Although implementations may change in the future and it is not supported widely across browsers, it is suitable for use in code dedicated to Firefox OS apps.

This API is available on Firefox OS for privileged or certified applications only.


Stops recording video on the device; you should call this at some point after calling CameraControl.startRecording().






This code starts recording video, and, when the user clicks (or taps the screen), stops recording.

var myCamera = null;
var storage  = navigator.getDeviceStorage('videos');
var cameraOptions = {
  camera: navigator.mozCameras.getListOfCameras()[0]
var recordOptions = {
  rotation: 0,
  maxFileSizeBytes: 1024 * 1024 * 1024 // 1Go
  maxVideoLengthMs: 1000 * 60 * 60     // 1h

function onRecordStart() {
  console.log("The device is recording the video output from the camera");

function onAccessCamera( camera ) {
  myCamera = camera;

  camera.startRecording(recordOptions, storage, 'myVideo.3gp', onRecordStart);

navigator.mozCameras.getCamera(cameraOptions, onAccessCamera);

function stopRecord() {
  if (myCamera) {
    console.log("The device has stopped recording the video output from the camera");

document.addEventListener('click', stopRecord);


Not part of any specification; however, this API should be removed when the WebRTC Capture and Stream API has been implemented.

See also

Document Tags and Contributors

Contributors to this page: chrisdavidmills, teoli, ajaybhat, kscarfone, Sheppy, Jeremie
Last updated by: chrisdavidmills,