Add custom surfaceview

The custom surfaceview can used to encode video from surface