1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>Castle Game Engine: CastleVideos</title>
<meta name="generator" content="PasDoc 0.13.0">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="StyleSheet" type="text/css" href="pasdoc.css">
</head>
<body>
<table class="container"><tr><td class="navigation">
<h2>Castle Game Engine</h2><p><a href="introduction.html" class="navigation">Introduction</a></p><p><a href="AllUnits.html" class="navigation">Units</a></p><p><a href="ClassHierarchy.html" class="navigation">Class Hierarchy</a></p><p><a href="AllClasses.html" class="navigation">Classes, Interfaces, Objects and Records</a></p><p><a href="AllTypes.html" class="navigation">Types</a></p><p><a href="AllVariables.html" class="navigation">Variables</a></p><p><a href="AllConstants.html" class="navigation">Constants</a></p><p><a href="AllFunctions.html" class="navigation">Functions and Procedures</a></p><p><a href="AllIdentifiers.html" class="navigation">Identifiers</a></p></td><td class="content">
<h1 class="unit">Unit CastleVideos</h1>
<table class="sections wide_list">
<tr>
<td><a class="section" href="#PasDoc-Description">Description</a></td><td><a class="section" href="#PasDoc-Uses">Uses</a></td><td><a class="section" href="#PasDoc-Classes">Classes, Interfaces, Objects and Records</a></td><td><a class="section" href="#PasDoc-FuncsProcs">Functions and Procedures</a></td><td>Types</td><td><a class="section" href="#PasDoc-Constants">Constants</a></td><td><a class="section" href="#PasDoc-Variables">Variables</a></td></tr></table>
<a name="PasDoc-Description"></a><h2 class="description">Description</h2>
<p>
Video (movie) data (<a class="normal" href="CastleVideos.TVideo.html">TVideo</a> and helpers).</p>
<a name="PasDoc-Uses"></a><h2 class="uses">Uses</h2>
<ul class="useslist"><li>SysUtils</li><li><a href="CastleImages.html">CastleImages</a></li><li>FGL</li></ul><h2 class="overview">Overview</h2>
<a name="PasDoc-Classes"></a><h3 class="cio">Classes, Interfaces, Objects and Records</h3>
<table class="classestable wide_list">
<tr class="listheader">
<th class="itemname">Name</th>
<th class="itemdesc">Description</th>
</tr>
<tr class="list">
<td class="itemname">Class <a class="bold" href="CastleVideos.EInvalidFadeFrames.html"><code>EInvalidFadeFrames</code></a></td>
<td class="itemdesc"> </td>
</tr>
<tr class="list2">
<td class="itemname">Class <a class="bold" href="CastleVideos.TVideo.html"><code>TVideo</code></a></td>
<td class="itemdesc">Video.</td>
</tr>
<tr class="list">
<td class="itemname">Class <a class="bold" href="CastleVideos.TVideosCache.html"><code>TVideosCache</code></a></td>
<td class="itemdesc">A cache of loaded videos.</td>
</tr>
</table>
<a name="PasDoc-FuncsProcs"></a><h3 class="summary">Functions and Procedures</h3>
<table class="summary wide_list">
<tr class="list">
<td class="itemcode"><code>function <b><a href="CastleVideos.html#FfmpegVideoMimeType">FfmpegVideoMimeType</a></b>(const MimeType: string; const FfmpegOutput: boolean): boolean;</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code>function <b><a href="CastleVideos.html#FfmpegExecutable">FfmpegExecutable</a></b>(const ExceptionOnError: boolean): string;</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code>procedure <b><a href="CastleVideos.html#FfmpegExecute">FfmpegExecute</a></b>(const Executable: string; const Parameters: array of string);</code></td>
</tr>
</table>
<a name="PasDoc-Constants"></a><h3 class="summary">Constants</h3>
<table class="summary wide_list">
<tr class="list">
<td class="itemcode"><code><b><a href="CastleVideos.html#DefaultFramesPerSecond">DefaultFramesPerSecond</a></b> = 25.0;</code></td>
</tr>
</table>
<a name="PasDoc-Variables"></a><h3 class="summary">Variables</h3>
<table class="summary wide_list">
<tr class="list">
<td class="itemcode"><code><b><a href="CastleVideos.html#MaximumVideoLength">MaximumVideoLength</a></b>: Cardinal = 1 * 60 * 25;</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code><b><a href="CastleVideos.html#LogVideosCache">LogVideosCache</a></b>: boolean = false;</code></td>
</tr>
</table>
<h2 class="description">Description</h2>
<h3 class="detail">Functions and Procedures</h3>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="FfmpegVideoMimeType"></a><code>function <b>FfmpegVideoMimeType</b>(const MimeType: string; const FfmpegOutput: boolean): boolean;</code></td>
</tr>
<tr><td colspan="1">
<p>
Does given MIME type looks like a video file extension that can be handled (encoded or decoded) by ffmpeg.
<p>FfmpegOutput = <code>True</code> means that you want to encode this video (use this as output of ffmpeg). FfmpegOutput = <code>False</code> means you want to decode the video, that is use this as an input to ffmpeg.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="FfmpegExecutable"></a><code>function <b>FfmpegExecutable</b>(const ExceptionOnError: boolean): string;</code></td>
</tr>
<tr><td colspan="1">
<p>
Returns full path to ffmpeg-compatible executable.
<p>When not found: </p>
<ul class="paragraph_spacing">
<li><p>If ExceptionOnError then we raise an exception.</p></li>
<li><p>If not ExceptionOnError then we simply return ''.</p></li>
</ul>
<p></p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="FfmpegExecute"></a><code>procedure <b>FfmpegExecute</b>(const Executable: string; const Parameters: array of string);</code></td>
</tr>
<tr><td colspan="1">
<p>
Execute ffmpeg. 1st parameter must not be ''. It should usually be calculated by <a class="normal" href="CastleVideos.html#FfmpegExecutable">FfmpegExecutable</a>.</p>
</td></tr>
</table>
<h3 class="detail">Constants</h3>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="DefaultFramesPerSecond"></a><code><b>DefaultFramesPerSecond</b> = 25.0;</code></td>
</tr>
<tr><td colspan="1">
</td></tr>
</table>
<h3 class="detail">Variables</h3>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="MaximumVideoLength"></a><code><b>MaximumVideoLength</b>: Cardinal = 1 * 60 * 25;</code></td>
</tr>
<tr><td colspan="1">
<p>
Maximum number of video frames to read, for <a class="normal" href="CastleVideos.TVideo.html#LoadFromFile">TVideo.LoadFromFile</a>.
<p>This prevents using up all the memory by accidentaly trying to read a long movie. Remember that our current implementation is <b>not</b> suited for long movies, it will load very slowly and consume a lot of memory. See <a href="http://castle-engine.sourceforge.net/x3d_implementation_texturing.php">http://castle-engine.sourceforge.net/x3d_implementation_texturing.php</a> notes about MovieTexture.
<p>By default this is equal to 1 minute, for 25 frames-per-second movie. Even this can eat 2 GB for 640 x 350 resolution.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="LogVideosCache"></a><code><b>LogVideosCache</b>: boolean = false;</code></td>
</tr>
<tr><td colspan="1">
<p>
Log video cache events. Allows to see how the cache performs, and also how long it takes to load videos (useful, as some videos may be already lengthy).
<p>Meaningful only if you initialized log (see <a class="normal" href="CastleLog.html">CastleLog</a> unit) by <a class="normal" href="CastleLog.html#InitializeLog">InitializeLog</a> first.</p>
</td></tr>
</table>
<!-- Piwik -->
<script type="text/javascript">
var _paq = _paq || [];
_paq.push(["trackPageView"]);
_paq.push(["enableLinkTracking"]);
(function() {
var u=(("https:" == document.location.protocol) ? "https" : "http") + "://michalis.ii.uni.wroc.pl/piwik-castle-engine/";
_paq.push(["setTrackerUrl", u+"piwik.php"]);
_paq.push(["setSiteId", "1"]);
var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript";
g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Piwik Code -->
<noscript>
<!-- Piwik Image Tracker -->
<img src="http://michalis.ii.uni.wroc.pl/piwik-castle-engine/piwik.php?idsite=1&rec=1" style="border:0" alt="" />
<!-- End Piwik -->
</noscript>
<hr noshade size="1"><span class="appinfo"><em>Generated by <a href="http://pasdoc.sourceforge.net/">PasDoc 0.13.0</a> on 2015-06-15 04:43:13</em>
</span>
</td></tr></table></body></html>
|