Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RZ/G WebRTC での H.264 / GPU Acceleration 対応 #82

Open
dynamis opened this issue Jun 25, 2019 · 3 comments
Open

RZ/G WebRTC での H.264 / GPU Acceleration 対応 #82

dynamis opened this issue Jun 25, 2019 · 3 comments
Labels
enhancement Renesas RZ/G1 RZ/G1 で再現する問題 Renesas RZ/G2 RZ/G2 で再現する問題

Comments

@dynamis
Copy link
Contributor

dynamis commented Jun 25, 2019

現状 RZ/G1,2 で WebRTC は動作するが getUserMedia() だけならともかくビデオ通話をする場合などは動画の encode/decode が GPU 処理されないと重たい問題がある

解決できるかどうかはともかく、issue としての記録です

@dynamis dynamis added enhancement Renesas RZ/G1 RZ/G1 で再現する問題 Renesas RZ/G2 RZ/G2 で再現する問題 labels Jun 25, 2019
@dynamis
Copy link
Contributor Author

dynamis commented Jun 25, 2019

通常 Firefox の WebRTC での H.264 サポートについては OpenH264 が使われているし、VPx の方がデフォルトになっているため SDP などで H.264 していしなければ OpenH264 も使われない:

https://wiki.mozilla.org/QA/WebRTC/OpenH264
https://gist.github.com/voluntas/a85b626f3a2702866711

また、OpenH264 は Cisco の H264 コーデックをダウンロードして使うというかたちのもので、RZ 環境などで動作するか、動作するとしても採用できるかというと疑問。OpenMAX でビデオデコードしているのと同様に WebRTC 対応をする必要があるのではないかという話。

@dynamis
Copy link
Contributor Author

dynamis commented Jun 25, 2019

RZ/G2 では depends on #58

@dynamis dynamis changed the title RZ/G WebRTC での GPU Acceleration 対応 RZ/G WebRTC での H.264 / GPU Acceleration 対応 Sep 24, 2019
@dynamis
Copy link
Contributor Author

dynamis commented Sep 24, 2019

note: 簡単にコーデック指定して WebRTC 通話をするサンプル (SkyWay 利用)
https://yusuke84.github.io/skyway-stats-sample/

WebRTC で H.264 対応していないと困るのは相手側が H.264 限定という環境か、H.264 ハードウェア処理で消費電力や CPU 使用率を削減したいケース。一般的な範囲では H.264 限定としている iOS Safari 12.0 と通信したい場合で。iOS 12.2 (2019/3 リリース) の Safari 12.1 では VP8 をサポートしたため、H.264 が必須となるケースは限定的となりつつある。

Firefox に ffmpeg は含まれているし media.ffmpeg.enabled という設定もあるが、Gecko 60,68 時点で config の影響がどうなっているか含めて ffmpeg を使えるのかどうかは要調査。RZ/G で H.264 on WebRTC したい場合にどう実装すべきかなどは未調査。
https://dxr.mozilla.org/mozilla-central/source/dom/media/platforms/ffmpeg

なお、画質的には Safari の H.264 リアルタイムエンコード WebRTC は明らかに動きに弱く VP8 よりも画質が悪いと評価されている様子。VP8,9 のソフトエンコードは重たが軽さ優先の場合は VP8 を使う。VP9 は VP8 の半分程度のビットレート、H.265 と同等以上の圧縮率実現を目的としたコーデックだが VP8 に対して 20% 程高いため。

RZ/G2E 実機では VP8,9 を使って通話するくらいなら動作するが流石に 60fps などはでない (解像度依存大、双方向でなく片方向とかならより軽い)。RZ/G2M での処理は未評価。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Renesas RZ/G1 RZ/G1 で再現する問題 Renesas RZ/G2 RZ/G2 で再現する問題
Projects
None yet
Development

No branches or pull requests

1 participant