wpscott
wpscott
最近有空摸鱼研究了一下建议一 # 在线随机数生成器 参考AVUP用过的[在线随机数生成器](http://www.99cankao.com/numbers/random-number-generator.php)使用的[random.js](http://www.99cankao.com/numbers/random-number/random.js),采用了[MersenneTwister](https://en.wikipedia.org/wiki/Mersenne_Twister)伪随机数算法,随机数生成算法大致为 ``` var mTwister = new MersenneTwister(); var number = Math.round( mTwister.random() * max) - min ) ) + min; ``` # Math.random() 根据V8的博客[There’s `Math.random()`, and then...
AR直播宝箱? 从Base64解码的信息看应该还在测试中,再等等吧
看了一下,AcFun直播助手就是一个套壳魔改的OBS Studio,KTP协议的实现位于`.\AcfunLive\plugins\64bit\obs-ffmpeg.dll`(>10MB,obs原版只有~260KB)
换27试试?OBS 28更新到Qt6,可能不兼容AcFun的
那试试把`obs.exe`放到`.\AcfunLive\bin\64bit`里运行?
看来需要修改obs的源码,编译一个加了`gettimeofday`函数的`obs.dll`  或者用[Detours](https://github.com/microsoft/Detours)的[Setdll](https://github.com/microsoft/Detours/wiki/SampleSetdll)来修改原版的`obs.dll`
另外增加的一个函数是`obs_data_has` ```C bool obs_data_has_0() { return sub_18005D8E0() != 0; } __int64 __fastcall sub_18005D8E0(__int64 a1, __int64 a2) { __int64 v4; // rbx unsigned __int8 *item_name; // rax __int64 v6; // r8...
* 经过修改编译obs-studio和修改Acfunlive的`obs-ffmpeg.dll`,已经可以正常加载,但是仍需研究如何才能调用`arya` * AcfunLive.exe是魔改的obs.exe,添加了两个运行时参数`--dumpuper`和`--exception`,增加了一些OBSSignal ```C "on_rtmp_connected" "on_rtmp_connected" "on_rtmp_stopped" "on_rtmp_stopped" "on_rtmp_error" "on_rtmp_error" "on_mcu_connected" "on_mcu_connected" "on_mcu_stopped" "on_mcu_stopped" "on_mcu_error" "on_mcu_error" "signal_send_handler" "signal_send_handler" "mcu_connectable" "mcu_connectable" "live_play_notfiy" "live_play_notfiy" "audio_device_notfiy" "audio_device_notfiy" "arya_call_mcu_disconnected" "arya_call_mcu_disconnected" "arya_qos_block" "arya_qos_block" "arya_video_frame_dropped_bef_enc"...
那可能是这个`ktp://([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+):([0-9]+)/sid=([0-9]+)`,地址应为`videoPushRes->ktpPushSignal->statusChanged->msg->addr`,`sid`是`videoPushRes->ktpPushSignal->streamId`中的第一个,在ktp协议中为第5~8字节