ffmpeg在python使用libardrone中的应用
最近我尝试使用AR.drone 2.0进行基于视觉的控制。我在第一步遇到了一个问题,那就是将从无人机上看到的视频导入我的电脑。我在网上搜索,发现有一个名为的库。我试图使用它,但当我做的第一步是初始化。我写ffmpeg在python使用libardrone中的应用,python,c,django,python-2.7,ffmpeg,Python,C,Django,Python 2.7,Ffmpeg,最近我尝试使用AR.drone 2.0进行基于视觉的控制。我在第一步遇到了一个问题,那就是将从无人机上看到的视频导入我的电脑。我在网上搜索,发现有一个名为的库。我试图使用它,但当我做的第一步是初始化。我写 drone = libardrone.libardrone.ARDrone(True) 问题出现在ffmpeg的安装过程中。实际上,我在路径中安装并设置了ffmpeg\bin,但我不知道为什么它总是跳出这个错误 这个错误原来是错误的 回溯(最近一次呼叫最后一次): 调试这一点的最简单方法是使
drone = libardrone.libardrone.ARDrone(True)
问题出现在ffmpeg的安装过程中。实际上,我在路径中安装并设置了ffmpeg\bin,但我不知道为什么它总是跳出这个错误
这个错误原来是错误的
回溯(最近一次呼叫最后一次):
调试这一点的最简单方法是使用该代码(您在“which”函数中找到)创建一个脚本文件,并根据ffmpeg可执行文件的路径运行它。您可能有一些用户权限问题,或者路径格式不正确 显然,无法找到或访问可执行文件
File "C:\Python27\dronetest.py", line 7, in <module>
drone=libardrone.ARDrone(is_ar_drone_2=True,hd=True)
File "C:\Python27\lib\site-packages\libardrone\libardrone.py", line 126, in __init__
self.network_process = arnetwork.ARDroneNetworkProcess(com_pipe_other, is_ar_drone_2, self)
File "C:\Python27\lib\site-packages\libardrone\arnetwork.py", line 45, in __init__
self.ar2video = ar2video.ARVideo2(self._drone, libardrone.DEBUG)
File "C:\Python27\lib\site-packages\libardrone\ar2video.py", line 37, in __init__
self.h264 = h264decoder.H264Decoder(self, drone.image_shape)
File "C:\Python27\lib\site-packages\libardrone\h264decoder.py", line 82, in __init__
raise Exception("You need to install ffmpeg to be able to run ardrone")
Exception: You need to install ffmpeg to be able to run ardrone
if (H264Decoder.which('ffmpeg') is None):
raise Exception("You need to install ffmpeg to be able to run ardrone")
....
def which(program):
def is_exe(fpath):
return os.path.isfile(fpath) and os.access(fpath, os.X_OK)
fpath, fname = os.path.split(program)
if fpath:
if is_exe(program):
return program
else:
for path in os.environ["PATH"].split(os.pathsep):
path = path.strip('"')
exe_file = os.path.join(path, program)
if is_exe(exe_file):
return exe_file
return None