根据提供的错误信息,"AWS MediaConvert抛出了[探测/打开失败:[未找到适用于容器的解析器]]",这个错误通常是由于AWS MediaConvert无法找到适用于所选容器的解析器所引起的。以下是一些可能的解决方法。
检查输入文件的容器格式:首先,确保输入文件使用的容器格式是AWS MediaConvert所支持的。AWS MediaConvert支持的容器格式包括:MP4、MOV、MPEG-2、AVI、FLV、MKV等。如果输入文件使用的是不支持的容器格式,可以尝试将文件转换为支持的容器格式后再进行转码。
检查输入文件的编码格式:除了容器格式,AWS MediaConvert还需要正确的编码格式。确保输入文件使用的编码格式是AWS MediaConvert所支持的。AWS MediaConvert支持的编码格式包括:H.264、H.265、MPEG-2、ProRes等。如果输入文件使用的是不支持的编码格式,可以尝试将文件转换为支持的编码格式后再进行转码。
检查AWS MediaConvert的配置:检查AWS MediaConvert的作业配置,确保已正确配置输入文件的容器格式和编码格式。确保作业配置中指定了正确的容器和编码格式。
以下是一个使用AWS SDK for Python(Boto3)来创建AWS MediaConvert作业的示例代码:
import boto3
def create_mediaconvert_job():
mediaconvert = boto3.client('mediaconvert', region_name='your-region')
job_settings = {
'Input': {
'FileInput': 's3://your-bucket/your-input-file.mp4'
},
'Output': {
'OutputSettings': {
'ContainerSettings': {
'Container': 'MP4',
'Mp4Settings': {
'CodecSpecification': 'H.264'
}
}
}
}
}
response = mediaconvert.create_job(JobTemplate='your-job-template', Settings=job_settings)
return response['Job']['Id']
在上述代码中,需要将your-region
替换为您的AWS区域,your-bucket
替换为您的S3存储桶,your-input-file.mp4
替换为您的输入文件路径,your-job-template
替换为您的AWS MediaConvert作业模板。
请根据您的实际情况进行适当的更改,并确保输入文件的容器格式和编码格式是AWS MediaConvert所支持的。
如果上述解决方法无法解决问题,建议查看AWS MediaConvert的错误日志以获取更详细的错误信息,并根据错误信息进行进一步的排查和调试。