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

Incorrect orientation of a remote video track's dimensions #1377

Open
jakubdrozdek opened this issue Jan 22, 2025 · 3 comments
Open

Incorrect orientation of a remote video track's dimensions #1377

jakubdrozdek opened this issue Jan 22, 2025 · 3 comments

Comments

@jakubdrozdek
Copy link

Describe the bug

What I'm expecting

Our testing mobile clients send video tracks in portrait mode, so we expect to receive dimensions: { width: 720, height: 1280 } and video tiles to display using the 'portrait' orientation logic.

What happens instead

Our testing mobile clients send the video tracks correctly. In WebRTC debugging tools (about://webrtc-internals) I can see the dimensions and orientation are correct under inbound-rtp (width: 720, height: 1280), as expected.
However, when I console.log the remote track, I see dimensions: { width: 1280, height: 720 }, as if LiveKit SDK flipped them.

Image

Image

Reproduction

  1. Connect to the same room using a mobile and a web client.
  2. Turn on camera on the mobile device.
  3. See video track properties in the web app.

Logs

Room.ts:2194 room event connectionStateChanged {room: '', roomID: undefined, participant: '', pID: '', event: 'connectionStateChanged', …}
SignalClient.ts:287 connecting to wss://gigaverse-dev-iaqx7073.livekit.cloud/rtc?access_token=<redacted>&auto_subscribe=1&sdk=js&version=2.6.0&protocol=15&adaptive_stream=1 {room: undefined, roomID: undefined, participant: undefined, pID: undefined}
SignalClient.ts:356 ping config {room: undefined, roomID: undefined, participant: undefined, pID: undefined, timeout: 15, …}
SignalClient.ts:829 clearing ping interval {room: undefined, roomID: undefined, participant: undefined, pID: undefined}
SignalClient.ts:822 start ping interval {room: undefined, roomID: undefined, participant: undefined, pID: undefined}
Room.ts:617 connected to Livekit Server edition: 1, version: 1.8.3, protocol: 15, region: Germany, nodeId: NM_OFRANKFURT1A_TGUUPJVTNVii, debugInfo: , agentProtocol: 0 {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomSid: 'RM_3E5hNNwxhMnx', identity: '589efa29-394b-47ab-b4b9-6dd070701539'}
Room.ts:2194 room event signalConnected {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'signalConnected', …}
useLiveKitRoom.ts:72 trying to publish local tracks
LocalParticipant.ts:446 setTrackEnabled {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', source: 'microphone', …}
LocalParticipant.ts:446 setTrackEnabled {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', source: 'camera', …}
LocalParticipant.ts:446 setTrackEnabled {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', source: 'screen_share', …}
PCTransportManager.ts:206 negotiation required, start negotiating {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}pID: "PA_qPcAk4HcSS3t"participant: "589efa29-394b-47ab-b4b9-6dd070701539"room: "livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw"roomID: "RM_3E5hNNwxhMnx"[[Prototype]]: Object
PCTransportManager.ts:172 received server offer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', RTCSdpType: 'offer', …}
PCTransport.ts:463 setting munged local description {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
SignalClient.ts:492 sending answer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', answerSdp: 'v=0\r\no=- 1993309184126860683 2 IN IP4 127.0.0.1\r\ns…:E0:03\r\na=ice-options:trickle\r\na=sctp-port:5000\r\n'}
PCTransportManager.ts:302 pc state change: from NEW to CONNECTING {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
RTCEngine.ts:401 primary PC state changed 1 {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
PCTransport.ts:265 starting to negotiate {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
PCTransport.ts:267 original offer {sdp: 'v=0\r\no=- 5381553166872849471 2 IN IP4 127.0.0.1\r\ns…:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n', room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
PCTransport.ts:463 setting munged local description {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
SignalClient.ts:483 sending offer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', offerSdp: 'v=0\r\no=- 5381553166872849471 2 IN IP4 127.0.0.1\r\ns…le\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n'}
RTCEngine.ts:455 received server answer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', RTCSdpType: 'answer'}
PCTransport.ts:463 setting munged remote description {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
PCTransportManager.ts:302 pc state change: from CONNECTING to CONNECTED {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
RTCEngine.ts:401 primary PC state changed 2 {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
LocalParticipant.ts:1825 updating track subscription permissions {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', allParticipantsAllowed: true, …}
RTCEngine.ts:638 on data channel 1, _reliable {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
RTCEngine.ts:638 on data channel 3, _lossy {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
Room.ts:2194 room event connectionStateChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'connectionStateChanged', …}
Room.ts:2194 room event connected {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'connected', …}
ConsoleLogger.js:12 [RoomEvents] connected
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
DeviceManager.ts:25 awaiting getUserMedia promise
useTracks.ts:72 setting track bundles [] [LocalParticipant]
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(1)}
useTracks.ts:72 setting track bundles [] [LocalParticipant]
useTrackToggle.ts:56 forcing initial toggle state screen_share false
LocalParticipant.ts:446 setTrackEnabled {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', source: 'screen_share', …}
useTracks.ts:72 setting track bundles [] [LocalParticipant]
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(1)}
useTracks.ts:72 setting track bundles [] [LocalParticipant]
useTracks.ts:72 setting track bundles [] [LocalParticipant]
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(1)}
useTracks.ts:72 setting track bundles [] [LocalParticipant]
useTrackToggle.ts:56 forcing initial toggle state screen_share false
LocalParticipant.ts:446 setTrackEnabled {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', source: 'screen_share', …}enabled: falsepID: "PA_qPcAk4HcSS3t"participant: "589efa29-394b-47ab-b4b9-6dd070701539"room: "livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw"roomID: "RM_3E5hNNwxhMnx"source: "screen_share"[[Prototype]]: Object
useTracks.ts:72 setting track bundles [] [LocalParticipant]
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(1)}
useTracks.ts:72 setting track bundles [] [LocalParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
Room.ts:2194 room event connectionQualityChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'connectionQualityChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(1)}
useTracks.ts:72 setting track bundles [] [LocalParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
Room.ts:2194 room event participantConnected {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantConnected', …}
ConsoleLogger.js:12 [RoomEvents] participant connected {participantIdentity: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d'}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
Room.ts:2194 room event participantAttributesChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantAttributesChanged', …}
ConsoleLogger.js:12 [RoomEvents] attributes changed {attributes: {…}, participantIdentity: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d'}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
Room.ts:2194 room event participantPermissionsChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantPermissionsChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
Room.ts:2194 room event participantAttributesChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantAttributesChanged', …}
ConsoleLogger.js:12 [RoomEvents] attributes changed {attributes: {…}, participantIdentity: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d'}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
Room.ts:2194 room event participantPermissionsChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantPermissionsChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
Room.ts:2194 room event dataReceived {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'dataReceived', …}
ConsoleLogger.js:12 [Live Data Channel] stage requested {participant_id: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d', event: 'stage_requested'}
Room.ts:2194 room event participantAttributesChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantAttributesChanged', …}
ConsoleLogger.js:12 [RoomEvents] attributes changed {attributes: {…}, participantIdentity: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d'}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, source: 'camera'}
Room.ts:2194 room event participantPermissionsChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'participantPermissionsChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, source: 'camera'}
Room.ts:2194 room event dataReceived {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'dataReceived', …}
ConsoleLogger.js:12 [Live Data Channel] stage request accepted {participant_id: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d', event: 'stage_request_accepted'}
ConsoleLogger.js:12 [Live Data Channel] stage request accepted, removing invite confirmation
TrackPublication.ts:143 update publication info {trackID: 'TR_AM6LaRnH5bmN9g', enabled: true, muted: false, trackInfo: {…}, info: type}
TrackPublication.ts:143 update publication info {trackID: 'TR_AM6LaRnH5bmN9g', enabled: true, muted: false, trackInfo: {…}, info: type}
Room.ts:2194 room event trackPublished {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackPublished', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, source: 'camera'}
Room.ts:2194 room event connectionQualityChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'connectionQualityChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, source: 'camera'}
PCTransportManager.ts:172 received server offer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', RTCSdpType: 'offer', …}
Room.ts:2194 room event trackSubscribed {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackSubscribed', …}
Room.ts:2194 room event trackSubscriptionStatusChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackSubscriptionStatusChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 0) {trackReferences: Array(0), participants: Array(2)}
useTracks.ts:72 setting track bundles [] (2) [LocalParticipant, _RemoteParticipant]
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant b2cab4c8-99c2-4c63-b88b-48ea5d04494d.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, source: 'camera'}
PCTransport.ts:463 setting munged local description {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
Track.ts:176 audio playback aborted, likely due to new play request
SignalClient.ts:492 sending answer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', answerSdp: 'v=0\r\no=- 1993309184126860683 3 IN IP4 127.0.0.1\r\ns…a=ice-options:trickle\r\na=rtcp-mux\r\na=rtcp-rsize\r\n'}
TrackPublication.ts:143 update publication info {trackID: 'TR_AM6LaRnH5bmN9g', enabled: true, muted: false, trackInfo: {…}, info: type}
TrackPublication.ts:143 update publication info {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}, info: type}
TrackPublication.ts:143 update publication info {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}, info: type}
Room.ts:2194 room event trackPublished {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackPublished', …}
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
PCTransportManager.ts:172 received server offer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', RTCSdpType: 'offer', …}
Room.ts:2194 room event trackSubscribed {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackSubscribed', …}
Room.ts:2194 room event trackSubscriptionStatusChanged {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackSubscriptionStatusChanged', …}
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
RemoteTrackPublication.ts:283 adaptivestream video visibility TR_VCA6TxzrYW2VVQ, visible=true {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}}
RemoteParticipant.ts:83 send update settings {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', rpID: 'PA_pxY2KVCKagVd', …}
PCTransport.ts:463 setting munged local description {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t'}
SignalClient.ts:492 sending answer {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', answerSdp: 'v=0\r\no=- 1993309184126860683 4 IN IP4 127.0.0.1\r\ns…a=ice-options:trickle\r\na=rtcp-mux\r\na=rtcp-rsize\r\n'}
TrackPublication.ts:143 update publication info {trackID: 'TR_AM6LaRnH5bmN9g', enabled: true, muted: false, trackInfo: {…}, info: type}
TrackPublication.ts:143 update publication info {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}, info: type}
TrackPublication.ts:143 update publication info {trackID: 'TR_AM6LaRnH5bmN9g', enabled: true, muted: false, trackInfo: {…}, info: type}
TrackPublication.ts:143 update publication info {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}, info: type}
RemoteTrackPublication.ts:292 adaptivestream video dimensions 452x590 {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}}
RemoteParticipant.ts:83 send update settings {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', rpID: 'PA_pxY2KVCKagVd', …}
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}]0: participant: _RemoteParticipantaudioLevel: 0audioTrackPublications: Map(1) {'TR_AM6LaRnH5bmN9g' => RemoteTrackPublication}identity: "b2cab4c8-99c2-4c63-b88b-48ea5d04494d"isSpeaking: falselastSpokeAt: Wed Jan 22 2025 17:34:15 GMT+0100 (Central European Standard Time) {}log: Logger {name: 'livekit-participant', levels: {…}, methodFactory: ƒ, getLevel: ƒ, setLevel: ƒ, …}loggerOptions: {loggerName: undefined, loggerContextCb: ƒ}metadata: ""name: "Jakub Tenson"participantInfo: type {sid: 'PA_pxY2KVCKagVd', identity: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d', state: 2, tracks: Array(2), metadata: '', …}permissions: type {canSubscribe: true, canPublish: true, canPublishData: true, canPublishSources: Array(0), hidden: false, …}sid: "PA_pxY2KVCKagVd"signalClient: SignalClient {rtt: 25, state: 1, log: Logger, _requestId: 0, resetCallbacks: ƒ, …}trackPublications: Map(2) {'TR_AM6LaRnH5bmN9g' => RemoteTrackPublication, 'TR_VCA6TxzrYW2VVQ' => RemoteTrackPublication}videoTrackPublications: Map(1)[[Entries]]0: {"TR_VCA6TxzrYW2VVQ" => RemoteTrackPublication}key: "TR_VCA6TxzrYW2VVQ"value: RemoteTrackPublicationallowed: truecurrentVideoQuality: 2dimensions: {width: 1280, height: 720}disabled: falseencryption: 0handleEnded: (track) => {…}handleMuted: () => {       this.emit(TrackEvent.Muted);     }handleUnmuted: () => {       this.emit(TrackEvent.Unmuted);     }handleVideoDimensionsChange: (dimensions) => {…}handleVisibilityChange: (visible) => {…}kind: "video"log: Logger {name: 'livekit-track-publication', levels: {…}, methodFactory: ƒ, getLevel: ƒ, setLevel: ƒ, …}loggerContextCb: undefinedmetadataMuted: falsemimeType: "video/VP8"simulcasted: truesource: "camera"subscribed: truetrack: RemoteVideoTrack {_events: {…}, _eventsCount: 7, _maxListeners: 100, attachedElements: Array(2), isMuted: false, …}trackInfo: type {sid: 'TR_VCA6TxzrYW2VVQ', type: 1, name: '', muted: false, width: 1280, …}trackName: ""trackSid: "TR_VCA6TxzrYW2VVQ"videoDimensions: {width: 452, height: 590}_events: {muted: ƒ, unmuted: ƒ, updateSettings: ƒ, updateSubscription: ƒ, subscriptionPermissionChanged: ƒ, …}_eventsCount: 9_maxListeners: 100audioTrack: (...)isAdaptiveStream: (...)isDesired: (...)isEnabled: (...)isEncrypted: (...)isMuted: (...)isSubscribed: (...)logContext: (...)permissionStatus: (...)subscriptionStatus: (...)videoQuality: (...)videoTrack: (...)[[Prototype]]: TrackPublicationsize: 1[[Prototype]]: MapvolumeMap: Map(0) {size: 0}_attributes: {placement: 'stage', bio: '', identity: 'b2cab4c8-99c2-4c63-b88b-48ea5d04494d', profile_picture: 'https://gigaverse-dev-static.s3.amazonaws.com/uplo…4-12-03/6e366301-37f6-4553-9d65-8945800f0dfc.jpeg', username: 'JakubTen', …}_connectionQuality: "excellent"_events: {trackPublished: Array(4), trackUnpublished: Array(4), trackSubscriptionFailed: Array(2), trackSubscribed: ƒ, trackUnsubscribed: ƒ, …}_eventsCount: 18_kind: 0_maxListeners: 100attributes: (...)connectionQuality: (...)hasMetadata: (...)isAgent: (...)isCameraEnabled: (...)isEncrypted: (...)isLocal: falseisMicrophoneEnabled: (...)isScreenShareEnabled: (...)joinedAt: (...)kind: (...)logContext: (...)[[Prototype]]: Participantpublication: RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}source: "camera"[[Prototype]]: Objectlength: 1[[Prototype]]: Array(0) (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
TrackPublication.ts:143 update publication info {trackID: 'TR_AM6LaRnH5bmN9g', enabled: true, muted: false, trackInfo: {…}, info: type}enabled: trueinfo: typeaudioFeatures: []codecs: []disableDtx: falsedisableRed: falseencryption: 0height: 0layers: []mid: "2"mimeType: "audio/red"muted: truename: ""sid: "TR_AM6LaRnH5bmN9g"simulcast: falsesource: 2stereo: falsestream: "camera"type: 0version: type {unixMicro: 1737563653496959n, ticks: 0}width: 0[[Prototype]]: Messagemuted: falsetrackID: "TR_AM6LaRnH5bmN9g"trackInfo: enabled: trueencrypted: falsekind: "audio"mimeType: "audio/red"muted: falsename: ""source: "microphone"streamID: "TR_AM6LaRnH5bmN9g"streamTrackID: "TR_AM6LaRnH5bmN9g"trackID: "TR_AM6LaRnH5bmN9g"[[Prototype]]: Object[[Prototype]]: Object
Room.ts:2194 room event trackMuted {room: 'livestream:Giga_Jakub_Sons-Axt97WTOIhM7vYnVXbhNw', roomID: 'RM_3E5hNNwxhMnx', participant: '589efa29-394b-47ab-b4b9-6dd070701539', pID: 'PA_qPcAk4HcSS3t', event: 'trackMuted', …}
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: true, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
useMediaTrackBySourceOrName.ts:39 update track RemoteTrackPublication {_events: {…}, _eventsCount: 9, _maxListeners: 100, metadataMuted: false, encryption: 0, …}
TrackPublication.ts:143 update publication info {trackID: 'TR_VCA6TxzrYW2VVQ', enabled: true, muted: false, trackInfo: {…}, info: type}
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
index.mjs:1827 TrackReference[] was updated. (length 1) {trackReferences: Array(1), participants: Array(2)}
useTracks.ts:72 setting track bundles [{…}] (2) [LocalParticipant, _RemoteParticipant]
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
useTracks.ts:101 Add camera placeholder for participant 589efa29-394b-47ab-b4b9-6dd070701539.
LiveParticipantTile.tsx:86 trackReference {participant: LocalParticipant, source: 'camera'}
hook.js:377 trackReference {participant: LocalParticipant, source: 'camera'}
LiveParticipantTile.tsx:86 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}
hook.js:377 trackReference {participant: _RemoteParticipant, publication: RemoteTrackPublication, source: 'camera'}

System Info

System:
    OS: macOS 15.1.1
    CPU: (12) arm64 Apple M3 Pro
    Memory: 394.64 MB / 36.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.18.1 - ~/.nvm/versions/node/v20.18.1/bin/node
    Yarn: 1.22.22 - /opt/homebrew/bin/yarn
    npm: 10.8.2 - ~/.nvm/versions/node/v20.18.1/bin/npm
    bun: 1.1.45 - ~/.bun/bin/bun
    Watchman: 2024.10.14.00 - /opt/homebrew/bin/watchman
  Browsers:
    Brave Browser: 132.1.74.48
    Chrome: 131.0.6778.266
    Safari: 18.1.1

Severity

annoyance

Additional Information

No response

@lukasIO lukasIO closed this as not planned Won't fix, can't repro, duplicate, stale Jan 22, 2025
@lukasIO lukasIO reopened this Jan 22, 2025
@jakubdrozdek
Copy link
Author

@lukasIO Is this closed or open? :) Any idea why it happens and whether you plan to work on it anytime soon?

@Philzen
Copy link
Contributor

Philzen commented Jan 31, 2025

This is also something we bumped into. We took the track from the participant.videoTrackPublications map, then used dimensions.width and dimensions.height to display the streams' dimensions in our application (as we had seen in the livekit react examples) … until we received an issue report that matches this one.

Our current workaround is to look for videoTrack?.mediaStreamTrack?.getSettings(), which gives the correct dimensions:

import type { TrackPublication } from 'livekit-client'

const getVideoDimensions = (videoPub: TrackPublication) => {
  const mediaTrackSettings =
    videoPub?.videoTrack?.mediaStreamTrack?.getSettings()
  return {
    width: mediaTrackSettings?.width || videoPub?.dimensions?.width,
    height: mediaTrackSettings?.height || videoPub?.dimensions?.height
  }
}

Would love to get rid of this convoluted piece of code anytime though :)

@lukasIO
Copy link
Contributor

lukasIO commented Feb 3, 2025

For context:
The dimensions on the publication refer to the original publication dimensions of a track that a user is publishing, not the dimensions of what the participant is currently subscribed to.

The best way I've found to get actual dimensions of the currently subscribed video is to read from myAttachedVideoElement.videoWidth + .videoHeight. There's also a resize event on video elements that should get triggered if this changes.

It sounds unexpected to me that the dimensions of the original publication are flipped though, but relying on the workaround I mentioned should yield the desired results without any flipping

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants