diff --git a/docs/Makefile b/docs/Makefile index 4461893f..0b97bf7c 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -2,7 +2,7 @@ # # You can set these variables from the command line. -SPHINXOPTS = -W +SPHINXOPTS = SPHINXBUILD = sphinx-build PAPER = BUILDDIR = build diff --git a/docs/source/api/client_register.rst b/docs/source/api/client_register.rst index 4ad7908e..08f92c47 100644 --- a/docs/source/api/client_register.rst +++ b/docs/source/api/client_register.rst @@ -49,7 +49,7 @@ redirect_uri Response -------- -You will get back a response:: +You will get back a response: client_id This identifies a client diff --git a/docs/source/index.rst b/docs/source/index.rst index 777c4d26..e7fda4ad 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -56,7 +56,6 @@ Part 2: Core plugin documentation plugindocs/flatpagesfile plugindocs/sampleplugin - plugindocs/oauth plugindocs/trim_whitespace plugindocs/raven plugindocs/basic_auth diff --git a/docs/source/siteadmin/relnotes.rst b/docs/source/siteadmin/relnotes.rst index 40e84766..e7bf003a 100644 --- a/docs/source/siteadmin/relnotes.rst +++ b/docs/source/siteadmin/relnotes.rst @@ -141,6 +141,7 @@ please note the following: **New features** + * PDF media type! * Improved plugin system. More flexible, better documented, with a new plugin authoring section of the docs. diff --git a/mediagoblin/config_spec.ini b/mediagoblin/config_spec.ini index 8f03509d..43e1898c 100644 --- a/mediagoblin/config_spec.ini +++ b/mediagoblin/config_spec.ini @@ -104,47 +104,6 @@ max_height = integer(default=640) max_width = integer(default=180) 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=90) - -[media_type:mediagoblin.media_types.video] -# Should we keep the original file? -keep_original = boolean(default=False) - -# 0 means autodetect, autodetect means number_of_CPUs - 1 -vp8_threads = integer(default=0) -# Range: 0..10 -vp8_quality = integer(default=8) -# Range: -0.1..1 -vorbis_quality = float(default=0.3) - -# Autoplay the video when page is loaded? -auto_play = boolean(default=False) - -[[skip_transcode]] -mime_types = string_list(default=list("video/webm")) -container_formats = string_list(default=list("Matroska")) -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 -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=True) - - [celery] # default result stuff CELERY_RESULT_BACKEND = string(default="database") diff --git a/mediagoblin/media_types/ascii/config_spec.ini b/mediagoblin/media_types/ascii/config_spec.ini new file mode 100644 index 00000000..24b05053 --- /dev/null +++ b/mediagoblin/media_types/ascii/config_spec.ini @@ -0,0 +1,4 @@ +[plugin_spec] +thumbnail_font = string(default=None) + + diff --git a/mediagoblin/media_types/ascii/processing.py b/mediagoblin/media_types/ascii/processing.py index 9b6b3ad4..f42edfdd 100644 --- a/mediagoblin/media_types/ascii/processing.py +++ b/mediagoblin/media_types/ascii/processing.py @@ -55,8 +55,8 @@ class CommonAsciiProcessor(MediaProcessor): acceptable_files = ['original', 'unicode'] def common_setup(self): - self.ascii_config = mgg.global_config[ - 'media_type:mediagoblin.media_types.ascii'] + self.ascii_config = mgg.global_config['plugins'][ + 'mediagoblin.media_types.ascii'] # Conversions subdirectory to avoid collisions self.conversions_subdir = os.path.join( diff --git a/mediagoblin/media_types/audio/config_spec.ini b/mediagoblin/media_types/audio/config_spec.ini new file mode 100644 index 00000000..743deaa4 --- /dev/null +++ b/mediagoblin/media_types/audio/config_spec.ini @@ -0,0 +1,8 @@ +[plugin_spec] +keep_original = boolean(default=True) +# vorbisenc quality +quality = float(default=0.3) +create_spectrogram = boolean(default=True) +spectrogram_fft_size = integer(default=4096) + + diff --git a/mediagoblin/media_types/audio/processing.py b/mediagoblin/media_types/audio/processing.py index 6a506741..d0716448 100644 --- a/mediagoblin/media_types/audio/processing.py +++ b/mediagoblin/media_types/audio/processing.py @@ -60,7 +60,7 @@ class CommonAudioProcessor(MediaProcessor): the audio_config, transcoder, thumbnailer and spectrogram_tmp path """ self.audio_config = mgg \ - .global_config['media_type:mediagoblin.media_types.audio'] + .global_config['plugins']['mediagoblin.media_types.audio'] # Pull down and set up the processing file self.process_filename = get_process_filename( diff --git a/mediagoblin/media_types/image/config_spec.ini b/mediagoblin/media_types/image/config_spec.ini new file mode 100644 index 00000000..08111df2 --- /dev/null +++ b/mediagoblin/media_types/image/config_spec.ini @@ -0,0 +1,7 @@ +[plugin_spec] +# One of BICUBIC, BILINEAR, NEAREST, ANTIALIAS +resize_filter = string(default="ANTIALIAS") +#level of compression used when resizing images +quality = integer(default=90) + + diff --git a/mediagoblin/media_types/image/processing.py b/mediagoblin/media_types/image/processing.py index 088979bc..555a0e0a 100644 --- a/mediagoblin/media_types/image/processing.py +++ b/mediagoblin/media_types/image/processing.py @@ -138,8 +138,8 @@ class CommonImageProcessor(MediaProcessor): """ Set up the workbench directory and pull down the original file """ - self.image_config = mgg.global_config[ - 'media_type:mediagoblin.media_types.image'] + self.image_config = mgg.global_config['plugins'][ + 'mediagoblin.media_types.image'] ## @@: Should this be two functions? # Conversions subdirectory to avoid collisions diff --git a/mediagoblin/media_types/pdf/config_spec.ini b/mediagoblin/media_types/pdf/config_spec.ini new file mode 100644 index 00000000..c8a12cba --- /dev/null +++ b/mediagoblin/media_types/pdf/config_spec.ini @@ -0,0 +1,5 @@ +[plugin_spec] +pdf_js = boolean(default=True) + + + diff --git a/mediagoblin/media_types/video/config_spec.ini b/mediagoblin/media_types/video/config_spec.ini new file mode 100644 index 00000000..98714f56 --- /dev/null +++ b/mediagoblin/media_types/video/config_spec.ini @@ -0,0 +1,22 @@ +[plugin_spec] +# Should we keep the original file? +keep_original = boolean(default=False) + +# 0 means autodetect, autodetect means number_of_CPUs - 1 +vp8_threads = integer(default=0) +# Range: 0..10 +vp8_quality = integer(default=8) +# Range: -0.1..1 +vorbis_quality = float(default=0.3) + +# Autoplay the video when page is loaded? +auto_play = boolean(default=False) + +[[skip_transcode]] +mime_types = string_list(default=list("video/webm")) +container_formats = string_list(default=list("Matroska")) +video_codecs = string_list(default=list("VP8 video")) +audio_codecs = string_list(default=list("Vorbis")) +dimensions_match = boolean(default=True) + + diff --git a/mediagoblin/media_types/video/processing.py b/mediagoblin/media_types/video/processing.py index 506c7501..4d1d5ea2 100644 --- a/mediagoblin/media_types/video/processing.py +++ b/mediagoblin/media_types/video/processing.py @@ -126,7 +126,7 @@ class CommonVideoProcessor(MediaProcessor): def common_setup(self): self.video_config = mgg \ - .global_config['media_type:mediagoblin.media_types.video'] + .global_config['plugins'][MEDIA_TYPE] # Pull down and set up the processing file self.process_filename = get_process_filename( diff --git a/mediagoblin/media_types/video/util.py b/mediagoblin/media_types/video/util.py index c33cce5a..beb10129 100644 --- a/mediagoblin/media_types/video/util.py +++ b/mediagoblin/media_types/video/util.py @@ -27,7 +27,7 @@ def skip_transcode(metadata, size): Returns True if the video matches the requirements in the configuration. ''' - config = mgg.global_config['media_type:mediagoblin.media_types.video']\ + config = mgg.global_config['plugins']['mediagoblin.media_types.video']\ ['skip_transcode'] medium_config = mgg.global_config['media:medium'] diff --git a/mediagoblin/templates/mediagoblin/media_displays/pdf.html b/mediagoblin/templates/mediagoblin/media_displays/pdf.html index 9319e87c..a615cba6 100644 --- a/mediagoblin/templates/mediagoblin/media_displays/pdf.html +++ b/mediagoblin/templates/mediagoblin/media_displays/pdf.html @@ -29,7 +29,7 @@ media.media_files['original']) %} {% endif %} -{% set pdf_js = global_config.get('media_type:mediagoblin.media_types.pdf', {}).get('pdf_js', False) %} +{% set pdf_js = global_config['plugins'].get('mediagoblin.media_types.pdf', {}).get('pdf_js', False) %} {% if pdf_js %} {% block mediagoblin_html_tag %} diff --git a/mediagoblin/templates/mediagoblin/media_displays/video.html b/mediagoblin/templates/mediagoblin/media_displays/video.html index 5c52f9f0..e35169bf 100644 --- a/mediagoblin/templates/mediagoblin/media_displays/video.html +++ b/mediagoblin/templates/mediagoblin/media_displays/video.html @@ -30,7 +30,7 @@ {% set display_type, display_path = media.get_display_media() %}