forked from dji-sdk/Tello-Python
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TelloPython_FAQ(CH).txt
96 lines (66 loc) · 6.3 KB
/
TelloPython_FAQ(CH).txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
FAQ about Tello-Python (常见问题解答)
Q1:在windows上,运行tello_video需要哪些依赖项/怎么手动?
A1:在windows上,运行tello_video,首先,需要下载python2.7,
a.python2.7下载链接:
win64: https://www.python.org/ftp/python/2.7.15/python-2.7.15.amd64.msi
win32: https://www.python.org/ftp/python/2.7.15/python-2.7.15.msi
b.然后可以通过pip安装四个依赖项,分别是: (pip的安装方式请自行google)
numpy,opencv-python,pillow,matplotib。安装指令分别为:
numpy: python -m pip install numpy
matplotlib: python -m pip install matplotlib
opencv-python: python -m pip install -v opencv-python==3.4.2.17
pillow: python -m pip install pillow
c.接下来,需要下载并安装boost,目的是获得一个叫boost_python27-vc120-mt-x**-1_68.dll的动态链接库
boost下载链接:
win64: https://nchc.dl.sourceforge.net/project/boost/boost-binaries/1.68.0/boost_1_68_0-msvc-12.0-64.exe
win32: https://excellmedia.dl.sourceforge.net/project/boost/boost-binaries/1.68.0/boost_1_68_0-msvc-12.0-32.exe
下载完毕之后双击安装包进行安装,安装完成后,找到boost_python27-vc120-mt-x**-1_68.dll文件('**'部分取决你的电脑位数),放置到.\Python27\Lib\site-packages路径下。
d.接下来,需要下载ffmpeg,目的是得到包括avcodec-58.dll在内的多个dll文件。
ffmpeg下载链接:
win64: https://ffmpeg.zeranoe.com/builds/win64/shared/ffmpeg-20180825-844ff49-win64-shared.zip
win32: https://ffmpeg.zeranoe.com/builds/win32/shared/ffmpeg-20180825-844ff49-win32-shared.zip
下载完毕之后,解压文件,并将./bin 路径下的所有.dll文件都放置到.\Python27\Lib\site-packages路径下。
e.接下来,需要下载vs2013编译器,
vs2013编译器下载链接:
win64: https://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x64.exe
win32: https://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x86.exe
下载完毕后,运行安装包,安装程序。
f.将Tello-Python程序包中的libh264decoder复制到.\Python27\Lib\site-packages路径下。
h264decoder.pyd路径:
win64: .\Tello-Python\Tello_Video\h264decoder\Windows\x64\libh264decoder.pyd
win32: .\Tello-Python\Tello_Video\h264decoder\Windows\x86\libh264decoder.pyd
最后,在最新提交的commit中,提供了一个tello_video_dll.zip的压缩包(仅适用于win64),里面包括所需的与boost,ffmpeg,libh264decoder,vs2013编译器相关的文件。
首先,双击运行vcredist_x64.exe(vs2013编译器的安装包)进行安装。其次,将文件夹中的剩余文件都复制到.\Python27\Lib\site-packages路径下。
(通过该zip,你可以省去在网上下载和部分安装的环节,但注意这个zip里面的文件仅适用于win64!另外,像numpy,matplotlib,pillow和opencv-python你仍需要用pip进行安装。)
Q2:windows上的一键安装脚本(install.bat)在我的电脑上无法正常运行。
A2:目前提供的install.bat由于包含MD5校验等环节,对于部分用户电脑不是很兼容,后续会提供一个稳定安装的版本。如果无法正常运行自动安装脚本,请参考
Q1中的手动安装依赖项的方式。
Q3:install_manual.bat有什么作用?
A3:该脚本与install.bat在完成的任务上并无区别,区别主要在于会在每一个安装项目前进行中断,并提示用户是否安装。
目前该脚本并不稳定,建议您适用install.bat或者采用Q1中的手动安装的方式。
Q4:在windows/linux/mac中,我的所有依赖项均已经全部安装完成,运行python main.py之后也没有发生报错,但是运行程序后GUI并没有弹出视频流的画面,也无法使用
Snapshot按钮进行拍照。
A4:正常情况下,在已经连接tello wifi的情况下,运行程序后GUI会弹出视频流的播放窗口,并且可以正常使用snapshot按钮进行拍照,如果没有正常运行(实际效果参照https://www.youtube.com/watch?v=kcXN7CYgQ0g),
请考虑并检查以下几种情况:
a.你的PC设备是否已经正常连接到你的tello 的wifi;
b.检查你的PC的网络防火墙,可能防火墙会对视频流数据进行拦截;
c.进一步检查你的网络设置,因为tello是对PC的11111端口进行视频流数据的推送的,所以请检查你的网络设置中是否禁用了11111UDP端口,或者对11111端口的UDP数据进行了拦截。
如果有,请取消禁用;
d.极少数情况下,可能是PC发送的'streamon'指令发生丢包,没有被tello接收,针对这种情况,请尝试重新运行程序。
Q5:运行程序后,无法正常使用command panel中的按键响应功能。
A5:请确认鼠标不要点击command panel外的地方,如果点击了,请用鼠标重新点击command panel界面,再尝试按键响应功能。
Q6:tello EDU版本是否提供python 版本的多机编队例程?
A6:请参考https://github.com/TelloSDK/Multi-Tello-Formation,并阅读其README.md文档,此外,该例程内提供了可直接执行文件版本(.exe),
请参照Tello-Swarm中的userguide使用。
Q7:libh264decoder的作用是什么?
A7:libh264decoder是根据.\Tello-Python\Tello_Video\h264decoder文件夹中的h264decoder.cpp,h264decoder.hpp和h264decoder_python.cpp生成的
动态链接库,其作用是对tello向PC设备传输的h264编码格式的视频流进行解码。在windows上是以libh264decoder.pyd的形式体现,在linux和macos
上以libh264decoder.so的形式体现。
Windows/Linux/Mac上的libh264decoder动态链接库均提供在.\Tello-Python\Tello_Video\h264decoder路径下。
在Linux和Mac的一键脚本安装过程中,libh264decoder.so通过源码实时编译生成。
在Windows的一键脚本安装过程中,libh264decoder.pyd直接从\Tello_Video\h264decoder\Windows中复制,并被放置到.\Python27\Lib\site-packages中。
Q8:Tello EDU能否在station模式下对外传输视频流(对Tello EDU 使用了ap 'ssid' 'password'指令)?
A8:目前该功能并不被支持。
Q9:tello SDK接口所支持的UDP通信的频段和信道?
A9:目前只支持2.4GHz,支持的信道包括0-11。
如果有其他问题,欢迎提问或补充!