Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 874255f3b26b44feb57fbe38a7384518 > files > 149

gmerlin-0.4.1-2mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>gmerlin: /home/mandrake/rpm/BUILD/gmerlin-0.4.1/include/gmerlin/edl.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="dir_9de5cad15617e449f29680677e022ed8.html">include</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_4a3f2046eda2c9424010fb7393a61021.html">gmerlin</a>
  </div>
</div>
<div class="contents">
<h1>edl.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*****************************************************************</span>
<a name="l00002"></a>00002 <span class="comment"> * gmerlin - a general purpose multimedia framework and applications</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> * Copyright (c) 2001 - 2008 Members of the Gmerlin project</span>
<a name="l00005"></a>00005 <span class="comment"> * gmerlin-general@lists.sourceforge.net</span>
<a name="l00006"></a>00006 <span class="comment"> * http://gmerlin.sourceforge.net</span>
<a name="l00007"></a>00007 <span class="comment"> *</span>
<a name="l00008"></a>00008 <span class="comment"> * This program is free software: you can redistribute it and/or modify</span>
<a name="l00009"></a>00009 <span class="comment"> * it under the terms of the GNU General Public License as published by</span>
<a name="l00010"></a>00010 <span class="comment"> * the Free Software Foundation, either version 2 of the License, or</span>
<a name="l00011"></a>00011 <span class="comment"> * (at your option) any later version.</span>
<a name="l00012"></a>00012 <span class="comment"> *</span>
<a name="l00013"></a>00013 <span class="comment"> * This program is distributed in the hope that it will be useful,</span>
<a name="l00014"></a>00014 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00015"></a>00015 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span>
<a name="l00016"></a>00016 <span class="comment"> * GNU General Public License for more details.</span>
<a name="l00017"></a>00017 <span class="comment"> *</span>
<a name="l00018"></a>00018 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
<a name="l00019"></a>00019 <span class="comment"> * along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.</span>
<a name="l00020"></a>00020 <span class="comment"> * *****************************************************************/</span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 <span class="preprocessor">#ifndef __BG_EDL_H_</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#define __BG_EDL_H_</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;gmerlin/parameter.h&gt;</span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;gmerlin/streaminfo.h&gt;</span>
<a name="l00027"></a>00027 
<a name="l00057"></a><a class="code" href="group__edl.html#g6dc66d5b84ca17c4ca477a741daba46c">00057</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_s</a> <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a>;
<a name="l00058"></a>00058 
<a name="l00059"></a>00059 
<a name="l00063"></a><a class="code" href="structbg__edl__segment__t.html">00063</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>
<a name="l00064"></a>00064   {
<a name="l00065"></a><a class="code" href="structbg__edl__segment__t.html#25aeab6190f3854a879f8c2d3644f484">00065</a>   <span class="keywordtype">char</span> * <a class="code" href="structbg__edl__s.html#d1a0bb904ade98316ab8f7cc3bdc217e" title="Filename if all streams are from the same file.">url</a>;   
<a name="l00066"></a>00066 
<a name="l00067"></a><a class="code" href="structbg__edl__segment__t.html#703d06a00cd99f4214600e97ec3dca33">00067</a>   <span class="keywordtype">int</span> track;        
<a name="l00068"></a><a class="code" href="structbg__edl__segment__t.html#d13a3c8b4627132686468c11c27ac77f">00068</a>   <span class="keywordtype">int</span> stream;       
<a name="l00069"></a><a class="code" href="structbg__edl__segment__t.html#2aeb4c272e01592b6da092491c289f4b">00069</a>   <span class="keywordtype">int</span> timescale;    
<a name="l00070"></a>00070     
<a name="l00071"></a><a class="code" href="structbg__edl__segment__t.html#13ebdef4ca5845897a79bba2cbaaa8fe">00071</a>   int64_t src_time; 
<a name="l00072"></a>00072   
<a name="l00073"></a>00073   <span class="comment">/* Time and duration within the destination in destination</span>
<a name="l00074"></a>00074 <span class="comment">     timescale */</span>
<a name="l00075"></a><a class="code" href="structbg__edl__segment__t.html#e3c8c8fa5fc7ae071f752a65772ecfba">00075</a>   int64_t dst_time;  
<a name="l00076"></a><a class="code" href="structbg__edl__segment__t.html#6265d5e66bc5dc61bfba9e7cc57235b9">00076</a>   int64_t dst_duration; 
<a name="l00077"></a>00077 
<a name="l00078"></a>00078   <span class="comment">/*  */</span>
<a name="l00079"></a><a class="code" href="structbg__edl__segment__t.html#5986c6ffd144c341a3db454bcedee161">00079</a>   int32_t speed_num; 
<a name="l00080"></a><a class="code" href="structbg__edl__segment__t.html#59ae1189f9f82e49078f076020779e1a">00080</a>   int32_t speed_den; 
<a name="l00081"></a>00081   } <a class="code" href="structbg__edl__segment__t.html" title="One segment of a physical stream to appear in a logical stream.">bg_edl_segment_t</a>;
<a name="l00082"></a>00082 
<a name="l00086"></a><a class="code" href="structbg__edl__stream__t.html">00086</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>
<a name="l00087"></a>00087   {
<a name="l00088"></a><a class="code" href="structbg__edl__stream__t.html#cb23dc9f1303ebfb50a845f14271be90">00088</a>   <a class="code" href="structbg__edl__segment__t.html" title="One segment of a physical stream to appear in a logical stream.">bg_edl_segment_t</a> * segments; 
<a name="l00089"></a><a class="code" href="structbg__edl__stream__t.html#7387214199b64e1a6cbfc2ff37cda7d0">00089</a>   <span class="keywordtype">int</span> num_segments;              
<a name="l00090"></a><a class="code" href="structbg__edl__stream__t.html#0063f97888b724c2d5084e5084cb7b44">00090</a>   <span class="keywordtype">int</span> timescale;                 
<a name="l00091"></a>00091   } <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a>;
<a name="l00092"></a>00092 
<a name="l00096"></a><a class="code" href="structbg__edl__track__t.html">00096</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>
<a name="l00097"></a>00097   {
<a name="l00098"></a><a class="code" href="structbg__edl__track__t.html#a1b99e22bb3cce0109d81d5ee4b1ce26">00098</a>   <span class="keywordtype">char</span> * name; 
<a name="l00099"></a>00099   
<a name="l00100"></a><a class="code" href="structbg__edl__track__t.html#fced41ba8d833618415fcddf3db9607d">00100</a>   <span class="keywordtype">int</span> num_audio_streams;             
<a name="l00101"></a><a class="code" href="structbg__edl__track__t.html#b95fb91cba5887d56bf308b9f037282d">00101</a>   <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * audio_streams; 
<a name="l00102"></a>00102 
<a name="l00103"></a><a class="code" href="structbg__edl__track__t.html#eb86b0dec892d8828f809b7842288816">00103</a>   <span class="keywordtype">int</span> num_video_streams;             
<a name="l00104"></a><a class="code" href="structbg__edl__track__t.html#bc69ceb036b4a988e8697129c7931ddd">00104</a>   <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * video_streams; 
<a name="l00105"></a>00105 
<a name="l00106"></a><a class="code" href="structbg__edl__track__t.html#0052794862edbd6e615cf087a03d5c54">00106</a>   <span class="keywordtype">int</span> num_subtitle_text_streams;     
<a name="l00107"></a><a class="code" href="structbg__edl__track__t.html#8386fc12f42c678909abb651a0ab407e">00107</a>   <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * subtitle_text_streams; 
<a name="l00108"></a>00108 
<a name="l00109"></a><a class="code" href="structbg__edl__track__t.html#d23286fddd191b13a68a7423efa00d1f">00109</a>   <span class="keywordtype">int</span> num_subtitle_overlay_streams;  
<a name="l00110"></a><a class="code" href="structbg__edl__track__t.html#c59f25263c8fce1f5cb0c8d9987914be">00110</a>   <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * subtitle_overlay_streams; 
<a name="l00111"></a>00111   
<a name="l00112"></a>00112   } <a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a>;
<a name="l00113"></a>00113 
<a name="l00117"></a><a class="code" href="structbg__edl__s.html">00117</a> <span class="keyword">struct </span><a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_s</a>
<a name="l00118"></a>00118   {
<a name="l00119"></a><a class="code" href="structbg__edl__s.html#9e4f2cc9308cc763f5dffdd4cf4e904b">00119</a>   <span class="keywordtype">int</span> <a class="code" href="structbg__edl__s.html#9e4f2cc9308cc763f5dffdd4cf4e904b" title="Number of logical tracks.">num_tracks</a>;             
<a name="l00120"></a><a class="code" href="structbg__edl__s.html#5cb1425b8956ecb97d9e1368d6c68e27">00120</a>   <a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a> * <a class="code" href="structbg__edl__s.html#5cb1425b8956ecb97d9e1368d6c68e27" title="Logical tracks.">tracks</a>;  
<a name="l00121"></a><a class="code" href="structbg__edl__s.html#d1a0bb904ade98316ab8f7cc3bdc217e">00121</a>   <span class="keywordtype">char</span> * <a class="code" href="structbg__edl__s.html#d1a0bb904ade98316ab8f7cc3bdc217e" title="Filename if all streams are from the same file.">url</a>;                 
<a name="l00122"></a>00122   };
<a name="l00123"></a>00123 
<a name="l00128"></a>00128 <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * <a class="code" href="group__edl.html#ge2650d8ae456dab62384e72576b01f27" title="Create an empty EDL.">bg_edl_create</a>();
<a name="l00129"></a>00129 
<a name="l00135"></a>00135 <a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a> * <a class="code" href="group__edl.html#gcf4d5e01cc8d256995c30228f8f2b7b8" title="Append a track to the EDL.">bg_edl_add_track</a>(<a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * e);
<a name="l00136"></a>00136 
<a name="l00142"></a>00142 <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * <a class="code" href="group__edl.html#g7606ee48defff4e4d785705d4d171d8a" title="Append an audio stream to an EDL track.">bg_edl_add_audio_stream</a>(<a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a> * t);
<a name="l00143"></a>00143 
<a name="l00149"></a>00149 <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * <a class="code" href="group__edl.html#g138e408c013cee9f66c20ad8a8023edf" title="Append a video stream to an EDL track.">bg_edl_add_video_stream</a>(<a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a> * t);
<a name="l00150"></a>00150 
<a name="l00156"></a>00156 <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * <a class="code" href="group__edl.html#g3671c531a8c3ef92ea147341a5df1006" title="Append a text subtitle stream to an EDL track.">bg_edl_add_subtitle_text_stream</a>(<a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a> * t);
<a name="l00157"></a>00157 
<a name="l00163"></a>00163 <a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * <a class="code" href="group__edl.html#gb9b48f7a24b6407b1e84497df5efa0c2" title="Append an overlay subtitle stream to an EDL track.">bg_edl_add_subtitle_overlay_stream</a>(<a class="code" href="structbg__edl__track__t.html" title="A locical track.">bg_edl_track_t</a> * t);
<a name="l00164"></a>00164 
<a name="l00170"></a>00170 <a class="code" href="structbg__edl__segment__t.html" title="One segment of a physical stream to appear in a logical stream.">bg_edl_segment_t</a> * <a class="code" href="group__edl.html#gf0e038ae977627cf89ce77afcd883274" title="Append a segment to an EDL stream.">bg_edl_add_segment</a>(<a class="code" href="structbg__edl__stream__t.html" title="A locical stream.">bg_edl_stream_t</a> * s);
<a name="l00171"></a>00171 
<a name="l00177"></a>00177 <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * <a class="code" href="group__edl.html#gacdacf006599a37ea0cf2a70354c95fb" title="Copy an entire EDL.">bg_edl_copy</a>(<span class="keyword">const</span> <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * e);
<a name="l00178"></a>00178 
<a name="l00183"></a>00183 <span class="keywordtype">void</span> <a class="code" href="group__edl.html#g753057c6b4538199cfc9b88fc59ab010" title="Destroy an EDL and free all memory.">bg_edl_destroy</a>(<a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * e);
<a name="l00184"></a>00184 
<a name="l00191"></a>00191 <span class="keywordtype">void</span> <a class="code" href="group__edl.html#g83d62c6aa46ad9b8caf06ada9d407fe3" title="Dump an EDL to stderr.">bg_edl_dump</a>(<span class="keyword">const</span> <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * e);
<a name="l00192"></a>00192 
<a name="l00200"></a>00200 <span class="keywordtype">void</span> <a class="code" href="group__edl.html#gf161b06141f2340805b4d43fbc4651f6" title="Save an EDL to an xml file.">bg_edl_save</a>(<span class="keyword">const</span> <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * e, <span class="keyword">const</span> <span class="keywordtype">char</span> * filename);
<a name="l00201"></a>00201 
<a name="l00207"></a>00207 <a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * <a class="code" href="group__edl.html#g617615bbd944dec4522b89b0929b8701" title="Load an EDL from an xml file.">bg_edl_load</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * filename);
<a name="l00208"></a>00208 
<a name="l00226"></a>00226 <span class="keywordtype">void</span> <a class="code" href="group__edl.html#gb694189899b657b4d6ebd399c78e7bc0" title="Append a bg_track_info_t to the EDL.">bg_edl_append_track_info</a>(<a class="code" href="structbg__edl__s.html" title="EDL structure.">bg_edl_t</a> * e,
<a name="l00227"></a>00227                               <span class="keyword">const</span> <a class="code" href="structbg__track__info__t.html" title="Track info.">bg_track_info_t</a> * info, <span class="keyword">const</span> <span class="keywordtype">char</span> * url,
<a name="l00228"></a>00228                               <span class="keywordtype">int</span> index, <span class="keywordtype">int</span> num_tracks, <span class="keyword">const</span> <span class="keywordtype">char</span> * name);
<a name="l00229"></a>00229 
<a name="l00235"></a>00235 <span class="preprocessor">#endif // __BG_EDL_H_</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 22 01:28:04 2009 for gmerlin by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>