草庐IT

读码器

全部标签

android - 解码器的输出表面如何传递到编码器的输入表面?

我正在尝试了解表面对表面方法如何与MediaCodec配合使用。在仅使用ByteBuffer的方法中,解码后的数据放在OutputBuffers中。这种非编码数据可以手动处理,然后传递给编码器的InputBuffers。如果我们看一个来自Android的例子MediaCodecCTS使用表面到表面的方法在解码器和编码器之间传递数据,我们将解码器配置为将解码后的数据输出到称为outputSurface的表面上,并将编码器配置为在称为inputSurface的表面上接收数据。在文档中,createInputSurface和这个表面在编码器配置中的用法是这样描述的:createInputSu

android - 在 HW 模式下创建 OMXCodec 编码器

我正在尝试在AndroidICS4.0.4上实现硬件加速的H264视频编码。由于MediaCodec类不可用,我必须使用stagefrightAPI。但是当我放置HardwareCodecsOnly标志时,OMXCodec::Create总是返回NULL。如果我使用标志kHardwareCodecsOnly调用OMXCodec::findMatchingCodecs(),我得到以下列表:-OMX.TI.DUCATI1.VIDEO.H264E-OMX.qcom.7x30.video.encoder.avc-OMX.qcom.video.encoder.avc-OMX.TI.Video.e

android - Libstreaming 错误(解码器缓冲区不够大,解码器没有解码任何东西)

我正在尝试使用此处的libstreaming库:https://github.com/fyhertz/libstreaming我正在遵循示例2:https://github.com/fyhertz/libstreaming-examples尝试在GalaxyNexus上使用这个流媒体库。如果我使用小分辨率(newVideoQuality(128,96,20,500000)),我会收到解码器未解码任何内容的错误:06-0919:59:31.531:D/libEGL(8198):loaded/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so06-091

android - 如何获取 MediaCodec 编码器的步幅和 Y 平面对齐值

关于这个主题有一些相关的问题和讨论:Mediacodecandcamera,colorspaceincorrectGettingQualCommencoderstoworkviaMediaCodecAPIhttps://groups.google.com/d/msg/android-platform/awaNwgb6EbY/a-YiIOwaL0QJhttps://code.google.com/p/android/issues/detail?id=37769我正在将相机预览帧(NV21转换为NV12)提供给MediaCodec编码器(NV12又名COLOR_FormatYUV420Se

android - 使用 MediaCodec 创建 AAC 编码器时出错

问题很简单,但是我没有任何解决的线索:我写了一行代码在我的Nexus4(Android4.4.2)上创建一个AAC编码器MediaCodeccodec=MediaCodec.createEncoderByType("audio/mp4a-latm");保存在“codec”中的返回值不为null,但我在Logcat中收到红色错误信息:03-2015:25:08.985:E/OMXMaster(24517):Acomponentofname'OMX.qcom.audio.decoder.aac'alreadyexists,ignoringthisone.我也试过另一条线:MediaCode

android - 如何播放 MediaCodec 编码器生成的原始 h264?

我对MediaCodec(以及一般的视频编码/解码)有点陌生,所以如果我在这里说的有错,请纠正我。我想用VLC/ffplay播放MediaCodec的原始h264输出。我需要这个来播放,因为我的最终目标是将一些实时视频流式传输到计算机,而MediaMuxer只在磁盘上生成一个文件,而不是我可以以(非常)低延迟流式传输到桌面的文件。(我对其他解决方案持开放态度,但我还没有找到适合延迟要求的任何其他解决方案)这是我使用的编码视频并将其写入文件的代码:(它基于找到的MediaCodec示例here,仅删除了MediaMuxer部分)packagecom.jackos2500.droidtop

android - 找不到 Android API 26 平台的地理编码器源

我刚刚重新打开了我的应用程序,在可能中断编码一个月之后才发现它无法正常工作。我有将FireBase数据库中的标记显示到map上的代码,但现在无法正常工作。进入Geocoder.class,它说没有androidapi26的来源,点击下载没有任何作用。我尝试通过SDK管理器中的向导“重置”我的api源,但无济于事。不确定该怎么做。 最佳答案 虽然没有API26源代码,但它们应该很快就会可用,因为AndroidO将于下周发布。现在虽然我在Reddit上找到了以下解决方案这使您能够使用API25的源代码。我认为您需要执行以下命令。cdSD

android - Android 手机可以使用 iLBC 编解码器解码和播放 *.caf 文件吗?

如何获取通过iPhone录制的音频文件以在Android中播放。 最佳答案 我没有在Androidsupportedmediaformats的解码器部分看到iLBC编解码器查看iPhone支持的音频格式列表:iPhoneaudioformats,看起来如果您只是使用iPhone=>Android,那么AAC或PCM是您在iPhone上编码、在Android上解码的最佳选择。 关于android-Android手机可以使用iLBC编解码器解码和播放*.caf文件吗?,我们在StackOve

android - 如何或在何处指定 omx 解码器支持隧道

BSP支持Hw加速编解码器的隧道。Android使用feature-tunneled-playback检查是否支持隧道。如果是,它将尝试配置隧道。如何实现或指定android扩展OMX.google.android.index.configureVideoTunnelModeIt只是说对于隧道播放支持,应该支持扩展。如何公开此扩展,以便android假定支持隧道? 最佳答案 很可能你需要设置在media_codecs.xml中所需的编解码器 关于android-如何或在何处指定omx解码

android - 如何更改 pjsip android 中的编解码器优先级

我正在尝试更改pjsipandroid中使用的编解码器的优先级。我能够获得编解码器优先级,但在更改编解码器优先级后,它没有反射(reflect)回来。if(ep!=null){try{CodecInfoVectorcodecInfoVector=ep.codecEnum();if(!codecInfoVector.isEmpty()){System.out.println("CodecsEnabled!!");System.out.println("Numberofcodecsenablednow:"+codecInfoVector.size());for(inti=0;i如何解决这个