Add logging to diagnose no-video bug (#7721)

Log in/outbound RTP stats so we can see ifn we're sending & receiving
video, and log when we successfully play the video element.
This commit is contained in:
David Baker 2022-02-04 14:02:56 +00:00 committed by GitHub
parent ddb15cb19e
commit 3f789d32c1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 0 deletions

View file

@ -643,6 +643,16 @@ export default class CallHandler extends EventEmitter {
`bytes received: ${pair.bytesReceived}, bytes sent: ${pair.bytesSent}, `, `bytes received: ${pair.bytesReceived}, bytes sent: ${pair.bytesSent}, `,
); );
} }
logger.debug("Outbound RTP:");
for (const s of stats.filter(item => item.type === 'outbound-rtp')) {
logger.debug(s);
}
logger.debug("Inbound RTP:");
for (const s of stats.filter(item => item.type === 'inbound-rtp')) {
logger.debug(s);
}
} }
private setCallState(call: MatrixCall, status: CallState): void { private setCallState(call: MatrixCall, status: CallState): void {

View file

@ -137,6 +137,7 @@ export default class VideoFeed extends React.PureComponent<IProps, IState> {
// them with another load() which will cancel the pending one, but since we don't call // them with another load() which will cancel the pending one, but since we don't call
// load() explicitly, it shouldn't be a problem. - Dave // load() explicitly, it shouldn't be a problem. - Dave
await element.play(); await element.play();
logger.debug((this.props.feed.isLocal ? "Local" : "Remote") + " video feed play() completed");
} catch (e) { } catch (e) {
logger.info("Failed to play media element with feed", this.props.feed, e); logger.info("Failed to play media element with feed", this.props.feed, e);
} }