其余亚马逊ios sdk调用亚马逊弹性代码转换器

我看了看文档,我没有看到对ios的弹性转码sdk的支持。 我的使用案例是将文件“videoFile.mp4”从mp4格式的“bucket1”转换为transcode,并将文件“videoFile.webm”再次移回“bucket1”。

我怎样才能使用亚马逊sdk(代码示例),使其他电话做这个任务?

更新:我能够得到的东西去,但我有另一个问题。 但是当我打电话给https://elastictranscoder.us-west-2.amazonaws.com/2014-06-16/jobs时,我收到了这个消息

<InvalidSignatureException> <Message>Credential should be scoped to correct service: 'elastictranscoder'. </Message> </InvalidSignatureException> 

下面的代码是我试过的。

  AmazonCredentials *credentials = [[AmazonCredentials alloc] init]; credentials.secretKey = SECRET_KEY; credentials.accessKey = ACCESS_KEY_ID; NSMutableDictionary *parameter = [NSMutableDictionary dictionaryWithObjectsAndKeys: // dateString1, @"x-amz-date", @"elastictranscoder.us-west-2.amazonaws.com:443",@"host", @"application/x-amz-json-1.0", @"content-type", length, @"content-length", nil]; AmazonServiceRequest *request = [[AmazonServiceRequest alloc] init]; request.urlRequest.HTTPMethod = @"POST"; request.regionName = @"us-west-2"; request.serviceName = @"ets"; NSLog(@"***********************************************************************************************"); NSLog(@"***********************************************************************************************"); [AmazonAuthUtils signRequestV4:request headers:parameter payload:jsonStringData credentials:credentials]; NSLog(@"***********************************************************************************************"); NSLog(@"***********************************************************************************************"); NSMutableURLRequest *mutableRequest = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"https://elastictranscoder.us-west-2.amazonaws.com"]]; [mutableRequest setHTTPMethod:@"POST"]; for(id key in parameter){ [mutableRequest setValue:[parameter objectForKey:key] forHTTPHeaderField:key]; } NSLog([request.urlRequest valueForHTTPHeaderField:@"x-amz-date"]); NSLog([request.urlRequest valueForHTTPHeaderField:@"Authorization"]); // add the Authorization signature and the date [mutableRequest setValue:[request.urlRequest valueForHTTPHeaderField:@"x-amz-date"] forHTTPHeaderField:@"x-amz-date"]; [mutableRequest setValue:[request.urlRequest valueForHTTPHeaderField:@"Authorization"] forHTTPHeaderField:@"Authorization"]; [mutableRequest setHTTPBody:[jsonStringData dataUsingEncoding:NSUTF8StringEncoding]]; [[NSURLConnection alloc] initWithRequest:mutableRequest delegate:self]; 

通常,您应该从AWSpipe理控制台设置pipe道,因为它是一次性设置。 从移动设备创buildpipe道是没有意义的。 从移动设备上,您只需将videofile upload到您的Amazon S3存储桶。 后端服务器(例如,Amazon EC2和AWS Elastic Beanstalk都是不错的select)应该监视存储桶并为Elastic Transcoder创build作业。 AWS刚刚宣布了AWS Lambda,您可能需要检查它。 一旦工作完成,您可以使用Amazon SNS获得通知。