Thanks Igor--
I used gstramer1.0 instead of gstreamer0.1, because building Yocto with
PACKAGECONFIG_append_pn-qtmultimedia = " gstreamer010"
yielded these series of errors when running the Qt app:
(gst-plugin-scanner:1194): GLib-GObject-WARNING **: cannot register existing type 'GstVorbisDec'
(gst-plugin-scanner:1194): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(gst-plugin-scanner:1194): GStreamer-CRITICAL **: gst_element_register: assertion 'g_type_is_a (type, GST_TYPE_ELEMENT)' failed
Warning: "No decoder available for type 'audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)2, rate=(int)44100, channels=(int)2, parsed=(boolean)true'."
Warning: "No decoder available for type 'video/x-h264, stream-format=(string)avc, alignment=(string)au, level=(string)3, profile=(string)high, codec_data=(buffer)0164001effe1001d6764001eacd9408837ee7ffc0070006c400000fa40003a9823c58b658001000668ebe3cb22c0, width=(int)540, height=(int)420, framerate=(fraction)30000/1001, pixel-aspect-ratio=(fraction)28/27, parsed=(boolean)true'."
Error: "Your GStreamer installation is missing a plug-in."
Warning: "No decoder available for type 'audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)2, rate=(int)44100, channels=(int)2, parsed=(boolean)true'."
Warning: "No decoder available for type 'video/x-h264, stream-format=(string)avc, alignment=(string)au, level=(string)3, profile=(string)high, codec_data=(buffer)0164001effe1001d6764001eacd9408837ee7ffc0070006c400000fa40003a9823c58b658001000668ebe3cb22c0, width=(int)540, height=(int)420, framerate=(fraction)30000/1001, pixel-aspect-ratio=(fraction)28/27, parsed=(boolean)true'."
Error: "Your GStreamer installation is missing a plug-in."
Since the video plays fine using gst-launch, I don't think it could be a hardware limitation.