prasanaworld/puppeteer-screen-recorder

TypeError: recorder.stop is not a function

Opened this issue · 1 comments

  • I'm submitting a ...
    [ x] question about how to use this project

  • Summary

I can start the recorder and it writes the file but when I want to stop the recorder I get TypeError: recorder.stop is not a function

  • Other information (e.g. detailed explanation, stack traces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)

Here is the object right before I invoke stop():

      PuppeteerScreenRecorder {
        isScreenCaptureEnded: null,
        options: {
          followNewTab: true,
          fps: 25,
          ffmpeg_Path: null,
          videoFrame: [Object],
          aspectRatio: '4:3'
        },
        streamReader: pageVideoStreamCollector {
          _events: [Object: null prototype],
          _eventsCount: 1,
          _maxListeners: undefined,
          sessionsStack: [Array],
          isStreamingEnded: false,
          page: [Page],
          options: [Object],
          isFrameAckReceived: [Promise],
          [Symbol(kCapture)]: false
        },
        page: Page {
          eventsMap: [Map],
          emitter: [Object],
          _closed: false,
          _timeoutSettings: [TimeoutSettings],
          _pageBindings: Map(0) {},
          _javascriptEnabled: true,
          _workers: Map(0) {},
          _fileChooserInterceptors: Set(0) {},
          _userDragInterceptionEnabled: false,
          _client: [CDPSession],
          _target: [Target],
          _keyboard: [Keyboard],
          _mouse: [Mouse],
          _touchscreen: [Touchscreen],
          _accessibility: [Accessibility],
          _frameManager: [FrameManager],
          _emulationManager: [EmulationManager],
          _tracing: [Tracing],
          _coverage: [Coverage],
          _screenshotTaskQueue: [ScreenshotTaskQueue],
          _viewport: [Object]
        },
        streamWriter: PageVideoStreamWriter {
          _events: [Object: null prototype],
          _eventsCount: 1,
          _maxListeners: undefined,
          screenLimit: 40,
          screenCastFrames: [Array],
          duration: '00:00:00:00',
          status: 1,
          videoMediatorStream: [PassThrough],
          options: [Object],
          writerPromise: [Promise],
          lastProcessedFrame: [Object],
          [Symbol(kCapture)]: false
        }
      }
    }

am I doing something wrong?

Hi @vanthome,

Could you please provide a sample code to reproduce the same behavior. Thanks