I am trying to run a pipe line that works on my machine on a colleague’s machine with the same hardware and software set up, using Ubuntu 16.04 and compiling gstreamer from source.
The pipeline works on my machine but not on their machine.
There seems to be a problem with the mfxh264enc plugin.
I am getting the following error
gst-launch-1.0 -v -e mpegtsmux name=m ! hlssink target-duration=5 souphttpsrc location="http://127.0.0.1:8000/routestream/4" ! qtdemux ! h265parse ! mfxhevcdec ! videoconvert ! mfxvpp width=1280 height=720 ! mfxh264enc ! "video/x-h264, stream-format=byte-stream, profile=high" ! m.
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstMfxEncH264:mfxench264-0: Could not initialize supporting library.
Additional debug info:
gstvideoencoder.c(1627): gst_video_encoder_change_state (): /GstPipeline:pipeline0/GstMfxEncH264:mfxench264-0:
Failed to open encoder
Setting pipeline to NULL ...
Freeing pipeline ..
I googled the error message. I found something about not having enough gpu memory. I used lspci to check the gpu information on both machines and lspci reports identical information for the intel GPU that is being used on both machines.
lspci -v -s 0:02.0
00:02.0 VGA compatible controller: Intel Corporation Sky Lake Integrated Graphics (rev 07) (prog-if 00 [VGA controller])
Subsystem: Intel Corporation Skylake Integrated Graphics
Flags: bus master, fast devsel, latency 0, IRQ 127
Memory at d0000000 (64-bit, non-prefetchable) [size=16M]
Memory at c0000000 (64-bit, prefetchable) [size=256M]
I/O ports at 1c00 [size=64]
[virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: i915
Kernel modules: i915
I suspect something is misconfigured but I am not sure what.
I run gnome on my machine but I am trying to run my colleague’s system in a headless mode by using ssh to access the command line. I am not sure if that has anything to do with it but that is the main difference between how I am trying to run the pipeline.
Has anybody seen something like this before?
What support library does the x264 encoder need?
Any trouble shooting tips?