如何在Android中使用FFmpeg(v 4.0)HwAccell

时间:2018-11-21 01:46:19

标签: android ffmpeg

我正在制作一个在Android上使用FFmpeg来显示屏幕的应用程序。

我有几个问题要问你。

std::vector <AVHWDeviceType> GetSupportHwDeviceType ()
{
    unsigned int idx {};
    std::vector <AVHWDeviceType> hwDevTypes;

    AVHWDeviceType hwDevType = AVHWDeviceType::AV_HWDEVICE_TYPE_NONE;
    while ((hwDevType = av_hwdevice_iterate_types (hwDevType)) ! = AVHWDeviceType::AV_HWDEVICE_TYPE_NONE)
    {
        __android_log_print (ANDROID_LOG_DEBUG, __func__, "[Index% d]", idx ++);
        __android_log_print (ANDROID_LOG_DEBUG, __func__,
                        "[Support Device Name% s]", av_hwdevice_get_type_name (hwDevType));

        hwDevTypes.push_back (hwDevType);
    }

    return hwDevTypes;
}

我想将硬件加速与上述功能一起使用,结果我找不到任何类型。

https://trac.ffmpeg.org/wiki/HWAccelIntro,它表示Android可以使用MediaCodec。为什么我不能使用GetSupportHwDeviceType()从Android NDK中检索任何类型?

在为Android构建FFmpeg时使用的Configure参数。

--disable-asm
--enable-cross-comile
--disable-static
--disable-programs
--disable-doc
--enable-shared
--enable-protocol=file
--enable-pic
--enable-small
--enable-mediacodec
--enable-jni
--enable-decoder=h264_mediacodec
--enable-opengl

/* The argument was not supported by ./configure --list-hwaccel in FFmpeg v4.0.3. */

--enable-hwaccel=h264_mediacodec 

0 个答案:

没有答案