Compare commits

..

1 Commits

Author SHA1 Message Date
lebaudantoine 7e8e98d737 🩹(changelog) fix changelog entry ordering
Restore the correct order of entries in the CHANGELOG, which got
shuffled somewhere between rebases.
2026-09-01 22:07:38 +02:00
3 changed files with 14 additions and 24 deletions
-4
View File
@@ -8,10 +8,6 @@ and this project adheres to
## [Unreleased]
### Fixed
- 🐛(frontend) keep the sending resolution picked while the camera is off #1667
## [1.30.0] - 2026-09-01
### Added
@@ -2,7 +2,7 @@ import { useTranslation } from 'react-i18next'
import { useTrackToggle, UseTrackToggleProps } from '@livekit/components-react'
import { Button, Popover } from '@/primitives'
import { RiArrowUpSLine, RiImageCircleAiFill } from '@remixicon/react'
import { Track, type VideoCaptureOptions, VideoPresets } from 'livekit-client'
import { Track, type VideoCaptureOptions } from 'livekit-client'
import { ToggleDevice } from './ToggleDevice'
import { css } from '@/styled-system/css'
@@ -57,8 +57,7 @@ export const VideoDeviceControl = ({
}: VideoDeviceControlProps) => {
const { t } = useTranslation('rooms', { keyPrefix: 'selectDevice' })
const { videoDeviceId, processorConfig, videoPublishResolution } =
useSnapshot(userChoicesStore)
const { videoDeviceId, processorConfig } = useSnapshot(userChoicesStore)
const onChange = React.useCallback(
(enabled: boolean, isUserInitiated: boolean) =>
@@ -98,9 +97,6 @@ export const VideoDeviceControl = ({
await toggle(!trackProps.enabled, {
processor: processor,
...(videoPublishResolution && {
resolution: VideoPresets[videoPublishResolution].resolution,
}),
} as VideoCaptureOptions)
}
@@ -32,8 +32,7 @@ const EMPTY_PROPS = {}
export const VideoTab = ({ id }: VideoTabProps) => {
const { t } = useTranslation('settings', { keyPrefix: 'video' })
const room = useRoomContext()
const { localParticipant, remoteParticipants } = room
const { localParticipant, remoteParticipants } = useRoomContext()
const {
videoDeviceId,
@@ -71,20 +70,19 @@ export const VideoTab = ({ id }: VideoTabProps) => {
}
const handleVideoResolutionChange = async (key: 'h720' | 'h360' | 'h180') => {
saveVideoPublishResolution(key)
const videoTrack = localParticipant.getTrackPublication(
const videoPublication = localParticipant.getTrackPublication(
Track.Source.Camera
)?.track
if (!videoTrack) {
return
)
const videoTrack = videoPublication?.track
if (videoTrack) {
saveVideoPublishResolution(key)
await videoTrack.restartTrack({
resolution: VideoPresets[key].resolution,
deviceId: { exact: videoDeviceId },
processor:
BackgroundProcessorFactory.fromProcessorConfig(processorConfig),
})
}
await videoTrack.restartTrack({
resolution: VideoPresets[key].resolution,
deviceId: { exact: videoDeviceId },
processor:
BackgroundProcessorFactory.fromProcessorConfig(processorConfig),
})
}
/**