GVKun编程网logo

如何在Windows中使用H264video编码器MFT对位图进行编码

10

以上就是给各位分享如何在Windows中使用H264video编码器MFT对位图进行编码,同时本文还将给你拓展AndroidStudio如何在Windows中使用megasdk、android–使用M

以上就是给各位分享如何在Windows中使用H264video编码器MFT对位图进行编码,同时本文还将给你拓展Android Studio如何在Windows中使用mega sdk、android – 使用MediaCodec和MTK Codec进行编码时选择H264配置文件、Android-ics-openvpn:如何在Windows机器上进行编译、Android6.0 dump h264/h265编码裸流(二)等相关知识,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何在Windows中使用H264video编码器MFT对位图进行编码

如何在Windows中使用H264video编码器MFT对位图进行编码

我的应用程序做从GDI或dxgi方法捕获帧的编码。 目前我正在做编码与帮助x264库。

AFAIK x264是基于软件的库,我想用GPU来编码,所以可以节省cpu周期,希望速度也会更快。

经过search,我find了一个正在做h264编码的H.264video编码器 MFT。

但几个问题都回答了我。

1)它比x264编码库快吗?

2)可以帮助这个MFT编码位图帧吗?

– 我只看到MFVideoFormat_I420,MFVideoFormat_IYUV,MFVideoFormat_NV12,MFVideoFormat_YUY2,MFVideoFormat_YV12支持这些格式

3)是硬件加速(是指使用cpu还是GPU)?

– 最初我的理解是使用GPU,但是在阅读这篇文章之后,我感到困惑MFT编码器(h264)cpu利用率高 。

4)H.264 Video Encoder MFT可以独立使用而不使用接收器,因为我必须在networking上发送数据?

5)有没有其他的select在Windows中?

这可能是一些非常愚蠢的问题,请随时编辑。

将string从EBCDIC转换为Unicode / UTF8

我应该使用哪种字符集来编码和解码8位值?

Windows上的文件是否具有编码属性?

Linux更新后在JVM中错误的文件编码

Java的Apache FileUtils的readFiletoString和writeStringToFile的问题

Media Foundation H.264视频编码器是软件编码器。 从我的[主观]经验来看,它比x264慢,也许更重要的是,x264提供了更广泛的设置,特别是当选择速度超过范围的模式。 无论哪种方式,库存MS编码器都不是硬件加速的。

但是,可能还有其他可用硬件加速H.264编码的MFT(通常与各自的硬件驱动程序一起安装)。 您可以通过枚举MFT来发现它们,也许最受欢迎的是英特尔快速同步视频(QSV)编码器。

HardwareVideoEncoderTransform应用程序进行枚举并为您提供相关的详细信息:

典型的输入是NV12,一些提供其他输入选择(例如32位RGB)。 如果您需要其他格式,则必须预先转换输入。

硬件支持的编码器cpu消耗低,其效率取决于硬件实现。 是的,您可以单独使用它们,完全独立使用,也可以使用DirectShow过滤器包含在普通的DirectShow管道中。

替代的H.264编码器通常是基于SDK的,或者是在DirectShow / MFT格式的这些SDK上进行封装,因为供应商将其实现方式打包为多媒体开发人员熟知的已知形式。

Android Studio如何在Windows中使用mega sdk

Android Studio如何在Windows中使用mega sdk

如何解决Android Studio如何在Windows中使用mega sdk?

我想在我的Android应用程序中添加对MEGA云的访问权限,我从https://github.com/meganz/sdk.git下载了示例。 在自述文件中说

Download the prebuilt libraries (`libmega.so`) along with its corresponding Java classes from [here](https://mega.nz/#!zktVFAyS!ZzvOYnU-I6cmKgc3_rA-UIJh98suyLAM6BPF7_57BoM).

但是文件不存在了。根据我的理解,所有示例和SDK都是为在Linux系统上开发而构建的,如果我拥有Windows,是否可以使用此SDK进行开发?有人做吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

android – 使用MediaCodec和MTK Codec进行编码时选择H264配置文件

android – 使用MediaCodec和MTK Codec进行编码时选择H264配置文件

我们有一款将视频编码为H264的Android应用.在所有以前尝试过的Android设备上,这会编码到我需要的Baseline配置文件.

在联想Yoga 10上,编解码器是OMX.MTK.VIDEO.ENCODER.AVC.这将视频编码为High Profile,这给接收设备带来了问题.

我正在使用MediaCodec.似乎没有办法设置要使用的配置文件.

有没有办法做到这一点?编解码器声称支持Baseline配置文件,但无法使用它.是否有针对此的编解码器特定参数?

最佳答案
您可以尝试将密钥配置文件添加到MediaFormat,值为1(OMX_VIDEO_AVCProfileBaseline).如果这样做,您可能还需要添加一个与您的分辨率匹配的级别值的键级别(使用OMX AVC级别常量中的值).

我不确定这个编解码器是否真的尊重请求的值,但它可能值得一试.

有关设置过程的示例,请参阅https://android.googlesource.com/platform/frameworks/av/+/6ade04174/media/libstagefright/ACodec.cpp中的setupAVCEncoderParameters函数.它在输入参数中查找配置文件键(从您提供的MediaFormat中复制),但如果存在,您还需要提供一个级别参数,以及使用的级别取决于您的分辨率.有关可用于参数的常量值,请参见https://android.googlesource.com/platform/frameworks/native/+/cde4b13a/include/media/openmax/OMX_Video.h.

但是在检查了配置文件和级别参数之后,无论设置什么,它似乎都会将配置文件覆盖到基线.因此,这些行已从您的设备中删除,或者编码器完全忽略h264type.eProfile字段.

如果某人的源树更接近设备上实际使用的源代码树,那么检查它会更好.

有关如何为您的分辨率选择合适级别的示例,请查看http://git.videolan.org/?p=x264.git;a=blob;f=encoder/set.c;h=1a40b71284中的x264_validate_levels(但传递给MediaFormat的级别需要使用OMX_VIDEO_AVCLEVELTYPE常量表示).

不确定这有什么帮助,但它至少值得一试.

Android-ics-openvpn:如何在Windows机器上进行编译

Android-ics-openvpn:如何在Windows机器上进行编译

我在这里:ics-openvpn上获得了最新的源代码,我想在Windows环境下对其进行编译.如在README.txt中所说:

Do cd main;./misc/build-native.(sh|bat) in the root directory of the
project. After that build the project using “gradle build” (Or use
Android Studio). The project is converted to gradle and building with
Eclipse is no longer supported.

但是文件build-native.bat的内容是:

@echo on
echo Currently broken, feel free to fix and send me a patch, see .sh file
exit 1

call ndk-build APP_API=all -j 8


cd libs
mkdir ..\assets
mkdir ..\build\

for /D %%f in (*) do (
    copy %%f\minivpn ..\assets\minivpn.%%f
    del %%f\libcrypto.so
    del %%f\libssl.so

    mkdir ..\build\native-libs\%%f\
    copy %%f\*.so  ..\build\native-libs\%%f\
)

cd ..

这意味着作者注意到该bat文件包含错误,因此无法构建.我尝试删除前三行并再次运行,但遇到以下错误:

main//jni/Android.mk:11: lzo/Android.mk: no such file or directory
main/jni/android.mk : 12: snappy/Android.mk : no such file or
directory …

因此,我的问题是:我们可以在Windows上构建该库(因为作者已通知此构建文件错误),如果可以,如何?

谢谢 :)

解决方法:

就像文本说的那样.坏了,因为我不在Windows上开发.您可以查看build-native.sh修复Windows的路径等.编译问题并不难,但必须花10分钟时间修复它.

Android6.0 dump h264/h265编码裸流(二)

Android6.0 dump h264/h265编码裸流(二)

1.dump h264/h265的NALU(VPS/SPS/PPS)与数据
路径:frameworks/av/media/libstagefright/MPEG4Writer.cpp

<1>.dump vps/sps/pps to /data/dump_data.h264 file
status_t MPEG4Writer::Track::makeHEVCCodecSpecificData(const uint8_t *data, size_t size) {                                                                                                                                                                                                                                                                                                                                                                         
  ALOGE("makeHEVCCodecSpecificData [ size = %zu ]", size);                                                                                                                                            
  if (mCodecSpecificData != NULL) {                                                                                                             

关于如何在Windows中使用H264video编码器MFT对位图进行编码的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于Android Studio如何在Windows中使用mega sdk、android – 使用MediaCodec和MTK Codec进行编码时选择H264配置文件、Android-ics-openvpn:如何在Windows机器上进行编译、Android6.0 dump h264/h265编码裸流(二)等相关知识的信息别忘了在本站进行查找喔。

本文标签: