• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/ap/gpl/minidlna/flac-1.2.1/src/share/grabbag/

Lines Matching defs:picture

41 static FLAC__bool local__parse_type_(const char *s, size_t len, FLAC__StreamMetadata_Picture *picture)
46 picture->type = FLAC__STREAM_METADATA_PICTURE_TYPE_FRONT_COVER;
59 picture->type = val;
66 static FLAC__bool local__parse_resolution_(const char *s, size_t len, FLAC__StreamMetadata_Picture *picture)
72 picture->width = picture->height = picture->depth = picture->colors = 0;
80 picture->width = val;
82 picture->height = val;
90 picture->depth = val;
105 picture->depth = val;
107 picture->colors = val;
110 if(picture->depth < 32 && 1u<<picture->depth < picture->colors)
118 if(obj->data.picture.data_length >= 8 && 0 == memcmp(obj->data.picture.data, "\x89PNG\x0d\x0a\x1a\x0a", 8))
120 else if(obj->data.picture.data_length >= 6 && (0 == memcmp(obj->data.picture.data, "GIF87a", 6) || 0 == memcmp(obj->data.picture.data, "GIF89a", 6)))
122 else if(obj->data.picture.data_length >= 2 && 0 == memcmp(obj->data.picture.data, "\xff\xd8", 2))
127 static FLAC__bool local__extract_resolution_color_info_(FLAC__StreamMetadata_Picture *picture)
129 const FLAC__byte *data = picture->data;
130 FLAC__uint32 len = picture->data_length;
132 if(0 == strcmp(picture->mime_type, "image/png")) {
144 picture->width = (FLAC__uint32)data[8] << 24 | (FLAC__uint32)data[9] << 16 | (FLAC__uint32)data[10] << 8 | (FLAC__uint32)data[11];
145 picture->height = (FLAC__uint32)data[12] << 24 | (FLAC__uint32)data[13] << 16 | (FLAC__uint32)data[14] << 8 | (FLAC__uint32)data[15];
151 picture->depth = 8 * 3u;
158 picture->depth = (FLAC__uint32)data[16];
160 picture->depth = (FLAC__uint32)data[16] * 3u;
162 picture->depth = (FLAC__uint32)data[16] * 2u;
164 picture->depth = (FLAC__uint32)data[16] * 4u;
165 picture->colors = 0;
170 picture->colors = clen / 3u;
181 else if(0 == strcmp(picture->mime_type, "image/jpeg")) {
214 picture->width = (FLAC__uint32)data[5] << 8 | (FLAC__uint32)data[6];
215 picture->height = (FLAC__uint32)data[3] << 8 | (FLAC__uint32)data[4];
216 picture->depth = (FLAC__uint32)data[2] * (FLAC__uint32)data[7];
217 picture->colors = 0;
236 else if(0 == strcmp(picture->mime_type, "image/gif")) {
247 picture->width = (FLAC__uint32)data[6] | ((FLAC__uint32)data[7] << 8);
248 picture->height = (FLAC__uint32)data[8] | ((FLAC__uint32)data[9] << 8);
251 picture->depth = (((FLAC__uint32)(data[10] & 0x70) >> 4) + 1) * 3u;
254 picture->depth = 8u * 3u;
256 picture->colors = 1u << ((FLAC__uint32)(data[10] & 0x07) + 1u);
268 "invalid picture specification",
269 "invalid picture specification: can't parse resolution/color part",
272 "error opening picture file",
273 "error reading picture file",
274 "invalid picture type",
300 if(!local__parse_type_(spec, p-spec, &obj->data.picture))
304 if(p-spec) { /* if blank, we'll try to guess later from the picture data */
318 if(!local__parse_resolution_(spec, p-spec, &obj->data.picture))
334 if(!local__parse_type_("", 0, &obj->data.picture)) /* use default picture type */
339 else if(!local__parse_resolution_("", 0, &obj->data.picture))
350 if(0 == strcmp(obj->data.picture.mime_type, "-->")) { /* magic MIME type means URL */
353 else if(obj->data.picture.width == 0 || obj->data.picture.height == 0 || obj->data.picture.depth == 0)
356 else { /* regular picture file */
376 else if(*obj->data.picture.mime_type == '\0' && !local__extract_mime_type_(obj))
379 else if((obj->data.picture.width == 0 || obj->data.picture.height == 0 || obj->data.picture.depth == 0) && !local__extract_resolution_color_info_(&obj->data.picture))
391 obj->data.picture.type == FLAC__STREAM_METADATA_PICTURE_TYPE_FILE_ICON_STANDARD &&
393 (strcmp(obj->data.picture.mime_type, "image/png") && strcmp(obj->data.picture.mime_type, "-->")) ||
394 obj->data.picture.width != 32 ||
395 obj->data.picture.height != 32