问题
I've got a VoIP video application that works fine on MAC, Windows and iOS using the VP8 codec. When I place a call between any of these platforms and Android both sides of the call have a black and white image with red, green and blue squares. The same happens when Android calls Android.
I'm compiling VP8 with:
./libvpx/configure --target=armv7-android-gcc --sdk-path=/Applications/adt/ndk --disable-examples --enable-runtime-cpu-detect --enable-realtime-only --enable-neon
My question is why does the Android platform yield this result and how can I go about debugging it?
Here is a screenshot of the problem:

Additional information:
The camera frame format is ImageFormat.NV21. The encoder image format is VPX_IMG_FMT_I420.
回答1:
Because libvpx is configured to take image format VPX_IMG_FMT_I420 the NV21 frames must first be converted to I420.
来源:https://stackoverflow.com/questions/15036417/vp8-encode-decode-on-android-results-in-black-and-white-image-with-red-green-an