1FFmpeg's bug/feature request tracker manual
2=================================================
3
4NOTE: This is a draft.
5
6Overview:
7---------
8
9FFmpeg uses Trac for tracking issues, new issues and changes to
10existing issues can be done through a web interface.
11
12Issues can be different kinds of things we want to keep track of
13but that do not belong into the source tree itself. This includes
14bug reports, feature requests and license violations. We
15might add more items to this list in the future, so feel free to
16propose a new `type of issue' on the ffmpeg-devel mailing list if
17you feel it is worth tracking.
18
19It is possible to subscribe to individual issues by adding yourself to the
20Cc list or to subscribe to the ffmpeg-trac mailing list which receives
21a mail for every change to every issue.
22(the above does all work already after light testing)
23
24The subscription URL for the ffmpeg-trac list is:
25http(s)://ffmpeg.org/mailman/listinfo/ffmpeg-trac
26The URL of the webinterface of the tracker is:
27http(s)://trac.ffmpeg.org
28
29Type:
30-----
31art
32    Artwork such as photos, music, banners, and logos.
33
34bug / defect
35    An error, flaw, mistake, failure, or fault in FFmpeg or libav* that
36    prevents it from behaving as intended.
37
38feature request / enhancement
39    Request of support for encoding or decoding of a new codec, container
40    or variant.
41    Request of support for more, less or plain different output or behavior
42    where the current implementation cannot be considered wrong.
43
44license violation
45    ticket to keep track of (L)GPL violations of ffmpeg by others
46
47sponsoring request
48    Developer requests for hardware, software, specifications, money,
49    refunds, etc.
50
51Priority:
52---------
53critical
54    Bugs about data loss and security issues.
55    No feature request can be critical.
56
57important
58    Bugs which make FFmpeg unusable for a significant number of users.
59    Examples here might be completely broken MPEG-4 decoding or a build issue
60    on Linux.
61    While broken 4xm decoding or a broken OS/2 build would not be important,
62    the separation to normal is somewhat fuzzy.
63    For feature requests this priority would be used for things many people
64    want.
65    Regressions also should be marked as important, regressions are bugs that
66    don't exist in a past revision or another branch.
67
68normal
69
70
71minor
72    Bugs about things like spelling errors, "mp2" instead of
73    "mp3" being shown and such.
74    Feature requests about things few people want or which do not make a big
75    difference.
76
77wish
78    Something that is desirable to have but that there is no urgency at
79    all to implement, e.g. something completely cosmetic like a website
80    restyle or a personalized doxy template or the FFmpeg logo.
81    This priority is not valid for bugs.
82
83
84Status:
85-------
86new
87    initial state
88
89open
90    intermediate states
91
92closed
93    final state
94
95
96Analyzed flag:
97--------------
98Bugs which have been analyzed and where it is understood what causes them
99and which exact chain of events triggers them. This analysis should be
100available as a message in the bug report.
101Note, do not change the status to analyzed without also providing a clear
102and understandable analysis.
103This state implicates that the bug either has been reproduced or that
104reproduction is not needed as the bug is already understood.
105
106
107Type/Status:
108----------
109*/new
110    Initial state of new bugs and feature requests submitted by
111    users.
112
113*/open
114    Issues which have been briefly looked at and which did not look outright
115    invalid.
116    This implicates that no real more detailed state applies yet. Conversely,
117    the more detailed states below implicate that the issue has been briefly
118    looked at.
119
120*/closed/duplicate
121    Bugs or feature requests which are duplicates.
122    Note, if you mark something as duplicate, do not forget setting the
123    superseder so bug reports are properly linked.
124
125*/closed/invalid
126    Bugs caused by user errors, random ineligible or otherwise nonsense stuff.
127
128*/closed/needs_more_info
129    Issues for which some information has been requested by the developers,
130    but which has not been provided by anyone within reasonable time.
131
132
133bug/closed/fixed
134    Bugs which have to the best of our knowledge been fixed.
135
136bug/closed/wontfix
137    Bugs which we will not fix. Possible reasons include legality, high
138    complexity for the sake of supporting obscure corner cases, speed loss
139    for similarly esoteric purposes, et cetera.
140    This also means that we would reject a patch.
141    If we are just too lazy to fix a bug then the correct state is open
142    and unassigned. Closed means that the case is closed which is not
143    the case if we are just waiting for a patch.
144
145bug/closed/works_for_me
146    Bugs for which sufficient information was provided to reproduce but
147    reproduction failed - that is the code seems to work correctly to the
148    best of our knowledge.
149
150feature_request/closed/fixed
151    Feature requests which have been implemented.
152
153feature_request/closed/wontfix
154    Feature requests which will not be implemented. The reasons here could
155    be legal, philosophical or others.
156
157Note2, if you provide the requested info do not forget to remove the
158needs_more_info resolution.
159
160Component:
161----------
162
163avcodec
164    issues in libavcodec/*
165
166avformat
167    issues in libavformat/*
168
169avutil
170    issues in libavutil/*
171
172regression test
173    issues in tests/*
174
175ffmpeg
176    issues in or related to ffmpeg.c
177
178ffplay
179    issues in or related to ffplay.c
180
181ffprobe
182    issues in or related to ffprobe.c
183
184ffserver
185    issues in or related to ffserver.c
186
187build system
188    issues in or related to configure/Makefile
189
190regression
191    bugs which were not present in a past revision
192
193trac
194    issues related to our issue tracker
195