基本的に質問はタイトルにあります。これはWebRTCとgetUserMedia関数です。同様の質問がここにあった:How to keep 1:1 aspect ratio video all the time in WebRTC。しかし私の場合、私はMediaRecorderを使ってストリームを記録する必要があります。ちょうどcssでビデオ要素を切り抜くだけでは不十分です。 私はgetUserMediaの制約について少し混乱しています。 aspectRatioパラメータがありますが、必要な結果を得る方法を管理しませんでした。アスペクト比が1:1で使用可能な解像度が最大のウェブカメラストリームを取得する方法
const constraints = {
audio: true,
video: {
width: { exact: 720 },
}
};
しかし、それは自動的に最大解像度を定義するものではありません。どのようにスマートな方法でそれを行うためのアイデアはありますか?
[WebRTCで1:1のアスペクト比のビデオを常に保持する方法](https://stackoverflow.com/questions/36961228/how-to-keep-11-aspect-ratio-video-all)の可能な複製-the-time-in-webrtc) – jib
@jibはい、その質問は似ていますが、MediaRecorderを使って記録するストリームが必要です。 CSSを使ってビデオ要素を切り抜くだけでは不十分です。 –
'aspectRatio'はChromeやFirefoxではまだ実装されていません。しかし、getUserMedia()がカメラ出力を再スケーリングすると思われるようです。すべてのブラウザがこれを行うわけではなく、カメラのネイティブモードを発見できるので、代わりにOverconstrainedErrorが失敗する可能性があります。 – jib