{"id":234213,"date":"2024-09-29T20:26:35","date_gmt":"2024-09-29T20:26:35","guid":{"rendered":"https:\/\/www.emtrion.de\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/"},"modified":"2024-10-24T07:35:37","modified_gmt":"2024-10-24T07:35:37","slug":"using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2","status":"publish","type":"page","link":"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/","title":{"rendered":"Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux"},"content":{"rendered":"<div class=\"level1\">\n<p><strong>Freescale changed the names of the gstreamer plugins at a certain version. For the manual using the old plugin names please scroll down.<\/strong><\/p>\n<p><strong>Also if since we are using kernel 3.10.53 a device tree blob is used to configure the kernel at bootup. If you want to use the adv7180 you will have to adjust and rebuild the device tree (it is included in the kernel source package on our cloud) as mentioned in the &#8220;<\/strong><strong>Debian DIMM-MX6 2015-04-15 Update Manual&#8221;.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<\/div>\n<h2><a id=\"hardware_specific\" name=\"hardware_specific\"><\/a>Hardware specific<\/h2>\n<div class=\"level1\">\n<p>To encode the video using the hardware encoder, have a look at the gstreamer plugin vpuenc.<\/p>\n<p>To decode the video using the hardware decoder, have a look at the gstreamer plugin vpudec.<\/p>\n<p>To display a video on the screen, you can use the plugin imxv4l2sink.<\/p>\n<p>&nbsp;<\/p>\n<\/div>\n<h2><a id=\"examples\" name=\"examples\"><\/a>Examples<\/h2>\n<div class=\"level1\">\n<p>The examples are tested on Lothron 3\/Cadun-1 with DIMM-MX6 and a digital camera connected to the first input.<\/p>\n<\/div>\n<h3><a id=\"file_to_display\" name=\"file_to_display\"><\/a>File to display<\/h3>\n<div class=\"level2\">\n<p>To be able to play a video file you can use a USB Stick or SD Card or put it in your NFS-Root.<\/p>\n<p>Video and audio:<\/p>\n<pre class=\"uboot\">gst-launch playbin2 uri=file:\/\/\/mnt\/test.mp4<\/pre>\n<p>Video only (if there are problems with audio):<\/p>\n<pre class=\"uboot\">gst-launch filesrc location=\/mnt\/test.mp4 typefind=true ! aiurdemux ! vpudec ! imxv4l2sink<\/pre>\n<\/div>\n<h3><a id=\"camera_input\" name=\"camera_input\"><\/a>Camera input<\/h3>\n<div class=\"level2\">\n<p>These gstreamer pipes put the camera picture on the display.<\/p>\n<p><strong>From the dedicated input (CSI):<\/strong> <br \/>Before using the camera you have to install the corresponding kernel module. Therefore, we prepared two shell scripts in the root file system of our emBSP.<\/p>\n<ul>\n<li class=\"level1\">\n<div class=\"li\">If you want to use the digital camera VM009, use the script <em>cam_setup_mt9m131.sh<\/em><\/div>\n<\/li>\n<li class=\"level1\">\n<div class=\"li\">If you want to use the analog camera input on Lothron, use the script <em>cam_setup_adv7180.sh and adjust the used device tree<br \/><\/em><\/div>\n<\/li>\n<\/ul>\n<p>Now you can display the input using this pipe:<\/p>\n<pre class=\"uboot\">gst-launch imxv4l2src ! mfw_ipucsc ! video\/x-raw-rgb ! imxv4l2sink<\/pre>\n<p><strong>From USB-Input<\/strong> (you must use a camera compatible with the UVC driver):<\/p>\n<pre class=\"uboot\">gst-launch v4l2src device=\/dev\/video1 ! imxv4l2sink<\/pre>\n<\/div>\n<h2><a id=\"external_links\" name=\"external_links\"><\/a>External links<\/h2>\n<div class=\"level1\">\n<p>GStreamer examples for i.MX6 provided by Freescale: https:\/\/community.freescale.com\/docs\/DOC-93387<\/p>\n<p><span class=\"urlextern\">&nbsp;<\/span><\/p>\n<p><span class=\"urlextern\">&nbsp;<\/span><\/p>\n<p>&nbsp;<\/p>\n<h2><a id=\"old_plugins\" name=\"old_plugins\"><\/a>Manual for using the old plugins<\/h2>\n<h2><a id=\"hardware_specific\" name=\"hardware_specific\"><\/a>Hardware specific<\/h2>\n<div class=\"level1\">\n<p>To encode the video using the hardware encoder, have a look at the gstreamer plugin vpuenc.<\/p>\n<p>To decode the video using the hardware decoder, have a look at the gstreamer plugin vpudec.<\/p>\n<p>To display a video on the screen, you can use the plugin mfw_v4lsink.<\/p>\n<p>&nbsp;<\/p>\n<\/div>\n<h2><a id=\"examples\" name=\"examples\"><\/a>Examples<\/h2>\n<div class=\"level1\">\n<p>The examples are tested on Lothron 3\/Verno 3 with DIMM-MX6 and a digital camera connected to the first input.<\/p>\n<\/div>\n<h3><a id=\"file_to_display\" name=\"file_to_display\"><\/a>File to display<\/h3>\n<div class=\"level2\">\n<p>To be able to play a video file you can use an USB Stick or SD Card or put it in your NFS-Root.<\/p>\n<p>Video and audio:<\/p>\n<pre class=\"uboot\">gst-launch playbin2 uri=file:\/\/\/mnt\/test.mp4<\/pre>\n<p>Video only (if there are problems with audio):<\/p>\n<pre class=\"uboot\">gst-launch filesrc location=\/mnt\/test.mp4 typefind=true ! aiurdemux ! vpudec ! mfw_v4lsink<\/pre>\n<\/div>\n<h3><a id=\"camera_input\" name=\"camera_input\"><\/a>Camera input<\/h3>\n<div class=\"level2\">\n<p>These gstreamer pipes put the camera picture on the display.<\/p>\n<p><strong>From the dedicated input (CSI):<\/strong> <br \/>Before using the camera you have to install the corresponding kernel module. Therefore, we prepared two shell scripts in the root file system of our emBSP.<\/p>\n<ul>\n<li class=\"level1\">\n<div class=\"li\">If you want to use the digital camera VM009, use the script <em>cam_setup_mt9m131.sh<\/em><\/div>\n<\/li>\n<li class=\"level1\">\n<div class=\"li\">If you want to use the analog camera input on Lothron, use the script <em>cam_setup_adv7180.sh<\/em><\/div>\n<\/li>\n<\/ul>\n<p>Now you can display the input using this pipe:<\/p>\n<pre class=\"uboot\">gst-launch mfw_v4lsrc ! mfw_ipucsc ! video\/x-raw-rgb ! mfw_v4lsink<\/pre>\n<p><strong>From USB-Input<\/strong> (you must use a camera compatible with the UVC driver):<\/p>\n<pre class=\"uboot\">gst-launch v4l2src device=\/dev\/video1 ! mfw_v4lsink<\/pre>\n<\/div>\n<h2><a id=\"external_links\" name=\"external_links\"><\/a>External links<\/h2>\n<p>GStreamer examples for i.MX6 provided by Freescale: https:\/\/community.freescale.com\/docs\/DOC-93387<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Freescale changed the names of the gstreamer plugins at a certain version. For the manual using the old plugin names please scroll down. Also if since we are using kernel 3.10.53 a device tree blob is used to configure the kernel at bootup. If you want to use the adv7180 you will have to adjust [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-234213","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux - emtrion<\/title>\n<meta name=\"description\" content=\"Using GStreamer on DIMM-MX6 under Linux: Find examples for video encoding, decoding, and display. For analog camera setup, adjust the device tree and contact emtrion support.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux - emtrion\" \/>\n<meta property=\"og:description\" content=\"Using GStreamer on DIMM-MX6 under Linux: Find examples for video encoding, decoding, and display. For analog camera setup, adjust the device tree and contact emtrion support.\" \/>\n<meta property=\"og:site_name\" content=\"emtrion\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-24T07:35:37+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\\\/\",\"url\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\\\/\",\"name\":\"Using GStreamer on DIMM-MX6 \\\/ emCON-MX6 under Linux - emtrion\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/#website\"},\"datePublished\":\"2024-09-29T20:26:35+00:00\",\"dateModified\":\"2024-10-24T07:35:37+00:00\",\"description\":\"Using GStreamer on DIMM-MX6 under Linux: Find examples for video encoding, decoding, and display. For analog camera setup, adjust the device tree and contact emtrion support.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.emtrion.de\\\/en\\\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using GStreamer on DIMM-MX6 \\\/ emCON-MX6 under Linux\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/\",\"name\":\"emtrion\",\"description\":\"Embedded Software and Hardware Development\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.emtrion.de\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux - emtrion","description":"Using GStreamer on DIMM-MX6 under Linux: Find examples for video encoding, decoding, and display. For analog camera setup, adjust the device tree and contact emtrion support.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/","og_locale":"en_US","og_type":"article","og_title":"Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux - emtrion","og_description":"Using GStreamer on DIMM-MX6 under Linux: Find examples for video encoding, decoding, and display. For analog camera setup, adjust the device tree and contact emtrion support.","og_site_name":"emtrion","article_modified_time":"2024-10-24T07:35:37+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/","url":"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/","name":"Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux - emtrion","isPartOf":{"@id":"https:\/\/www.emtrion.de\/en\/#website"},"datePublished":"2024-09-29T20:26:35+00:00","dateModified":"2024-10-24T07:35:37+00:00","description":"Using GStreamer on DIMM-MX6 under Linux: Find examples for video encoding, decoding, and display. For analog camera setup, adjust the device tree and contact emtrion support.","breadcrumb":{"@id":"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.emtrion.de\/en\/using-gstreamer-on-dimm-mx6-emcon-mx6-under-linux-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.emtrion.de\/en\/"},{"@type":"ListItem","position":2,"name":"Using GStreamer on DIMM-MX6 \/ emCON-MX6 under Linux"}]},{"@type":"WebSite","@id":"https:\/\/www.emtrion.de\/en\/#website","url":"https:\/\/www.emtrion.de\/en\/","name":"emtrion","description":"Embedded Software and Hardware Development","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.emtrion.de\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages\/234213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/comments?post=234213"}],"version-history":[{"count":1,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages\/234213\/revisions"}],"predecessor-version":[{"id":234214,"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/pages\/234213\/revisions\/234214"}],"wp:attachment":[{"href":"https:\/\/www.emtrion.de\/en\/wp-json\/wp\/v2\/media?parent=234213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}