0

1.我在iOS手机端app上做了录音并上传音频到7牛的功能。但在上传时出现了格式不匹配的问题。 application/octet-stream
2。具体代码如下:

#define kRecordAudioFile @"myRecord.aac"

/**
 *  获得录音机对象
 *
 *  @return 录音机对象
 */
- (AVAudioRecorder *)audioRecorder {
    if (!_audioRecorder) {
        [self setAudioSession];
        //创建录音文件保存路径
        NSURL *url=[self getSavePath];
        //创建录音格式设置
        NSDictionary *setting=[self getAudioSetting];
        //创建录音机
        NSError *error=nil;
        _audioRecorder=[[AVAudioRecorder alloc]initWithURL:url settings:setting error:&error];
        _audioRecorder.delegate= self;
        _audioRecorder.meteringEnabled=YES;//如果要监控声波则必须设置为YES
        if (error) {
            NSLog(@"创建录音机对象时发生错误,错误信息:%@",error.localizedDescription);
            return nil;
        }
    }
    return _audioRecorder;
}

/**
 *  取得录音文件保存路径
 *
 *  @return 录音文件路径
 */
- (NSURL *)getSavePath {
    
    //  在Documents目录下创建一个名为FileData的文件夹
    NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject] stringByAppendingPathComponent:@"AudioData"];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    BOOL isDir = FALSE;
    BOOL isDirExist = [fileManager fileExistsAtPath:path isDirectory:&isDir];
    if(!(isDirExist && isDir)) {
        BOOL bCreateDir = [fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];
        if(!bCreateDir){
            NSLog(@"创建文件夹失败!");
        }
        NSLog(@"创建文件夹成功,文件路径%@",path);
    }
    path = [path stringByAppendingPathComponent:kRecordAudioFile];
    NSLog(@"file path:%@",path);
    NSURL *url=[NSURL fileURLWithPath:path];
    
    return url;
}

3.我做了关于创建录音格式设置和保存类型.aac 和其他格式的切换,但在七牛云上始终报
application/octet-stream。
除了使用mp4格式能够解析出来,但是是Video。这不是我想要的。
4。求大神解答 谢谢🙏

2个回答

0

您好,请问您在生成token的时候是否设置文件限制策略: "mimeLimit":"<MimeLimit string>",详情文档:https://developer.qiniu.com/k...

0

上传需要 标明多媒体格式,不带任何后缀,应该不识别吧

撰写答案