Я пытаюсь запустить stagefright в среде linux x86_64
.
Я собрал android-9.0.0-r35 как x86_64
и скомпилировал ядро с привязкой, конфигурацией ashmem, но это не сработало.
Моя среда Ubuntu14.04 64bit, я скомпилировал и установил новое ядро 4.20.17.
Согласно https://source.android.com/setup/build/building, сначала я сделал ниже. Я установил среду сборки как x86_64.
$ source build/envsetup.sh
$ lunch aosp_x86_64-eng
$ make -j4
Я также построил сцену, как показано ниже.
$ cd [AOSP sourcecode]/framework/av
$ mma -j4
После этого я сделал символическую ссылку для среды выполнения.
$ ln -s [AOSP sourcecode]/out/target/product/generic_x86_64/system /system
Затем я загружаю более новую версию ядра, 4.20.17, и копирую свой исходный файл конфигурации, добавляю опции, скомпилирую и устанавливаю его.
$ cp /boot/config-4.4.0-142-generic .config
(.config file)
...
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
CONFIG_ASHMEM=y
...
$ make menuconfig
$ make-kpkg --initrd --J 4 kernel_image
$ dpkg -i linux-image-4.20.17_4.20.17-10.00.Custom_amd64.deb
$ echo -e "KERNEL==\"binder\", MODE=\"0666\"\nKERNEL==\"ashmem\", MODE=\"0666\"" | tee /etc/udev/rules.d/android.rules
После этого процесса я перезагрузил виртуальную машину и попытался запустить stagefright.
$ /system/bin/stagefright -s sample.mp4
(waiting until ctrl+c)
Но результат nothing
. Процесс не остановился и не закончился.
Я просто хочу знать, как запустить stagefright в среде x86_64.
(Я не хочу ARM кросс-компиляции stagefright.)
Версия AOSP: pie_9.0.0-r35.
Кто-нибудь знает, как это исправить и нормально запустить stagefright на ubuntu x86_64?
Я с нетерпением жду ответов от экспертов. :)