IMX8/Multimedia/Gstreamer Support/Pipeline Examples: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
IMPORTANT NOTES: | IMPORTANT NOTES: | ||
*NO SUPPORT FOR PLUGINS USING HW ENCODER ACCELERATORS YET. | |||
*NO SUPPORT FOR PLUGINS USING HW ACCELERATORS YET. | |||
=Pipelines= | =Pipelines= | ||
Line 31: | Line 30: | ||
<pre style="background:#d6e4f1"> | <pre style="background:#d6e4f1"> | ||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! avdec_h264 ! | gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! avdec_h264 ! waylandsink async=false enable-last-sample=false qos=false sync=false | ||
</pre> | |||
<pre style="background:#d6e4f1"> | |||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false | |||
</pre> | |||
<pre style="background:#d6e4f1"> | |||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false | |||
</pre> | </pre> | ||
Line 38: | Line 45: | ||
<pre style="background:#d6e4f1"> | <pre style="background:#d6e4f1"> | ||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! avdec_h265 ! xvimagesink async=false enable-last-sample=false qos=false sync=false | gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! avdec_h265 ! xvimagesink async=false enable-last-sample=false qos=false sync=false | ||
</pre> | |||
<pre style="background:#d6e4f1"> | |||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false | |||
</pre> | |||
<pre style="background:#d6e4f1"> | |||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false | |||
</pre> | </pre> | ||
Line 43: | Line 58: | ||
<pre style="background:#d6e4f1"> | <pre style="background:#d6e4f1"> | ||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> | gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false | ||
</pre> | |||
<pre style="background:#d6e4f1"> | |||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false | |||
</pre> | </pre> | ||
Line 49: | Line 68: | ||
<pre style="background:#d6e4f1"> | <pre style="background:#d6e4f1"> | ||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> | gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false | ||
</pre> | |||
<pre style="background:#d6e4f1"> | |||
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false | |||
</pre> | </pre> | ||
Line 55: | Line 78: | ||
<pre style="background:#d6e4f1"> | <pre style="background:#d6e4f1"> | ||
gst-launch-1.0 -v videotestsrc is-live=true ! | gst-launch-1.0 -v videotestsrc is-live=true ! glimagesink async=false enable-last-sample=false qos=false sync=false | ||
</pre> | </pre> | ||
<pre style="background:#d6e4f1"> | <pre style="background:#d6e4f1"> | ||
gst-launch-1.0 -v v4l2src device=/dev/video0 ! | gst-launch-1.0 -v v4l2src device=/dev/video0 ! glimagesink async=false enable-last-sample=false qos=false sync=false | ||
</pre> | </pre> | ||
Revision as of 21:01, 19 October 2018
IMPORTANT NOTES:
- NO SUPPORT FOR PLUGINS USING HW ENCODER ACCELERATORS YET.
Pipelines
Audio playback
gst-launch-1.0 -v filesrc location=thesong.mp3 ! decodebin ! audioconvert ! pulsesink
H.264 encoding
gst-launch-1.0 -v -e videotestsrc is-live=true ! queue ! x264enc ! mp4mux ! filesink location=test.avi
gst-launch-1.0 -v -e v4l2src device=/dev/video0 ! queue ! x264enc ! mp4mux ! filesink location=test.mp4
gst-launch-1.0 -v -e v4l2src device=/dev/video0 ! queue ! x264enc ! matroskamux ! filesink location=test.mkv
H.264 decoding
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! avdec_h264 ! waylandsink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h264parse ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false
H.265 decoding
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! avdec_h265 ! xvimagesink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! qtdemux ! h265parse ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false
VP8 decoding
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false
VP9 decoding
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! waylandsink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v filesrc location=<PATH-TO_FILE> ! matroskademux ! queue ! vpudec ! glimagesink async=false enable-last-sample=false qos=false sync=false
Display video stream
gst-launch-1.0 -v videotestsrc is-live=true ! glimagesink async=false enable-last-sample=false qos=false sync=false
gst-launch-1.0 -v v4l2src device=/dev/video0 ! glimagesink async=false enable-last-sample=false qos=false sync=false