atxserver bug记录

news2024/12/29 14:15:20

8. 解决无法点击屏幕

原因:remotecontrol_android.html为按比例自动缩放,play.html(Django)显示的屏幕大小不会随页面放大缩小。有个h265方式获取的宽高是720*448,电脑上显示的大小是545*339,这个对不上,可能是导致位置不准的原因。尝试按照这个比例缩放坐标也不行。电脑上显示的大小不是固定的,会随缩放变化

if (data[4] == 103) {

const { profileIndex, constraintSet, levelIndex, croppedWidth, croppedHeight, } = window.h264ParseConfiguration(data);

window.canvas_resolution = [croppedWidth, croppedHeight];

这个宽高,无论怎么缩放都是同一个值。是有后端返回,实时获取电脑显示的大小和鼠标点击位置的坐标,然后换算到window.canvas_resolution里面确定x,y的值

 

// x = Math.max(x, 0);

// y = event.clientY - ele.offsetTop + window.scrollY;

 event.clientY是鼠标相对于浏览器窗口可视区域的Y坐标。ele.offsetTop是canvas容器到顶部的距离

已知

手机视频流数据解析宽高   固定  window.canvas_resolution[0], window.canvas_resolution[1]

canvas宽高   动态   ele.offsetWidth, ele.offsetHeight

鼠标点击位置相对于canvas的x,y坐标  elex  eley

将canvas的x,y坐标换算成手机视频流数据对应坐标

 

 

 

templates.remotecontrol_android调用的接口在web.urls 查询,对应的接口调用web.views.device

7. 学习

video_codec: "h264",

audio_codec: "aac",

H.264是一种视频压缩编码格式,也称为AVC(Advanced Video Coding)或MPEG-4 Part 10。它是高清视频编码的主流格式之一,被广泛应用于数字广播、高清电视、蓝光光盘和互联网视频流等领域。H.264采用先进的编码技术,能够提供更高的图像清晰度和更低的码率,从而在保证视频质量的同时节省存储和传输成本

aac:AAC,全称Advanced Audio Coding,是一种专为声音数据设计的文件压缩格式。与MP3不同,它采用了全新的算法进行编码,更加高效,具有更高的“性价比”。利用AAC格式,可使人感觉声音质量没有明显降低的前提下,更加小巧。

优点:相较于mp3,AAC格式的音质更佳,文件更小。

6. adb 命令不起作用 识别不了设备

adb devices不生效

重启adb服务

adb kill-server

adb start-server

 5. 三星安卓10无法显示屏幕,安卓11 安卓7正常显示

解决办法:adb shell

cd /data/local/tmp   安卓日志路径

ls

对比pad和三星,发现三星无minicap minitouch

  对于这种情况,可以将正确的minicap和minicap.so推送到设备上即可解决。

        在操作之前,首先应当查询自己的设备的cpu架构和安卓sdk版本:

adb shell getprop ro.product.cpu.abi    结果是arm64-v8a
adb shell getprop ro.build.version.sdk   结果是29
在 GitHub - openatx/stf-binaries: Repo to place STF binaries下载上面的文件

4. 解决atx scrcpy-server.jar无法上传到安卓目录的问题

修改路径 原来的路径不可查看文件 猜测是权限问题,

"/data/local/tmp/scrcpy-server.jar" 改为
"/sdcard/Download/scrcpy-server.jar"

    async def deploy_server(self):
        # 1.推送jar包
        server_file_path = os.path.join(BASE_DIR, "asset/scrcpy-server-v2.1.1")
        # await self.adb_device.push_file(server_file_path, "/data/local/tmp/scrcpy-server.jar")
        await self.adb_device.push_file(server_file_path, "/sdcard/Download/scrcpy-server.jar")
        # 2.启动一个adb socket去部署scrcpy_server
        self.scrcpy_kwargs['scid'] = '0' + ''.join([hex(random.randint(0, 15))[-1] for _ in range(7)])
        commands = [
            "CLASSPATH=/data/local/tmp/scrcpy-server.jar",
            "app_process",
            "/",
            "com.genymobile.scrcpy.Server",
            "2.1",
            *[f"{k}={v}" for k, v in self.scrcpy_kwargs.items()]
        ]
        self.deploy_socket = await self.shell(commands)

 3. 解决asset/scrcpy-server-v2.1.1找不到的问题

把Django下的拷贝到scrcpy-server-2.1.1拷贝到static/assert下面

2. adb连接

adb devices

adb shell

cd sdcard

ls -al

1. macos安装adb scrcpy

brew install android-platform-tools

brew install scrcpy

重启终端,手机连接电脑,输入scrcpy  mac打开scrcpy可以操作手机端


 

100. 参考资料

使用Miniconda创建虚拟环境_笔记大全_设计学院

MacOs环境下部署python - 哔哩哔哩

【Python】conda实现虚拟环境的创建_conda创建python虚拟环境_zz.YE的博客-CSDN博客

Python虚拟环境查看指南_笔记大全_设计学院

使用ATX-server部署过程中遇到的问题-遇到就更,作为记录_atx server internal error: ioexception: read timed_我心飞扬不飘荡的博客-CSDN博客

部署ATXSERVER2后无法正确显示手机屏幕_七只七七的博客-CSDN博客

GitHub - openatx/stf-binaries: Repo to place STF binaries

Button group · Bootstrap v4 中文文档 v4.6 | Bootstrap 中文网

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/919294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

理解机制,再探单元工厂的实现原理

最近有点忙,好久没更新文章了,今天继续再研究一下单元工厂的实现机制。为什么我们要这么重视这一块的内容呢?因为用计算机的目的是为了处理大量数据,如果数据量不大,大多情况下用纸就好了,专门用个计算设备的便捷性也就体现不出来。而大量数据的呈现方式的多样性精髓就在…

cuda编程002—流

没有使用同步的情况&#xff1a; #include <stdio.h> #include <cuda_runtime.h>__global__ void test_kernel(){printf("Message from Device.\n"); } void test(){test_kernel<<<1, 1>>>(); } #include <cuda_runtime.h> #i…

蓝蓝设计-UI设计公司作品-博晖创新原子吸收光谱仪软件交互及界面设计

博晖创新原子吸收光谱仪软件交互及界面设计 图标设计 | 交互设计 | 界面设计 博晖公司拥有强大的自主研发实力&#xff0c;建立了专业的研发团队&#xff0c;通过不断的技术创新&#xff0c;形成了分子诊断、免疫诊断、原子吸收、原子荧光及质谱五大技术平台&#xff0c;并成功…

ESP8266显示gif动态图,使用U8g2库

一.代码 #include <U8g2lib.h> //实现gif火柴人跑步动画// 定义GIF动画的帧数据 const unsigned char frame1[] {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0…

安装docker服务及docker基本操作

一、docker安装&#xff08;yum安装&#xff09; 基于centos7 1.添加docker-ce 源信息 安装依赖包&#xff08;yum-utils 提供了 yum-config-manager &#xff0c;并且 device mapper 存储驱动程序需要device-mapper-persistent-data 和 lvm2&#xff09; yum install yum-…

阿丹千问V1.5-迭代升级-使用人工智能提炼文字-java代码生成流程图-百度千帆大模型

阿丹&#xff1a; 今天在学习新技的时候发现了一个可以偷懒的地方&#xff0c;在学习新的知识体系的时候需要去理解文档中的逻辑关系等等&#xff0c;那么如果有一个东西可以支持输入一段具有逻辑的文字就可以帮我提炼起其中的逻辑&#xff0c;并帮助我绘制一个流程图岂不是美哉…

Node基础--Node基础使用体验

在上一篇文章中提到我们按照好Node.js之后&#xff0c;就可以在控制台看到其版本。那么下面我们一起来看看如何使用node执行js文件代码。 (1).在本地创建一个名称为hello.js的文件&#xff0c;输入内容如下所示: console.log("helloworld");var a 1;var b 2;cons…

leetcode 118.杨辉三角

⭐️ 题目描述 &#x1f31f; leetcode链接&#xff1a;https://leetcode.cn/problems/pascals-triangle/description/ 代码&#xff1a; class Solution { public:vector<vector<int>> generate(int numRows) {// 先开空间vector<vector<int>> v;v.…

Dockerfile推送私有仓库的两个案例

一&#xff0c;编写Dockerfile制作Web应用系统nginx镜像&#xff0c;生成镜像nginx:v1.1&#xff0c;并推送其到私有仓库。 具体要求如下&#xff1a; &#xff08;1&#xff09;基于centos基础镜像&#xff1b; &#xff08;2&#xff09;指定作者信息&#xff1b; &#xff…

driver‘s license exam train

驾考训练 driver‘s license exam 1_spencer_tseng的博客-CSDN博客 driver‘s license exam 2_spencer_tseng的博客-CSDN博客 driver‘s license exam 3_spencer_tseng的博客-CSDN博客 driver‘s license exam 4_spencer_tseng的博客-CSDN博客 car indicator light_spencer…

10个必备的IntelliJ IDEA插件,提高开发效率

WakaTime 安装链接&#xff1a;https://plugins.jetbrains.com/plugin/7425-wakatime WakaTime 是一个能够根据你的编程活动&#xff0c;自动生成各种数据的工具&#xff0c;可以让你看到在编码过程中的指标、见解和时间跟踪&#xff0c;从而评估你的编码效率。 你可以准确地知…

Unity - MenuItem特性

MenuItem(string itemName, bool isValidateFunction, int priority) 参数1&#xff1a;菜单名 参数2&#xff1a;是否使用自定义条件控制菜单项是否可点击&#xff0c;默认为false&#xff0c;一般不赋值&#xff0c;需要用的话需要定义两个MenuItem MenuItem 1 : 自定义条件…

08.利用Redis实现签到功能

学习目标&#xff1a; 来源&#xff1a;黑马教程 使用Redis中BitMap数据结构使用签到功能和连续签到功能 学习产出&#xff1a; 解决方案&#xff1a; 1. 准备pom环境 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-b…

vue组件的scope 以及 如何样式穿透

个人复习&#xff01;&#xff01;&#xff01; 有什么用 让当前组件的样式不会修改到其它地方的样式&#xff0c;使用了data-v-hash的方式来使css有了它对应模块的标识 实现原理 1、给HTML的dom节点添加一个不重复的data属性(例如: data-v-5558831a)来唯一标识这个dom 元素…

openCV实战-系列教程4:图像梯度计算(Sobel算子/开运算/梯度计算方法/scharr算子/lapkacian算子)、源码解读

1、sobel算子 先读进来一个原型白色图 img cv2.imread(pie.png,cv2.IMREAD_GRAYSCALE) cv2.imshow("img",img) cv2.waitKey() cv2.destroyAllWindows() 打印结果&#xff1a; 如图有两个3*3的卷积核&#xff0c;其中A是原始图片中的一个3*3的区域&#xff0c;这个…

阿里云轻量级应用服务器和ECS有什么区别?对比表来了

阿里云轻量应用服务器和云服务器ECS有什么区别&#xff1f;ECS是专业级云服务器&#xff0c;轻量应用服务器是轻量级服务器&#xff0c;轻量服务器使用门槛更低&#xff0c;适合个人开发者或中小企业新手使用&#xff0c;可视化运维&#xff0c;云服务器ECS适合集群类、高可用、…

MySQL进阶篇之Explain执行计划

MySQL&#xff1a;Explain执行计划 使用explain关键字可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理你的SQL语句的&#xff0c;分析你的查询语句或是表结构的性能瓶颈。 认识explain EXPLAIN SELECT * FROM user_info i LEFT JOIN user_grade g on i.id …

朴素贝叶斯==基于样本特征来预测样本属于的类别y

目录 朴素贝叶斯基于样本特征来预测样本属于的类别y 朴素贝叶斯算法的基本概念与核心思想 假设两个特征维度之间是相互独立的 拉普拉斯平滑增加出现次数保证0不出现 ​编辑 基于样本特征来预测样本属于的类别y 什么是拉普拉斯平滑 朴素贝叶斯基于样本特征来预测样本属于的…