以下代码用于配置AAC编码器:
mfAACEncoder = new MediaFormat();
mfAACEncoder.setString(MediaFormat.KEY_MIME, "audio/mp4a-latm");
mfAACEncoder.setInteger(MediaFormat.KEY_CHANNEL_COUNT, 1);
mfAACEncoder.setInteger(MediaFormat.KEY_SAMPLE_RATE, iClockRateAudio);
mfAACEncoder.setInteger(MediaFormat.KEY_BIT_RATE, 64 * 1024);//AAC-HE 64kbps
mfAACEncoder.setInteger(MediaFormat.KEY_AAC_PROFILE, MediaCodecInfo.CodecProfileLevel.AACObjectLC);
//https://stackoverflow.com/questions/21284874/illegal-state-exception-when-calling-mediacodec-configure
mfAACEncoder.setInteger(MediaFormat.KEY_MAX_INPUT_SIZE, 0);
mcAACEncoder = MediaCodec.createDecoderByType("audio/mp4a-latm");
mcAACEncoder.configure(mfAACEncoder, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE);
McAACEncoder.configure()在logcat中生成以下内容:
06-22 11:13:09.919 4203-4666/net.mydomain.myapp I/MediaCodec: Found 0 pieces of codec specific data.
06-22 11:13:09.919 4203-4666/net.mydomain.myapp D/ACodec: onConfigureComponent
06-22 11:13:09.919 4203-4666/net.mydomain.myapp E/OMXNodeInstance: setParameter(1:google.aac.decoder, ParamStandardComponentRole(0x1000017)) ERROR: Undefined(0x80001001)
06-22 11:13:09.920 4203-4666/net.mydomain.myapp W/ACodec: [OMX.google.aac.decoder] Failed to set standard component role 'audio_encoder.aac'.
06-22 11:13:09.920 4203-4666/net.mydomain.myapp E/ACodec: setComponentRole err 80000000
06-22 11:13:09.920 4203-4666/net.mydomain.myapp E/ACodec: [OMX.google.aac.decoder] configureCodec returning error 80000000
06-22 11:13:09.920 4203-4666/net.mydomain.myapp E/ACodec: signalError(omxError 0x80001001, internalError -2147483648)
06-22 11:13:09.920 4203-4666/net.mydomain.myapp E/MediaCodec: Codec reported err 0x80001001, actionCode 0, while in state 3
06-22 11:13:09.933 4203-4632/net.mydomain.myapp D/ACodec: [OMX.MTK.VIDEO.DECODER.AVC] onOutputBufferDrained ID 0xb4031220
06-22 11:13:09.933 4203-4632/net.mydomain.myapp D/ACodec: queue NativeWindow
06-22 11:13:09.941 4203-4665/net.mydomain.myapp E/MediaCodec: configure failed with err 0x80001001, resetting...
有人能提供一个如何补救的建议吗?
如代码所示,该线程的解决方案已经实现。
您的问题在于:
mcAACEncoder = MediaCodec.createDecoderByType("audio/mp4a-latm");
mcAACEncoder.configure(mfAACEncoder, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE);
您希望将其用作编码器,但实际上您创建了解码器组件,但尝试在编码器角色中使用它。要解决此问题,请将第一行改为:
mcAACEncoder = MediaCodec.createEncoderByType("audio/mp4a-latm");
标准设置 建立经由基地台与网络联机的网络设定,并保存至PSP™主机。最多可保存10组设定。 网络的设定方法会因您使用之环境而异。以下仅说明标准的设定范例。 1. 确认无线基地台的设定是否已经完成。 确认在PSP™主机的附近,是否设置了已与网络联机的无线基地台。无线基地台的设定通常需使用计算机进行。详情请询问设置无线基地台的人员。 2. 进入(设定)后,选择(网络设定)。 3. 选择[Infrast
您可通过点击侧边栏角色栏进入角色管理页面。 添加角色 除系统提供角色之外,您可根据企业实际情况自定义角色。点击“添加角色”进行设置:•输入角色名称(必填) •输入角色说明(选填) •勾选角色功能权限(审批、单据为默认权限,不可删除) •勾选角色管理范围(项目或部门) 修改系统角色 主管需要您在部门模块或项目模块设置部门主管或项目主管。具体请详见【通过部门、项目管理员工】
我的项目在eclipse中运行得很好,但当我在cmd中运行该项目的jar时,我得到错误似乎我的FXML没有正确加载。我知道这个问题被问了很多次,但没有一个能解决我的问题。我试着用 但我还是有错误。 这是我的项目的结构 在Eclipse中运行的方法:
问题内容: 我想在禁用缓存功能的情况下使用Firefox /量角器运行测试。(实际上,我正在尝试阻止304个HTTP响应)。 有多种方法可以做到这一点: 通过删除Etag标头从后端禁用缓存->我无法修改后端 从前端删除Etag标头->我试过了,没有用 从firefox禁用缓存:我只需要将标志设置为false 手动工作。我只收到200条回复,非常好。我希望能够通过量角器配置来设置此标志。经过一番搜索
问题内容: 当选择menuItem时,尝试关闭当前场景并打开另一个场景时出现问题。我的主要阶段编码如下: 执行该程序后,它将转到cartHomePage.fxml。选择菜单项后,我可以从那里选择创建产品或创建类别。这是我的动作事件: 但是,我只能切换一次舞台。例如,我的默认页面是cartHomePage.fxml。运行程序时,首先要创建产品阶段。在那之后,我不能再去任何地方了。错误消息是: 我关上
我的项目在eclipse中正常运行,但当我创建该项目的jar文件并试图通过cmd运行它时,它显示“Location is not set”错误。 我的项目结构是: 方法是(在eclipse中运行):