小编use*_*351的帖子

指定的样本格式 s16 无效或不受支持

我正在使用 ffmpeg 将 PCM 数据编码为 AAC 格式:以下是我设置上下文对象的代码:

-(id)encode:(short*)data{
    AVCodecContext  *audioCodec;
    AVCodec *codec;

    avcodec_register_all();

    //Set up audio encoder
    codec = avcodec_find_encoder(AV_CODEC_ID_AAC);
    if (codec == NULL){
        NSLog(@"no codec");
     }
    audioCodec = avcodec_alloc_context3(codec);
    audioCodec->strict_std_compliance = -2;
    audioCodec->bit_rate = 64000;
    audioCodec->sample_fmt = AV_SAMPLE_FMT_S16;
    audioCodec->sample_rate = 8000;
    audioCodec->channels = 2;
    audioCodec->profile = FF_PROFILE_AAC_MAIN;
    audioCodec->time_base = (AVRational){1, 8000};
    audioCodec->codec_type = 1;
    if (avcodec_open2(audioCodec, codec, NULL)) {
        NSLog(@"could not open codec");

    }
     return @"NO";
}
Run Code Online (Sandbox Code Playgroud)

我总是收到错误日志:aac @ 0x151cda00] 指定的示例格式 s16 无效或不受支持

如果我不提供任何示例格式,我会得到相同的日志:aac @ 0x151cda00] Specified sample format …

encoding ffmpeg aac ios

4
推荐指数
2
解决办法
4865
查看次数

标签 统计

aac ×1

encoding ×1

ffmpeg ×1

ios ×1