音视频缓存数学模型 2024年8月的笔记 播放器作为消费者,缓存作为生产者。 进入缓冲一次设消费者速率为v1,生产者为v2,视频长度为l,x为生产者至少距离消费者多远才能保证在播完视频前两者重合。实际上就是一个追及问题。 v1t = v2t + x,即 l = v2*l/v1 + x,因为播放器速度是1,继续简化得 x = l(1 - v2) 如果v2大于1,即满足消费者需求 2025-03-16 音视频 #音视频
安卓屏保调试 先看一下在设置点击屏保预览后的调用链(Android 14) sequenceDiagram participant User participant MaterialButton participant View participant DreamSettings participant DreamBackend User->>Mat 2025-03-15 AndroidFrameworkFeature #DreamManagerService #Framework #屏保
安卓内存泄露之DMA-BUF异常增长:Android Studio镜像引起DMA内存泄露 今天用着安卓 14 的板子的时候突然系统卡死。 查看日志发现launcher都被干掉了 03-04 06:13:35.544 7872 8479 I ActivityManager: vis BFGS 18740: com.android.launcher3 (pid 8407) service 03-04 06:13:35.544 7872 8479 I ActivityManager: co 2025-03-04 Android性能优化 #内存 #性能优化
安卓组件化之动态依赖功能模块 对于拥有不同渠道的 APP 来说,可能需要集成不同的功能模块,也可能同一个功能有不同实现。最简单的方法可能是通过接口、工厂模式、 flavorImplement 和渠道自定义代码的方法来实现了。但是,如果不想建那么多渠道代码目录,需要通过一套代码来初始化模块,那么上述方法就不行了。 那么如何在不依赖模块的前提下动态调用其功能呢? 有几种方法: 1、反射、接口隔离和工厂模式 2、动态功能模块(Dyn 2025-03-03 AndroidAPP架构 #Android #gradle #组件化
DLNA库Platinum新增安卓64位so编译方法 下载代码(该仓库我已经修改相关编译错误和支持安卓 64 位 so 编译) git clone https://github.com/wesley666/Platinum -b master 下载Neptune git submodule update --init 下载 ndk15: https://dl.google.com/android/repository/android-ndk-r15c 2025-01-18 投屏 #投屏 #DLNA
安卓Activity执行finish后onNewIntent也执行了 测试反应投屏时下一集可能播放不成功。 首先看一下日志: onCompletiononCasthandlerMessage: 2finish: PlayerActivity@abc7fdconPause: PlayerActivity@abc7fdconNewIntent: PlayerActivity@abc7fdconResume: PlayerActivity@abc7fdconPause: 2025-01-04 AndroidBugFix #Android #AndroidActivity
安卓应用4字节不对齐导致so加载失败 今天把一个apk给厂商签名后直接push到机器的/system/app,结果运行app时显示so找不到。报错: java stacktrace:java.lang.UnsatisfiedLinkError: Library mmkv not found; tried [/system/lib/libmmkv.so, /product& 2025-01-04 Android Build System #Android #aosp编译 #Android.mk #Android.bp
安卓多渠道apk配置不同签名 一般签名都是放在buildTypes里面: 12345678910111213141516171819...android { ... defaultConfig {...} signingConfigs { release { storeFile file("myreleasekey 2024-12-24 AppBuild #Android #Android多渠道
安卓15预置第三方apk时签名报错问题解决 有同事反馈集成apk时安装失败 PackageManager: Failed to scan /product/app/test: No APK Signature Scheme v2 signature in package /product/app/test/test.apk 查看编译后的apk签名信息 DOES NO 2024-12-24 Android Build System #Android #aosp编译 #Android.mk #Android.bp
咪咕视频DLNA投屏跳集问题分析 QA在测试公司投屏应用时,发现咪咕视频DLNA投剧集时有时候会跳过一集直接播下一集的问题。 尝试自行分析解决不了后,我决定分析一下竞品应用:当贝投屏,结果发现它是正常的。由于当贝投屏是个黑盒子,所以决定抓包看一下。 Android tcpdump tcpdump tcp -i any -p -s 0 -w /sdcard/capture.pcap 当贝投屏抓包分析运行命令后开始投剧集到当贝投屏并通 2024-12-08 投屏 #投屏 #DLNA