I guess that won't help, but I tried your commands with an OrangePi RK3399, and it seemed to work.
I suppose it is working with 32 bits, not 64...
Code:
$ sudo gst-launch-1.0 -e videotestsrc is-live=false num-buffers=500 \
> ! video/x-raw,format=NV12,width=1280,height=720 \
> ! mpph264enc ! filesink location=1280.h264
(gst-plugin-scanner:741): GLib-GObject-WARNING **: 09:29:09.504: cannot register existing type 'GstKMSSink'
(gst-plugin-scanner:741): GLib-GObject-CRITICAL **: 09:29:09.504: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(gst-plugin-scanner:741): GLib-GObject-CRITICAL **: 09:29:09.504: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(gst-plugin-scanner:741): GLib-CRITICAL **: 09:29:09.504: g_once_init_leave: assertion 'result != 0' failed
(gst-plugin-scanner:741): GStreamer-CRITICAL **: 09:29:09.504: gst_element_register: assertion 'g_type_is_a (type, GST_TYPE_ELEMENT)' failed
Setting pipeline to PAUSED ...
mpi: mpp version: b212d1b author: Jacob Chen [mpp]: fix mjpeg buffer leak
Pipeline is PREROLLING ...
h264e_api: h264e_config MPP_ENC_SET_RC_CFG bps 3456000 [3240000 : 3672000]
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:00:14.428808048
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
mpp_thread: MPP_THREAD_STOPPING status set mThread 0xab2a1c30
Freeing pipeline ...
linaro@captation-techforum-rk3399-4GB:~$ ffprobe -hide_banner 1280.h264
Input #0, h264, from '1280.h264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p(progressive), 1280x720, 30 fps, 30 tbr, 1200k tbn, 60 tbc