Commit graph

108 commits

Author SHA1 Message Date
Peter Hutterer f0152b6a0a doc: add the new documentation pages to the docs
And make them a subpage of the Pipewire topic
2021-07-29 14:25:01 +10:00
Wim Taymans ab99f4d027 doc: add general audio configuration 2021-07-26 09:35:05 +02:00
Wim Taymans 0346c616e2 doc: add midi doc
Reorganize the docs a little. First a short intro, then list the use
cases, then the responsabilities of the various components, then
the implementation in various places.
2021-07-23 11:05:59 +02:00
Wim Taymans 762e549027 doc: add portal document 2021-07-23 09:57:45 +02:00
Wim Taymans 79233aee52 doc: document access control
A first stab at the basics of access control documentation and the
use cases solved by the session manager.
2021-07-22 14:52:57 +02:00
Peter Hutterer 765bd417de doc: link the most recent modules as subpages
This sorts them correctly in the navigation bar
2021-07-05 08:57:41 +00:00
Peter Hutterer d6bb69f2bd doc: add the configuration file format to the online documentation
Mostly copied from the man page but with a more applicable example.
2021-07-05 08:57:41 +00:00
Niklāvs Koļesņikovs 0436793299 doc/meson.build: pruning of unused find_program() 2021-06-29 17:23:37 +00:00
Niklāvs Koļesņikovs e062c4d8de meson.build: adds summary() to optional programs 2021-06-29 17:23:37 +00:00
Peter Hutterer f181232a61 doc: add the documentation infrastructure for pipewire modules
All empty pages for now but at least this makes them show up in the
documentation.
2021-06-25 08:42:24 +00:00
Peter Hutterer 9956637ce5 doc: drop unused variable from meson.build 2021-06-25 08:42:24 +00:00
Peter Hutterer 50e015fa87 doc: add a reference to the PipeWire Under The Hood post
A good writeup that provides more details than our own documentation, so
let's at least link to it.
2021-06-24 10:54:13 +00:00
Peter Hutterer 0f0565175e doc: rework the SPA plugin documentation
Add more info to the main SPA page and split the design vs plugin pages up,
together with some more documentation to ideally lower make this easier to
understand on a glance.

Most of the actual plugin loading documentation are unmodified.
2021-06-24 10:54:13 +00:00
Peter Hutterer 8a25076c4e doc: define __USE_ISOC11 for doxygen to pick up the logger #defines
This way doxygen will pick up the #defines for spa_log_error, etc. Without
this define it uses the else part of the condition which uses macros to
construct function names.
2021-06-24 10:54:13 +00:00
Barnabás Pőcze a168e4261f doc: move color overrides into light color scheme block
Otherwise when a user is visiting with dark color scheme
preference, the code fragments would appear with far too
bright colors.
2021-06-15 17:58:06 +00:00
Peter Hutterer ed3f882fa9 test: add the pwtest test framework
Heavily inspired by libinput's litest framework (built around check), this is
a from-scratch framework that simplifies adding tests for various parts of
pipewire. See the pwtest.h documentation for details but the basics are:

- PW_TEST() and PWTEST_SUITE() specify the tests to be run
- Test are run in forked processes, any errors/signals are caught and printed
  to the log
- Tests have a custom pipewire daemon started on demand to talk to [1]. The
  daemon's log is available in the test output.
- Output is YAML to be processed into whatever format needed

[1] There are limits here, since we can't emulate devices yet there is only
so much we can rely on with the daemon.
2021-06-09 18:00:06 +10:00
Peter Hutterer b64f0d581f doc: switch from .md to .dox files and impose some general structure
This is an attempt of breaking up the documentation, currently spread across
several pages. We're left with a few high-level topics with various things
grouped underneath those.

Further refinement is necessary, but this can now be done in incremental steps
over massive reworks.
2021-05-26 10:02:10 +02:00
Peter Hutterer 46a39e0ba7 doc: switch the spa documentation to doxygen 2021-05-26 10:02:10 +02:00
Peter Hutterer 9ed9980fa2 doc: change the tutorials to doxygen sources
While doxygen can handle markdown pages, support for it is very limited:
markdown pages can only be included as a whole page, they get an automatic
title (custom titles are possible but aren't standard markdown) and it's not
possible to use \subpage without messing with the markdown again. Any markdown
page will thus end up as separate item in the doxygen output, not really
suitable for generating a good page hiearchy.

Let's switch the tutorial to use doxygen directly instead of markdown, short
of using code/endcode instead of markdown's ``` there isn't that much
difference anyway but it allows us to structure things nicer in the online
docs.
2021-05-26 10:02:10 +02:00
Peter Hutterer fce28ac59b doc: remove duplicate tutorial reference 2021-05-26 10:02:10 +02:00
Peter Hutterer 6cf819ab1c doc: namespace the pipewire md files 2021-05-26 10:02:10 +02:00
Peter Hutterer b00e524341 doc: rename design.txt to design.md
It's a valid markdown file, let's have only one file type here.
2021-05-26 10:02:10 +02:00
Peter Hutterer f8243f3cc1 doc: move spa/foo.md to spa-foo.md
Flatten the hierarchy a bit to make it easier to handle.
2021-05-26 10:02:10 +02:00
Peter Hutterer 851a64d8c8 doc: add spa to doxygen output
This requires a helper script: doxygen doesn't differ between static methods
and static inline methods. EXTRACT_STATIC defines whether it parses *any*
static method but we're currently using all C files as input files as well. We
cannot convince doxygen to just parse static inline functions in header files
so for SPA we hack around this: meson passes the spa headers to a shell script
with simply copies those changed to `/* static */ inline void (foo)` and doxygen
then runs on those header files.

The result: we get all spa functions added to your doxygen output at the cost
of a few sed calls.
2021-05-26 07:44:55 +00:00
Peter Hutterer 079b90bde5 doc: add a custom doxygen theme based on doxygen-awesome
Theme from doxygen-awesome-css with custom modifications based on the
pipewire.org website to use the same type of blue, grey, etc.

doxygen-awesome-css is MIT licensed, see
https://github.com/jothepro/doxygen-awesome-css
2021-05-21 16:08:46 +10:00
Peter Hutterer f47f85bbcb doc: fix broken references
These pages never existed, let's not try to reference them.
2021-05-21 15:04:22 +10:00
Peter Hutterer f0d3f1f9d2 doc: remove trailing whitespace
My vim/git setup wants to fix those on every commit which gets a bit annoying,
let's just remove them: sed -i 's/ *$//g' $(git ls-files doc)
2021-05-07 10:27:26 +10:00
Peter Hutterer ac05f6bb03 doc: add the various markdown prose docs to the doxygen output
Note that the order of the includes matters - that's how doxygen will sort
them. There is no specific structure other than the include order - one reason
why the headers are being changed. Without polluting the markdown files with
doxygen commands we cannot use \subpage, so all files convert to a regular
\page and are listed as flat hierarchy in the sidebar (and in Related Pages).

Changing the headers at least provides some visual grouping with comon
prefixes.
2021-05-07 10:27:26 +10:00
Peter Hutterer d10381dfc3 dox: keep the doxygen input files as array in meson
Keep all files as strings in an array so we can add them to the custom command
input list - this way meson will correctly rebuild documentation on changes.
2021-05-07 10:27:26 +10:00
Peter Hutterer 1fd56a6d26 doc: reduce the Doxyfile to only non-default options
This provides a much easier overview of what the actual changes are to
doxygen's default values.
2021-05-07 10:27:26 +10:00
Peter Hutterer 68080ec531 doc: fix a typo 2021-05-07 10:27:26 +10:00
Peter Hutterer 3234037a71 doc/spa: add more markdown tags to render better 2021-05-07 10:27:26 +10:00
Andrea Gelmini 85b136d8ce Fix typos
Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2021-04-30 16:27:34 +00:00
Andrea Gelmini 47ef2b6b09 Fix typos 2021-04-30 07:40:20 +00:00
Peter Hutterer 83ed03d4cf Remove .gitignore files in subdirectories
With meson we no longer have generated files messing up the tree, so we no
longer need these files.
2021-04-20 07:10:15 +00:00
Niklāvs Koļesņikovs 4bfa4a3964 doc: add docdir option
As patched in Gentoo.

Fixes #1057
2021-04-16 09:26:35 +02:00
Peter Hutterer 223f20709d meson: replace join_paths(a, b) with a / b
More readable and from the meson reference manual:
(since 0.49.0) Using the/ operator on strings is equivalent to calling join_paths.
2021-04-15 06:57:00 +00:00
insop a9c247bdab Minor typo fixes 2021-03-13 21:13:01 +00:00
Wim Taymans 0855b1bb4b doc: add link to LAC 2020 paper 2021-02-12 13:27:38 +01:00
jasker5183 0dad70eb48 Add buffer.md to fix link in tutorial4.md 2021-01-22 14:07:59 +01:00
Léo Stefanesco 7f3a878dd3 Fix typos in architecture.md 2020-12-22 09:15:21 +00:00
Wim Taymans 77791bd427 doc: fix some typos 2020-11-27 17:35:25 +01:00
Wim Taymans c4aec3ef4e doc: fix typo 2020-09-19 13:34:33 +02:00
Richard 4be4a0b250 Update overview.md 2020-09-19 10:56:51 +00:00
Siwon Kang f7b22b934c doc: fix typos
Signed-off-by: Siwon Kang <siwon.kang@daimler.com>
2020-09-14 20:00:59 +02:00
Emmanuel Gil Peyrot 14fdf07e8f Run codespell on the entire codebase
This tool detects and fixes common English spelling mistakes, with
generally very few mistakes.

Here is the command I used to generate this commit.  There were a few
changes that had to be done manually, and of course adding the ignore
file:
```shell
codespell -I .codespell-ignore -x .codespell-ignore -w
```

I didn’t add it to the CI, but this would be a good place for it.
2020-08-17 17:16:31 +00:00
Wim Taymans 2176874687 doc: fix some spelling errors 2020-08-11 21:24:19 +02:00
Wim Taymans e71936f870 Improve naming
master -> driving
priority_master -> priority_driver
segment_master -> segment_owner
2020-08-06 13:49:33 +02:00
Wim Taymans edb3968c5c docs: some small fixes and updates 2020-08-02 20:14:04 +02:00
Wim Taymans 6e2d3feb07 doc: clarify version field in events 2020-07-27 16:47:30 +02:00