gpt4 book ai didi

android - 如何确定 Android MediaFormat.KEY_SAMPLE_RATE 的值

转载 作者:太空狗 更新时间:2023-10-29 16:38:41 25 4
gpt4 key购买 nike

我正在尝试编码

音频数据:

  • 采样率 = 44100 赫兹
  • 单 channel
  • PCM_16BIT

通过 MediaCodec 到一些 AAC

编解码器配置有点困惑,但到目前为止我至少没有出错。

    codec = MediaCodec.createEncoderByType("audio/mp4a-latm");
MediaFormat format = new MediaFormat();
format.setString(MediaFormat.KEY_MIME, "audio/mp4a-latm");
format.setInteger(MediaFormat.KEY_CHANNEL_COUNT, 1);
format.setInteger(MediaFormat.KEY_SAMPLE_RATE, 44100);
format.setInteger(MediaFormat.KEY_BIT_RATE, 1*44100*16);
format.setInteger(MediaFormat.KEY_AAC_PROFILE, MediaCodecInfo.CodecProfileLevel.AACObjectHE);
codec.configure(format, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE);

这只是我的猜测,如果您发现错误,请告诉我。

KEY_CHANNEL_COUNT = 1对应音源属性:Monoral Channel = 1,

KEY_SAMPLE_RATE = 44100 到音频源属性:Sample rate = 44100 Hz,

并且由于音频源属性是 PCM_16BIT,KEY_BIT_RATE 应该是 1*44100*16

我说的对吗?我试图找到文档,但无法在网上找到。谢谢。

最佳答案

对于编码器,KEY_BIT_RATE 指的是所需的输出 比特率,而不是输入 比特率。官方文档是here ,但描述有点简洁。

中旅EncoderTest编码音频。内容不多,但具有基本要素。

关于android - 如何确定 Android MediaFormat.KEY_SAMPLE_RATE 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21805627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com