我是mac用户,我想使用youtube api允许openframeworks加载youtube的视频。所以我使用youtube-dl在终端下载视频。然后我发现我可以使用OFX中的System来执行终端命令。 我的问题是我可以在终端中执行youtube-dl它从youtube下载视频,但是当我将此命令写入OFX时,它只是说找不到youtube-dl:命令。 我的代码:
string link = https://www.youtube.com/watch?v=YPMeEfeBcPU;
string cmd = "youtube-dl " + link;
cout<<ofSystem(cmd.c_str());
实际上,当我将此命令转移到正常的终端命令(如
)时 string cmd = say Hello World!
这是有效的!
所以我想知道我该怎么做。
答案 0 :(得分:0)
尝试使用其完整路径调用<html>
<head>
<script src="javascripts/jquery-1.5.2.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var param = { salutation: 5+6, name: "Friend" };
$.post("greeting", param, function(result) {
console.log("param",param);
$("#greeting").html(result);
});
});
</script>
</head>
<body>
<h1>Sinatra Ajax Demo using jQuery</h1>
<div id="greeting">
<p>Hello, World</p>
</div>
</body>
</html>
命令。类似的东西:
youtube-dl
更多细节:
ofSystem()很可能在内部调用system(),它在sh中启动命令参数,而不是在终端中使用的bash中启动。
要验证这一点,请打开终端并呼叫sh。这将打开一个新的shell提示符(sh shell)。现在拨打string cmd = "/usr/local/bin/youtube-dl " + link;
,很可能也找不到它。