Skip to content

Commit 2bb82c3

Browse files
committed
Merge branch 'main' into duan/nvidia-hw-codec
2 parents 942fe2a + fd7866c commit 2bb82c3

19 files changed

Lines changed: 265 additions & 59 deletions

File tree

.github/workflows/release.yml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: Release
2+
3+
permissions:
4+
pull-requests: write
5+
contents: write
6+
7+
on:
8+
push:
9+
branches:
10+
- main
11+
12+
jobs:
13+
# Release unpublished packages.
14+
release-plz-release:
15+
name: Release-plz release
16+
runs-on: ubuntu-latest
17+
if: ${{ github.repository_owner == 'livekit' }}
18+
permissions:
19+
contents: write
20+
steps:
21+
- name: Checkout repository
22+
uses: actions/checkout@v4
23+
with:
24+
fetch-depth: 0
25+
submodules: recursive
26+
- name: Install Rust toolchain
27+
uses: dtolnay/rust-toolchain@stable
28+
- name: Run release-plz
29+
uses: release-plz/action@v0.5
30+
with:
31+
command: release
32+
env:
33+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
34+
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_TOKEN }}
35+
36+
# Create a PR with the new versions and changelog, preparing the next release.
37+
release-plz-pr:
38+
name: Release-plz PR
39+
runs-on: ubuntu-latest
40+
permissions:
41+
contents: write
42+
pull-requests: write
43+
concurrency:
44+
group: release-plz-${{ github.ref }}
45+
cancel-in-progress: false
46+
steps:
47+
- name: Checkout repository
48+
uses: actions/checkout@v4
49+
with:
50+
fetch-depth: 0
51+
- name: Install Rust toolchain
52+
uses: dtolnay/rust-toolchain@stable
53+
- name: Run release-plz
54+
uses: release-plz/action@v0.5
55+
with:
56+
command: release-pr
57+
env:
58+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
59+
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_TOKEN }}

Cargo.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ members = [
1717
[workspace.dependencies]
1818
imgproc = { version = "0.3.12", path = "imgproc" }
1919
yuv-sys = { version = "0.3.7", path = "yuv-sys" }
20-
libwebrtc = { version = "0.3.10", path = "libwebrtc" }
20+
libwebrtc = { version = "0.3.11", path = "libwebrtc" }
2121
livekit-api = { version = "0.4.3", path = "livekit-api" }
22-
livekit-ffi = { version = "0.12.25", path = "livekit-ffi" }
22+
livekit-ffi = { version = "0.12.26", path = "livekit-ffi" }
2323
livekit-protocol = { version = "0.3.10", path = "livekit-protocol" }
2424
livekit-runtime = { version = "0.4.0", path = "livekit-runtime" }
25-
livekit = { version = "0.7.11", path = "livekit" }
25+
livekit = { version = "0.7.12", path = "livekit" }
2626
soxr-sys = { version = "0.1.0", path = "soxr-sys" }
2727
webrtc-sys-build = { version = "0.3.6", path = "webrtc-sys/build" }
28-
webrtc-sys = { version = "0.3.7", path = "webrtc-sys" }
28+
webrtc-sys = { version = "0.3.8", path = "webrtc-sys" }

examples/wgpu_room/Cargo.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ tracing = ["console-subscriber", "tokio/tracing"]
1111
tokio = { version = "1", features = ["full", "parking_lot"] }
1212
livekit = { path = "../../livekit", features = ["native-tls"] }
1313
futures = "0.3"
14-
winit = "0.28"
14+
winit = "0.30.11"
1515
parking_lot = { version = "0.12.1", features = ["deadlock_detection"] }
1616
image = "0.24"
17-
wgpu = "0.16"
18-
egui = "0.22.0"
19-
egui-wgpu = "0.22.0"
20-
eframe = { version = "0.22.0", default-features = false, features = ["default_fonts", "wgpu", "persistence"] }
17+
wgpu = "25.0"
18+
egui = "0.31.1"
19+
egui-wgpu = "0.31.1"
20+
eframe = { version = "0.31.1", default-features = false, features = ["default_fonts", "wgpu", "persistence"] }
2121
serde = { version = "1", features = ["derive"] }
2222
log = "0.4"
2323
env_logger = "0.10.0"

examples/wgpu_room/src/app.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use crate::{
33
video_grid::VideoGrid,
44
video_renderer::VideoRenderer,
55
};
6-
use egui::{Rounding, Stroke};
6+
use egui::{CornerRadius, Stroke};
77
use livekit::{e2ee::EncryptionType, prelude::*, SimulateScenario};
88
use std::collections::HashMap;
99

@@ -428,7 +428,7 @@ fn draw_video(name: &str, speaking: bool, video_renderer: &VideoRenderer, ui: &m
428428

429429
if speaking {
430430
ui.painter()
431-
.rect(rect, Rounding::none(), egui::Color32::GREEN, Stroke::NONE);
431+
.rect(rect, CornerRadius::default(), egui::Color32::GREEN, Stroke::NONE, egui::StrokeKind::Inside);
432432
}
433433

434434
// Always draw a background in case we still didn't receive a frame

examples/wgpu_room/src/main.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
use eframe::Renderer;
2+
use egui::ViewportBuilder;
23
use parking_lot::deadlock;
34
use std::thread;
45
use std::time::Duration;
@@ -36,12 +37,11 @@ fn main() {
3637
eframe::run_native(
3738
"LiveKit - Rust App",
3839
eframe::NativeOptions {
39-
follow_system_theme: true,
4040
centered: true,
4141
renderer: Renderer::Wgpu,
4242
..Default::default()
4343
},
44-
Box::new(|cc| Box::new(app::LkApp::new(cc))),
44+
Box::new(|cc| Ok(Box::new(app::LkApp::new(cc)))),
4545
)
4646
.unwrap();
4747
}

examples/wgpu_room/src/video_grid.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,10 @@ impl<'a> VideoGridContext<'a> {
168168
pub fn video_frame(&mut self, add_contents: impl FnOnce(&mut egui::Ui)) -> egui::Response {
169169
let frame_rect = self.layout.next_frame_rect();
170170

171-
let mut child_ui = self.ui.child_ui(frame_rect, egui::Layout::default());
172-
add_contents(&mut child_ui);
171+
if self.ui.is_visible() {
172+
let mut child_ui = self.ui.child_ui(frame_rect, egui::Layout::default(), None);
173+
add_contents(&mut child_ui);
174+
}
173175

174176
self.ui.allocate_rect(frame_rect, egui::Sense::hover())
175177
}

examples/wgpu_room/src/video_renderer.rs

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ struct RendererInternal {
1717
width: u32,
1818
height: u32,
1919
rgba_data: Vec<u8>,
20-
texture: Option<wgpu::Texture>,
21-
texture_view: Option<wgpu::TextureView>,
20+
texture: Option<eframe::wgpu::Texture>,
21+
texture_view: Option<eframe::wgpu::TextureView>,
2222
egui_texture: Option<egui::TextureId>,
2323
}
2424

@@ -75,18 +75,18 @@ impl VideoRenderer {
7575
);
7676

7777
internal.render_state.queue.write_texture(
78-
wgpu::ImageCopyTexture {
78+
eframe::wgpu::TexelCopyTextureInfo {
7979
texture: internal.texture.as_ref().unwrap(),
8080
mip_level: 0,
81-
origin: wgpu::Origin3d::default(),
82-
aspect: wgpu::TextureAspect::default(),
81+
origin: eframe::wgpu::Origin3d::default(),
82+
aspect: eframe::wgpu::TextureAspect::default(),
8383
},
8484
&internal.rgba_data,
85-
wgpu::ImageDataLayout {
85+
eframe::wgpu::TexelCopyBufferLayout {
8686
bytes_per_row: Some(width * 4),
8787
..Default::default()
8888
},
89-
wgpu::Extent3d { width, height, ..Default::default() },
89+
eframe::wgpu::Extent3d { width, height, ..Default::default() },
9090
);
9191
}
9292
}
@@ -117,22 +117,22 @@ impl RendererInternal {
117117
self.height = height;
118118
self.rgba_data.resize((width * height * 4) as usize, 0);
119119

120-
self.texture = Some(self.render_state.device.create_texture(&wgpu::TextureDescriptor {
120+
self.texture = Some(self.render_state.device.create_texture(&eframe::wgpu::TextureDescriptor {
121121
label: Some("lk-videotexture"),
122-
usage: wgpu::TextureUsages::TEXTURE_BINDING | wgpu::TextureUsages::COPY_DST,
123-
dimension: wgpu::TextureDimension::D2,
124-
size: wgpu::Extent3d { width, height, ..Default::default() },
122+
usage: eframe::wgpu::TextureUsages::TEXTURE_BINDING | eframe::wgpu::TextureUsages::COPY_DST,
123+
dimension: eframe::wgpu::TextureDimension::D2,
124+
size: eframe::wgpu::Extent3d { width, height, ..Default::default() },
125125
sample_count: 1,
126126
mip_level_count: 1,
127-
format: wgpu::TextureFormat::Rgba8UnormSrgb,
128-
view_formats: &[wgpu::TextureFormat::Rgba8UnormSrgb],
127+
format: eframe::wgpu::TextureFormat::Rgba8UnormSrgb,
128+
view_formats: &[eframe::wgpu::TextureFormat::Rgba8UnormSrgb],
129129
}));
130130

131131
self.texture_view =
132-
Some(self.texture.as_mut().unwrap().create_view(&wgpu::TextureViewDescriptor {
132+
Some(self.texture.as_mut().unwrap().create_view(&eframe::wgpu::TextureViewDescriptor {
133133
label: Some("lk-videotexture-view"),
134-
format: Some(wgpu::TextureFormat::Rgba8UnormSrgb),
135-
dimension: Some(wgpu::TextureViewDimension::D2),
134+
format: Some(eframe::wgpu::TextureFormat::Rgba8UnormSrgb),
135+
dimension: Some(eframe::wgpu::TextureViewDimension::D2),
136136
mip_level_count: Some(1),
137137
array_layer_count: Some(1),
138138
..Default::default()
@@ -143,14 +143,14 @@ impl RendererInternal {
143143
self.render_state.renderer.write().update_egui_texture_from_wgpu_texture(
144144
&self.render_state.device,
145145
self.texture_view.as_ref().unwrap(),
146-
wgpu::FilterMode::Linear,
146+
eframe::wgpu::FilterMode::Linear,
147147
texture_id,
148148
);
149149
} else {
150150
self.egui_texture = Some(self.render_state.renderer.write().register_native_texture(
151151
&self.render_state.device,
152152
self.texture_view.as_ref().unwrap(),
153-
wgpu::FilterMode::Linear,
153+
eframe::wgpu::FilterMode::Linear,
154154
));
155155
}
156156
}

libwebrtc/CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
11
# Changelog
22

3+
## [0.3.11](https://github.com/livekit/rust-sdks/compare/rust-sdks/libwebrtc@0.3.10...rust-sdks/libwebrtc@0.3.11) - 2025-06-11
4+
5+
### Fixed
6+
7+
- fix uint32 overflow ([#615](https://github.com/livekit/rust-sdks/pull/615))
8+
9+
### Other
10+
11+
- remove ([#633](https://github.com/livekit/rust-sdks/pull/633))
12+
- expose apm stream_delay ([#616](https://github.com/livekit/rust-sdks/pull/616))
13+
- Add i420_to_nv12 ([#605](https://github.com/livekit/rust-sdks/pull/605))
14+
- ffi-v0.13.0 ([#590](https://github.com/livekit/rust-sdks/pull/590))
15+
- add AudioProcessingModule ([#580](https://github.com/livekit/rust-sdks/pull/580))
16+
317
## [0.3.10] - 2025-02-05
418

519
### Fixed

libwebrtc/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "libwebrtc"
3-
version = "0.3.10"
3+
version = "0.3.11"
44
edition = "2021"
55
homepage = "https://livekit.io"
66
license = "Apache-2.0"

0 commit comments

Comments
 (0)