<?xml version="1.0"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
          "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [

<!ENTITY % image-entities SYSTEM "image.entities">
%image-entities;
<!ENTITY % version-entities SYSTEM "version.entities">
%version-entities;

<!ENTITY START SYSTEM "start.xml">
<!ENTITY GENERAL SYSTEM "general.xml">
<!ENTITY DEPENDENCIES SYSTEM "dependencies.xml">

<!ENTITY GETTING SYSTEM "getting.xml">
<!ENTITY USING SYSTEM "using.xml">
<!ENTITY TROUBLESHOOTING SYSTEM "troubleshooting.xml">

<!ENTITY GIT SYSTEM "git.xml">
<!ENTITY DEVELOPING SYSTEM "developing.xml">

<!ENTITY LEGAL SYSTEM "legal.xml">
]>

<article class="faq" id="index">
  <articleinfo>
    <title>GStreamer FAQ (&GST_VERSION;)</title>
    <abstract>
      <para>
        This is the FAQ for GStreamer, a multimedia framework.
        Questions and answers range from general information to
        deep-down-and-dirty compilation issues.
      </para>
    </abstract>

<!--
    <revhistory>
      <revision>
        <revnumber>0.2.1</revnumber>
        <date>2006-05-19</date>
        <revremark>Some updates for GStreamer-0.10</revremark>
      </revision>

      <revision>
        <revnumber>0.2.0</revnumber>
        <date>2006-03-16</date>
        <revremark>Review and update whole document.</revremark>
      </revision>

      <revision>
        <revnumber>0.1.1</revnumber>
        <date>2003-04-24</date>
        <revremark>Added Q&amp;A about developing with uninstalled copy.</revremark>
      </revision>

      <revision>
        <revnumber>0.1.0</revnumber>
        <date>2002-10-01</date>
        <revremark>Initial conversion from FAQ database.</revremark>
      </revision>
    </revhistory>
-->

  </articleinfo>

  &START;
  &GENERAL;
  &DEPENDENCIES;

  &GETTING;
  &USING;
  &TROUBLESHOOTING;

  &GIT;
  &DEVELOPING;

  &LEGAL;

</article>
