function _webcam() {
	  _webcam = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(webcamVideoElement, webcamConfig) {
	    return regeneratorRuntime.wrap(function _callee3$(_context3) {
	      while (1) {
	        switch (_context3.prev = _context3.next) {
	          case 0:
	            return _context3.abrupt("return", WebcamIterator.create(webcamVideoElement, webcamConfig));

	          case 1:
	          case "end":
	            return _context3.stop();
	        }
	      }
	    }, _callee3);
	  }));
	  return _webcam.apply(this, arguments);
	}
Create an iterator that generate frequency-domain spectrogram `Tensor`s from
microphone audio stream with browser's native FFT. This API only works in
browser environment when the device has microphone.

Note: this code snippet only works when the device has a microphone. It will
request permission to open the microphone when running.
```js
const mic = await tf.data.microphone({
  fftSize: 1024,
  columnTruncateLength: 232,
  numFramesPerSpectrogram: 43,
  sampleRateHz:44100,
  includeSpectrogram: true,
  includeWaveform: true
});
const audioData = await mic.capture();
const spectrogramTensor = audioData.spectrogram;
spectrogramTensor.print();
const waveformTensor = audioData.waveform;
waveformTensor.print();
mic.stop();
```

@param microphoneConfig A `MicrophoneConfig` object that contains
    configurations of reading audio data from microphone.

@doc {
  heading: 'Data',
  subheading: 'Creation',
  namespace: 'data',
  ignoreCI: true
 }