Pan Tilt Zoom does not work

Discussion of current events and participation in intelligent conversation with other CEF users.

Pan Tilt Zoom does not work

Postby awarnick » Tue May 05, 2026 8:01 am

Windows 11, 64 bit
32 bit cefclient versions 148.0.4+ga59e378+chromium-148.0.7778.40 (sample app) and 145.0.28+g51162e8+chromium-145.0.7632.160

cefclient.exe --enable-media-stream --use-fake-ui-for-media-stream --allow-running-insecure-content --allow-file-access-from-files --allow-universal-access-from-files --enable-system-flash --overscroll-history-navigation=0 --allow-outdated-plugins --autoplay-policy=no-user-gesture-required --touch-events=enabled --no-sandbox --ignore-certificate-errors "--cache-path=%TEMP%\CefClientCache" --enable-features=PanTiltZoom --enable-blink-features=PanTiltZoom --enable-experimental-web-platform-features "--url=https://webrtc.link/en/demos/pan-tilt-zoom/"

Some Diagnostic Code:
Code: Select all
async function Cam()
{
   var v = await navigator.mediaDevices.getSupportedConstraints();
   console.log(JSON.stringify(v));
   const stream = await navigator.mediaDevices.getUserMedia({
     video: { pan: true, tilt: true, zoom: true }
   });
   const track = stream.getVideoTracks()[0];
   console.log(JSON.stringify(track.getCapabilities()));
}
Cam();


console.log Outputs:
Code: Select all
{"aspectRatio":true,"autoGainControl":true,"backgroundBlur":true,"backgroundSegmentationMask":true,"brightness":true,"channelCount":true,"colorTemperature":true,"contrast":true,"deviceId":true,"displaySurface":true,"echoCancellation":true,"exposureCompensation":true,"exposureMode":true,"exposureTime":true,"eyeGazeCorrection":true,"faceFraming":true,"facingMode":true,"focusDistance":true,"focusMode":true,"frameRate":true,"groupId":true,"height":true,"iso":true,"latency":true,"noiseSuppression":true,"pan":true,"pointsOfInterest":true,"resizeMode":true,"restrictOwnAudio":true,"sampleRate":true,"sampleSize":true,"saturation":true,"sharpness":true,"suppressLocalAudioPlayback":true,"tilt":true,"torch":true,"voiceIsolation":true,"whiteBalanceMode":true,"width":true,"zoom":true}

{"aspectRatio":{"max":2304,"min":0.0006510416666666666},"brightness":{"max":255,"min":0,"step":1},"colorTemperature":{"max":7500,"min":2000,"step":1},"contrast":{"max":255,"min":0,"step":1},"deviceId":"4f06c6e7fbf5c5b59e85d6bfcfe2ccfec33ce07756c1ebf428cccfdc85085fea","exposureCompensation":{"max":255,"min":0,"step":1},"exposureMode":["continuous","manual"],"exposureTime":{"max":2500,"min":4.8828125,"step":4.8828125},"facingMode":[],"focusDistance":{"max":255,"min":0,"step":1},"focusMode":["continuous","manual"],"frameRate":{"max":30,"min":0},"groupId":"01645f34e0c9dda7fc369367775d9a0099a8d37543debd63b36fe136618e540c","height":{"max":1536,"min":1},"resizeMode":["none","crop-and-scale"],"saturation":{"max":255,"min":0,"step":1},"sharpness":{"max":255,"min":0,"step":1},"whiteBalanceMode":["continuous","manual"],"width":{"max":2304,"min":1}}


Notice that navigator.mediaDevices.getSupportedConstraints() supports zoom while track.getCapabilities() does not.
awarnick
Techie
 
Posts: 43
Joined: Wed Jun 13, 2018 2:29 pm

Re: Pan Tilt Zoom does not work

Postby awarnick » Thu May 07, 2026 9:10 am

I stubbed in a couple CEF callbacks and they are never even called:

Code: Select all
bool MyClientHandler::OnRequestMediaAccessPermission(CefRefPtr<CefBrowser> pBr, CefRefPtr<CefFrame> pFr, const CefString& requesting_origin, uint32 requested_permissions, CefRefPtr<CefMediaAccessCallback> callback)
{
   uint32 allowed = 0;
   if(requested_permissions & CEF_MEDIA_PERMISSION_DEVICE_VIDEO_CAPTURE)
      allowed |= CEF_MEDIA_PERMISSION_DEVICE_VIDEO_CAPTURE;
   if(requested_permissions & CEF_MEDIA_PERMISSION_DEVICE_AUDIO_CAPTURE)
      allowed |= CEF_MEDIA_PERMISSION_DEVICE_AUDIO_CAPTURE;
   callback->Continue(allowed);
   return true;
}

bool MyClientHandler::OnShowPermissionPrompt(CefRefPtr<CefBrowser> pBr, uint64 prompt_id, const CefString& requesting_origin, uint32_t requested_permissions, CefRefPtr<CefPermissionPromptCallback> callback)
{
   callback->Continue(CEF_PERMISSION_RESULT_ACCEPT);
   return true;
}
awarnick
Techie
 
Posts: 43
Joined: Wed Jun 13, 2018 2:29 pm


Return to General Discussion

Who is online

Users browsing this forum: No registered users and 16 guests