From: Lucas De Marchi Date: Wed, 21 Aug 2013 22:01:15 +0000 (-0300) Subject: plugins/asf: Add TODO X-Git-Tag: accepted/tizen/generic/20140106.140339~63 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=88176538f641191ba7ed862514d87913c8c6daf5;p=platform%2Fupstream%2Flightmediascanner.git plugins/asf: Add TODO --- diff --git a/src/plugins/asf/asf.c b/src/plugins/asf/asf.c index ceba8eb..24a846f 100644 --- a/src/plugins/asf/asf.c +++ b/src/plugins/asf/asf.c @@ -517,6 +517,26 @@ _match(struct plugin *p, const char *path, int len, int base) return (void*)(i + 1); } +/* TODO: + * Parse the "Extended Stream Properties Object" (sec. 4.1). It contains some + * missing fields: bitrate and language + * + * It may also contain the "Stream Properties Object" embedded in it. + * For language we also need to parse "Language List Object" (sec 4.6) which + * contains an array with all the languages used (they are in UTF-16, so they + * need to be properly converted). + * + * Oh, well... there's also the optional "Stream Bitrate Properties Object" + * which also may contain the bitrate. This property must be very important so + * they duplicated it everywhere. + * + * Apparently the length can also be obtained from the "Extended Stream + * Properties Object": start_time, end_time (paying attention to the preroll + * field in the header). + * + * Knowing the length, frame rate can be calculated with the "AverageTime Per + * Frame" field of the "Extended Stream Properties Object" + */ static int _parse(struct plugin *plugin, struct lms_context *ctxt, const struct lms_file_info *finfo, void *match) {