小编Dre*_*der的帖子

如何挂载 AOSP .img 文件?

我 通过构建AOSP生成*.img

ramdisk.img、boot.img等。

我想挂载这个文件。我正在使用Ubuntu。

android android-source

3
推荐指数
1
解决办法
1万
查看次数

如何使用mediacodec在android中使用软件编解码器

我希望使用mediacodec软件编解码器将yuv数据编码为h264.

我使用谷歌软件编码器OMX.google.h264.encoder

当我使用硬件编码器[OMX.qcom.video.encoder.avc]那时它工作,但当我使用软件编码器[OMX.google.h264.encoder]它不编码file.it将给出错误[见日志].

什么是我无法识别的问题.

资源 :

mediaCodec = MediaCodec.createByCodecName("OMX.google.h264.encoder");
    //mediaCodec = MediaCodec.createByCodecName(codecInfo.getName());
    Log.i(TAG,"codec name : "+ mediaCodec.getName());
    int mBitrate  = (int) ((MainActivity.mHeight * MainActivity.mWidth * MainActivity.frameRate)*2*0.07);
    MediaFormat mediaFormat = MediaFormat.createVideoFormat("video/avc",MainActivity.mWidth,MainActivity.mHeight);
    mediaFormat.setInteger(MediaFormat.KEY_BIT_RATE,mBitrate);
    mediaFormat.setInteger(MediaFormat.KEY_FRAME_RATE, MainActivity.frameRate);
    //   mediaFormat.setInteger(MediaFormat.KEY_MAX_INPUT_SIZE, 320*240);
    mediaFormat.setInteger(MediaFormat.KEY_COLOR_FORMAT,colorFormat);
    //mediaFormat.setInteger(MediaFormat.KEY_COLOR_FORMAT,MediaCodecInfo.CodecProfileLevel.AVCLevel12);
    mediaFormat.setInteger(MediaFormat.KEY_I_FRAME_INTERVAL,1);
    try{
        mediaCodec.configure(mediaFormat, null, null, MediaCodec.CONFIGURE_FLAG_ENCODE);
        mediaCodec.start();
        Log.i(TAG,"H264 Encoder init success");


    }catch(IllegalArgumentException e)
    {
        e.printStackTrace();
    }catch (IllegalStateException e) {
        e.printStackTrace();
    }catch (Exception e) { 
        e.printStackTrace();// TODO: handle exception
    }
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个错误.

记录:

I/H264Encoder(7772): outputStream initialized
I/OMXClient(7772): Using client-side OMX mux.
I/H264Encoder(7772): found …
Run Code Online (Sandbox Code Playgroud)

android mediacodec

2
推荐指数
1
解决办法
9526
查看次数

标签 统计

android ×2

android-source ×1

mediacodec ×1