You've already forked FrameTour-RenderWorker
qsv、对接
This commit is contained in:
@ -1,9 +1,11 @@
|
||||
import json
|
||||
import os.path
|
||||
import time
|
||||
|
||||
from entity.ffmpeg import FfmpegTask
|
||||
import logging
|
||||
|
||||
from util import ffmpeg
|
||||
from util import ffmpeg, oss
|
||||
|
||||
logger = logging.getLogger('biz/ffmpeg')
|
||||
|
||||
@ -11,8 +13,10 @@ logger = logging.getLogger('biz/ffmpeg')
|
||||
def parse_ffmpeg_task(task_info, template_info):
|
||||
tasks = []
|
||||
# 中间片段
|
||||
task_params_str = task_info.get("taskParams", "{}")
|
||||
task_params = json.loads(task_params_str)
|
||||
for part in template_info.get("video_parts"):
|
||||
source = select_video_if_needed(part.get('source'), task_info, template_info)
|
||||
source = parse_video(part.get('source'), task_params, template_info)
|
||||
if not source:
|
||||
logger.warning("no video found for part: " + str(part))
|
||||
continue
|
||||
@ -37,17 +41,22 @@ def parse_ffmpeg_task(task_info, template_info):
|
||||
return task
|
||||
|
||||
|
||||
def select_video_if_needed(source, task_info, template_info):
|
||||
def parse_video(source, task_params, template_info):
|
||||
print(source)
|
||||
if source.startswith('PLACEHOLDER_'):
|
||||
placeholder_id = source.replace('PLACEHOLDER_', '')
|
||||
new_sources = task_info.get('user_videos', {}).get(placeholder_id, [])
|
||||
new_sources = task_params.get(placeholder_id, [])
|
||||
if type(new_sources) is list:
|
||||
if len(new_sources) == 0:
|
||||
logger.debug("no video found for placeholder: " + placeholder_id)
|
||||
return None
|
||||
else:
|
||||
# TODO: Random Pick / Policy Pick
|
||||
new_sources = new_sources[0]
|
||||
new_sources = new_sources[0].get("url")
|
||||
if new_sources.startswith("http"):
|
||||
_, source_name = os.path.split(new_sources)
|
||||
oss.download_from_oss(new_sources, source)
|
||||
return source_name
|
||||
return new_sources
|
||||
return os.path.join(template_info.get("local_path"), source)
|
||||
|
||||
|
Reference in New Issue
Block a user