use ffbuffer