Commit Graph

22 Commits

Author SHA1 Message Date
Developer
94db7445fb 视频缓存 2026-03-17 22:18:05 +08:00
Developer
2e47871689 播放状态 2026-03-17 17:26:43 +08:00
Developer
6275fd0930 直播弹幕与界面优化
- useLiveDanmaku: 重写协议解析,支持 zlib 压缩消息、token 认证、base64 帧处理
- services/bilibili: 新增 getLiveDanmakuInfo 获取弹幕服务器信息
- live/[roomId]: 使用真实 roomid 而非 URL 别名连接弹幕
- NativeVideoPlayer: 增加中文注释,移除调试日志
- video/[bvid]: UP主头像移至标题前,调整字号与样式
- index: 替换 logo 文字为下载按钮图标
- videoRows: 修复奇数视频配对,调整 BigRow 位置策略
- package.json: 移除未使用的 fast-xml-parser 和 xml2js 依赖
2026-03-17 15:14:23 +08:00
Developer
a46e63f0ba 1 2026-03-16 21:13:26 +08:00
Developer
47d2e8479e 评论 2026-03-16 14:24:32 +08:00
Developer
9a70dd0c4d 1 2026-03-16 12:55:45 +08:00
Developer
ff659dcef7 优化 2026-03-14 18:25:13 +08:00
Developer
b447ec0c76 1 2026-03-13 00:30:07 +08:00
Developer
2e7578afde 热力图bug 2026-03-12 23:57:01 +08:00
Developer
9347c8752d 1 2026-03-11 20:53:18 +08:00
Developer
ea184842e4 fix: player height collapse and danmaku empty state 2026-03-11 10:20:13 +08:00
Developer
64ce3031a6 feat: merge danmaku-fullscreen - resolve NativeVideoPlayer conflict
Combines master's shotTimestamps/pvdata thumbnail improvements and
TouchableWithoutFeedback tap layer with feature/danmaku-fullscreen's
DanmakuItem import, DanmakuOverlay render, showDanmaku state,
onTimeUpdate/initialTime/danmakus/isFullscreen props, danmaku toggle
button, and useWindowDimensions for rotation-aware dimensions.
2026-03-11 10:07:22 +08:00
Developer
880e2696da 1 2026-03-11 10:03:46 +08:00
Developer
72a8fdfdc0 fix: address code review issues in danmaku components 2026-03-11 10:01:50 +08:00
Developer
85ceec8b58 feat: add danmaku overlay + time tracking to NativeVideoPlayer 2026-03-10 22:50:48 +08:00
Developer
6023ec55ae feat: rewrite NativeVideoPlayer with unified custom controls overlay 2026-03-10 21:46:19 +08:00
Developer
03d7d3c5c3 fix: quality switch not updating video playback
- Use qn-specific MPD filename (bili_dash_{qn}.mpd) so each quality
  produces a distinct URI that triggers react-native-video to reload
- Add key={resolvedUrl} on <Video> to force remount on source change
2026-03-10 20:18:47 +08:00
Developer
35371cebff fix: switch DASH delivery from data: URI to local MPD file via expo-file-system
data: URI scheme for DASH manifests is unreliable in ExoPlayer.
Write MPD XML to FileSystem.cacheDirectory/bili_dash.mpd and pass
file:// URI to react-native-video instead. URL resolution is now
async via useEffect+state in NativeVideoPlayer.
2026-03-10 20:16:01 +08:00
Developer
5bb6a3cd68 feat: unlock 1080P+ on Android via DASH streaming
- getPlayUrl uses fnval=16 (DASH) on Android, keeping fnval=0/html5 for iOS/web
- New utils/dash.ts builds a valid DASH MPD from Bilibili's segmentBase ranges
  and returns it as a data: URI for ExoPlayer consumption
- NativeVideoPlayer selects DASH path (type='mpd') or durl fallback automatically
- Extend PlayUrlResponse types with DashVideoItem/DashAudioItem/DashSegmentBase
2026-03-10 20:04:48 +08:00
Developer
cf20b016ff 1 2026-03-10 19:04:18 +08:00
Developer
c9c62d3e48 1 2026-03-06 14:52:28 +08:00
Developer
9b7e728c9d 1 2026-03-06 12:58:41 +08:00