pub(super) struct VideoLayer {
pub target: DrawTarget,
pub dst: (i32, i32, u32, u32),
pub clip: (u32, u32, u32, u32),
pub last_app_draw_ms: u64,
}Expand description
動画レイヤ: 最後にアプリが <video> を描いた位置(ウィンドウのバッファ座標)と描画先。
【2026-10-18】アプリのスレッドが再レイアウトや JS で詰まっている間(YouTube の操作部の
全再レイアウトは QEMU で 1 回約 2 秒)、動画のフレームが画面に出ず止まって見えた。
実ブラウザが動画を別の層として合成するのと同じく、アプリの描画が STALL_MS 以上
途絶えている間は、再生スレッドがウィンドウの共有バッファの動画の矩形へ直接書く。
アプリが描いている間はアプリに任せる(操作部などの重なりを正しく保つため)。
Fields§
§target: DrawTarget§dst: (i32, i32, u32, u32)フレームを置く矩形(縦横比を保った後)(x, y, w, h)。
clip: (u32, u32, u32, u32)見えている範囲(クリップ)(x0, y0, x1, y1)。
last_app_draw_ms: u64アプリが最後に動画を描いた時刻 [ms]。
Auto Trait Implementations§
impl !RefUnwindSafe for VideoLayer
impl !UnwindSafe for VideoLayer
impl Freeze for VideoLayer
impl Send for VideoLayer
impl Sync for VideoLayer
impl Unpin for VideoLayer
impl UnsafeUnpin for VideoLayer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more