Libstagefrighthw.so and libOMX_Core.so for HiKey960


#1

How can I get the files for HiKey960 board

vendor/linaro/hikey960/hisilicon/proprietary/libOMX.hisi.video.decoder.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libOMX.hisi.video.decoder.so
vendor/linaro/hikey960/hisilicon/proprietary/libOMX.hisi.vdec.core.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libOMX.hisi.vdec.core.so
vendor/linaro/hikey960/hisilicon/proprietary/libOMX_Core.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libOMX_Core.so
vendor/linaro/hikey960/hisilicon/proprietary/libstagefrighthw.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libstagefrighthw.so
vendor/linaro/hikey960/hisilicon/proprietary/libc_secshared.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libc_secshared.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libhilog.so
vendor/linaro/hikey960/hisilicon/proprietary/libhilog.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libhiion.so
vendor/linaro/hikey960/hisilicon/proprietary/libhiion.so

Thanks,
Rabi


#2

Could you please give context and what to you want to achieve? Where did you get this list of files ?
AFAIK Hikey960 uses Google software video decoding/encoding.


#3

I am trying to enable hardware decoding on HiKey960 board. In order to achieve that I need the files libstagefrighthw.so and libOMX_Core.so, so that they can communicate with the hardware layer (hi_vdec) and do the hardware based decoding if I am not wrong.

FILE: device/linaro/hikey/self-extractors_hikey960/hisilicon/staging/device-partial.mk

Blobs needed for HiKey960 video decoding hardware

TARGET_HISI_CODEC_VERSION := 1

PRODUCT_COPY_FILES += vendor/linaro/hikey960/hisilicon/proprietary/libOMX.hisi.video.decoder.so:$(TARGET_COPY_OUT_VENDOR)/lib/libOMX.hisi.video.decoder.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libOMX.hisi.video.decoder.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libOMX.hisi.video.decoder.so
vendor/linaro/hikey960/hisilicon/proprietary/libOMX.hisi.vdec.core.so:$(TARGET_COPY_OUT_VENDOR)/lib/libOMX.hisi.vdec.core.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libOMX.hisi.vdec.core.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libOMX.hisi.vdec.core.so
vendor/linaro/hikey960/hisilicon/proprietary/libOMX_Core.so:$(TARGET_COPY_OUT_VENDOR)/lib/libOMX_Core.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libOMX_Core.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libOMX_Core.so
vendor/linaro/hikey960/hisilicon/proprietary/libstagefrighthw.so:$(TARGET_COPY_OUT_VENDOR)/lib/libstagefrighthw.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libstagefrighthw.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libstagefrighthw.so
vendor/linaro/hikey960/hisilicon/proprietary/libc_secshared.so:$(TARGET_COPY_OUT_VENDOR)/lib/libc_secshared.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libc_secshared.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libc_secshared.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libhilog.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libhilog.so
vendor/linaro/hikey960/hisilicon/proprietary/libhilog.so:$(TARGET_COPY_OUT_VENDOR)/lib/libhilog.so
vendor/linaro/hikey960/hisilicon/proprietary/lib64/libhiion.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libhiion.so
vendor/linaro/hikey960/hisilicon/proprietary/libhiion.so:$(TARGET_COPY_OUT_VENDOR)/lib/libhiion.so


#4

FYI: I am using the latest AOSP source for HiKey960
ref: https://source.android.com/setup/build/devices


#5

Ok, I understand now. Hardware video decoding support has been recently merged, at least at Linux kernel level. But I’m not sure the user-space Hisilicon propietary binary blobs are available yet. @jstultz, any info?


#6

Vdec binaries are now available here:
https://developers.google.com/android/drivers#hikey96020180628

I’ve got a commit pending that will point to the download at build time if its missing to make this easier to find.


#7

Thanks @jstultz & @Loic for your help. Now I am able to play the video using hardware decoding.