context->image_info = AcquireImageInfo();
switch_set_string(context->image_info->filename, path);
- context->images = ReadImages(context->image_info, context->exception);
- if (context->exception->severity != UndefinedException) {
- CatchException(context->exception);
- }
-
- if (context->images == (Image *)NULL) {
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Fail to read file: %s\n", path);
- return SWITCH_STATUS_GENERR;
- }
-
- context->pagecount = GetImageListLength(context->images);
-
if (handle->params) {
const char *max = switch_event_get_header(handle->params, "img_ms");
const char *autoplay = switch_event_get_header(handle->params, "autoplay");
+ const char *density = switch_event_get_header(handle->params, "density");
+ const char *quality = switch_event_get_header(handle->params, "quality");
int tmp;
if (max) {
if (autoplay) {
context->autoplay = atoi(autoplay);
}
+
+ if (density) {
+ context->image_info->density = strdup(density);
+ }
+
+ if (quality) {
+ tmp = atoi(quality);
+
+ if (tmp > 0) context->image_info->quality = tmp;
+ }
+ }
+
+ context->images = ReadImages(context->image_info, context->exception);
+ if (context->exception->severity != UndefinedException) {
+ CatchException(context->exception);
}
+ if (context->images == (Image *)NULL) {
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Fail to read file: %s\n", path);
+ return SWITCH_STATUS_GENERR;
+ }
+
+ context->pagecount = GetImageListLength(context->images);
+
if (context->max) {
context->samples = (handle->samplerate / 1000) * context->max;
}