talk-android icon indicating copy to clipboard operation
talk-android copied to clipboard

Maximize FOV on video call

Open ASerbinski opened this issue 3 years ago • 6 comments

The field of view on video calls is very narrow, resulting in a transmitted video that is highly "zoomed in".

This increases the field of view using three approaches;

  1. Use 4:3 video aspect ratio to prevent cropping to 16:9
  2. Disable EIS (removes the buffer around the video)
  3. Zoom out

The aspect ratio will affect devices universally, since as far as I can tell, all camera sensors seem to have a 4:3 native aspect ratio. The other two will apply on a sensor by sensor basis. Some phones have a mixture of available zoom ratios, and support for EIS or OIS (where OIS is available, EIS is disabled).

Naturally, there will be tradeoffs for each of the three causes of cropping;

User may have a preference for a 16:9 ratio. Holding the device in user's hand will result in a jittery video without stabilization. Changing the zoom ratio could cause the HAL to select a different sensor with different characteristics, for example, the main camera on a Pixel 6 [/Pro] has OIS, but reducing the zoom level to lower than 1:1 will cause it to switch to the wide angle lens, which does not have OIS. Consequently, it may be preferable for each of these configuration changes to be user-controlled.

Access to the camera on talk-android is through webrtc, which unfortunately, does not provide means of user control for EIS or zoom ratio, however, others have coerced it into allowing settings; https://stackoverflow.com/questions/48598752/android-how-to-turn-on-flashlight-using-webrtc-android-io-pristine-libjingle1 Unfortunately, this approach is a little bit hacky since it requires duplication of some of webrtc.

ASerbinski avatar Aug 12 '22 14:08 ASerbinski

APK file: https://www.kaminsky.me/nc-dev/android-artifacts/2297-talk.apk

qrcode

To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud Talk app.

github-actions[bot] avatar Aug 12 '22 15:08 github-actions[bot]

I don't saw this before writing my comment . I'll a look next week.

timkrueger avatar Aug 12 '22 15:08 timkrueger

Hi @timkrueger did you have time to review this ?

AndyXheli avatar Sep 28 '22 11:09 AndyXheli

Hi @timkrueger did you have time to review this ?

I also liked to have it. But as I wrote in the corresponding issue https://github.com/nextcloud/talk-android/issues/2052#issuecomment-1232930509 the is work to do.

timkrueger avatar Sep 29 '22 07:09 timkrueger

There is a bug that causes the preview to be cropped to the screen ratio rather than showing the full preview, introduced in this commit; https://github.com/nextcloud/talk-android/commit/892ffe87dd45a61e8e84769af3f18f4e89ea08e2

... added fix for this to PR by changing the preview size to 4:3 ratio in dimens.xml

ASerbinski avatar Oct 28 '22 17:10 ASerbinski

Codacy

Lint

TypemasterPR
Warnings112112
Errors11

SpotBugs

CategoryBaseNew
Bad practice44
Correctness7577
Dodgy code315317
Experimental22
Internationalization99
Malicious code vulnerability5353
Performance2324
Security22
Total483488

SpotBugs increased!

org.jetbrains.annotations.NotNull is used. Please use androidx.annotation.NonNull instead.

github-actions[bot] avatar Oct 28 '22 17:10 github-actions[bot]

APK file: https://www.kaminsky.me/nc-dev/android-artifacts/2297-talk.apk

qrcode

To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud Talk app.

github-actions[bot] avatar Oct 28 '22 17:10 github-actions[bot]

APK file: https://www.kaminsky.me/nc-dev/android-artifacts/2297-talk.apk

qrcode

To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud Talk app.

github-actions[bot] avatar Jul 27 '23 13:07 github-actions[bot]

Hi all, any status on getting this merged ? @mahibi anyway you can you review this when you have time i don't think we've heard from @timkrueger in a while

AndyXheli avatar Jan 27 '24 13:01 AndyXheli