Skip to content

Commit d7fc819

Browse files
update doxygen
1 parent b94b890 commit d7fc819

File tree

2 files changed

+73
-9
lines changed

2 files changed

+73
-9
lines changed

doc/code/Doxyfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ FULL_PATH_NAMES = YES
154154
# will be relative from the directory where doxygen is started.
155155
# This tag requires that the tag FULL_PATH_NAMES is set to YES.
156156

157-
STRIP_FROM_PATH = ../..
157+
STRIP_FROM_PATH = .
158158

159159
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
160160
# path mentioned in the documentation of a class, which tells the reader which

doc/code/index.doxygen

Lines changed: 72 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,80 @@
11
/** @mainpage AvTranscoder
22
*
3-
* See the website for a full presentation and the general documentation.
3+
* An High Level API for transform medias.<br/>
4+
* Based on FFMpeg / libav projects.
45
*
5-
* https://github.com/MarcAntoine-Arnaud/avTranscoder
6+
* <h2>Links</h2>
7+
* <table style="border-width:0">
8+
* <tr><td>github:</td><td>https://github.com/avTranscoder/avTranscoder</td></tr>
9+
* <tr><td>openhub:</td><td>https://www.openhub.net/p/avTranscoder</td></tr>
10+
* <tr><td>travis-ci:</td><td>https://travis-ci.org/avTranscoder/avTranscoder</td></tr>
11+
* <tr><td>drone-io:</td><td>https://drone.io/github.com/avTranscoder/avTranscoder/latest</td></tr>
12+
* <tr><td>coverity-scan:</td><td>https://scan.coverity.com/projects/2626</td></tr>
13+
* </table>
614
*
7-
* - using C++ API on FFMpeg / LibAV
8-
* - participate to the project developpement
15+
* <h2>Authors</h2>
16+
* <ul>
17+
* <li>Marc-Antoine Arnaud</li>
18+
* <li>Valentin Noël</li>
19+
* <li>Clément Champetier</li>
20+
* </ul>
21+
*
22+
* <h2>Main features</h2>
23+
* The library is here to provide a simple managment of the Transform process.<br/>
24+
* Main features attending are:
25+
* <ul>
26+
* <li>process each stream without different calls</li>
27+
* <li>specify stream process before the begin of the process</li>
28+
* <li>minimize process: only rewrap, or transcode without transformation if possible</li>
29+
* <li>manage different length of stream (generate silence/black)</li>
30+
* <li>overload of each sub-component for specific integration, like proprietary wrapper</li>
31+
* <li>multi-languages usages (C++, Java, Python)</li>
32+
* </ul>
33+
*
34+
* <h2>High Level API</h2>
35+
* <h3>Transcoder</h3>
36+
* The library provide the <b>Transcoder</b> class, which was the highest level of managment.<br/>
37+
* This classe manage progress of process for each <b>StreamTranscoder</b>.<br/>
38+
* Each <b>StreamTranscoder</b> definition can be added to the <b>Transcoder</b>.<br/>
39+
* After declaration, the process() method can process file, which call processFrame() in loop.<br/>
40+
*
41+
* <h3>StreamTranscoder</h3>
42+
* The <b>StreamTranscoder</b> will be here to abstract call for different case as:
43+
* <ul>
44+
* <li>simple rewrap stream</li>
45+
* <li>transcode stream (decoding, transform and encoding)</li>
46+
* <li>encode from dummy (silence/black or external input source), without decoding step</li>
47+
* </ul>
48+
* Each <b>StreamTranscoder</b> is able to process a frame, and in background process a rewrap or the transcode process.<br/>
49+
*
50+
* <h2>Lowest API</h2>
51+
* <h3>InputFile</h3>
52+
* This object manage the input media, providing the analisys methods to get metadatas on wrapper and each streams.<br/>
53+
* It also the entry point to get the <b>InputStream</b> which was the coded stream.<br/>
954
*
10-
* Authors
11-
* - Marc-Antoine Arnaud
12-
* - Valentin Noël
13-
* - Clément Champetier
55+
* <h3>OutputFile</h3>
56+
* The equivalent to the <b>InputFile</b> is the <b>OutputFile</b>. Each output stream require a decalaration, needed to wrote headers of files (wrote during the beginWrap() call).<br/>
57+
* As the <b>InputFile</b> provide the <b>InputStream</b> to describe stream, the <b>OutputFile</b> as his <b>OutputStream</b> to put coded stream into the output file.<br/>
58+
* Using one <b>InputStream</b> and one <b>OutputStream</b>, each <b>DataStream</b> can be passed to provide a rewrap process.<br/>
59+
*
60+
* <h3>InputEssence</h3>
61+
* The <b>InputEssence</b> provide every time an image, from a coded stream or from an external buffer.<br/>
62+
* It's allow the possiblity to generate silence or black stream, or also switch between the coded stream and a factice (to complete stream with different durations).<br/>
63+
* The switch between source was managed inside the <b>StreamTranscoder</b> class.
64+
*
65+
* <h3>OutputEssence</h3>
66+
* As the <b>InputEssence</b> can decode the stream, the <b>OutputEssence</b> will encode our images to provide the coded stream.<br/>
67+
* It's the encoder cofigured with some <b>Profile</b>.
1468
*
69+
* <h3>EssenceTransform</h3>
70+
* For adapt some images to the output format, some transformation can be done.<br/>
71+
* This step will only provide pixel/sample transformation (point to point transform). No resize, resampling can be applyed in this step.
72+
*
73+
* <h2>Low API</h2>
74+
* Each component of the Lowest API call method present in the libav/ffmpeg API. You can depend on one of these project.<br/>
75+
* Newest versions of libav/ffmpeg are recommended.<br/>
76+
* <br/>
77+
* <br/>
78+
*
1579
*/
1680

0 commit comments

Comments
 (0)