我一直在阅读文档和搜索,但似乎无法找到一个直接的答案:
你能取消已经执行的任务吗?(在任务开始时,需要一段时间,需要取消一半)
我在Celery FAQ的文档中找到了这个
>>> result = add.apply_async(args=[2, 2], countdown=120)
>>> result.revoke()
Run Code Online (Sandbox Code Playgroud)
但我不清楚这是否会取消排队的任务,或者它是否会杀死一个正在运行的进程.感谢您可以放下任何光线!
我有2个视频:HEADSHOT.MOV和SCREEN.MOV.它们都是大文件,我希望缩小(大小,比特率等)并将这两个并排放置在同一个非常宽的视频帧中.最终的结果是,当您播放output_video.mp4时,您将拥有一个非常宽的帧,两个视频同步并以相同的速率播放.
这是我想要做的合成不正确的版本:
ffmpeg -i HEADSHOT.MOV -t 00:02:00 -acodec libfaac -ab 64k -vcodec libx264 -r 30 -pass 1 -s 374x210 -vf "movie=SCREEN.MOV [small]; [in][small] -an -r 30 -pass 1 -s 374x210 overlay=10:10 -t 00:02:00 [out]" -threads 0 output_movie.mp4
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我也尝试将测试电影的持续时间设置为2分钟,这引出了另一个问题:处理2部不同长度的电影的最佳方式是什么(如果它们很接近)?
到目前为止我发现有用的资源是:
http://ffmpeg.org/ffmpeg.html#overlay-1
非常感谢任何帮助/建议.我在使用FFMPEG语法时遇到问题!谢谢!
这是我上一个问题的后续问题: 用Celery取消已执行的任务?
celery.task.control.revoke({task_id}, terminate=True)
Run Code Online (Sandbox Code Playgroud)
确实会杀死我的工作人员.我现在遇到的问题是我的任务正在运行子任务,当任务被撤销时,子进程不会死亡.
dmarkey的这篇文章 http://dmarkey.com/wordpress/2011/09/07/killing-child-processes-of-celery-tasks-on-a-timeout/ 是我见过的最接近我想要的东西做,除了我不想在超时时杀死,而是当我用task_id撤销()时.
似乎我所拥有的只是(String)task_id,无论如何都要杀死这些子进程?感谢您的帮助 - 我没有像我想的那样有这么多的经验,浏览文档是一个挑战!
我逐行解析一些文本,如果给定的行以任何标点符号或数字结尾,我希望布尔值返回true.
正则表达式是最好的方法还是应该迭代一组字符来匹配?阵列的感觉会太大而且成本太高......
如果这确实是一个好方法,有人可以帮助我使用正则表达式吗?
function ends_with_punctuation_or_num($string){
// check if the string ends with punctuation or a number
if (/* TODO */)
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud) 我正在努力快速学习HDS和HLS实时流媒体背后的一些基础技术.
我在EC2中的Amazon WebServices实例上设置了Wowza Media服务器3.5,并通过CloudFront分发.我做了我的第一次直播活动,并且正在观察我的服务器负载越来越高.我想知道是否有人可以帮助我理解HDS/HLS直播(和nDVR ......)的一些基础:
这就是我的问题所在:如何为视频内容提供数据(这是我的理解,请让我直截了当!): - 当观众请求播放列表或主播文件时,他们会获得XML,将播放器指向一大块视频/ audio(DVR应用程序实例中的m4fa和m4fv?)接下来需要播放的数据.由于此数据也通过端口80传递,因此它也被缓存.
如果以上陈述是正确的,那么对于HDS和HLS的优化,以下内容是否有意义:
案例1:DVR服务:我在CloudFront中设置缓存规则,如下所示:
案例2:没有DVR服务(这是更好的优化方式吗?)
感谢您提供的任何见解!
amazon-web-services live-streaming http-live-streaming wowza amazon-cloudfront
我正在使用一个非常简单的 Node/Mongo/Express 设置,并尝试填充引用的文档。考虑我的“课程”模式,其中包含“周”:
// define the schema for our user model
var courseSchema = mongoose.Schema({
teachers : { type: [String], required: true },
description : { type: String },
previous_course : { type: Schema.Types.ObjectId, ref: 'Course'},
next_course : { type: Schema.Types.ObjectId, ref: 'Course'},
weeks : { type: [Schema.Types.ObjectId], ref: 'Week'},
title : { type: String }
});
// create the model for Course and expose it to our app
module.exports = mongoose.model('Course', courseSchema);
Run Code Online (Sandbox Code Playgroud)
我特别想填充我的几周数组(尽管当我将模式更改为一周时,populate()仍然不起作用)。
这是我一周的计划(一门课程有多个):
var weekSchema = …Run Code Online (Sandbox Code Playgroud)