image quality can be set in config file
authordunkyp <dunkyp@gmail.com>
Sat, 20 Apr 2013 15:50:51 +0000 (10:50 -0500)
committerChristopher Allan Webber <cwebber@dustycloud.org>
Sat, 20 Apr 2013 15:54:13 +0000 (10:54 -0500)
(cherry-picked from
 https://gitorious.org/~dunkyp/mediagoblin/dunkyps-mediagoblin/commits/image_quality)

mediagoblin/config_spec.ini
mediagoblin/media_types/image/processing.py

index 399a4a138f5016714acd506ab047232aca46e11a..668f416072a3d1655d0eacffad4ca81c090b81ba 100644 (file)
@@ -91,6 +91,8 @@ max_height = integer(default=180)
 [media_type:mediagoblin.media_types.image]
 # One of BICUBIC, BILINEAR, NEAREST, ANTIALIAS
 resize_filter = string(default="ANTIALIAS")
+#level of compression used when resizing images
+quality = integer(default=75)
 
 [media_type:mediagoblin.media_types.video]
 # Should we keep the original file?
@@ -113,7 +115,6 @@ video_codecs = string_list(default=list("VP8 video"))
 audio_codecs = string_list(default=list("Vorbis"))
 dimensions_match = boolean(default=True)
 
-
 [media_type:mediagoblin.media_types.audio]
 keep_original = boolean(default=True)
 # vorbisenc quality
@@ -121,13 +122,13 @@ quality = float(default=0.3)
 create_spectrogram = boolean(default=True)
 spectrogram_fft_size = integer(default=4096)
 
-
 [media_type:mediagoblin.media_types.ascii]
 thumbnail_font = string(default=None)
 
 [media_type:mediagoblin.media_types.pdf]
 pdf_js = boolean(default=False)
 
+
 [celery]
 # default result stuff
 CELERY_RESULT_BACKEND = string(default="database")
index 93f9d03e0593ced0ecde48bb416f3623c2b12d41..b8d576e40af59dff3b731c0dfaf1d238fa7c84c0 100644 (file)
@@ -72,7 +72,9 @@ def resize_image(entry, filename, new_path, exif_tags, workdir, new_size,
     # Copy the new file to the conversion subdir, then remotely.
     tmp_resized_filename = os.path.join(workdir, new_path[-1])
     with file(tmp_resized_filename, 'w') as resized_file:
-        resized.save(resized_file)
+        resized.save(resized_file,
+                     quality=mgg.global_config['media_type:mediagoblin.media_types.image']\
+                         ['quality'])
     mgg.public_store.copy_local_to_storage(tmp_resized_filename, new_path)