204 Commits
Author SHA1 Message Date
Michael Niedermayer 20cade1ba3 doc/developer: Favor SI units where applicable
This should make things more consistent over time

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-03-06 04:29:52 +00:00
Jack LauandGyan Doshi 8bf74556a1 doc/developer: Add Forgejo as a way to send patches
Signed-off-by: Jack Lau <jacklau1222gm@gmail.com>
2026-02-26 04:13:25 +00:00
Lynne 85e8e59001 Revert "doc/developer: Basic documentation for Source Plugins"
This reverts commit 67320e0627.

We do not want random forks or features.
2025-08-11 19:53:28 +09:00
Michael Niedermayer 67320e0627 doc/developer: Basic documentation for Source Plugins
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-08-11 12:33:16 +02:00
Timo Rothenpieler 262d41c804 all: fix typos found by codespell 2025-08-03 13:48:47 +02:00
Andreas Rheinhardt 890b8da1ce configure: Allow mixing declarations and statements
This C90 rule forces us to use a too big scope and should
therefore be dropped. Given that we already require C11,
all supported compilers can handle mixed declarations
and statements just fine.

Reviewed-by: Zhao Zhili <quinkblack-at-foxmail.com@ffmpeg.org>
Reviewed-by: Marvin Scholz <epirat07@gmail.com>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: softworkz . <softworkz-at-hotmail.com@ffmpeg.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-04-09 11:45:21 +02:00
Michael Niedermayer 469b7a0ee4 doc/developer: Better {} style rule
This makes developer.texi consistent with tools/patcheck

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-03-01 02:47:33 +01:00
Marvin Scholz 9cdd3cbe9b doc/developer: add examples to clarify code style
Given the frequency that new developers, myself included, get the
code style wrong, it is useful to add some examples to clarify how
things should be done.
2024-11-25 17:17:56 +01:00
Michael Niedermayer 7051825b01 doc/developer: Document relationship between git accounts and MAINTAINERS
This should have been documented long ago and i thought it was

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-11-20 21:28:14 +01:00
Lynne 2f888fb99e configure: drop yasm support
We started defauling to nasm 8 years ago.
We are still compatible with yasm 0.8.0, released in 2009. **15 years ago**.
The time has more than come to remove support for it.

Maintaining compatibility started cutting into writing new code long ago.
We still can't have 2-argument instructions, preprocessor booleans, and all
AVX2 code must still be wrapped in ifdefs. Newly added code often breaks this.
2024-10-06 01:32:47 +02:00
Michael Niedermayer 959cb2e2e3 doc/developer: Provide information about git send-email and gmail
The 2 links are the clearest i found.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-06-13 00:39:57 +02:00
Marcus B SpencerandStefano Sabatini 26084887b0 doc/developer: update outdated information
Codec IDs have split from `avcodec.h` into `codec_id.h` after commit
c6978418b8.

General documentation contents (which are now in
`general_contents.texi`) have split from the header in `general.texi`
after commit 6accb7718a.

Update the developer documentation to match these changes.

Signed-off-by: Marcus B Spencer <marcus@marcusspencer.xyz>
2024-06-03 10:58:31 +02:00
Michael Niedermayer 5a5422196d doc/developer: (security) researchers should be credited
Reviewed-by: Tomas Härdin <git@haerdin.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-04-03 21:38:24 +02:00
Anton Khirnov 75697836b1 Require compilers to support C11.
It should be available in all relevant modern compilers and will allow
us to use features like anonymous unions.

Note that stdatomic.h is still emulated on MSVC, as current versions
require the /experimental:c11atomics, and do not support
ATOMIC_VAR_INIT() anyway.
2024-02-18 07:38:28 +01:00
Jean-Baptiste KempfandJ. Dekker 6e26a5a64e doc/developer: require asm for RISC-V
Explicitly document our usage of assembly, following suit with other
architectures.

Signed-off-by: J. Dekker <jdek@itanimul.li>
2023-12-05 14:44:18 +01:00
Anton Khirnov 99fe00ab4b doc/developer: deduplicate commit message rules
The patches/committing section currently contains several
partially-overlapping rules on commit messages. Merge and simplify them
into one item.
2023-10-03 15:58:22 +02:00
Anton Khirnov 4c4bf54d99 doc/developer: drop an outdated item
It dates back to pre-2005 days, when people generally tended to commit
their work directly without going through the mailing list. Few
developers do it today, and never outside of their standalone modules.
This item is thus confusing and misleading and is better removed.
2023-10-03 15:58:22 +02:00
Anton Khirnov e898447661 doc/developer: add a code behaviour section to development policy
Document our longstanding de facto policies on things like correctness,
thread-safety, undefined behaviour, etc.
2023-10-03 15:58:22 +02:00
Anton Khirnov 836a8e116a doc/developer: fix a nonsense statement
Adding new fields to _functions_ makes no sense, it was supposed to be
structs.
2023-10-03 15:09:32 +02:00
Anton Khirnov f3ba1158e4 doc/developer: merge the 'contributing code' section into its parent chapter
The section consistes of a single short paragraph linking to other
chapters. The enclosing chapter also has no other sections, all other
text is placed in the chapter directly.
Keeping a separate section for this paragraph just adds more clutter.
2023-10-03 15:09:23 +02:00
Anton Khirnov 491a0ad0b9 doc/developer: move a sentence to a more appropriate place
It's targeted at our users, not developers, so it makes more sense to
group it with other text targeted at our users.
2023-10-03 15:09:13 +02:00
Michael Niedermayer 3323b515ab doc/developer: Require new modules to include tests
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2023-06-24 01:50:24 +02:00
Thilo Borgmann 4dd3f2098c doc/developer: mention samples-request for FATE upload requests 2023-04-23 21:45:40 +02:00
Anton Khirnov 49b733c73c doc/developer.texi: add a section on API/ABI compatibility
Document established practices in it.
2023-03-20 10:52:17 +01:00
Anton Khirnov f4dd302a38 doc/developer.texi: document checkasm 2023-03-20 10:52:17 +01:00
Anton Khirnov a36ad2c649 doc/developer.texi: document the use of other languages than C 2023-03-20 10:52:17 +01:00
Thilo Borgmann 6709e468f6 doc: Merge doc/dev_community/* and Code of Conduct into a seperate file
Remove doc/dev_communit markup files completely as they are at the wrong place.
Create a new community page, merging all of doc/dev_community and subsection Code of Conduct into a common place.
The corresponding patch to ffmpeg-web puts the Organisation & Code of Conduct into a seperate community chapter on the FFmpeg website.
2023-03-01 00:30:59 +01:00
Anton Khirnov 14c6093528 doc/developer.texi: extend and update naming conventions
Bring it up to date with current practice, as the current text does not
cover everything. Drop the reference to unprefixed exported symbols,
which do not exist anymore.
2022-11-23 10:43:41 +01:00
Anton Khirnov 2d172b89b2 doc/developer.texi: drop a misplaced sentence from code formatting section
It describes a general development policy, not code formatting. It is
also not true, as these days we tend to prioritize correctness, safety,
and completeness over code size.
2022-11-23 10:43:27 +01:00
Anton Khirnov d95d0b1b72 doc/developer.texi: move editor configuration under formatting
It logically belongs there.
2022-11-23 10:43:22 +01:00
Anton Khirnov 9177556bb9 doc/developer.texi: update the language feature section
It is currently very out of touch with reality.

* declare we are using C99 fully, rather than C90 plus extensions
* mention our use of stdatomic.h
* mention forbidden C99 features, like VLAs and complex numbers
2022-11-23 10:41:06 +01:00
Anton Khirnov 256db01851 doc/developer.texi: move the language feature section higher up
It makes more sense to first describe the language we are using and only
then document how to format code in it, rather than the reverse.
2022-11-23 10:41:01 +01:00
Anton Khirnov 6a3e174ad1 doc/developer.texi: refine the "contributing code" section
Drop the reference to directly committing code, because
- it is highly discouraged and very rarely done these days
- there is no good reason NOT to submit patches for review

Add a link to the development policy chapter.
2022-11-17 10:58:30 +01:00
Anton Khirnov 66871647dc doc/developer.texi: demote the "contributing" chapter to a section
It is very short and its main functions is linking to the
coding rules/submitting patches chapters.
2022-11-17 10:58:20 +01:00
Anton Khirnov c0c492dd47 doc/developer.texi: extend the argument for submitting patches
Stop talking about commercial programs, since this applies to any
downstream user.
2022-11-17 10:57:37 +01:00
Anton Khirnov 26080d1542 doc/developer.texi: improve the introductory text
Remove confusing references to "external" vs. "internal" developers.
2022-11-17 10:56:48 +01:00
Soft WorksandMarton Balint 89ba6e9a04 doc/developer: add description about safely sending patches via E-Mail clients
Signed-off-by: softworkz <softworkz@hotmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2021-11-13 19:55:20 +01:00
Andriy Gelman 6cd198860d fftools/ffmpeg: update text requesting samples
Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
Reviewed-by: Marton Balint <cus@passwd.hu>
2020-06-01 14:39:52 -04:00
Andreas Rheinhardt ed18ec5577 doc/developer.texi: Add variadic macros to allowed C language features
They are used in several places like CBS.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-03-26 19:29:54 +01:00
Rostislav Pehlivanov 62a7a70484 doc/developer: update style guidelines to include for loops with declarations
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-05-18 02:24:28 +01:00
Lou Logan 2f1963eedc doc/developer: remove merge request method of contributing
This seems to confuse Github users into thinking that we may accept pull
requests. We do not accept pull requests.

Sending patches to the ffmpeg-devel mailing list is our preferred method
for users to contribute code.

Signed-off-by: Lou Logan <lou@lrcd.com>
2018-04-06 13:24:18 -08:00
Lou Logan a2356e5091 doc/developer: update link to "sign-off" info
Found by Hendrik Schreiber.

Signed-off-by: Lou Logan <lou@lrcd.com>
2018-04-05 10:00:42 -08:00
Jim DeLaHuntandTimothy Gu d1266d9fa3 doc/developer: revise mailing list section
The Developer Documentation had instructions to
subscribe to the ffmpeg-cvslog email list. But that is
no longer accurate. For the purposes in this section --
review of patches, discussion of development issues --
ffmpeg_devel is the appropriate email list. Some developers
may want to monitor ffmpeg-cvslog, but it is not mandatory.

This is v3 of this doc, based on discussion in thread
<https://ffmpeg.org/pipermail/ffmpeg-devel/2017-November/220528.html>
and in response to docs Maintainer comments in
<https://ffmpeg.org/pipermail/ffmpeg-devel/2017-December/221596.html>.

1. In doc/developer.texi, add a new section about
ffmpeg-devel, based on existing text from ffmpeg-cvslog
section regarding discussion of patches and of
development issues. Reflect wording from discussion at
<https://ffmpeg.org/pipermail/ffmpeg-devel/2017-November/221199.html>
but with copy-editing to make wording more concise.

2. In doc/developer.texi, rewrite the ffmpeg-cvslog section
to match the current usage of ffmpeg-cvslog. Some
developers choose to follow this list, but it is not
mandatory.

There are a lot of improvements possible to the
Developer Documentation page, beyond this refactoring.
However, making those improvements is a much bigger
and more difficult task.  This change is "low hanging
fruit".

Signed-off-by: Jim DeLaHunt <from.ffmpeg-dev@jdlh.com>
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2017-12-05 02:06:10 -08:00
Jim DeLaHuntandTimothy Gu 42a22d01d1 doc: reorganize developer.texi chapter hierarchy
Previously, the Developer Documentation <ffmpeg.org/developer.html>
contained a single chapter, "1. Developer Guide," with all content under
that single chapter. Thus the document structure was one level deeper
and more complicated than it needed to be.  It differed from similar
documents such as /faq.html, which have multiple chapters.

Eliminate the single chapter, and promote each section underneath to
chapter, and each subsection to section. Thus content and relative
structure remains the same, but the overall structure is simpler.
Anchors within the page remain the same.

Signed-off-by: Jim DeLaHunt <from.ffmpeg-dev@jdlh.com>
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2017-12-02 21:07:48 -08:00
James Almer b9d3def9b2 Merge commit 'b5f19f7478492307e4b4763aeac3180faf50e17f'
* commit 'b5f19f7478492307e4b4763aeac3180faf50e17f':
  aac: Split function to parse ADTS header data into public and private part

Merged-by: James Almer <jamrial@gmail.com>
2017-10-30 18:56:45 -03:00
Diego Biurrun b5f19f7478 aac: Split function to parse ADTS header data into public and private part
This makes the currently semi-public avpriv_aac_parse_header() function
private to libavcodec and adds a proper public API function to return
the parts of the ADTS header required in libavformat.
2017-05-02 18:50:34 +02:00
Michael Niedermayer b706ddbae3 doc/developer: Add terse documentation of assumed C implementation defined behavior
Suggested-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-01 17:59:10 +02:00
Michael Niedermayer 51f3278089 doc/developer: Mention mime type and patchwork in "Submitting patches"
Suggested-by: ronald
Reviewed-by: Steven Liu <lingjiujianke@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-10-11 23:20:56 +02:00
Josh de KockandJames Almer 5173ffb27f doc/developer: remove duplicate policies and fix error
Fixes regression as of ee72b6d1

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Josh de Kock <josh@itanimul.li>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-10-04 22:55:44 -03:00
Josh de Kock ee72b6d187 doc/developer: add sections for policies
And sort policies into these sections.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Josh de Kock <josh@itanimul.li>
2016-10-04 18:42:13 +01:00