Commit Graph

  • 4cf95ac521 Merge PR #27: fix CI — proxy + gitea.com mirrors + missing apt packages master dailz 2026-07-14 21:51:50 +08:00
  • 027e7e02e0 ci: add missing libavdevice-dev (ffmpeg-sys-next requires it) dailz 2026-07-14 20:26:46 +08:00
  • ebff43d9d6 ci: drop --error-on=any from apt-get update (microsoft repo unreachable) dailz 2026-07-14 20:20:42 +08:00
  • c000a2238d ci: configure apt proxy (apt doesn't respect HTTP_PROXY env var) dailz 2026-07-14 20:13:52 +08:00
  • 17c01a040a ci: set proxy env at job level (container.env not supported by act_runner) dailz 2026-07-14 20:08:55 +08:00
  • e5317bf4c8 ci: remove unreachable domestic mirrors, use official sources directly dailz 2026-07-14 19:53:27 +08:00
  • 56feb64b10 ci: use USTC mirror for rustup (rsproxy.cn 404 on dist path) dailz 2026-07-14 14:43:32 +08:00
  • 3d00625518 ci: use rsproxy.cn for rustup component downloads dailz 2026-07-14 14:39:40 +08:00
  • 985c8f9cd2 ci: trigger rerun after config.yaml container.env proxy dailz 2026-07-14 14:25:10 +08:00
  • 586b043267 ci: trigger rerun after proxy configuration dailz 2026-07-14 14:18:14 +08:00
  • b6e4ed1956 ci: install rustup via official script (not pre-installed in image) dailz 2026-07-14 13:44:11 +08:00
  • 93c331f11e ci: remove actions/cache step (gitea.com clone hangs 12+ min) dailz 2026-07-14 13:38:48 +08:00
  • cbe410534e ci: add rsproxy.cn cargo mirror for crates.io index access dailz 2026-07-14 13:17:17 +08:00
  • a20b2ad3c6 ci: switch to gitea.com action mirrors + rustup inline dailz 2026-07-14 13:10:21 +08:00
  • 5902df63c2 Merge PR #26: decompose oversized modules into directory form dailz 2026-07-14 11:44:56 +08:00
  • e49339bdab docs(agents): update module paths after directory-form refactor dailz 2026-07-14 10:32:43 +08:00
  • 1d1b5db3c2 refactor(bin): convert vaapi_import_bench + sw_encode_bench to directory form dailz 2026-07-13 19:33:07 +08:00
  • a17f809d9f refactor(state): split 1598-LOC state.rs into directory + extract 13 Dispatch impls dailz 2026-07-13 19:09:39 +08:00
  • bcfbd93f5a refactor(state_portal): extract bitrate helpers + thread loops to submodules dailz 2026-07-13 16:35:44 +08:00
  • 60d6e7f046 refactor(cap_portal): split 1313-LOC file into 7 submodules dailz 2026-07-13 16:20:56 +08:00
  • 51f6649159 refactor(bin): dedupe av_err_to_string + receive_first_frame + drain_encoder via shared src/bin/common/mod.rs dailz 2026-07-13 16:04:30 +08:00
  • bc405c6d16 refactor(webrtc): extract HTML_PAGE const to src/webrtc/html_page.rs dailz 2026-07-13 15:47:42 +08:00
  • 75ad4bba78 style: apply rustfmt to establish clean baseline before refactor dailz 2026-07-13 15:40:54 +08:00
  • fed8c2dcfd docs(avhw): fix misleading Send soundness reasoning dailz 2026-07-09 15:20:16 +08:00
  • 9a7b745a0e refactor(state): make output probe readiness transform-only dailz 2026-07-09 14:48:10 +08:00
  • 633247201c refactor: clear remaining clippy dead-code and cast warnings dailz 2026-07-09 14:36:10 +08:00
  • 9829a1728b ci(gitea): retry apt setup dailz 2026-07-03 13:55:46 +08:00
  • eca8032bcc ci(gitea): use cargo git registry index dailz 2026-07-03 13:39:07 +08:00
  • b96b99fc9c ci(gitea): install libavfilter dev package dailzandSisyphus 2026-07-03 13:10:15 +08:00
  • 823dd53745 chore(deps): address cargo audit findings dailzandSisyphus 2026-07-03 11:23:48 +08:00
  • d53e881496 refactor(avhw): split encoder module dailzandSisyphus 2026-07-03 10:57:05 +08:00
  • 17f5e235a9 ci(gitea): broaden libclang find pattern to match versioned sonames dailz 2026-06-28 17:20:02 +08:00
  • 4e65f4175b ci(gitea): dynamically resolve LIBCLANG_PATH for act_runner container dailz 2026-06-28 16:58:04 +08:00
  • c772e4eb0b chore: bump MSRV to 1.87 to match actual API usage dailz 2026-06-28 14:39:00 +08:00
  • 86a8b61b07 refactor: clear too_many_arguments and large_enum_variant warnings dailz 2026-06-28 14:35:35 +08:00
  • ed39d3d873 ci: add build/test/clippy gate + cargo audit; pin rust-version dailz 2026-06-28 14:31:42 +08:00
  • a6560cff6c feat(stats): wire real scale/transfer/encode timing from EncState dailz 2026-06-28 14:22:45 +08:00
  • 2ac37a1dd1 fix(stats): wire PipeWire drops, expand Display, purge dead residue dailz 2026-06-28 14:15:55 +08:00
  • 145b5d3e7e chore: design cleanup, dead-code purge, README/doc refresh dailz 2026-06-28 13:58:52 +08:00
  • 30f8fe51f2 chore: clear clippy errors, document all unsafe blocks, deny new SAFETY debt dailz 2026-06-28 13:44:27 +08:00
  • 74ac8750dc fix(test_portal): 修复 doc list 缩进警告 add-chinese-comments dailz 2026-06-22 19:10:57 +08:00
  • f44e848c77 fix(safety): 移除新增的中文 // SAFETY: 注释为合规 baseline 不变量 dailz 2026-06-22 19:01:42 +08:00
  • 41093a4f99 docs(avhw): [4/4] 中文注释 SwEncState 与 unsafe impl Send dailz 2026-06-22 18:33:42 +08:00
  • 052729529e docs(avhw): [3/4] 中文注释软件编码路径 SwEnc* dailz 2026-06-22 18:19:31 +08:00
  • 98eb72e2a2 docs(vaapi_import_bench): [2/2] 中文注释 CPU/GPU pipeline 与报告 dailz 2026-06-22 18:17:22 +08:00
  • c780d6aeff docs(test_portal): 中文注释 Portal 冒烟测试示例 dailz 2026-06-22 18:13:42 +08:00
  • c68457e0e3 docs(integration_test): 中文注释集成测试 dailz 2026-06-22 18:11:15 +08:00
  • e6b5a5dc36 docs(list_globals): 中文注释 Wayland globals 示例 dailz 2026-06-22 18:10:03 +08:00
  • b2ba34ef04 docs(stats): 中文注释管道性能统计 dailz 2026-06-22 18:03:56 +08:00
  • 2f8197210e docs(webrtc): 中文注释 str0m WebRTC 信令服务器 dailz 2026-06-22 17:51:40 +08:00
  • d94431bd1e docs(sw_encode_bench): 中文注释软编码基准二进制 dailz 2026-06-22 17:49:25 +08:00
  • 895b9aeb32 docs(vaapi_import_bench): [1/2] 中文注释基准 setup 与类型定义 dailz 2026-06-22 17:48:59 +08:00
  • 8460c56bd5 docs(avhw): [2/4] 中文注释 EncState 编码主循环 dailz 2026-06-22 17:44:08 +08:00
  • 1518da4f30 docs(avhw): [1/4] 中文注释 FFmpeg/VAAPI 初始化 dailz 2026-06-22 17:34:53 +08:00
  • 279ec97647 docs(cap_portal): [2/2] 中文注释 PipeWire 帧流与 unsafe FFI dailz 2026-06-22 17:32:01 +08:00
  • 09123fcd65 docs(state_portal): [2/2] 中文注释 Portal 帧循环与编码调度 dailz 2026-06-22 17:28:53 +08:00
  • f3c0a83a9a docs(state): [3/3] 中文注释 state.rs 帧捕获与输出管理 dailz 2026-06-22 17:27:05 +08:00
  • de93d31c89 docs(fps_limit): 中文注释帧率限制器 dailz 2026-06-22 17:26:03 +08:00
  • f9e59756c3 docs(state): [2/3] 中文注释 state.rs Wayland Dispatch trait 实现 dailz 2026-06-22 17:18:54 +08:00
  • e96af51ee1 docs(cap_portal): [1/2] 中文注释 XDG Portal 授权与 CapPortal 初始化 dailz 2026-06-22 17:18:10 +08:00
  • fffa440e68 docs(state_portal): [1/2] 中文注释 Portal 状态机初始化 dailz 2026-06-22 17:18:00 +08:00
  • 2841d93afa docs(transform): 中文注释图像变换逻辑 dailz 2026-06-22 17:15:28 +08:00
  • 9e2f726491 docs(state): [1/3] 中文注释 state.rs 状态机初始化与类型定义 dailz 2026-06-22 17:04:14 +08:00
  • ef4bd904db docs(backend_detect): 中文注释后端检测逻辑与 ashpd 规避原因 dailz 2026-06-22 16:56:25 +08:00
  • d3016161d1 docs(cap_wlr): 中文注释 wlr-screencopy 协议绑定 dailz 2026-06-22 16:52:48 +08:00
  • 3d314a35aa docs(main): 中文注释 src/main.rs 入口与事件循环 dailz 2026-06-22 16:44:20 +08:00
  • 13b7466c57 docs(args): 中文注释 src/args.rs CLI 参数定义 dailz 2026-06-22 16:41:29 +08:00
  • c12ae6ddcc docs(lib): 中文注释 build.rs 与 src/lib.rs 模块总览 dailz 2026-06-22 16:37:11 +08:00
  • e7accecfec chore: trim verbose docstrings on Portal timeout constants and enum dailz 2026-06-21 11:00:29 +08:00
  • 68a6eecfbe fix(cap_portal): phased timeouts + token-aware retry for Portal setup dailz 2026-06-21 10:44:15 +08:00
  • 6ccb225784 fix(backend_detect): add 5s timeout to Portal availability check dailz 2026-06-21 10:37:43 +08:00
  • 727893fdc2 fix(webrtc): conservative resolution-aware startup bitrate (closes #21) dailz 2026-06-21 10:10:19 +08:00
  • a06a41f5f2 feat(stats): expose duplicate_frames_skipped counter (closes #20) dailz 2026-06-21 10:04:41 +08:00
  • 631934458c chore: remove obsolete TODO(#19) and dead _fps binding dailz 2026-06-21 09:52:27 +08:00
  • 46e7a9785d fix(webrtc): bypass str0m LeakyBucketPacer for low-latency LAN streaming dailz 2026-06-21 09:10:28 +08:00
  • b4b9990efe feat(stats): populate frame_age metric for WebRTC path (partial #20) dailz 2026-06-20 23:20:36 +08:00
  • ad28af6ff3 fix(webrtc): switch encoder time_base to 90kHz to stop RTP time inflation (closes #25) dailz 2026-06-20 22:59:43 +08:00
  • 1e792f191c fix(state_portal): use webrtc_thread.is_some() for PTS mode gating (really fixes #24) dailz 2026-06-20 22:15:50 +08:00
  • 079611acfc fix(webrtc): propagate real capture PTS through WebRTC channel (closes #24) dailz 2026-06-20 21:53:27 +08:00
  • 2f0b858920 fix(state_portal): remove filler + accept Wayland damage-driven delivery (fixes #15, fixes #18) dailz 2026-06-20 20:56:34 +08:00
  • 9a522e2f99 fix(webrtc): PLI rate limiting + bitrate cap + VBV units (closes #23) dailz 2026-06-20 20:36:44 +08:00
  • f38adf70f9 fix(state_portal): gate handle_pw_frame on WebRTC paused state (closes #19) dailz 2026-06-20 19:57:15 +08:00
  • 92760dd8ee fix(state_portal): make shutdown() idempotent to prevent duplicate log lines (#22) dailz 2026-06-20 18:45:53 +08:00
  • 0aba0e651e fix(stats): real encode thread timing via SwEncodeTiming + take_timing (#17) dailz 2026-06-14 08:50:47 +08:00
  • 36cee9d9dd fix(webrtc): force IDR on KeyframeRequest via forced-idr=1 + pict_type (closes #16) dailz 2026-06-14 08:20:06 +08:00
  • 0e91c793c7 docs: add AGENTS.md project guide dailz 2026-06-13 22:46:41 +08:00
  • 3e60258627 feat(portal): BWE-driven resolution adaptation + duplicate frame skipping dailz 2026-06-13 22:46:33 +08:00
  • 503e4dbc22 feat(portal): independent WebRTC thread + channel tuning for 60fps mouse latency dailz 2026-06-07 18:30:09 +08:00
  • caccfec44e fix(portal): compositor stall detection + filler frames + PipeWire state logging dailz 2026-06-07 17:20:54 +08:00
  • 826f544569 feat(portal): async encode pipeline - decouple capture from encoding dailz 2026-06-07 16:55:28 +08:00
  • aae030f309 fix(webrtc): SO_SNDBUF 2MB + VBV rate limiting + stats integration dailz 2026-06-07 16:55:07 +08:00
  • 029fe13e37 feat(stats): add --stats flag and PipelineStats windowed diagnostics dailz 2026-06-07 16:54:45 +08:00
  • f3da1e4e6c fix(webrtc): propagate poll_output error as cleanup signal to prevent zombie state (closes #14) dailz 2026-06-06 21:48:38 +08:00
  • e6e05fb44a fix(webrtc): fix is_idr_nalu boundary bug missing tail NAL units (closes #13) dailz 2026-06-06 21:34:22 +08:00
  • 8b04893ceb fix(security): remove error details from HTTP 500 response (#12) dailz 2026-06-06 21:22:57 +08:00
  • 1beaea8088 fix(webrtc): use MediaAdded event to discover video mid instead of hardcoded iteration (closes #11) dailz 2026-06-06 21:16:55 +08:00
  • fc4733ffe8 fix: return Ok(true) on ICE Disconnected to prevent resource leak dailz 2026-06-06 20:57:25 +08:00
  • d5679be3a4 fix(state_portal): replace expect() with bail-style error propagation (closes #9) dailz 2026-06-06 20:19:51 +08:00
  • 36f07c92e9 fix(state_portal): prevent shutdown deadlock on full bounded channel (closes #8) dailz 2026-06-06 20:02:09 +08:00
  • 7c1c9b2e19 fix(avhw): add SAFETY comments to all undocumented unsafe blocks dailz 2026-06-06 15:54:09 +08:00