pp::VideoFrame from pp::MediaStreamVideoTrack can't be passed to pp::VideoEncoder::Encode
Reported by
j...@viviaustralia.com.au,
Nov 21
|
|
Issue descriptionUserAgent: Mozilla/5.0 (X11; Linux x86_64; rv:64.0) Gecko/20100101 Firefox/64.0 Platform: 11021.56.0 (Official Build) stable-channel swanky Steps to reproduce the problem: 1. Start capturing a video stream, such as from chrome.desktopCapture. 2. Configure a pp::VideoEncoder with compatible size and format. 3. Pass a captured pp::VideoFrame into pp::VideoEncoder::Encode. What is the expected behavior? Encodes the frame. What went wrong? Fails with -5 (PP_ERROR_BADRESOURCE). Did this work before? N/A Does this work in other browsers? N/A Chrome version: 70.0.3538.76 (Official Build) (64-bit) Channel: stable OS Version: 70.0.3538.76 (Official Build) (64-bit) Flash Version: 31.0.0.122 As in the pepper video_encode example, you can use pp::VideoEncoder::GetVideoFrame and memcpy the captured from into that instead, which works. However, the pp::VideoEncoder documentation says several times you can pass in other frames: >Call GetVideoFrame() to get a blank frame and fill it in, or get a video frame from another resource, e.g. PPB_MediaStreamVideoTrack. >Call Encode() to push the video frame to the encoder. If an external frame is pushed, wait for completion to recycle the frame. |
|
►
Sign in to add a comment |
|
Comment 1 by guidou@chromium.org
, Nov 22