Я работаю над Mediapipe в режиме реального времени Отслеживание рук Заявка на android. При условии, что демо использует вход камеры из SurfaceTexture ExternalOES
. Я хочу использовать сетевой поток, который идет от webrt c. Сетевой поток имеет формат YUV_I420, поэтому я преобразую его в RGB и создаю RGB-пакет, используя AndroidPacketCreator следующим образом.
Packet imagePacket = packetCreator.createRgbaImageFrame(yuv_converted_bimap);
, а затем передаю его графу mediapipe в FrameProcessor
классе
mediapipeGraph.addConsumablePacketToInputStream(
videoInputStream, imagePacket, custom_timestamp);
При таком способе все работает нормально, ухудшается только производительность, т. Е. С потоком камеры, если он способен обрабатывать 4-5 кадров в секунду, тогда при таком подходе YUV к RGB он обрабатывает только 2-3 кадра в секунду. Я хочу найти другой подход, где я могу использовать поток YUV напрямую для отправки графика медиапайпа. Я провел небольшое исследование, но ничего не смог найти. У кого-нибудь есть идеи, как это сделать?