Release 1.7.1
[platform/upstream/gstreamer.git] / RELEASE
1
2 Release notes for GStreamer Bad Plugins 1.7.1
3
4
5 The GStreamer team is pleased to announce the first release of the unstable
6 1.7 release series. The 1.7 release series is adding new features on top of
7 the 1.0, 1.2, 1.4 and 1.6 series and is part of the API and ABI-stable 1.x release
8 series of the GStreamer multimedia framework. The unstable 1.7 release series
9 will lead to the stable 1.8 release series in the next weeks. Any newly added
10 API can still change until that point.
11
12
13 Binaries for Android, iOS, Mac OS X and Windows will be provided separately
14 during the unstable 1.7 release series.
15
16
17
18 "That an accusation?"
19
20
21 No perfectly groomed moustache or any amount of fine clothing is going to
22 cover up the truth - these plugins are Bad with a capital B.
23 They look fine on the outside, and might even appear to get the job done, but
24 at the end of the day they're a black sheep. Without a golden-haired angel
25 to watch over them, they'll probably land in an unmarked grave at the final
26 showdown.
27
28
29 Don't bug us about their quality - exercise your Free Software rights,
30 patch up the offender and send us the patch on the fastest steed you can
31 steal from the Confederates. Because you see, in this world, there's two
32 kinds of people, my friend: those with loaded guns and those who dig.
33 You dig.
34
35
36 This module contains a set of plugins that aren't up to par compared to the
37 rest.  They might be close to being good quality, but they're missing something
38 - be it a good code review, some documentation, a set of tests, a real live
39 maintainer, or some actual wide use.  If the blanks are filled in they might be
40 upgraded to become part of either gst-plugins-good or gst-plugins-ugly,
41 depending on the other factors.
42 If the plugins break, you can't complain - instead, you can fix the
43 problem and send us a patch, or bribe someone into fixing them for you.
44 New contributors can start here for things to work on.
45
46
47 Other modules containing plugins are:
48
49
50 gst-plugins-base
51 contains a basic set of well-supported plugins
52 gst-plugins-good
53 contains a set of well-supported plugins under our preferred license
54 gst-plugins-ugly
55 contains a set of well-supported plugins, but might pose problems for
56     distributors
57 gst-libav
58 contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
59
60
61
62   
63
64 Bugs fixed in this release
65      
66       * 759679 : gl: unused function '_get_plane_width'
67       * 759729 : audiofxbad: Name collision with new GstAudioChannelMix API from libgstaudio
68       * 731204 : androidmedia: Implement zerocopy rendering
69       * 733467 : Cannot play JPEG2000 encoded QuickTime video
70       * 733819 : Port teletextdec to 1.0
71       * 733959 : hlsdemux: download bitrate algorithms don't reflect real download rate
72       * 743345 : glupload: Add support for dmabuf
73       * 744047 : Port acmmp3dec plugin to 1.x
74       * 745564 : qtkitvideosrc: fails to build on OSX > = 10.9 and not using cerbero (ex: MacPorts)
75       * 747482 : waylandsink: need exception code in gst_wayland_sink_set_window_handle() and gst_wayland_sink_set_context()
76       * 747774 : dashdemux: text streams support
77       * 748259 : New audio/video level element
78       * 748316 : hlsdemux: The end offset (range_end) of a segment is not calculated properly in the m3u8 parser
79       * 748337 : ksvideosrc: dropping frames
80       * 749653 : dashdemux: Implement binary search for stream_sidx_seek
81       * 750402 : tsdemux: pads are removed before new ones are added
82       * 750847 : dashdemux: variables containing time information should be guint64 not gint64
83       * 750852 : dashdemux: idRepresentationType should be StringNoWhitespaceType but accepts spaces
84       * 750869 : dashdemux: assertion raised if profiles information is not provided
85       * 751068 : gl: Use pkg-config if found to configure GL/EGL/GLES (as provided by mesa and libmali)
86       * 751529 : dashdemux: stream- > presentationTimeOffset is not always set
87       * 751650 : dashdemux: extra validations needed when parsing the representation element
88       * 751735 : dashdemux: incorrect parsing and handling of segment templates
89       * 751832 : dashdemux: segment list inherits segment URLs element from parent node
90       * 752326 : dashdemux: parser should reject MPD files with negative mediaPresentationDuration
91       * 752329 : dashdemux: parser should reject MPD files with negative Period duration
92       * 752336 : dashdemux: duration field could overflow
93       * 752340 : dashdemux: period bitstreamSwitching is not used
94       * 752367 : dashdemux: adaptation set language could be better detected
95       * 752409 : dashdemux: gst_mpd_parser_get_stream_presentation_offset returns a wrong value
96       * 752415 : dashdemux: provide a default suggestedPresentationDelay
97       * 752429 : dashdemux: negative numbers are successfully read into unsigned variables
98       * 752492 : dashdemux: suggestedPresentationDelay should be positive
99       * 752496 : dashdemux: illegal memory access when the list of S nodes is greater than the list of SegmentURL nodes
100       * 753405 : nvenc element
101       * 753613 : mssdemux: PlayReady WRM parsing support
102       * 753821 : assrender: improve overlay blending performance
103       * 753824 : assrender: render overlay using the video output window size
104       * 753854 : gstreamer: bad: Fix memory leaks when context parse fails.
105       * 753885 : opencv: use gst_opencv_video_filter_set_in_place()
106       * 753889 : opencv: cvlaplace: add scale and shift properties
107       * 753890 : dashdemux: PROP_BANDWIDTH_USAGE should be deprecated
108       * 753940 : opencv: handdetect: haar cascade files path is wrong in gst-uninstalled
109       * 754057 : sfdec: Fix a typo in goto variable name
110       * 754247 : vc1parse: add break to switch case
111       * 754251 : qtsink: explicitely fallthrough switch statement
112       * 754253 : qml: remove overwritten value
113       * 754285 : compositor: add unit test for ensuring that sinkpads are sorted by zorder
114       * 754466 : qml: add android support
115       * 754786 : vtdec: fails on OSX with GL3 context
116       * 755100 : qt: add build support for iOS/OSX
117       * 755105 : dashdemux: tests: add test for fix of the period start time scaling
118       * 755120 : dashdemux: stop_updates_task needs to be accessed with the lock taken
119       * 755121 : dahsdemux: task is signaled to stop without stop condition being set
120       * 755161 : h264parse, h265parse: initialize picture parameter set structure
121       * 755169 : dashdemux: can we have multiple seek events at the same time?
122       * 755226 : dashdemux: download_finish variable is not reset safely
123       * 755232 : dashdemux: demux- > cancelled is not properly protected
124       * 755319 : configure: add --with-hls-crypto=auto|nettle|libgcrypt|openssl option
125       * 755486 : glimagesink: doesn't support YUY2 properly
126       * 755656 : adaptivedemux: remove unused but set variable
127       * 756209 : adaptivedemux: adaptive demux hangs if src element cannot be started
128       * 756237 : adaptivedemux: waiting for playlist updates in case of fragment errors does not wait
129       * 756239 : adaptivedemux: header is not re-downloaded in case of errors
130       * 756240 : adaptivedemux: download thread should stop in case of multiple download errors
131       * 756322 : dashdemux: add unit test for dashdemux
132       * 756424 : docs: documentation not committed
133       * 756492 : gl: fix leak in gst_gl_insert_debug_marker
134       * 756556 : adaptivedemux: hang if application quits just after start
135       * 757018 : aggregator: Add create_new_pad() vfunc to allow subclasses to override the default behaviour
136       * 757049 : tsdemux: Add support for Opus
137       * 757050 : liveadder: type change of " latency " property might cause crashes
138       * 757152 : opus: Add proper multichannel support
139       * 757153 : opus: Handle start/end trimming
140       * 757245 : dashdemux: tests: add more tests for BaseURL
141       * 757285 : androidmedia: Zerocopy decoding potentially slower than before due to missing queueing
142       * 757335 : adaptivedemux: release manifest lock before changing internal pipeline state
143       * 757336 : adaptivedemux: reset download_finished before starting the src element
144       * 757337 : adaptivedemux: release manifest lock before sending flush stop event
145       * 757354 : adaptivedemux: tests: add download error test
146       * 757359 : adaptivedemux: fix a missing lock in write to stream- > last_ret
147       * 757361 : adaptivedemux: tests: add query and fragment download error test
148       * 757619 : hlsdemux: incorrect segment start value on bitrate switch
149       * 757688 : rtponviftimestamp: element does not work properly
150       * 757776 : dashdemux: Unit test fails reliably
151       * 757801 : tests:aggregator: tc failure
152       * 757825 : ivfparse: Fix the wrong width & height parsing of vp9 bitstream
153       * 757859 : adaptivedemux: memory leak in adaptive demux src bin
154       * 757903 : mpd verification broke http://www.bok.net/dash/tears_of_steel/cleartext/stream.mpd
155       * 757938 : glcolorconvert fails on OSX
156       * 757947 : adaptivedemux: http src errors are no longer detected
157       * 757974 : glcolorconvert: Fix memory leak while running glcolorconvert test
158       * 758010 : mpegtsdemux: stream- > section_data leak if there is a stream discontinuity
159       * 758188 : dashdemux: illegal memory access in gst_mpd_client_get_last_fragment_timestamp_end
160       * 758228 : amcvideodec: Don't require a non-zero buffer size when doing decoding to a surface
161       * 758233 : mpdparser: remove unused functions gst_mpdparser_get_chunk_by_index and gst_mpdparser_find_segment_by_index
162       * 758384 : dashdemux: tests: refactor into adaptive_engine components
163       * 758386 : hlsdemux: incorrect calculation of seek range of non-live streams
164       * 758405 : h264/h265parse: Should resend pps/sps after seeks in byte-stream mode
165       * 758410 : mpdparser: parsing of dateTime fields does not read the microseconds part
166       * 758515 : dashdemux:  Set framerate based on the Manifest on the caps
167       * 758517 : spu-pgs: Fix array memory leak
168       * 758586 : mssdemux: missing depth in audio caps
169       * 758593 : mpdparser: remove gst_mpd_client_check_time_position
170       * 758694 : android media fails to update affine transformation meta
171       * 758728 : id3mux: write private data tag
172       * 758820 : glwindow: Fix memory leak of navigation thread
173       * 758877 : glupload: Should not offer its allocator unless memory:GLMemory is negotiated
174       * 758904 : gl: YUY2 conversion broken
175       * 758946 : hlsdemux: change of playlist to the same playlist after first fragment, when connection speed is set
176       * 758987 : hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist
177       * 759108 : hlsdemux: add support for snapping seek flags
178       * 759118 : mxfdemux: IndexTableSegment handling is wrong
179       * 759432 : bad plugins: Fix example pipelines
180       * 759443 : videoframe-audiolevel: Fix possible division by zero
181       * 759484 : directsoundsrc: add device property as it is done in directsoundsink
182       * 759518 : yadif: Fix memory leak and mishandling.
183       * 759519 : gdppay: Fix buffer memory leak
184       * 759520 : pnmenc: Fix memory leaks/mishandling
185       * 759522 : pnmdec: Fix memory leaks
186       * 759523 : combdetect: Fix value memory leak
187       * 759525 : ivtc: Fix value memory leak
188       * 759534 : dashdemux: clock compensation is not correctly used in get_fragment_waiting_time
189       * 759537 : dashdemux: clock compensation: clock_cond is not used and should be removed
190       * 759547 : dashdemux: insufficient validation of UTCtiming element
191       * 759592 : Seek with negative rates appears to be broken with hlsdemux
192       * 759600 : decklinkvideosink: Made " auto " mode work according to caps
193       * 759728 : teletextdec: build error with clang
194       * 759742 : nvenc: very high CPU load when multiple nvenc instances are initialised at the same time
195       * 752528 : OpenCV hand gesture detection does not work with OpenCV newer than 2.4.10
196       * 753994 : opencv/faceblur: does not work with OpenCV newer than 2.4.10
197       * 754148 : OpenCV port remaining elements to C++ and new API
198
199 ==== Download ====
200
201 You can find source releases of gst-plugins-bad in the download
202 directory: http://gstreamer.freedesktop.org/src/gst-plugins-bad/
203
204 The git repository and details how to clone it can be found at
205 http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/
206
207 ==== Homepage ====
208
209 The project's website is http://gstreamer.freedesktop.org/
210
211 ==== Support and Bugs ====
212
213 We use GNOME's bugzilla for bug reports and feature requests:
214 http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
215
216 Please submit patches via bugzilla as well.
217
218 For help and support, please subscribe to and send questions to the
219 gstreamer-devel mailing list (see below for details).
220
221 There is also a #gstreamer IRC channel on the Freenode IRC network.
222
223 ==== Developers ====
224
225 GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned
226 from there (see link above).
227
228 Interested developers of the core library, plugins, and applications should
229 subscribe to the gstreamer-devel list.
230
231         
232 Contributors to this release
233     
234       * Aleix Conchillo Flaqué
235       * Alessandro Decina
236       * Alex Ashley
237       * André Draszik
238       * Antoine Jacoutot
239       * Antonio Ospite
240       * Arnaud Vrac
241       * Branko Subasic
242       * Chris Bass
243       * Daniel Kamil Kozar
244       * Dave Craig
245       * Duncan Palmer
246       * Edward Hervey
247       * Etienne Peron
248       * Florin Apostol
249       * Frédéric Wang
250       * George Kiagiadakis
251       * Guillaume Desmottes
252       * Haihua Hu
253       * Havard Graff
254       * Heinrich Fink
255       * Hyunil Park
256       * Hyunjun Ko
257       * Jan Schmidt
258       * Jimmy Ohn
259       * John Chang
260       * John Slade
261       * Julian Bouzas
262       * Julien Isorce
263       * Linus Svensson
264       * Lubosz Sarnecki
265       * Luis de Bethencourt
266       * Maroš Ondrášek
267       * Mathias Hasselmann
268       * Matthew Marsh
269       * Matthew Waters
270       * Matthieu Bouron
271       * Miguel París Díaz
272       * Nicolas Dufresne
273       * Nicolas Huet
274       * Nirbheek Chauhan
275       * Olivier Crête
276       * Paolo Pettinato
277       * Paul Arzelier
278       * Philippe Normand
279       * Philippe Renon
280       * Polochon_street
281       * Ravi Kiran K N
282       * Reynaldo H. Verdejo Pinochet
283       * Roman Nowicki
284       * Santiago Carot-Nemesio
285       * Sebastian Dröge
286       * Sreerenj Balachandran
287       * Stefan Sauer
288       * Thiago Santos
289       * Thibault Saunier
290       * Thomas Roos
291       * Tim-Philipp Müller
292       * Vanessa Chipirrás Navalón
293       * Vincent Penquerc'h
294       * Vineeth T M
295       * Vineeth TM
296       * Vivia Nikolaidou
297       * Víctor Manuel Jáquez Leal
298       * Xavier Claessens
299       * plamot
300       * suhwang.kim
301