QA of Galician translations
[profile/ivi/rygel.git] / ChangeLog
1 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
2
3         * src/media-server/rygel-connection-manager.vala:
4         * src/media-server/rygel-content-directory.vala:
5         * src/media-server/rygel-media-receiver-registrar.vala:
6
7         Override GLib.Object.constructed() instead of using 'construct' keyword.
8
9 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
10
11         * src/media-providers/tracker/rygel-media-tracker.vala:
12         * src/media-server/rygel-media-manager.vala:
13         * src/media-server/rygel-media-server.vala:
14         * src/media-server/rygel-metadata-extractor.vala:
15
16         Avoid using 'construct' now that we have flexible construction methods.
17
18 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
19
20         * src/media-providers/tracker/rygel-tracker-container.vala:
21         * src/media-providers/tracker/rygel-tracker-image-item.vala:
22         * src/media-providers/tracker/rygel-tracker-item.vala:
23         * src/media-providers/tracker/rygel-tracker-music-item.vala:
24         * src/media-providers/tracker/rygel-tracker-video-item.vala:
25
26         Don't keep GUPnP context and D-Bus proxy objects in TrackerItem. It can
27         access these from the parent container object.
28
29 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
30
31         * src/media-providers/tracker/rygel-tracker-container.vala:
32
33         Don't hide GUPnP context and D-Bus proxy objects.
34
35 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
36
37         * src/media-providers/tracker/rygel-media-tracker.vala:
38         * src/media-providers/tracker/rygel-tracker-container.vala:
39         * src/media-providers/tracker/rygel-tracker-image-item.vala:
40         * src/media-providers/tracker/rygel-tracker-music-item.vala:
41         * src/media-providers/tracker/rygel-tracker-video-item.vala:
42
43         Rename field/variable "tracker_category" to "category".
44
45 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
46
47         * src/media-providers/tracker/Makefile.am:
48         * src/media-providers/tracker/rygel-tracker-image-item.vala:
49         * src/media-providers/tracker/rygel-tracker-item.vala:
50         * src/media-providers/tracker/rygel-tracker-music-item.vala:
51         * src/media-providers/tracker/rygel-tracker-video-item.vala:
52
53         Refactor: Put common Tracker item code into a separate abstract class.
54         All Tracker item classes now inherit from this class.
55
56 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
57
58         * src/media-providers/tracker/Makefile.am:
59         * src/media-providers/tracker/rygel-tracker-container.vala:
60         * src/media-providers/tracker/rygel-tracker-image-item.vala:
61         * src/media-providers/tracker/rygel-tracker-music-item.vala:
62         * src/media-providers/tracker/rygel-tracker-video-item.vala:
63
64         Refactor: Separate classes for each item type. These tracker-specific
65         item classes are responsible for fetching their metadata and serializing
66         it.
67
68 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
69
70         * src/media-providers/tracker/rygel-tracker-container.vala:
71
72         Declare private fields as private.
73
74 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
75
76         * src/media-providers/tracker/rygel-media-tracker.vala:
77         * src/media-providers/tracker/rygel-tracker-container.vala:
78
79         Refactor: Add TrackerContainer.get_file_category(). Now MediaTracker
80         doesn't talk to tracker directly.
81
82 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
83
84         * data/xml/ConnectionManager.xml:
85         * data/xml/ContentDirectory.xml:
86         * data/xml/X_MS_MediaReceiverRegistrar1.xml:
87
88         More standard-compliant SCPDs. Based on a patch by Ross Burton
89         <ross@opennedhand.com>
90
91 2008-11-11  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
92
93         * src/media-providers/tracker/rygel-media-tracker.vala:
94
95         Create root container after it's children. This is to pass the correct
96         number of children to the constructor of the root container.
97
98 2008-11-10  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
99
100         * src/media-providers/tracker/rygel-media-tracker.vala:
101         * src/media-providers/tracker/rygel-tracker-container.vala:
102
103         Refactor: A more intelligent TrackerContainer. As a result, MediaTracker
104         class is now very slim.
105
106 2008-11-10  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
107
108         * AUTHORS:
109         * src/media-server/cstuff.c:
110         * src/media-server/cstuff.h:
111
112         Replace my non-working "@gstreamer.net" email with "@gnome.org" one.
113
114 2008-10-29  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
115
116         * src/media-server/rygel-media-manager.vala:
117         * src/media-server/rygel-metadata-extractor.vala:
118
119         File.query_info () doesn't return a weak anymore.
120
121 2008-10-26  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
122
123         * MAINTAINERS:
124
125         Add MAINTAINERS file.
126
127 2008-10-26  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
128
129         * README:
130         * configure.ac:
131         * data/xml/Makefile.am:
132         * data/xml/description-xbox360.xml:
133         * data/xml/description.xml:
134         * doc/design.txt:
135         * src/media-providers/tracker/Makefile.am:
136         * src/media-providers/tracker/gupnp-media-tracker.vala:
137         * src/media-providers/tracker/gupnp-tracker-container.vala:
138         * src/media-providers/tracker/gupnp-tracker-plugin.vala:
139         * src/media-providers/tracker/rygel-media-tracker.vala:
140         * src/media-providers/tracker/rygel-tracker-container.vala:
141         * src/media-providers/tracker/rygel-tracker-plugin.vala:
142         * src/media-server/Makefile.am:
143         * src/media-server/gupnp-connection-manager.vala:
144         * src/media-server/gupnp-content-directory.vala:
145         * src/media-server/gupnp-media-container.vala:
146         * src/media-server/gupnp-media-item.vala:
147         * src/media-server/gupnp-media-manager.vala:
148         * src/media-server/gupnp-media-object.vala:
149         * src/media-server/gupnp-media-provider.vala:
150         * src/media-server/gupnp-media-receiver-registrar.vala:
151         * src/media-server/gupnp-media-server.vala:
152         * src/media-server/gupnp-metadata-extractor.vala:
153         * src/media-server/rygel-connection-manager.vala:
154         * src/media-server/rygel-content-directory.vala:
155         * src/media-server/rygel-media-container.vala:
156         * src/media-server/rygel-media-item.vala:
157         * src/media-server/rygel-media-manager.vala:
158         * src/media-server/rygel-media-object.vala:
159         * src/media-server/rygel-media-provider.vala:
160         * src/media-server/rygel-media-receiver-registrar.vala:
161         * src/media-server/rygel-media-server.vala:
162         * src/media-server/rygel-metadata-extractor.vala:
163
164         Project renamed to "Rygel" to be moved to GNOME SVN.
165
166 2008-09-08  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
167
168         * src/media-providers/tracker/Makefile.am:
169         * src/media-providers/tracker/gupnp-media-tracker.vala:
170         * src/media-providers/tracker/gupnp-tracker-plugin.vala:
171
172         Refactor: Put plugin stuff into a separate module.
173
174 2008-09-08  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
175
176         * src/media-providers/tracker/Makefile.am:
177         * src/media-providers/tracker/gupnp-media-tracker.vala:
178         * src/media-providers/tracker/gupnp-tracker-container.vala:
179
180         Refactor: Put TrackerContainer class into a separate module.
181
182 2008-09-08  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>
183
184         * src/media-providers/tracker/gupnp-media-tracker.vala:
185
186         Rename Tracker.Container to GUPnP.TrackerContainer.
187
188 2008-08-31  Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
189
190         * src/media-providers/tracker/gupnp-media-tracker.vala:
191         * src/media-server/gupnp-media-manager.vala:
192
193         Create the root container in the contructor of the media providers.
194
195 2008-08-30  Zeeshan Ali Khattak  <zeenix@gmail.com>
196
197         * src/media-providers/tracker/gupnp-media-tracker.vala:
198
199         Remove the redundant 'title' field from the Tracker.Container class.
200
201 2008-08-29  Zeeshan Ali Khattak  <zeenix@gmail.com>
202
203         * src/media-server/gupnp-media-item.vala:
204
205         Introduce a class for media items.
206
207         * src/media-server/Makefile.am:
208
209         Add MediaItem to vapi file and build.
210
211         * src/media-providers/tracker/gupnp-media-tracker.vala:
212
213         Start utilizing the MediaContainer class in MediaTracker.
214
215 2008-08-29  Zeeshan Ali Khattak  <zeenix@gmail.com>
216
217         * src/media-server/gupnp-media-object.vala:
218
219         Introduce a new abstract class for media objects. It will be the
220         responsibility of derived classes to implement serializing to
221         DIDLLiteWriter.
222
223         * src/media-server/gupnp-media-container.vala:
224
225         Introduce a class for media containers.
226
227         * src/media-server/Makefile.am:
228
229         Add MediaObject and MediaContainer to vapi file and build.
230
231         * src/media-providers/tracker/gupnp-media-tracker.vala:
232         * src/media-server/gupnp-media-manager.vala:
233
234         Start utilizing the MediaContainer class in media providers.
235
236 2008-08-29  Zeeshan Ali Khattak  <zeenix@gmail.com>
237
238         * src/media-providers/tracker/gupnp-media-tracker.vala:
239
240         - Keep the parent_id of the container in the Tracker.Container class.
241         - Add the root_id prefix to container's id at object creation time.
242
243 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
244
245         * src/media-providers/tracker/gupnp-media-tracker.vala:
246         * src/media-server/gupnp-media-manager.vala:
247         * src/media-server/gupnp-media-provider.vala:
248
249         Remove MediaProvider.get_root_children_count() and allow each provider
250         to add metadata of it's root container to DIDL instead.
251
252 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
253
254         * src/media-server/gupnp-media-manager.vala:
255
256         Rename MediaManger's get_root_container_metadata() to
257         add_root_container_metadata().
258
259 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
260
261         * src/media-server/gupnp-content-directory.vala:
262
263         Put the code and message from exception caught on the action error.
264
265 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
266
267         * src/media-server/gupnp-media-provider.vala:
268
269         Assign a specific code (701) to "No such object" error.
270
271 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
272
273         * src/media-server/gupnp-media-manager.vala:
274
275         Rename MediaManager's browse_root_container() to add_root_children().
276
277 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
278
279         * src/media-providers/tracker/gupnp-media-tracker.vala:
280         * src/media-server/gupnp-content-directory.vala:
281         * src/media-server/gupnp-media-manager.vala:
282         * src/media-server/gupnp-media-provider.vala:
283
284         - Rename MediaProvider's get_metadata() to add_metadata().
285         - Rename MediaProvider's browse() to add_children_metadata().
286
287 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
288
289         * src/media-providers/tracker/gupnp-media-tracker.vala:
290         * src/media-server/gupnp-content-directory.vala:
291         * src/media-server/gupnp-media-manager.vala:
292         * src/media-server/gupnp-media-provider.vala:
293
294         MediaProviders now get a DIDLiteWriter to add metadata to and no longer
295         return didl strings.
296
297 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
298
299         * src/media-server/gupnp-media-manager.vala:
300
301         Remove an unneeded try&catch block.
302
303 2008-08-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
304
305         * src/media-server/Makefile.am:
306
307         MediaProvider class now requires gupnp-av package.
308
309 2008-08-17  Zeeshan Ali Khattak  <zeenix@gmail.com>
310
311         * src/media-providers/tracker/gupnp-media-tracker.vala:
312         * src/media-server/gupnp-content-directory.vala:
313         * src/media-server/gupnp-media-manager.vala:
314         * src/media-server/gupnp-media-provider.vala:
315
316         Use Exceptions rather than returning null.
317
318 2008-08-17  Zeeshan Ali Khattak  <zeenix@gmail.com>
319
320         * src/media-server/gupnp-media-server.vala:
321
322         Use real name of the user rather than username in FriendlyName.
323
324 2008-08-17  Zeeshan Ali Khattak  <zeenix@gmail.com>
325
326         * src/media-providers/tracker/gupnp-media-tracker.vala:
327         * src/media-server/gupnp-media-manager.vala:
328         * src/media-server/gupnp-media-provider.vala:
329
330         Make MediaProvider an abstract class rather than interface. We will have
331         to do this at some point anyway to put common functionality into this
332         module but the real reason to do this right now is that support for
333         constuct-only props in interfaces was recenlty dropped in Vala (for good
334         reasons).
335
336 2008-08-17  Zeeshan Ali Khattak  <zeenix@gmail.com>
337
338         * src/media-server/gupnp-media-provider.vala:
339
340         Put MediaProvider in GUPnP namespace.
341
342 2008-08-05  Zeeshan Ali Khattak  <zeenix@gmail.com>
343
344         * configure.ac:
345         * src/Makefile.am:
346         * src/cstuff.c:
347         * src/cstuff.h:
348         * src/cstuff.vapi:
349         * src/gupnp-connection-manager.vala:
350         * src/gupnp-content-directory.vala:
351         * src/gupnp-media-manager.vala:
352         * src/gupnp-media-provider.vala:
353         * src/gupnp-media-receiver-registrar.vala:
354         * src/gupnp-media-server.vala:
355         * src/gupnp-metadata-extractor.vala:
356         * src/media-providers/tracker/Makefile.am:
357         * src/media-server/Makefile.am:
358         * src/media-server/cstuff.c:
359         * src/media-server/cstuff.h:
360         * src/media-server/cstuff.vapi:
361         * src/media-server/gupnp-connection-manager.vala:
362         * src/media-server/gupnp-content-directory.vala:
363         * src/media-server/gupnp-media-manager.vala:
364         * src/media-server/gupnp-media-provider.vala:
365         * src/media-server/gupnp-media-receiver-registrar.vala:
366         * src/media-server/gupnp-media-server.vala:
367         * src/media-server/gupnp-metadata-extractor.vala:
368
369         Move the core Media Server code into a separate subdirectory.
370
371 2008-08-05  Zeeshan Ali Khattak  <zeenix@gmail.com>
372
373         * src/media-providers/Makefile.am:
374
375         Remove Makefile.in on 'make maintainer-clean'.
376
377 2008-08-05  Zeeshan Ali Khattak  <zeenix@gmail.com>
378
379         * src/gupnp-media-manager.vala:
380
381         - Better/recursive GIO-based plugin loading.
382         - Replace random ID generation function by a GQuark-based (persistant)
383           one.
384
385 2008-08-05  Zeeshan Ali Khattak  <zeenix@gmail.com>
386
387         * configure.ac:
388
389         Disable generation of static libraries.
390
391 2008-08-05  Zeeshan Ali Khattak  <zeenix@gmail.com>
392
393         * configure.ac:
394         * src/Makefile.am:
395         * src/media-providers/Makefile.am:
396         * src/media-providers/tracker/Makefile.am:
397         * src/media-providers/tracker/gupnp-media-tracker.vala:
398
399         Re-introduce MediaTracker as a plugin.
400
401 2008-08-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
402
403         * src/Makefile.am:
404         * src/cstuff.vapi:
405         * src/gupnp-media-manager.vala:
406         * src/gupnp-media-tracker.vala:
407
408         - Introduce a plugins system. Ross should be happy now. :)
409         - Remove MediaTracker module.
410
411 2008-08-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
412
413         * src/gupnp-media-manager.vala:
414         * src/gupnp-media-provider.vala:
415         * src/gupnp-media-tracker.vala:
416
417         - Add "title" prop to MediaProvider interface.
418         - Add get_root_children_count() to MediaProvider interface.
419
420 2008-08-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
421
422         * src/gupnp-media-tracker.vala:
423
424         - Correct a typo. Now we export the ID of the container in the format we
425           need to export it in.
426         - No need for MediaManager to prefix IDs with root_id.
427         - Pass ID as is to browse() and get_metadata() of media providers.
428         - Get the root ID prefix from IDs rather than removing it.
429         - Don't add root ID prefix to root parent ID.
430
431 2008-08-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
432
433         * src/gupnp-content-directory.vala:
434         * src/gupnp-media-manager.vala:
435         * src/gupnp-media-provider.vala:
436         * src/gupnp-media-tracker.vala:
437
438         - MediaProviders now get the "root_parent_id" though a prop.
439         - MediaManager now decides the IDs to use on it's own.
440
441 2008-08-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
442
443         * src/gupnp-content-directory.vala:
444
445         Use MediaManager rather than MediaTracker. This also means that
446         system_update_id doesn't need to be handled by ContentDirectory
447         anymore.
448
449 2008-08-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
450
451         * src/Makefile.am:
452         * src/gupnp-media-manager.vala:
453
454         Introduce MediaManager. It implements MediaProvider interface and will
455         be responsible to manage all MediaProviders. Currently it uses
456         MediaTracker directly since it currently doesn't have a plugin system.
457
458 2008-07-31  Zeeshan Ali Khattak  <zeenix@gmail.com>
459
460         * src/gupnp-media-tracker.vala:
461
462         Each MediaProvider prefixes each objectid with "root-id:". This will
463         allow the ContentDirectory to redirect the Browse requests to the
464         appropriate MediaProvider in a simple/efficient way.
465
466 2008-07-30  Zeeshan Ali Khattak  <zeenix@gmail.com>
467
468         * src/Makefile.am:
469         * src/gupnp-media-provider.vala:
470         * src/gupnp-media-tracker.vala:
471
472         Introduce MediaProvider interface that MediaTracker
473         implements.
474
475 2008-07-18  Zeeshan Ali Khattak  <zeenix@gmail.com>
476
477         * src/gupnp-connection-manager.vala:
478
479         No need to list all supported mimetypes in SourceProtocolInfo.
480
481 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
482
483         * src/Makefile.am:
484
485         - Fix a typo.
486         - Declared all built sources in BUILT_SOURCES.
487
488 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
489
490         * NEWS:
491
492         Prepare NEWS file for initial (0.1) release.
493
494 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
495
496         * TODO:
497         * doc/design.txt:
498
499         Update design doc and TODO files.
500
501 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
502
503         * src/gupnp-connection-manager.vala:
504
505         - Swap the sink and source ProtocolInfo.
506         - Use Vala's syntax for connecting signals with details.
507         - Remove the unused commented-out code.
508         - Initialize the variables in the constructor.
509         - Put my name/copyright in the header.
510
511 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
512
513         * data/xml/Makefile.am:
514         * data/xml/description.xml:
515         * src/gupnp-media-server.vala:
516
517         Enable the ConnectionManager service.
518
519 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
520
521         * src/Makefile.am:
522         * src/gupnp-connection-manager.vala:
523
524         Copy the ConnectionManager code from gupnp-media-renderer.
525
526 2008-07-04  Zeeshan Ali Khattak  <zeenix@gmail.com>
527
528         * README:
529
530         Put some description in README file.
531
532 2008-07-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
533
534         * src/gupnp-content-directory.vala:
535
536         Return an error on getting invalid arguments for 'Browse'.
537
538 2008-07-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
539
540         * src/gupnp-content-directory.vala:
541
542         Argument 'value' of query_variable signal should now be declared 'ref'.
543
544 2008-07-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
545
546         * src/gupnp-media-tracker.vala:
547
548         Provide the 'creator' tag in DIDL xml for all items. The same value is
549         provided in 'author' and 'artist' tags for music and video items
550         respectively.
551
552 2008-07-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
553
554         * data/xml/ContentDirectory.xml:
555
556         Hide the optional "GetSortExtensionCapabilities" action as well.
557
558 2008-07-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
559
560         * src/gupnp-content-directory.vala:
561
562         - Initialize "SystemUpdateID" variable and implement related query and
563           action.
564         - Implement "SearchCapabilities" and "SortCapabilities" related
565           queries and actions.
566         - Implement "FeatureList" related queries and actions.
567
568 2008-07-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
569
570         * data/xml/ContentDirectory.xml:
571
572         - List the required actions/variable before the optional.
573         - Comment out the optional actions and variables.
574
575 2008-07-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
576
577         * data/xml/Makefile.am:
578         * data/xml/description-xbox360.xml:
579         * data/xml/description.xml:
580
581         Disable the distribution and advertisement of the yet unimplemented
582         ConnectionManager service.
583
584 2008-07-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
585
586         * src/gupnp-media-tracker.vala:
587
588         A temporary hack to make Vala compiler free string in structs. We need
589         this untill GB#526552 is fixed.
590
591 2008-07-01  Zeeshan Ali Khattak  <zeenix@gmail.com>
592
593         * src/gupnp-media-tracker.vala:
594
595         - Refactor: separate functions for adding music, image and video items
596           to DIDL.
597         - Put the actual "album" in the DIDL when available.
598         - Put "dc:date" in the DIDL when available.
599         - No need to check for null on values returned from tracker.
600
601 2008-07-01  Zeeshan Ali Khattak  <zeenix@gmail.com>
602
603         * src/gupnp-media-tracker.vala:
604
605         - Include the author, creator or artist in the DIDL when available.
606         - Include "originalTrackNumber" in the DIDL for Music track objects.
607         - Indentation fix.
608
609 2008-06-30  Zeeshan Ali Khattak  <zeenix@gmail.com>
610
611         * configure.ac:
612
613         Export the "abs_top_builddir" explicitly. Some installations need it.
614
615 2008-06-30  Zeeshan Ali Khattak  <zeenix@gmail.com>
616
617         * src/gupnp-media-tracker.vala:
618
619         - Include the title instead of filename in the DIDL when it's available.
620         - tracker gives us empty string rather than null for each unavailable
621           metadata.
622
623 2008-06-29  Zeeshan Ali Khattak  <zeenix@gmail.com>
624
625         * src/gupnp-metadata-extractor.vala:
626
627         Put some more more comments and Refactor.
628
629 2008-06-27  Zeeshan Ali Khattak  <zeenix@gmail.com>
630
631         * src/gupnp-metadata-extractor.vala:
632
633         Extract the mime-type using GIO.
634
635 2008-06-27  Zeeshan Ali Khattak  <zeenix@gmail.com>
636
637         * configure.ac:
638         * src/Makefile.am:
639
640         Require gio-2.0 (>= 2.16) and include it in the build.
641
642 2008-06-27  Zeeshan Ali Khattak  <zeenix@gmail.com>
643
644         * src/gupnp-metadata-extractor.vala:
645
646         Implement extraction of audio and video specific metadata.
647
648 2008-06-26  Zeeshan Ali Khattak  <zeenix@gmail.com>
649
650         * src/gupnp-media-server.vala:
651
652         Correct the logic in MediaServer.set_friendly_name_and_udn (). The
653         values for UDN and FriendlyName were not set in the description doc if
654         not already present in the corresponding gconf keys.
655
656 2008-06-25  Zeeshan Ali Khattak  <zeenix@gmail.com>
657
658         * configure.ac:
659
660         Reduce the gstreamer dependency to 0.10.18.
661
662 2008-06-25  Zeeshan Ali Khattak  <zeenix@gmail.com>
663
664         * src/gupnp-metadata-extractor.vala:
665
666         - Use 'this' keyword wherever possible. This makes code much more
667           cleaner.
668         - Only react to PAUSED state-change if the previous state was READY.
669         - Refactor: A separate function for extraction of 'duration'.
670         - Gst.TagList.copy_value.value is 'out' rather than 'ref'.
671
672 2008-06-25  Zeeshan Ali Khattak  <zeenix@gmail.com>
673
674         * src/Makefile.am:
675         * src/gupnp-metadata-extractor.vala:
676
677         Add a gstreamer-based metadata extractor.
678
679 2008-06-25  Zeeshan Ali Khattak  <zeenix@gmail.com>
680
681         * configure.ac:
682         * src/Makefile.am:
683
684         Add dependency to gstreamer >= 0.10.19.
685
686 2008-06-24  Zeeshan Ali Khattak  <zeenix@gmail.com>
687
688         * src/gupnp-content-directory.vala:
689         * src/gupnp-media-receiver-registrar.vala:
690         * src/gupnp-media-server.vala:
691         * src/gupnp-media-tracker.vala:
692
693         Remove the now redundant 'using GLib' from all sources.
694
695 2008-06-24  Zeeshan Ali Khattak  <zeenix@gmail.com>
696
697         * src/gupnp-content-directory.vala:
698         * src/gupnp-media-receiver-registrar.vala:
699
700         Start using the new Vala syntax for connecting signals with details.
701
702 2008-06-23  Zeeshan Ali Khattak  <zeenix@gmail.com>
703
704         * src/gupnp-media-tracker.vala:
705
706         A small fix to setisfy the latest Vala compiler.
707
708 2008-06-16  Zeeshan Ali Khattak  <zeenix@gmail.com>
709
710         * src/gupnp-media-tracker.vala:
711
712         Make all constants all CAPS.
713
714 2008-06-15  Zeeshan Ali Khattak  <zeenix@gmail.com>
715
716         * configure.ac:
717
718         Check for gupnp-media-server.vala file rather than now removed main.c
719         file.
720
721 2008-06-15  Zeeshan Ali Khattak  <zeenix@gmail.com>
722
723         * src/Makefile.am:
724
725         Add the vala stamp file to CLEANFILES.
726
727 2008-06-15  Zeeshan Ali Khattak  <zeenix@gmail.com>
728
729         * src/Makefile.am:
730         * src/gupnp-media-server.vala:
731         * src/main.c:
732
733         Re-write the main module in Vala. The main module's code now resides
734         in MediaServer class as static methods. This marks the completion of
735         re-write of code in Vala. Yay!
736
737 2008-06-15  Zeeshan Ali Khattak  <zeenix@gmail.com>
738
739         * src/Makefile.am:
740         * src/cstuff.c:
741         * src/cstuff.h:
742         * src/cstuff.vapi:
743
744         Put all low-level stuff into a separate module. This module will be
745         the only one kept in C and all the code that currently can't be
746         written (easily) in Vala, will go there.
747
748 2008-06-13  Zeeshan Ali Khattak  <zeenix@gmail.com>
749
750         * configure.ac:
751         * src/Makefile.am:
752
753         Check for gconf-2.0 Vala bindings and add it to the Vala compiler
754         flags.
755
756 2008-06-13  Zeeshan Ali Khattak  <zeenix@gmail.com>
757
758         * configure.ac:
759
760         Introduce a separate configure option for a strict C compiler.
761
762 2008-06-13  Zeeshan Ali Khattak  <zeenix@gmail.com>
763
764         * src/Makefile.am:
765         * src/gupnp-media-server.c:
766         * src/gupnp-media-server.h:
767         * src/gupnp-media-server.vala:
768
769         Re-write the MediaServer class in Vala.
770
771 2008-06-12  Zeeshan Ali Khattak  <zeenix@gmail.com>
772
773         * src/gupnp-media-receiver-registrar.vala:
774
775         Add the copyright header.
776
777 2008-06-12  Zeeshan Ali Khattak  <zeenix@gmail.com>
778
779         * src/gupnp-media-tracker.vala:
780
781         - Use the nice and clean DBus API that Vala provides us.
782         - Enable the commented out code of get_container_children_count() now
783           that it's working against the latest Vala (svn trunk). MediaTracker
784           is fully functional again, yay!
785         - Correct a warning message (copy&paste mistake).
786
787 2008-06-12  Zeeshan Ali Khattak  <zeenix@gmail.com>
788
789         * src/gupnp-media-tracker.vala:
790
791         Correct the types of two parameters of MediaTracker.browse().
792
793 2008-06-12  Zeeshan Ali Khattak  <zeenix@gmail.com>
794
795         * src/Makefile.am:
796         * src/gupnp-content-directory.c:
797         * src/gupnp-content-directory.h:
798         * src/gupnp-content-directory.vala:
799
800         Re-write ContentDirectory implementation in Vala.
801
802 2008-06-11  Zeeshan Ali Khattak  <zeenix@gmail.com>
803
804         * configure.ac:
805
806         Require Vala >= 0.3.4.
807
808 2008-06-11  Zeeshan Ali Khattak  <zeenix@gmail.com>
809
810         * configure.ac:
811         * src/Makefile.am:
812         * src/gupnp-content-directory.c:
813         * src/gupnp-media-tracker.c:
814         * src/gupnp-media-tracker.h:
815         * src/gupnp-media-tracker.vala:
816
817         Re-write MediaTracker in Vala. Doesn't really work. Thanks to
818         dbus-glib bindings for Vala and tracker API.
819
820 2008-06-07  Zeeshan Ali Khattak  <zeenix@gmail.com>
821
822         * src/Makefile.am:
823         * src/gupnp-media-receiver-registrar.c:
824         * src/gupnp-media-receiver-registrar.h:
825         * src/gupnp-media-receiver-registrar.vala:
826
827         Re-write X_MS_MediaReceiverRegistrar implementation in Vala.
828
829 2008-06-07  Zeeshan Ali Khattak  <zeenix@gmail.com>
830
831         * configure.ac:
832
833         Check for Vala and GUPnP bindings.
834
835 2008-05-14  Zeeshan Ali Khattak  <zeenix@gmail.com>
836
837         * src/Makefile.am:
838         * src/gupnp-content-directory.c:
839         * src/gupnp-content-directory.h:
840         * src/gupnp-media-receiver-registrar.c:
841         * src/gupnp-media-receiver-registrar.h:
842         * src/gupnp-media-server.c:
843
844         Put the services implementations into separate objects.
845
846 2008-05-08  Zeeshan Ali Khattak  <zeenix@gmail.com>
847
848         * src/gupnp-media-tracker.c:
849
850         - Report the correct UPnP class of the items.
851         - Xbox wants Images container to have ID of '16'.
852         - Provide 'res@resultion' in DIDL XML for audio and video items.
853
854 2008-05-08  Zeeshan Ali Khattak  <zeenix@gmail.com>
855
856         * src/gupnp-media-tracker.c:
857
858         Quick security fix: only host the user's home dir. This should be OK
859         with most tracker setups since by default tracker only indexes user's
860         home dir.
861
862 2008-05-08  Zeeshan Ali Khattak  <zeenix@gmail.com>
863
864         * src/gupnp-media-tracker.c:
865
866         - Introduce a structure to hold container info: ID, title and
867           associated tracker category.
868         - Don't escape '/' in the path before putting it in HTTP URI.
869
870 2008-05-08  Zeeshan Ali Khattak  <zeenix@gmail.com>
871
872         * src/gupnp-media-server.c:
873
874         Xbox 360 uses 'ContainerID' instead of 'ObjectID' for cotainers.
875
876 2008-05-07  Zeeshan Ali Khattak  <zeenix@gmail.com>
877
878         * data/xml/Makefile.am:
879
880         Add the newly added xbox 360 specific xml files to build.
881
882 2008-05-07  Zeeshan Ali Khattak  <zeenix@gmail.com>
883
884         * data/xml/description-xbox360.xml:
885         * src/main.c:
886
887         Use a separate description document for Xbox 360 to keep the code
888         simple.
889
890 2008-05-07  Zeeshan Ali Khattak  <zeenix@gmail.com>
891
892         * src/gupnp-media-server.c:
893
894         Retrieve the services in version agnostic way.
895
896 2008-05-06  Zeeshan Ali Khattak  <zeenix@gmail.com>
897
898         * data/xml/X_MS_MediaReceiverRegistrar1.xml:
899         * data/xml/description.xml:
900         * src/gupnp-media-server.c:
901         * src/main.c:
902
903         Add basic support for Xbox.
904
905 2008-05-05  Zeeshan Ali Khattak  <zeenix@gmail.com>
906
907         * data/xml/description.xml:
908
909         Steal some more DLNA bits from rhythmbox GUPnP plugin.
910
911 2008-05-03  Zeeshan Ali Khattak  <zeenix@gmail.com>
912
913         * src/gupnp-media-tracker.c:
914
915         Adapt to latest didl writer API. We put a fake 'MP3' for all items in
916         the DLNA's PN field for each item. This should fix the playback of mp3
917         contents on DLNA-compliant MRs and CPs without breaking the playback of
918         non-mp3 contents on non-DLNA compliant MRs/CPs.
919
920 2008-05-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
921
922         * src/gupnp-media-tracker.c:
923
924         In Browse() implementation,
925         - respect 'StartingIndex' and 'RequestedCount' params.
926         - Never return more than 128 items in a single reply.
927
928 2008-05-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
929
930         * src/gupnp-media-tracker.c:
931
932         - Use tracker to get the number of items in a category.
933         - offset param to Files.GetByServiceType method is zero-based.
934
935 2008-05-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
936
937         * src/gupnp-media-tracker.c:
938
939         - Host the root directory rather than user's home directory since the
940           tracker URI's are absolute file paths and it could be tracking other
941           directories as well.
942         - Escape the path before making a URI from it.
943         - Remove an unneeded param from a function.
944
945 2008-05-02  Zeeshan Ali Khattak  <zeenix@gmail.com>
946
947         * src/gupnp-media-tracker.c:
948
949         Start using tracker for fetching the list of media files.
950
951 2008-04-29  Zeeshan Ali Khattak  <zeenix@gmail.com>
952
953         * src/gupnp-media-tracker.c:
954
955         Fix a small typo.
956
957 2008-04-29  Zeeshan Ali Khattak  <zeenix@gmail.com>
958
959         * configure.ac:
960         * src/Makefile.am:
961         * src/gupnp-media-tracker.c:
962
963         Start using tracker for fetching the metadata.
964
965 2008-04-28  Zeeshan Ali Khattak  <zeenix@gmail.com>
966
967         * src/Makefile.am:
968         * src/gupnp-media-server.c:
969         * src/gupnp-media-tracker.c:
970         * src/gupnp-media-tracker.h:
971
972         Add skeleton for tracker-based media provider.
973
974 2008-04-23  Zeeshan Ali Khattak  <zeenix@gmail.com>
975
976         * TODO:
977         * doc/design.txt:
978
979         Remove first goal from TODO and update the design/plan.
980
981 2008-04-23  Zeeshan Ali Khattak  <zeenix@gmail.com>
982
983         * src/main.c:
984
985         - Fetch the UDN and friendlyname from gconf and set them to default
986           values if gconf keys aren't already set.
987         - No need to load the modified description document anymore.
988
989 2008-04-22  Zeeshan Ali Khattak  <zeenix@gmail.com>
990
991         * src/main.c:
992
993         Let the context choose the hostname/IP and port for us if not
994         specified in gconf.
995
996 2008-04-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
997
998         * src/gupnp-media-server.c:
999
1000         - Implement 'BrowseMetadata'.
1001         - Mime-type of mp3 files should be 'audio/mpeg' rather than
1002         'audio/mp3'.
1003         - Host user's home directory as '/media' and update paths accordingly.
1004
1005 2008-04-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
1006
1007         * configure.ac:
1008         * data/Makefile.am:
1009         * data/xml/Makefile.am:
1010         * src/Makefile.am:
1011
1012         Update/fix the build system for our dummy MS.
1013
1014 2008-04-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
1015
1016         * src/gupnp-media-server.c:
1017         * src/gupnp-media-server.h:
1018         * src/main.c:
1019
1020         Implement a dummy MS.
1021
1022 2008-04-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
1023
1024         * src/gupnp-media-server.c:
1025         * src/gupnp-media-server.h:
1026
1027         Update the copyright/licence header.
1028
1029 2008-04-21  Zeeshan Ali Khattak  <zeenix@gmail.com>
1030
1031         * data/xml/ConnectionManager.xml:
1032         * data/xml/ContentDirectory.xml:
1033         * data/xml/description.xml:
1034
1035         - Advertise version 2 of MS and AV services.
1036         - Some minor updates.
1037
1038 2008-04-13  Zeeshan Ali Khattak  <zeenix@gmail.com>
1039
1040         * doc/design.txt:
1041
1042         Simpler design:
1043         - Rename MediaDb to MediaProvider.
1044         - Replace MediaDbGroup and MediaDbPlugin by a single MediaDb.
1045
1046         * TODO:
1047
1048         Add TODO file and put the general plan in there.
1049
1050 2008-04-13  Zeeshan Ali Khattak  <zeenix@gmail.com>
1051
1052         * doc/design.txt:
1053
1054         Add some more objects and description to design doc.
1055