1 2008-11-11 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
3 * src/media-providers/tracker/Makefile.am:
4 * src/media-providers/tracker/rygel-tracker-container.vala:
5 * src/media-providers/tracker/rygel-tracker-image-item.vala:
6 * src/media-providers/tracker/rygel-tracker-music-item.vala:
7 * src/media-providers/tracker/rygel-tracker-video-item.vala:
9 Refactor: Separate classes for each item type. These tracker-specific
10 item classes are responsible for fetching their metadata and serializing
13 2008-11-11 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
15 * src/media-providers/tracker/rygel-tracker-container.vala:
17 Declare private fields as private.
19 2008-11-11 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
21 * src/media-providers/tracker/rygel-media-tracker.vala:
22 * src/media-providers/tracker/rygel-tracker-container.vala:
24 Refactor: Add TrackerContainer.get_file_category(). Now MediaTracker
25 doesn't talk to tracker directly.
27 2008-11-11 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
29 * data/xml/ConnectionManager.xml:
30 * data/xml/ContentDirectory.xml:
31 * data/xml/X_MS_MediaReceiverRegistrar1.xml:
33 More standard-compliant SCPDs. Based on a patch by Ross Burton
34 <ross@opennedhand.com>
36 2008-11-11 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
38 * src/media-providers/tracker/rygel-media-tracker.vala:
40 Create root container after it's children. This is to pass the correct
41 number of children to the constructor of the root container.
43 2008-11-10 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
45 * src/media-providers/tracker/rygel-media-tracker.vala:
46 * src/media-providers/tracker/rygel-tracker-container.vala:
48 Refactor: A more intelligent TrackerContainer. As a result, MediaTracker
49 class is now very slim.
51 2008-11-10 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
54 * src/media-server/cstuff.c:
55 * src/media-server/cstuff.h:
57 Replace my non-working "@gstreamer.net" email with "@gnome.org" one.
59 2008-10-29 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
61 * src/media-server/rygel-media-manager.vala:
62 * src/media-server/rygel-metadata-extractor.vala:
64 File.query_info () doesn't return a weak anymore.
66 2008-10-26 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
72 2008-10-26 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
76 * data/xml/Makefile.am:
77 * data/xml/description-xbox360.xml:
78 * data/xml/description.xml:
80 * src/media-providers/tracker/Makefile.am:
81 * src/media-providers/tracker/gupnp-media-tracker.vala:
82 * src/media-providers/tracker/gupnp-tracker-container.vala:
83 * src/media-providers/tracker/gupnp-tracker-plugin.vala:
84 * src/media-providers/tracker/rygel-media-tracker.vala:
85 * src/media-providers/tracker/rygel-tracker-container.vala:
86 * src/media-providers/tracker/rygel-tracker-plugin.vala:
87 * src/media-server/Makefile.am:
88 * src/media-server/gupnp-connection-manager.vala:
89 * src/media-server/gupnp-content-directory.vala:
90 * src/media-server/gupnp-media-container.vala:
91 * src/media-server/gupnp-media-item.vala:
92 * src/media-server/gupnp-media-manager.vala:
93 * src/media-server/gupnp-media-object.vala:
94 * src/media-server/gupnp-media-provider.vala:
95 * src/media-server/gupnp-media-receiver-registrar.vala:
96 * src/media-server/gupnp-media-server.vala:
97 * src/media-server/gupnp-metadata-extractor.vala:
98 * src/media-server/rygel-connection-manager.vala:
99 * src/media-server/rygel-content-directory.vala:
100 * src/media-server/rygel-media-container.vala:
101 * src/media-server/rygel-media-item.vala:
102 * src/media-server/rygel-media-manager.vala:
103 * src/media-server/rygel-media-object.vala:
104 * src/media-server/rygel-media-provider.vala:
105 * src/media-server/rygel-media-receiver-registrar.vala:
106 * src/media-server/rygel-media-server.vala:
107 * src/media-server/rygel-metadata-extractor.vala:
109 Project renamed to "Rygel" to be moved to GNOME SVN.
111 2008-09-08 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
113 * src/media-providers/tracker/Makefile.am:
114 * src/media-providers/tracker/gupnp-media-tracker.vala:
115 * src/media-providers/tracker/gupnp-tracker-plugin.vala:
117 Refactor: Put plugin stuff into a separate module.
119 2008-09-08 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
121 * src/media-providers/tracker/Makefile.am:
122 * src/media-providers/tracker/gupnp-media-tracker.vala:
123 * src/media-providers/tracker/gupnp-tracker-container.vala:
125 Refactor: Put TrackerContainer class into a separate module.
127 2008-09-08 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
129 * src/media-providers/tracker/gupnp-media-tracker.vala:
131 Rename Tracker.Container to GUPnP.TrackerContainer.
133 2008-08-31 Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
135 * src/media-providers/tracker/gupnp-media-tracker.vala:
136 * src/media-server/gupnp-media-manager.vala:
138 Create the root container in the contructor of the media providers.
140 2008-08-30 Zeeshan Ali Khattak <zeenix@gmail.com>
142 * src/media-providers/tracker/gupnp-media-tracker.vala:
144 Remove the redundant 'title' field from the Tracker.Container class.
146 2008-08-29 Zeeshan Ali Khattak <zeenix@gmail.com>
148 * src/media-server/gupnp-media-item.vala:
150 Introduce a class for media items.
152 * src/media-server/Makefile.am:
154 Add MediaItem to vapi file and build.
156 * src/media-providers/tracker/gupnp-media-tracker.vala:
158 Start utilizing the MediaContainer class in MediaTracker.
160 2008-08-29 Zeeshan Ali Khattak <zeenix@gmail.com>
162 * src/media-server/gupnp-media-object.vala:
164 Introduce a new abstract class for media objects. It will be the
165 responsibility of derived classes to implement serializing to
168 * src/media-server/gupnp-media-container.vala:
170 Introduce a class for media containers.
172 * src/media-server/Makefile.am:
174 Add MediaObject and MediaContainer to vapi file and build.
176 * src/media-providers/tracker/gupnp-media-tracker.vala:
177 * src/media-server/gupnp-media-manager.vala:
179 Start utilizing the MediaContainer class in media providers.
181 2008-08-29 Zeeshan Ali Khattak <zeenix@gmail.com>
183 * src/media-providers/tracker/gupnp-media-tracker.vala:
185 - Keep the parent_id of the container in the Tracker.Container class.
186 - Add the root_id prefix to container's id at object creation time.
188 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
190 * src/media-providers/tracker/gupnp-media-tracker.vala:
191 * src/media-server/gupnp-media-manager.vala:
192 * src/media-server/gupnp-media-provider.vala:
194 Remove MediaProvider.get_root_children_count() and allow each provider
195 to add metadata of it's root container to DIDL instead.
197 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
199 * src/media-server/gupnp-media-manager.vala:
201 Rename MediaManger's get_root_container_metadata() to
202 add_root_container_metadata().
204 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
206 * src/media-server/gupnp-content-directory.vala:
208 Put the code and message from exception caught on the action error.
210 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
212 * src/media-server/gupnp-media-provider.vala:
214 Assign a specific code (701) to "No such object" error.
216 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
218 * src/media-server/gupnp-media-manager.vala:
220 Rename MediaManager's browse_root_container() to add_root_children().
222 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
224 * src/media-providers/tracker/gupnp-media-tracker.vala:
225 * src/media-server/gupnp-content-directory.vala:
226 * src/media-server/gupnp-media-manager.vala:
227 * src/media-server/gupnp-media-provider.vala:
229 - Rename MediaProvider's get_metadata() to add_metadata().
230 - Rename MediaProvider's browse() to add_children_metadata().
232 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
234 * src/media-providers/tracker/gupnp-media-tracker.vala:
235 * src/media-server/gupnp-content-directory.vala:
236 * src/media-server/gupnp-media-manager.vala:
237 * src/media-server/gupnp-media-provider.vala:
239 MediaProviders now get a DIDLiteWriter to add metadata to and no longer
242 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
244 * src/media-server/gupnp-media-manager.vala:
246 Remove an unneeded try&catch block.
248 2008-08-21 Zeeshan Ali Khattak <zeenix@gmail.com>
250 * src/media-server/Makefile.am:
252 MediaProvider class now requires gupnp-av package.
254 2008-08-17 Zeeshan Ali Khattak <zeenix@gmail.com>
256 * src/media-providers/tracker/gupnp-media-tracker.vala:
257 * src/media-server/gupnp-content-directory.vala:
258 * src/media-server/gupnp-media-manager.vala:
259 * src/media-server/gupnp-media-provider.vala:
261 Use Exceptions rather than returning null.
263 2008-08-17 Zeeshan Ali Khattak <zeenix@gmail.com>
265 * src/media-server/gupnp-media-server.vala:
267 Use real name of the user rather than username in FriendlyName.
269 2008-08-17 Zeeshan Ali Khattak <zeenix@gmail.com>
271 * src/media-providers/tracker/gupnp-media-tracker.vala:
272 * src/media-server/gupnp-media-manager.vala:
273 * src/media-server/gupnp-media-provider.vala:
275 Make MediaProvider an abstract class rather than interface. We will have
276 to do this at some point anyway to put common functionality into this
277 module but the real reason to do this right now is that support for
278 constuct-only props in interfaces was recenlty dropped in Vala (for good
281 2008-08-17 Zeeshan Ali Khattak <zeenix@gmail.com>
283 * src/media-server/gupnp-media-provider.vala:
285 Put MediaProvider in GUPnP namespace.
287 2008-08-05 Zeeshan Ali Khattak <zeenix@gmail.com>
294 * src/gupnp-connection-manager.vala:
295 * src/gupnp-content-directory.vala:
296 * src/gupnp-media-manager.vala:
297 * src/gupnp-media-provider.vala:
298 * src/gupnp-media-receiver-registrar.vala:
299 * src/gupnp-media-server.vala:
300 * src/gupnp-metadata-extractor.vala:
301 * src/media-providers/tracker/Makefile.am:
302 * src/media-server/Makefile.am:
303 * src/media-server/cstuff.c:
304 * src/media-server/cstuff.h:
305 * src/media-server/cstuff.vapi:
306 * src/media-server/gupnp-connection-manager.vala:
307 * src/media-server/gupnp-content-directory.vala:
308 * src/media-server/gupnp-media-manager.vala:
309 * src/media-server/gupnp-media-provider.vala:
310 * src/media-server/gupnp-media-receiver-registrar.vala:
311 * src/media-server/gupnp-media-server.vala:
312 * src/media-server/gupnp-metadata-extractor.vala:
314 Move the core Media Server code into a separate subdirectory.
316 2008-08-05 Zeeshan Ali Khattak <zeenix@gmail.com>
318 * src/media-providers/Makefile.am:
320 Remove Makefile.in on 'make maintainer-clean'.
322 2008-08-05 Zeeshan Ali Khattak <zeenix@gmail.com>
324 * src/gupnp-media-manager.vala:
326 - Better/recursive GIO-based plugin loading.
327 - Replace random ID generation function by a GQuark-based (persistant)
330 2008-08-05 Zeeshan Ali Khattak <zeenix@gmail.com>
334 Disable generation of static libraries.
336 2008-08-05 Zeeshan Ali Khattak <zeenix@gmail.com>
340 * src/media-providers/Makefile.am:
341 * src/media-providers/tracker/Makefile.am:
342 * src/media-providers/tracker/gupnp-media-tracker.vala:
344 Re-introduce MediaTracker as a plugin.
346 2008-08-04 Zeeshan Ali Khattak <zeenix@gmail.com>
350 * src/gupnp-media-manager.vala:
351 * src/gupnp-media-tracker.vala:
353 - Introduce a plugins system. Ross should be happy now. :)
354 - Remove MediaTracker module.
356 2008-08-03 Zeeshan Ali Khattak <zeenix@gmail.com>
358 * src/gupnp-media-manager.vala:
359 * src/gupnp-media-provider.vala:
360 * src/gupnp-media-tracker.vala:
362 - Add "title" prop to MediaProvider interface.
363 - Add get_root_children_count() to MediaProvider interface.
365 2008-08-03 Zeeshan Ali Khattak <zeenix@gmail.com>
367 * src/gupnp-media-tracker.vala:
369 - Correct a typo. Now we export the ID of the container in the format we
370 need to export it in.
371 - No need for MediaManager to prefix IDs with root_id.
372 - Pass ID as is to browse() and get_metadata() of media providers.
373 - Get the root ID prefix from IDs rather than removing it.
374 - Don't add root ID prefix to root parent ID.
376 2008-08-03 Zeeshan Ali Khattak <zeenix@gmail.com>
378 * src/gupnp-content-directory.vala:
379 * src/gupnp-media-manager.vala:
380 * src/gupnp-media-provider.vala:
381 * src/gupnp-media-tracker.vala:
383 - MediaProviders now get the "root_parent_id" though a prop.
384 - MediaManager now decides the IDs to use on it's own.
386 2008-08-02 Zeeshan Ali Khattak <zeenix@gmail.com>
388 * src/gupnp-content-directory.vala:
390 Use MediaManager rather than MediaTracker. This also means that
391 system_update_id doesn't need to be handled by ContentDirectory
394 2008-08-02 Zeeshan Ali Khattak <zeenix@gmail.com>
397 * src/gupnp-media-manager.vala:
399 Introduce MediaManager. It implements MediaProvider interface and will
400 be responsible to manage all MediaProviders. Currently it uses
401 MediaTracker directly since it currently doesn't have a plugin system.
403 2008-07-31 Zeeshan Ali Khattak <zeenix@gmail.com>
405 * src/gupnp-media-tracker.vala:
407 Each MediaProvider prefixes each objectid with "root-id:". This will
408 allow the ContentDirectory to redirect the Browse requests to the
409 appropriate MediaProvider in a simple/efficient way.
411 2008-07-30 Zeeshan Ali Khattak <zeenix@gmail.com>
414 * src/gupnp-media-provider.vala:
415 * src/gupnp-media-tracker.vala:
417 Introduce MediaProvider interface that MediaTracker
420 2008-07-18 Zeeshan Ali Khattak <zeenix@gmail.com>
422 * src/gupnp-connection-manager.vala:
424 No need to list all supported mimetypes in SourceProtocolInfo.
426 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
431 - Declared all built sources in BUILT_SOURCES.
433 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
437 Prepare NEWS file for initial (0.1) release.
439 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
444 Update design doc and TODO files.
446 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
448 * src/gupnp-connection-manager.vala:
450 - Swap the sink and source ProtocolInfo.
451 - Use Vala's syntax for connecting signals with details.
452 - Remove the unused commented-out code.
453 - Initialize the variables in the constructor.
454 - Put my name/copyright in the header.
456 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
458 * data/xml/Makefile.am:
459 * data/xml/description.xml:
460 * src/gupnp-media-server.vala:
462 Enable the ConnectionManager service.
464 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
467 * src/gupnp-connection-manager.vala:
469 Copy the ConnectionManager code from gupnp-media-renderer.
471 2008-07-04 Zeeshan Ali Khattak <zeenix@gmail.com>
475 Put some description in README file.
477 2008-07-03 Zeeshan Ali Khattak <zeenix@gmail.com>
479 * src/gupnp-content-directory.vala:
481 Return an error on getting invalid arguments for 'Browse'.
483 2008-07-03 Zeeshan Ali Khattak <zeenix@gmail.com>
485 * src/gupnp-content-directory.vala:
487 Argument 'value' of query_variable signal should now be declared 'ref'.
489 2008-07-03 Zeeshan Ali Khattak <zeenix@gmail.com>
491 * src/gupnp-media-tracker.vala:
493 Provide the 'creator' tag in DIDL xml for all items. The same value is
494 provided in 'author' and 'artist' tags for music and video items
497 2008-07-02 Zeeshan Ali Khattak <zeenix@gmail.com>
499 * data/xml/ContentDirectory.xml:
501 Hide the optional "GetSortExtensionCapabilities" action as well.
503 2008-07-02 Zeeshan Ali Khattak <zeenix@gmail.com>
505 * src/gupnp-content-directory.vala:
507 - Initialize "SystemUpdateID" variable and implement related query and
509 - Implement "SearchCapabilities" and "SortCapabilities" related
511 - Implement "FeatureList" related queries and actions.
513 2008-07-02 Zeeshan Ali Khattak <zeenix@gmail.com>
515 * data/xml/ContentDirectory.xml:
517 - List the required actions/variable before the optional.
518 - Comment out the optional actions and variables.
520 2008-07-02 Zeeshan Ali Khattak <zeenix@gmail.com>
522 * data/xml/Makefile.am:
523 * data/xml/description-xbox360.xml:
524 * data/xml/description.xml:
526 Disable the distribution and advertisement of the yet unimplemented
527 ConnectionManager service.
529 2008-07-02 Zeeshan Ali Khattak <zeenix@gmail.com>
531 * src/gupnp-media-tracker.vala:
533 A temporary hack to make Vala compiler free string in structs. We need
534 this untill GB#526552 is fixed.
536 2008-07-01 Zeeshan Ali Khattak <zeenix@gmail.com>
538 * src/gupnp-media-tracker.vala:
540 - Refactor: separate functions for adding music, image and video items
542 - Put the actual "album" in the DIDL when available.
543 - Put "dc:date" in the DIDL when available.
544 - No need to check for null on values returned from tracker.
546 2008-07-01 Zeeshan Ali Khattak <zeenix@gmail.com>
548 * src/gupnp-media-tracker.vala:
550 - Include the author, creator or artist in the DIDL when available.
551 - Include "originalTrackNumber" in the DIDL for Music track objects.
554 2008-06-30 Zeeshan Ali Khattak <zeenix@gmail.com>
558 Export the "abs_top_builddir" explicitly. Some installations need it.
560 2008-06-30 Zeeshan Ali Khattak <zeenix@gmail.com>
562 * src/gupnp-media-tracker.vala:
564 - Include the title instead of filename in the DIDL when it's available.
565 - tracker gives us empty string rather than null for each unavailable
568 2008-06-29 Zeeshan Ali Khattak <zeenix@gmail.com>
570 * src/gupnp-metadata-extractor.vala:
572 Put some more more comments and Refactor.
574 2008-06-27 Zeeshan Ali Khattak <zeenix@gmail.com>
576 * src/gupnp-metadata-extractor.vala:
578 Extract the mime-type using GIO.
580 2008-06-27 Zeeshan Ali Khattak <zeenix@gmail.com>
585 Require gio-2.0 (>= 2.16) and include it in the build.
587 2008-06-27 Zeeshan Ali Khattak <zeenix@gmail.com>
589 * src/gupnp-metadata-extractor.vala:
591 Implement extraction of audio and video specific metadata.
593 2008-06-26 Zeeshan Ali Khattak <zeenix@gmail.com>
595 * src/gupnp-media-server.vala:
597 Correct the logic in MediaServer.set_friendly_name_and_udn (). The
598 values for UDN and FriendlyName were not set in the description doc if
599 not already present in the corresponding gconf keys.
601 2008-06-25 Zeeshan Ali Khattak <zeenix@gmail.com>
605 Reduce the gstreamer dependency to 0.10.18.
607 2008-06-25 Zeeshan Ali Khattak <zeenix@gmail.com>
609 * src/gupnp-metadata-extractor.vala:
611 - Use 'this' keyword wherever possible. This makes code much more
613 - Only react to PAUSED state-change if the previous state was READY.
614 - Refactor: A separate function for extraction of 'duration'.
615 - Gst.TagList.copy_value.value is 'out' rather than 'ref'.
617 2008-06-25 Zeeshan Ali Khattak <zeenix@gmail.com>
620 * src/gupnp-metadata-extractor.vala:
622 Add a gstreamer-based metadata extractor.
624 2008-06-25 Zeeshan Ali Khattak <zeenix@gmail.com>
629 Add dependency to gstreamer >= 0.10.19.
631 2008-06-24 Zeeshan Ali Khattak <zeenix@gmail.com>
633 * src/gupnp-content-directory.vala:
634 * src/gupnp-media-receiver-registrar.vala:
635 * src/gupnp-media-server.vala:
636 * src/gupnp-media-tracker.vala:
638 Remove the now redundant 'using GLib' from all sources.
640 2008-06-24 Zeeshan Ali Khattak <zeenix@gmail.com>
642 * src/gupnp-content-directory.vala:
643 * src/gupnp-media-receiver-registrar.vala:
645 Start using the new Vala syntax for connecting signals with details.
647 2008-06-23 Zeeshan Ali Khattak <zeenix@gmail.com>
649 * src/gupnp-media-tracker.vala:
651 A small fix to setisfy the latest Vala compiler.
653 2008-06-16 Zeeshan Ali Khattak <zeenix@gmail.com>
655 * src/gupnp-media-tracker.vala:
657 Make all constants all CAPS.
659 2008-06-15 Zeeshan Ali Khattak <zeenix@gmail.com>
663 Check for gupnp-media-server.vala file rather than now removed main.c
666 2008-06-15 Zeeshan Ali Khattak <zeenix@gmail.com>
670 Add the vala stamp file to CLEANFILES.
672 2008-06-15 Zeeshan Ali Khattak <zeenix@gmail.com>
675 * src/gupnp-media-server.vala:
678 Re-write the main module in Vala. The main module's code now resides
679 in MediaServer class as static methods. This marks the completion of
680 re-write of code in Vala. Yay!
682 2008-06-15 Zeeshan Ali Khattak <zeenix@gmail.com>
689 Put all low-level stuff into a separate module. This module will be
690 the only one kept in C and all the code that currently can't be
691 written (easily) in Vala, will go there.
693 2008-06-13 Zeeshan Ali Khattak <zeenix@gmail.com>
698 Check for gconf-2.0 Vala bindings and add it to the Vala compiler
701 2008-06-13 Zeeshan Ali Khattak <zeenix@gmail.com>
705 Introduce a separate configure option for a strict C compiler.
707 2008-06-13 Zeeshan Ali Khattak <zeenix@gmail.com>
710 * src/gupnp-media-server.c:
711 * src/gupnp-media-server.h:
712 * src/gupnp-media-server.vala:
714 Re-write the MediaServer class in Vala.
716 2008-06-12 Zeeshan Ali Khattak <zeenix@gmail.com>
718 * src/gupnp-media-receiver-registrar.vala:
720 Add the copyright header.
722 2008-06-12 Zeeshan Ali Khattak <zeenix@gmail.com>
724 * src/gupnp-media-tracker.vala:
726 - Use the nice and clean DBus API that Vala provides us.
727 - Enable the commented out code of get_container_children_count() now
728 that it's working against the latest Vala (svn trunk). MediaTracker
729 is fully functional again, yay!
730 - Correct a warning message (copy&paste mistake).
732 2008-06-12 Zeeshan Ali Khattak <zeenix@gmail.com>
734 * src/gupnp-media-tracker.vala:
736 Correct the types of two parameters of MediaTracker.browse().
738 2008-06-12 Zeeshan Ali Khattak <zeenix@gmail.com>
741 * src/gupnp-content-directory.c:
742 * src/gupnp-content-directory.h:
743 * src/gupnp-content-directory.vala:
745 Re-write ContentDirectory implementation in Vala.
747 2008-06-11 Zeeshan Ali Khattak <zeenix@gmail.com>
751 Require Vala >= 0.3.4.
753 2008-06-11 Zeeshan Ali Khattak <zeenix@gmail.com>
757 * src/gupnp-content-directory.c:
758 * src/gupnp-media-tracker.c:
759 * src/gupnp-media-tracker.h:
760 * src/gupnp-media-tracker.vala:
762 Re-write MediaTracker in Vala. Doesn't really work. Thanks to
763 dbus-glib bindings for Vala and tracker API.
765 2008-06-07 Zeeshan Ali Khattak <zeenix@gmail.com>
768 * src/gupnp-media-receiver-registrar.c:
769 * src/gupnp-media-receiver-registrar.h:
770 * src/gupnp-media-receiver-registrar.vala:
772 Re-write X_MS_MediaReceiverRegistrar implementation in Vala.
774 2008-06-07 Zeeshan Ali Khattak <zeenix@gmail.com>
778 Check for Vala and GUPnP bindings.
780 2008-05-14 Zeeshan Ali Khattak <zeenix@gmail.com>
783 * src/gupnp-content-directory.c:
784 * src/gupnp-content-directory.h:
785 * src/gupnp-media-receiver-registrar.c:
786 * src/gupnp-media-receiver-registrar.h:
787 * src/gupnp-media-server.c:
789 Put the services implementations into separate objects.
791 2008-05-08 Zeeshan Ali Khattak <zeenix@gmail.com>
793 * src/gupnp-media-tracker.c:
795 - Report the correct UPnP class of the items.
796 - Xbox wants Images container to have ID of '16'.
797 - Provide 'res@resultion' in DIDL XML for audio and video items.
799 2008-05-08 Zeeshan Ali Khattak <zeenix@gmail.com>
801 * src/gupnp-media-tracker.c:
803 Quick security fix: only host the user's home dir. This should be OK
804 with most tracker setups since by default tracker only indexes user's
807 2008-05-08 Zeeshan Ali Khattak <zeenix@gmail.com>
809 * src/gupnp-media-tracker.c:
811 - Introduce a structure to hold container info: ID, title and
812 associated tracker category.
813 - Don't escape '/' in the path before putting it in HTTP URI.
815 2008-05-08 Zeeshan Ali Khattak <zeenix@gmail.com>
817 * src/gupnp-media-server.c:
819 Xbox 360 uses 'ContainerID' instead of 'ObjectID' for cotainers.
821 2008-05-07 Zeeshan Ali Khattak <zeenix@gmail.com>
823 * data/xml/Makefile.am:
825 Add the newly added xbox 360 specific xml files to build.
827 2008-05-07 Zeeshan Ali Khattak <zeenix@gmail.com>
829 * data/xml/description-xbox360.xml:
832 Use a separate description document for Xbox 360 to keep the code
835 2008-05-07 Zeeshan Ali Khattak <zeenix@gmail.com>
837 * src/gupnp-media-server.c:
839 Retrieve the services in version agnostic way.
841 2008-05-06 Zeeshan Ali Khattak <zeenix@gmail.com>
843 * data/xml/X_MS_MediaReceiverRegistrar1.xml:
844 * data/xml/description.xml:
845 * src/gupnp-media-server.c:
848 Add basic support for Xbox.
850 2008-05-05 Zeeshan Ali Khattak <zeenix@gmail.com>
852 * data/xml/description.xml:
854 Steal some more DLNA bits from rhythmbox GUPnP plugin.
856 2008-05-03 Zeeshan Ali Khattak <zeenix@gmail.com>
858 * src/gupnp-media-tracker.c:
860 Adapt to latest didl writer API. We put a fake 'MP3' for all items in
861 the DLNA's PN field for each item. This should fix the playback of mp3
862 contents on DLNA-compliant MRs and CPs without breaking the playback of
863 non-mp3 contents on non-DLNA compliant MRs/CPs.
865 2008-05-02 Zeeshan Ali Khattak <zeenix@gmail.com>
867 * src/gupnp-media-tracker.c:
869 In Browse() implementation,
870 - respect 'StartingIndex' and 'RequestedCount' params.
871 - Never return more than 128 items in a single reply.
873 2008-05-02 Zeeshan Ali Khattak <zeenix@gmail.com>
875 * src/gupnp-media-tracker.c:
877 - Use tracker to get the number of items in a category.
878 - offset param to Files.GetByServiceType method is zero-based.
880 2008-05-02 Zeeshan Ali Khattak <zeenix@gmail.com>
882 * src/gupnp-media-tracker.c:
884 - Host the root directory rather than user's home directory since the
885 tracker URI's are absolute file paths and it could be tracking other
887 - Escape the path before making a URI from it.
888 - Remove an unneeded param from a function.
890 2008-05-02 Zeeshan Ali Khattak <zeenix@gmail.com>
892 * src/gupnp-media-tracker.c:
894 Start using tracker for fetching the list of media files.
896 2008-04-29 Zeeshan Ali Khattak <zeenix@gmail.com>
898 * src/gupnp-media-tracker.c:
902 2008-04-29 Zeeshan Ali Khattak <zeenix@gmail.com>
906 * src/gupnp-media-tracker.c:
908 Start using tracker for fetching the metadata.
910 2008-04-28 Zeeshan Ali Khattak <zeenix@gmail.com>
913 * src/gupnp-media-server.c:
914 * src/gupnp-media-tracker.c:
915 * src/gupnp-media-tracker.h:
917 Add skeleton for tracker-based media provider.
919 2008-04-23 Zeeshan Ali Khattak <zeenix@gmail.com>
924 Remove first goal from TODO and update the design/plan.
926 2008-04-23 Zeeshan Ali Khattak <zeenix@gmail.com>
930 - Fetch the UDN and friendlyname from gconf and set them to default
931 values if gconf keys aren't already set.
932 - No need to load the modified description document anymore.
934 2008-04-22 Zeeshan Ali Khattak <zeenix@gmail.com>
938 Let the context choose the hostname/IP and port for us if not
941 2008-04-21 Zeeshan Ali Khattak <zeenix@gmail.com>
943 * src/gupnp-media-server.c:
945 - Implement 'BrowseMetadata'.
946 - Mime-type of mp3 files should be 'audio/mpeg' rather than
948 - Host user's home directory as '/media' and update paths accordingly.
950 2008-04-21 Zeeshan Ali Khattak <zeenix@gmail.com>
954 * data/xml/Makefile.am:
957 Update/fix the build system for our dummy MS.
959 2008-04-21 Zeeshan Ali Khattak <zeenix@gmail.com>
961 * src/gupnp-media-server.c:
962 * src/gupnp-media-server.h:
965 Implement a dummy MS.
967 2008-04-21 Zeeshan Ali Khattak <zeenix@gmail.com>
969 * src/gupnp-media-server.c:
970 * src/gupnp-media-server.h:
972 Update the copyright/licence header.
974 2008-04-21 Zeeshan Ali Khattak <zeenix@gmail.com>
976 * data/xml/ConnectionManager.xml:
977 * data/xml/ContentDirectory.xml:
978 * data/xml/description.xml:
980 - Advertise version 2 of MS and AV services.
981 - Some minor updates.
983 2008-04-13 Zeeshan Ali Khattak <zeenix@gmail.com>
988 - Rename MediaDb to MediaProvider.
989 - Replace MediaDbGroup and MediaDbPlugin by a single MediaDb.
993 Add TODO file and put the general plan in there.
995 2008-04-13 Zeeshan Ali Khattak <zeenix@gmail.com>
999 Add some more objects and description to design doc.