4 This release marks the start of the new unstable release-cycle. This is also the
5 release cycle that will be integrated into GNOME 2.31 (and 3.0 eventually).
8 - Exit on failure to load any plugins in 5 seconds.
9 - Add icon to preferences UI's desktop file.
10 - Correct error on missing 'Elements' node in 'CreateObject' action from client.
11 - Advertize upload features in 'X_DLNACAP' in device description.
12 - Remove comments from description files as per DLNA requirement (7.2.30.1).
13 - Don't allow comments in DIDL-Lite from client either. This is to satisfy the
14 DLNA Confirmation Test Tool rather than DLNA itself.
15 - Don't advertize unimplemented actions.
16 - autogen.sh should create m4 directory if it doesn't exist already.
17 - Correct Icon path in preferences UI for uninstalled case.
18 - Specify on debug log where rygel is currently looking for plugins.
20 - Don't translate all strings in media-export plugin.
21 - No need to translate Mediathek plugin.
22 - Add Hebrew translation.
23 - Add Swedish translation.
24 - Add Czech translation.
25 - More Spanish translations.
26 - More Slovenian translations.
27 - More German translations.
29 - Fix search result. Search was returning the the result for the current
30 limits, not the overall result count. This lead to strange behaviour on
32 - Optimize searches. Noticable speed improvements on XBox music browsing.
33 - Fix broken SQL query to get object by path.
34 - Remove redundant custom tag for duration.
35 - Make harvesting of metadata optional.
36 - Re-enable simple mode which means we exporting media on the UPnP network
37 even if no meta-data extractor is available.
38 - Remove redundant URI table from database.
39 - Work around a problem in GStreamer element playbin2.
40 - Explain the term 'harvest' for translators.
41 - Many non-functional improvements.
43 All contributors to this release:
45 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
46 Jens Georg <mail@jensge.org>
47 Andrej Žnidaršič <andrej.znidarsic@gmail.com>
48 Daniel Nylander <po@danielnylander.se>
49 Fran Diéguez <fran.dieguez@mabishu.com>
50 Jorge González <jorgegonz@svn.gnome.org>
51 Mario Blättermann <mariobl@gnome.org>
52 Petr Kovar <pknbe@volny.cz>
53 Yaron Shahrabani <sh.yaron@gmail.com>
58 This release marks the start of the new stable release-cycle. Changes since
62 - Fix translation framework.
63 - Mark all (possibly) user-visible string for translation.
64 - Use more translator-friendly language.
65 - Provide comments for translators.
66 - Correctly case abbreviations.
69 - Slovenian (sl): 100%
72 - Fix a potential race-condition in aborted HTTP requests.
73 - Don't stream if request is for subtitles.
74 - Use bigger (64Ki) buffers when streaming from gstreamer source element.
75 - Remux only if transcoding is not needed.
76 - Configuration option for specifying plugin load path.
77 - Add configuration from Environment.
78 - Fix port specification through commandline.
79 - Add and expose Rygel logo.
80 - Pause streaming pipeline when/if client isn't reading fast enough.
81 - Add more unit tests.
82 - Use gnome-autogen.sh.
83 - Add missing libuuid to build and linker flags for all plugins.
84 - Plugins are now able to provide a model description.
86 - File size change suggests file change.
87 - Move media DB and metadata harvesting code from core to module as this is
88 the only module that is using it.
89 - External plugin now sets model description.
90 - Lots of non-functional improvements and fixes.
92 Dependency-related changes:
94 - Sqlite now only needed for media-export plugin.
96 Bugs fixed in this release:
98 617762 Wrong file size exported to PS3
99 590649 LiveResponse does not rate limit the GStreamer pipeline
100 615834 Uses ALL_LINGUAS in configure.ac
101 616189 Translation issues
102 617750 Only re-encode audio and video when necessary
104 All contributors to this release:
106 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
107 Jens Georg <mail@jensge.org>
108 Mario Blättermann <mariobl@gnome.org>
109 Jorge González <jorgegonz@svn.gnome.org>
110 Andrej Žnidaršič <andrej.znidarsic@gmail.com>
115 Another release in the unstable 0.5.x series. Changes since 0.5.0:
117 - Add support for Xbox 360 and Window Media Player 11.
118 - Add support for subtitles. Currently only useful for certain Samsung DLNA TVs.
119 - Add Windows Media Video (WMV) transcoder.
120 - Add unit tests for a few modules.
121 - Fix some (potential) crashes.
122 - Make database operations cancellable.
123 - Throw error on database creation failure.
124 - Simpler (hopefully) build rules.
125 - Fix race-condition in streaming code so we don't terminate the connection
126 before all the bytes are sent to the client.
127 - Fix leaking of HTTP messages of live streams on termination.
128 - Fix 'Content-Length' header values for partial requests.
129 - Fix parsing of search expression containing characters not within the original
131 - Use bigger (64Ki) buffers when streaming media to reduce cpu usage and
132 therefore improve battery life.
133 - Include spec version in description document.
134 - Remove now unneeded work-around for vala bug#568972.
135 - Advertize photos with their specific class, i-e 'photo' rather than 'image'.
137 - Implement search by URIs.
138 - Implement search by album.
139 - Error-out on invalid search expression.
140 - Add support for virtual containers. This allows creation of metadata-based
141 hierarchies in the user-config.
142 - Fix deletion of containers.
143 - URI-escape meta-data fields.
144 - Catch previously uncaught exceptions.
145 - Fix upgrade of database from older schemas.
146 - Lots of code clean-ups and documentation fixes.
148 Dependency-related changes:
150 - Require gupnp >= 0.13.3.
151 - Require gupnp-av >= 0.5.5.
152 - Require gupnp-vala >= 0.6.5.
153 - Require valac >= 0.8.0.
155 Bugs fixed in this release:
157 608886 - media export plugin corrupts its database when you change directories
158 609944 - Files not harvested on update
159 606305 - Samsung subtitles
161 All contributors to this release:
163 Jens Georg <mail@jensge.org>
164 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
165 Cyrille Chepelov <cyrille.chepelov@keyconsulting.fr>
170 The first release in the unstable 0.5.x series. Changes since 0.4.6 that were
171 not provided by any subsequent 0.4.x releases:
173 - New URI generation scheme that avoids problematic characters which makes some
174 crappy renderers choke.
175 - Allow creation of new media items and tranfering data into existing ones (
176 upload). This is relavent to, and works for both MediaExport and Tracker.
177 - Implement GetTransferProgress and StopTransferResource actions.
179 - support for connection stalling.
180 - live response to be sender-paced.
181 - Rewrite SearchCriteria parser to make it more reliable.
183 - Port to the Tracker 0.7 APIs.
184 - Provide richer & more intuitive media hierarchy.
185 - Signal container update on changes to subjects.
186 - Act on config options allowing user to define which categories to share.
187 - Support for search by URI.
188 - Descriptive IDs for containers.
190 - Implement custom search that translates to an SQLite query and therefore
191 performs much faster than before.
192 - Print message on console when harvesting is done.
193 - Don't modify DB if harvester was cancelled.
194 - Cancel harvester before starting new one.
195 - Lots of non-functional improvements and fixes.
197 All contributors to this release:
199 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
200 Jens Georg <mail@jensge.org>
205 Brief summary of changes since 0.4.4:
207 - Implement optional UPnP Search action. This is not only a must have feature
208 for a commercial MediaServer but is also a big first step towards proper
210 - Simplify Browse action handling.
211 - Simplify MediaServer plugin implementation.
212 - Make sure autostart dir exists before attempting to write to it.
213 - Fix a potential crash that is trigered by MediaContainer reporting incorrect
214 (higher) number of children.
216 - Work around (vala) bug#602003.
217 - Optimizations and code clean-ups.
219 - Provide an efficient Search implementation using Tracker's search API.
220 - Minor code clean-ups.
222 Dependency-related changes:
224 - Require gupnp-av >= 0.5.2.
225 - Require gupnp-vala >= 0.6.2.
226 - Require valac >= 0.7.9.
228 Bugs fixed in this release:
230 600256 - Segfault when trying to access a stream
232 All contributors to this release:
234 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
239 Brief summary of changes since 0.4.2:
241 - Provide a gstreamer-based MediaRenderer plugin. This is mostly code stolen (
242 and heavily adapted) from gupnp-media-renderer except that it doesn't depend
243 on libowl-av and/or gtk+.
244 - More ease for MediaServer implementors.
245 - Better error handling.
246 - Make sure no message is suppressed until we know what level of console output
248 - Make use of vala's async support to simplify code quite a bit.
249 - Plugins should load xml files from source tree when built with
250 '--enable-uninstalled' configure flag.
251 - Build with no optimizations in debug mode.
252 - Use closure table to speed up object lookup and deletion.
253 - Add build option for SQL debugging.
254 - Workaround a crasher bug (#3774) in sqlite 3.6.12.
255 - Use vala's static client D-Bus syntax.
256 - Early ignorance of disabled plugins. This not only speeds-up startup a bit but
257 also rids us of redundant debug messages.
259 - Nicely handle unavailability of gstreamer's playbin(2) element.
260 - Fix a potential crasher.
262 - Use multidimensional arrays to deal with search results. This combined with
263 static client D-Bus syntax gives us quite a speed boost.
264 - Handle item creation error.
266 - Allow applications to provide custom thumbnails for items.
267 - Support pixel-aspect-ratio properties.
268 - All D-Bus operations are now done asynchronously.
269 - Make use of plugin icon if provided.
270 - Move magic string substitution to core so other plugins can benefit from it.
271 - Lots of other improvements and bug fixes.
273 Dependency-related changes:
275 - Require and adapt to libgee >= 0.5.
276 - Require and adapt to valac >= 0.7.8.
278 Bugs fixed in this release:
280 597276 - Rygel crash on startup
281 587649 - thumbnails not published for external media servers
282 589959 - External plugin should query media servers on demand
283 598005 - unable to load media-tracker plugin
285 All contributors to this release:
287 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
288 Jens Georg <mail@jensge.org>
289 Thijs Vermeir <thijsvermeir@gmail.com>
294 Brief summary of changes since 0.4.1:
296 - Ability to specify verbosity of console messages by a number between 0 to 5.
297 - Be able to survive unavailability of D-Bus session bus. This should make it
298 easier to setup Rygel on headless NAS machines.
300 - Provide duration and date of media.
301 - Improved guessing for type (UPnP class) of media.
302 - Re-harvest metadata when a file/directory is modified.
303 - Speed-up browsing (twice as before).
305 - Fix enabling/disabling of widgets.
306 - Copy the desktop file from correct location.
307 - Mediathek and GstLaunch disabled by default in the user configuration.
308 - Add GstLaunch to maemo configuration (disabled by default though).
309 - Put dbus-glib-1 to the list of vala API dependencies.
311 - Be more verbose at the end of configure.
313 Bugs fixed in this release:
315 596500 - Mpeg TS video files are mistaken for audio files
316 596213 - Wrong state for checkboxes
317 596327 - Enables some weird plugins by default
318 596330 - Missing some metadata
320 All contributors to this release:
322 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
323 Jens Georg <mail@jensge.org>
328 A micro release that fixes some important issues found in the previous release:
330 - Update the Rygel D-Bus service paths everywhere.
331 - Ignore two ignorable errors.
332 - Initialize sensitivity of trancoding checkboxes to the same value as that of
333 "Transcoding Support" checkbox.
334 - Fix seeking in transcoded streams. Without this fix, the success of seeking
335 was based on pure luck.
336 - Correct headers in some files to reflect the correct license: LGPL.
337 - No need for DVB configuration anymore.
339 Bugs fixed in this release:
341 596211 - Error exiting the prefs
342 596213 - Wrong state for checkboxes
344 All contributors to this release:
346 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
347 Jens Georg <mail@jensge.org>
348 René Stadler <mail@renestadler.de>
353 Brief summary of changes since 0.3:
355 - Rygel is no more just a MediaServer but rather a collection of DLNA (UPnP AV)
356 services (devices in UPnP speak).
357 - Port to new GUPnP APIs. The biggest advantage of that is that we now have
358 dynamic network support, i-e Rygel can attach/detach to/from a network
359 interface as it goes up/down.
360 - Support for time-based seeking in transcoded streams.
361 - Random tweaks to transcoding pipelines.
362 - Provide a DBus service providing two functionalities:
363 * Ability to tell Rygel to shutdown. Starting of Rygel is automatically
364 handled by D-Bus since a .service file is provided by Rygel.
365 * Ability to tell Rygel (MediaExport plugin actually) to (un)export URIs on
367 - Implement enabling/disabling of UPnP in the preferences.
368 - Configuration through command-line options.
369 - Use a .ini configuration file rather than gconf.
370 - Special default configuration for Maemo.
371 - Don't spam the user's config directory and instead keep the description files
372 into a separate subdirectory.
373 - `make clean` doesn't clean the generated C files anymore.
374 - Remove "all rights reserved" part from all copyright headers.
375 - Remove integrated DVB plugin as DVBDaemon now implements the external plugin
376 interface and hence dynamically glues to Rygel, just like PulseAudio.
377 - New classes to further ease the plugin implementation.
378 - (Un)pause the SoupMessage at the right time. This was causing a lot of delays
379 when playing media on Sony PS3.
380 - Bitrate is supposed to be in bytes/second. Not really but tell that to writers
381 of UPnP specification.
382 - Expose transcode formats in the GetProtocolInfo's source argument. This should
383 make Sony Bravia TVs happy.
384 - Transcoder URIs are now sorted according to their distance from the original
386 - Provide "contentFeatures.dlna.org" header in the HTTP responses.
387 - Provide DLNA transferMode header in the HTTP responses.
388 - Only advertise internal URIs on local loopback interface.
389 - Replace 'ip' config by 'interface' so users can bind Rygel to interfaces
391 - Allow plugins to provide thumbnails.
392 - Add thumbnails (if available) for each item if none provided by plugins. This
393 works both on the desktop and Maemo.
394 - Suppress all C compiler warnings by default. These warnings are mostly useless
395 for us since almost all C code is generated.
396 - Preference dialog is now more like a GNOME preferences dialog.
397 - Provide .desktop file for preferences dialog.
398 - Shave the build output.
399 - GstLaunch: New plugin that exposes gstreamer pipelines described using
400 familiar gst-launch syntax in the user configuration.
402 - Nicer default title.
403 - Better detection of Tracker availability. Apparently ubuntu folks think that
404 providing a .service file is wrong.
405 - Better titles for top-level folders.
406 - More usable hierarchy: Browsing by artists, albums and tags.
408 - Rename to MediaExport.
409 - Nicer default title.
410 - Use the new Rygel classes to extract, export and save media metadata.
411 - notify about updates to containers.
412 - Skip files/folders starting with '.'.
413 - Avoid crash if unknown file is found.
414 - Delete gone directories on new start.
415 - React on deletion of files.
416 - Add recursive file monitoring.
417 - Provide simple and easy options to add and remove files and folders from the
420 - actually use 'DLNAProfile' property.
421 - Don't load the plugin more than once.
422 - Utilise optional MediaItem properties.
423 - Fetch items on demand.
424 - Fix critical warnings.
426 - Fix crash if no config is available.
428 Dependency-related changes:
430 - Require gupnp >= 0.13
431 - Require gupnp-av >= 0.5
432 - Require GStreamer >= 0.10.23
433 - Require libgee >= 0.3.0
435 Bugs fixed in this release:
437 584649 - Folder plugin should not export dot files and directories
438 586108 - ID3 information not exported on mp3 files
439 588034 - Bad durations for audio video files with media export plugin
440 585986 - Some copyright headers claim "all rights reserved"
441 585989 - Running "make clean" should leave generated C files in place.
442 586134 - Tracker plugin fails if org.freedesktop.Tracker can't be activated,
443 even if tracker is already running
444 586243 - GStreamer 0.10.23 required for correct operation of transcoder
445 587651 - Support for some MediaItem properties missing
446 587855 - HTTP Error responses not sent
447 587866 - No way to notify about new sub-containers
448 588030 - rygel-preferences crashes if user's config file is missing
449 588162 - Support seeking in transcoded content
450 589955 - dc:creator never included in DIDL output
451 589956 - git ignore rules
452 589974 - Set the bitrate for transcoded resources correctly.
453 589977 - Rygel not recognised by Sony Bravia televisions
454 590643 - refactor HTTP request handling code
455 590702 - Rygel should provide thumbnails for items
456 591580 - not compatible with Samsung UE46B7070
457 593228 - [plugin] new gstlaunch plugin
459 All contributors to this release:
461 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
462 Jens Georg <mail@jensge.org>
463 James Henstridge <james@jamesh.id.au>
464 Thijs Vermeir <thijsvermeir@gmail.com>
465 Ole André Vadla Ravnås <oleavr@gmail.com>
470 Brief summary of changes since 0.2.2:
472 - Transcoding from any format (that gstreamer's decodebin2 can handle) to mp3,
473 linear PCM and mpeg transport stream containing mpeg 2 video and mp2 audio.
474 - Plugin API to deal with user preferences.
475 - User preferences UI: rygel-preferences.
477 * Folder: Recursively exports folders specified in the user preferences.
478 * ZDFMediathek: Exports online media from 2nd German TV station.
479 * External: Exports media hierarchies provided by external applications
480 through implementation of this spec:
481 http://live.gnome.org/Rygel/MediaServer. The first application
482 that utilizes this feature is PulseAudio.
483 - Drop xbox support. It didn't work anyway and we better concentrate on
484 implementing standard stuff that it at least worthy of being called "UPnP" (
486 - Tracker and DVB plugins are only loaded if their corresponding services are
488 - Export of duration for music and video items from Tracker.
489 - Use HTTP EOF encoding rather the CHUNKED for live streams.
490 - Ability to build rygel plugins outside it's source tree.
491 - HTTP proxying only if needed.
492 - Now that gupnp-av does DLNA profile guessing for us, no need to lie about
493 DLNA profile anymore.
494 - Add a summary after configure.
495 - HTTServer is now internal API.
496 - Use git-version-gen to generate package version.
497 - Differentiate between modules and plugins
498 - Passive, asynchronous plugin loading. A side-effect of which is that modules
499 can now load more than one plugin.
500 - Differentiate between name and title of the plugin.
501 - Plugins can now dynamically change their availability.
502 - Add API to get/list plugins.
503 - Re-use existing description from user's home directory. This not only speeds
504 the start-up but also obsoletes the necessity to keep immutable data (e.g UDN)
506 - Provide gconf schemas.
507 - Lots of other improvements and bug fixes.
509 Dependency-related changes:
511 - Explicitly require and link to libsoup-2.4 >= 2.26.0.
512 - Don't require Vala (and bindings) in distribution tarball.
513 - Require gupnp-av >= 0.4.
514 - Require Vala >= 0.7.3.
515 - Require Gtk+ >= 2.16 if preferences UI is not disabled.
517 Bugs fixed in this release:
519 582173 - git-version-gen: generate versions with - instead of .
520 577000 - gupnp-av-cp does not like & in uris
521 576998 - Rygel wants to transcode audio files to video/mpeg
522 575935 - Add support for duration metadata field
523 574604 – bug connecting to PS3
525 All contributors to this release:
527 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
528 Jens Georg <mail@jensge.org>
529 Henrique Ferreiro <henrique.ferreiro@gmail.com>
530 Lennart Poettering <lennart@poettering.net>
531 Marc-André Lureau <marcandre.lureau@gmail.com>
532 Rob Taylor <rob.taylor@codethink.co.uk>
539 - Use the new (0.6.9) Tracker API.
540 - Priority of gio-based streams are based on requested DLNA transfer mode.
541 - GIO-based/like asynchronous plugin API.
542 - Adapt to latest changes in gupnp-vala API.
543 - Serialization of media objects isn't done by media objects themselve
544 anymore, but by a new separate class, Rygel.DIDLLiteWriter.
545 - Internal API is marked 'internal' so it doesn't get to our (Vala) API.
546 - MediaObject now derives from GLib.Object.
547 - Generic AsyncResult implementation, SimpleAsyncResult.
548 - StateMachine interface that all state machines classes implement.
549 - Visible performance improvements in Tracker plugin by proper use of Tracker
551 - Use Filename.to_string() and therefore make Bastien happy.
552 - Require lastest version (0.1.5) of libgee to use List.slice().
553 - Don't limit the number of objects returned to a client, let it decide
555 - Proper handling of update notification to the client by use of a very simple
556 bubble-up mechanism for containers to signal updates.
557 - Decrease needed gconf version to 2.16.
558 - Set application name and therefore make Lennart happy.
559 - Require latest version of vala (0.5.7) and gupnp-vala (0.5.3).
560 - Allow multiple URIs for each media items.
561 - Response for seekable media request is now sent buffer by buffer so the whole
562 file is not put into memory.
563 - Some improvements to build system.
564 - Lots of other improvements and bugfixes.
569 The major change after last release (as gupnp-media-server) is the introduction
570 of a simple yet powerful plugin-based architecture/api: Every plugin:
571 - is loaded into a separate MediaServer instance.
572 - can implement any kind and number of resources (currently only services).
573 - can export an icon file.
574 - inherit it's ContentDirectory implementation from a base class that does most
575 of the UPnP-related work. More improvements on this planned for next release.
576 - use an intuitive API to easily export media from URIs and live GStreamer
577 source elements over HTTP.
581 - Relicense under LGPL to allow proprietary plugins and ease of moving code
582 from/to gupnp libraries.
583 - DVB Daemon integration though a plugin. Now you can watch live channels from
584 your PC on your PS3 for example.
585 - Test plugin that exports one audio and video item, streaming contents from
586 GStreamer's audiotestsrc and videotestsrc elements respectively.
587 - Better interoperability with Sony playstation 3.
588 - Announce unavailability to UPnP world on exit.
589 - Loads of other improvements.