<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.mediawiki.compulab.com/w/index.php?action=history&amp;feed=atom&amp;title=CM-T3730%3A_Linux%3A_Video_Playback</id>
	<title>CM-T3730: Linux: Video Playback - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.mediawiki.compulab.com/w/index.php?action=history&amp;feed=atom&amp;title=CM-T3730%3A_Linux%3A_Video_Playback"/>
	<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;action=history"/>
	<updated>2026-05-01T23:44:40Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1656&amp;oldid=prev</id>
		<title>Lifshitz: /* GStreamer */</title>
		<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1656&amp;oldid=prev"/>
		<updated>2014-02-16T11:45:17Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;GStreamer&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:45, 16 February 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l31&quot; &gt;Line 31:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 31:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Please refer to [[CM-T3730: Linux: Angstrom#Digital_Video_SDK|CM-T3730: Linux: Angstrom]] &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;article &lt;/del&gt;for Linux DMAI support on CM-T3730.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Please refer to [[CM-T3730: Linux: Angstrom#Digital_Video_SDK|CM-T3730: Linux: Angstrom]] &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;and [[CM-T3730: Linux: Debian#Digital_Video_SDK|CM-T3730: Linux: Debian]] articles &lt;/ins&gt;for Linux DMAI support on CM-T3730.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;All provided playback examples were tested with 1024x768 DVI Monitor.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;All provided playback examples were tested with 1024x768 DVI Monitor.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l48&quot; &gt;Line 48:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 48:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For instance, TI GStreamer plugin uses DMAI to make access to the underlying hardware and DSP to perform tasks, such as video encoding/decoding, using hardware acceleration.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For instance, TI GStreamer plugin uses DMAI to make access to the underlying hardware and DSP to perform tasks, such as video encoding/decoding, using hardware acceleration.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This article demonstrates media manipulations by using of hardware acceleration.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This article demonstrates media manipulations by using of hardware acceleration.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;GStreamer package and required plugins are included in the CM-T3730 Angstrom Linux root filesystem image.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;GStreamer package and required plugins are included in the CM-T3730 Angstrom &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;and Debian &lt;/ins&gt;Linux root filesystem image.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Validation ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Validation ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l334&quot; &gt;Line 334:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 334:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Angstrom#Digital_Video_SDK | CM-T3730: Linux: Angstrom - Digital Video SDK]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Angstrom#Digital_Video_SDK | CM-T3730: Linux: Angstrom - Digital Video SDK]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[CM-T3730: Linux: Debian#Digital_Video_SDK | CM-T3730: Linux: Debian - Digital Video SDK]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Camera]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Camera]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Getting started]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Getting started]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Angstrom]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Angstrom]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[CM-T3730: Linux: Debian]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Kernel]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CM-T3730: Linux: Kernel]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lifshitz</name></author>
		
	</entry>
	<entry>
		<id>https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1362&amp;oldid=prev</id>
		<title>Lifshitz: /* See also */</title>
		<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1362&amp;oldid=prev"/>
		<updated>2012-11-15T09:25:06Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;See also&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 09:25, 15 November 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l328&quot; &gt;Line 328:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 328:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== See also ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== See also ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://processors.wiki.ti.com/index.php/GstTIPlugin_Elements&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;/ &lt;/del&gt;DMAI GStreamer Plug-In Elements]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://processors.wiki.ti.com/index.php/GstTIPlugin_Elements DMAI GStreamer Plug-In Elements]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://processors.wiki.ti.com/index.php/DMAI_GStreamer_Plug-In DMAI GStreamer Plug-In]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://processors.wiki.ti.com/index.php/DMAI_GStreamer_Plug-In DMAI GStreamer Plug-In]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://gstreamer.freedesktop.org/ GStreamer official resource]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://gstreamer.freedesktop.org/ GStreamer official resource]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lifshitz</name></author>
		
	</entry>
	<entry>
		<id>https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1345&amp;oldid=prev</id>
		<title>Lifshitz at 08:49, 25 October 2012</title>
		<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1345&amp;oldid=prev"/>
		<updated>2012-10-25T08:49:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:49, 25 October 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l159&quot; &gt;Line 159:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 159:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Playback ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Playback ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Image:&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Dsp_playback_3730&lt;/del&gt;.jpeg|thumb|right|200px|720x480 H.264/AAC movie playback.]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Image:&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Dsp_playback_3730_scaled&lt;/ins&gt;.jpeg|thumb|right|200px|720x480 H.264/AAC movie playback.]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This section provides several examples of GStreamer video playback pipelines.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This section provides several examples of GStreamer video playback pipelines.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lifshitz</name></author>
		
	</entry>
	<entry>
		<id>https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1343&amp;oldid=prev</id>
		<title>Grinberg: /* FFmpeg */</title>
		<link rel="alternate" type="text/html" href="https://www.mediawiki.compulab.com/w/index.php?title=CM-T3730:_Linux:_Video_Playback&amp;diff=1343&amp;oldid=prev"/>
		<updated>2012-10-24T09:41:50Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;FFmpeg&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The CM-T3730 features DM3730 Digital Media System on Chip (SoC) with High Performance Image, Video, Audio (IVA) Accelerator Subsystem. It includes TMS320C64x+™ DSP Core (up to 800-MHz), Enhanced Direct Memory Access (EDMA) Controller and Video Hardware Accelerators.&lt;br /&gt;
&lt;br /&gt;
DM3730 supports hardware acceleration of the following Video/Audio codecs:&lt;br /&gt;
&lt;br /&gt;
:Video (up to 720p) : H.264 - Baseline, Medium, and High profiles, JPEG, MPEG2 - Medium profile, MPEG4 - Simple profile, VC1&lt;br /&gt;
:Audio : AAC - High-Efficiency and Low-Complexity profiles, G.711, MP3, WMA&lt;br /&gt;
&lt;br /&gt;
CM-T3730 Linux package supports DaVinci Multimedia Application Interface (DMAI). &lt;br /&gt;
DMAI is a utility layer on top of the operating system and the Codec Engine (CE).&lt;br /&gt;
It is able to interact with the OMAP DSP or acceleration modules for encoding and decoding tasks.&lt;br /&gt;
It allows offloading the processing of the applications running on MPU to OMAP hardware accelerators.&lt;br /&gt;
The TI plugin for GStreamer multimedia framework is built on top of DMAI.&lt;br /&gt;
In this article we describe sample application of GStreamer to demonstrate hardware acceleration features for video and audio stream playback.&lt;br /&gt;
&lt;br /&gt;
We also provide an overview of the FFmpeg application to prepare media files compatible with CM-T3730 hardware decoding capabilities.&lt;br /&gt;
&lt;br /&gt;
== Boot Loader and Linux Kernel  ==&lt;br /&gt;
&lt;br /&gt;
To set the maximum permitted frequency of the DSP processor core, please run the following command in U-Boot before booting the kernel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mw 48004040 0x0009900c&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Linux kernel boot options require adjustment to enable DSP support. Following example modifies default CM-T3730 boot options by designating additional memory and OMAP frame-buffer related parameters:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
omapfb.mode=dvi:1024x768-24@60 omapdss.def_disp=dvi vram=18M omapfb.vram=0:6M,1:6M,2:6M mem=55M@0x80000000 mem=128M@0x88000000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please refer to [[CM-T3730: Linux: Angstrom#Digital_Video_SDK|CM-T3730: Linux: Angstrom]] article for Linux DMAI support on CM-T3730.&lt;br /&gt;
&lt;br /&gt;
All provided playback examples were tested with 1024x768 DVI Monitor.&lt;br /&gt;
If you want to test the playback of 720p video, please change kernel command line options accordingly, for example by setting display resolution to 1280x1024:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
omapfb.mode=dvi:1280x1024-24@60&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GStreamer ==&lt;br /&gt;
&lt;br /&gt;
GStreamer is a pipeline-based multimedia framework that allows creating a wide variety of media-handling software components.&lt;br /&gt;
This includes simple audio playback, audio and video playback, recording, streaming, and editing.&lt;br /&gt;
The pipeline design allows easy creation of any type of streaming multimedia application.&lt;br /&gt;
GStreamer capabilities can be extended through plugins.&lt;br /&gt;
For instance, TI GStreamer plugin uses DMAI to make access to the underlying hardware and DSP to perform tasks, such as video encoding/decoding, using hardware acceleration.&lt;br /&gt;
This article demonstrates media manipulations by using of hardware acceleration.&lt;br /&gt;
GStreamer package and required plugins are included in the CM-T3730 Angstrom Linux root filesystem image.&lt;br /&gt;
&lt;br /&gt;
=== Validation ===&lt;br /&gt;
&lt;br /&gt;
[[Image:Gstreamer-videotestsrc.jpeg|thumb|right|200px|GStreamer test video stream output]]&lt;br /&gt;
&lt;br /&gt;
To validate the installation of the GStreamer components, launch {{cmd|gst-inspect}} GStreamer utility.&lt;br /&gt;
&lt;br /&gt;
Testing the basic streaming to OMAP frame buffer:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch videotestsrc ! omapdmaifbsink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GStreamer pipeline parameters in details:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid rgb(85, 85, 85); border-collapse: collapse;&amp;quot;&lt;br /&gt;
|{{parameter|videotestsrc}} || Creates a test video stream.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|omapdmaifbsink}} || Define the OMAP frame buffer as the output sink.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test basic encoding/decoding capabilities by using synthetic video test pattern and measure MPU/DPS performance.&lt;br /&gt;
The same applies to any playback example in this article.&lt;br /&gt;
&lt;br /&gt;
Following pipeline encodes 640x480 test video stream using H.264 codec:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch videotestsrc ! 'video/x-raw-yuv, width=640, height=480' ! TIVidenc1 codecName=h264enc engineName=codecServer ! \&lt;br /&gt;
           dmaiperf print-arm-load=true engine-name=codecServer ! filesink location=testsrc_sample.264&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Press '''Ctrl'''+'''C''' to stop streaming.&amp;lt;br&amp;gt;&lt;br /&gt;
The following pipeline plays the recorded video:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch filesrc location=testsrc_sample.264 ! typefind ! TIViddec2 ! \&lt;br /&gt;
           dmaiperf print-arm-load=true engine-name=codecServer ! omapdmaifbsink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GStreamer pipeline parameters in detail:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid rgb(85, 85, 85); border-collapse: collapse;&amp;quot;&lt;br /&gt;
|{{parameter|1=video/x-raw-yuv, width=640, height=480}} || Link the source to a ''capability'', which is defined by a mime type and a few optional properties. The properties are: video and resolution.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|typefind}} || Find the media type of a stream&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|TIVidenc1}} || Encode video stream. &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=codecName=h264enc}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify H.264 codec. Another possible values are: {{parameter|mpeg2enc}}, {{parameter|mpeg4enc}}.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=engineName=codecServer}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify codec server.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|TIViddec2}} || Decode video stream.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=codecName=h264dec}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify H.264 decoder. Another possible values are: {{parameter|mpeg2dec}}, {{parameter|mpeg4dec}}. If the upstream element (i.e. demuxer or typefind element) is able to negotiate with the decoder element and expose its capabilities, the {{parameter|engineName}} and {{parameter|codecName}} properties will be auto-detected based on the mime type requested.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=engineName=codecServer}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify codec server.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|dmaiperf}} || Capture pipeline performance data.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=print-arm-load=true}}&lt;br /&gt;
|}&lt;br /&gt;
|| Print the ARM CPU load information.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=engine-name=codecServer}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify codec server.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|filesrc}} || Read data from a file.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=location=testsrc_sample.264}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify input file name.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|filesink}} || Write incoming data to a file.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=location=testsrc_sample.264}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify output file name.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To output a video in a separate window in X windows environment, the {{parameter|DISPLAY}} environment variable must be set:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export DISPLAY=:0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Playback ===&lt;br /&gt;
[[Image:Dsp_playback_3730.jpeg|thumb|right|200px|720x480 H.264/AAC movie playback.]]&lt;br /&gt;
&lt;br /&gt;
This section provides several examples of GStreamer video playback pipelines.&lt;br /&gt;
More TI DMAI GStreamer Plugin applications and use cases can be found in [[CM-T3730: Linux: Video Playback#See also|See also]] section. &lt;br /&gt;
Encoding and network streaming of live camera video can be found in the [[CM-T3730: Linux: Camera|Camera]] article.&lt;br /&gt;
&lt;br /&gt;
* Auto-playback of all supported video / audio formats.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch playbin2 uri=file:///home/root/test.avi video-sink=omapdmaifbsink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Playback of plain (not muxed into container) MPEG-2/MPEG-4/H.264 video file.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch filesrc location=test.bin ! typefind ! TIViddec2 ! omapdmaifbsink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Playback of plain MPEG-4 video file&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch filesrc location=test.bin ! TIViddec2 codecName=mpeg4dec engineName=codecServer  ! omapdmaifbsink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Playback of all supported video muxed into AVI container&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch filesrc location=test.avi ! avidemux name=demux demux. ! TIViddec2  ! omapdmaifbsink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Playback of all supported video / audio muxed into MOV container&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
gst-launch filesrc location=test.mov ! qtdemux name=demux demux. ! queue ! TIViddec2  ! omapdmaifbsink demux. ! \&lt;br /&gt;
           queue  max-size-time=0 ! TIAuddec1 ! alsasink&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GStreamer pipeline parameters in detail:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid rgb(85, 85, 85); border-collapse: collapse;&amp;quot;&lt;br /&gt;
|{{parameter|playbin2}} || Auto-plug and play media from an uri. {{Parameter|playbin2}} builds a playback pipeline using automatic file type recognition and automatic selection of the right audio/video/subtitle demuxers/decoders. The resulting pipeline is a bit more complicated than explicit custom pipelines and  can increase the MPU load. This element is very simple to use and supports HW accelerated playback.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=uri=file:///home/root/test.avi}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify a media file for playback.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|queue}} || Provide a buffer for the next element in the pipeline. It also required to force the use of separate threads for audio and video decoding.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=max-size-time=0}}&lt;br /&gt;
|}&lt;br /&gt;
|| Max. amount of data in the queue in nano seconds.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|qtdemux}} || Demux a .mov file into audio and video streams. This element can be replaced by {{Parameter|avidemux}}, {{Parameter|oggdemux}}, {{Parameter|mpegtsdemux}} etc. depending on the input file container format.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|1=name=demux}}&lt;br /&gt;
|}&lt;br /&gt;
|| Specify demuxer name. Respective pads of {{Parameter|demux.}} are then linked to video and audio decoders.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|TIAuddec1}} || Decode audio. Due to the licensing restriction DVSDK does not come with mp3 support integrated in the default codec server.&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|alsasink}} || Output to a sound card via ALSA subsystem.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Note | If a video or an audio decoder element doesn't support input media stream type, GStreamer will output a failure report.}}&lt;br /&gt;
&lt;br /&gt;
== FFmpeg ==&lt;br /&gt;
&lt;br /&gt;
FFmpeg is a very fast video and audio converter application. It can be installed on the desktop computer to prepare media files compatible with CM-3730 hardware accelerated playback capabilities.&lt;br /&gt;
This article describes FFmpeg installation and usage for Ubuntu 11.10 Linux distribution.&lt;br /&gt;
&lt;br /&gt;
=== Installation ===&lt;br /&gt;
&lt;br /&gt;
This section describes the compilation and installation of the FFmpeg from the packages upstream repositories.&lt;br /&gt;
Installation from sources allows to benefit from bug-fixes, enhancements and most recent FFmpeg version.&lt;br /&gt;
For example, Ubutnu repository FFmpeg package application is precompiled with restriction to use of proprietary or commercial encoders like MP3, AAC, MPEG4 etc.&lt;br /&gt;
&lt;br /&gt;
* Remove previously installed applications and libraries&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get remove ffmpeg x264 libx264-dev libva-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Install dependancies&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get -y install build-essential checkinstall git libfaac-dev libgpac-dev libjack-jackd2-dev libmp3lame-dev \&lt;br /&gt;
                        libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libsdl1.2-dev libtheora-dev libva-dev \&lt;br /&gt;
                        libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev texi2html yasm zlib1g-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* x264 library&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone git://git.videolan.org/x264&lt;br /&gt;
cd x264&lt;br /&gt;
./configure --prefix=/usr --enable-static &amp;amp;&amp;amp; make&lt;br /&gt;
sudo checkinstall --pkgname=x264 --pkgversion=&amp;quot;3:$(./version.sh | awk -F'[&amp;quot; ]' '/POINT/{print $4&amp;quot;+git&amp;quot;$5}')&amp;quot; \&lt;br /&gt;
                  --backup=no --deldoc=yes --fstrans=no --default&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* FFmpeg&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone --depth 1 git://source.ffmpeg.org/ffmpeg&lt;br /&gt;
cd ffmpeg&lt;br /&gt;
./configure --prefix=/usr --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb \ &lt;br /&gt;
            --enable-libopencore-amrwb --enable-librtmp --enable-libtheora --enable-libvorbis \&lt;br /&gt;
            --enable-libx264 --enable-nonfree --enable-version3 --enable-x11grab &amp;amp;&amp;amp; make&lt;br /&gt;
sudo checkinstall --pkgname=ffmpeg --pkgversion=&amp;quot;5:$(date +%Y%m%d%H%M)-git&amp;quot; --backup=no --deldoc=yes \&lt;br /&gt;
                  --fstrans=no --default&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;hash x264 ffmpeg ffplay ffprobe&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
&lt;br /&gt;
* Convert to H.264 (High Profile) 720x480 video&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg -i sample_1080p.mov -vcodec libx264 -vprofile high -preset slow -r 30 -s 720:480 -threads 0 -an -f h264 test.bin&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Convert to MPEG4 (Simple Profile) 720x480 video&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg -i sample_1080p.mov -vcodec mpeg4 -b:v 1024k -r 30 -s 720:480 -threads 0 -an -f m4v test.bin&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Convert to H.264 (High Profile) 720x480 video, AAC 128Kbit/s audio muxed into MOV container&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ffmpeg -i sample_1080p.mov -vcodec libx264 -vprofile high -preset slow -s 720:480 -threads 0 \&lt;br /&gt;
       -acodec libfaac -ab 128k test.mov&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
FFmpeg command line parameters in detail:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid rgb(85, 85, 85); border-collapse: collapse;&amp;quot;&lt;br /&gt;
|width=&amp;quot;200px&amp;quot;| {{parameter|-i sample_1080p.mov}} || Specify input file name.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-vcodec libx264}} || Encode video to H.264 format using libx264 library.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|-vprofile high}}&lt;br /&gt;
|}&lt;br /&gt;
|| Force the limits of the H.264 profile to {{parameter|high}}. Other valid options are {{parameter|baseline}} and {{parameter|main}} (supported by CM-T3730).&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
{|cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|width=&amp;quot;30px&amp;quot;| || {{parameter|-preset slow}}&lt;br /&gt;
|}&lt;br /&gt;
|| Set encoding preset for x264 - slower presets give more quality at the same bitrate, but take more time to encode. {{parameter|slow}} is a good balance between encoding time and quality. Other valid options are: {{parameter|ultrafast}}, {{parameter|superfast}}, {{parameter|veryfast}}, {{parameter|faster}}, {{parameter|fast}}, {{parameter|medium}}, {{parameter|slower}}, {{parameter|veryslow}}, {{parameter|placebo}}.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-vcodec mpeg4}} || Encode video to MPEG4.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-b:v 1024k}} || Set video bitrate to 1024 kbits/s.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-r 30}} || Set video framerate to 30 fps.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-s 720:480}} || Specify output frame size - 720x480.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-acodec libfaac}} || Encode audio to AAC format using libfaac library.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-ab 128k}} || Set audio bitrate to 128 kbits/s.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-an}} || Disable audio.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-f m4v}} || Force setting of output file format to MPEG4.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|-threads 0}} || Use an optimal number of threads when encoding.&lt;br /&gt;
|-&lt;br /&gt;
|{{parameter|test.mov}} || Specify output file and the mov muxer (autodetected from extension). Anything found on the command line which cannot be interpreted as an option is considered to be an output filename.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/GstTIPlugin_Elements/ DMAI GStreamer Plug-In Elements]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/DMAI_GStreamer_Plug-In DMAI GStreamer Plug-In]&lt;br /&gt;
* [http://gstreamer.freedesktop.org/ GStreamer official resource]&lt;br /&gt;
* [http://www.ffmpeg.org/index.html FFmpeg official resource]&lt;br /&gt;
&lt;br /&gt;
* [[CM-T3730: Linux: Angstrom#Digital_Video_SDK | CM-T3730: Linux: Angstrom - Digital Video SDK]]&lt;br /&gt;
* [[CM-T3730: Linux: Camera]]&lt;br /&gt;
* [[CM-T3730: Linux: Getting started]]&lt;br /&gt;
* [[CM-T3730: Linux: Angstrom]]&lt;br /&gt;
* [[CM-T3730: Linux: Kernel]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:CM-T3730]]&lt;/div&gt;</summary>
		<author><name>Grinberg</name></author>
		
	</entry>
</feed>