diff options
author | Joar Wandborg <git@wandborg.com> | 2012-07-11 00:36:42 +0200 |
---|---|---|
committer | Joar Wandborg <git@wandborg.com> | 2012-07-11 00:36:42 +0200 |
commit | 6471291575c97f03d129051dc3d2bef28b4d89f2 (patch) | |
tree | 0c1252c0c23c2978736dd6eb819aefa89c1e355a /mediagoblin/media_types | |
parent | 51eb0267d901bafcc90879dadbc2b8616ecdc4f5 (diff) | |
download | mediagoblin-6471291575c97f03d129051dc3d2bef28b4d89f2.tar.lz mediagoblin-6471291575c97f03d129051dc3d2bef28b4d89f2.tar.xz mediagoblin-6471291575c97f03d129051dc3d2bef28b4d89f2.zip |
Panel improvements
- Added progress meter for video and audio media types.
- Changed the __repr__ method of a MediaEntry to display a bit more
useful explanation.
- Added a new MediaEntry.state, 'processing', which means that the task
is running the processor on the item currently.
- Fixed some PEP8 issues in user_pages/views.py
- Fixed the ATOM TAG URI to show the correct year.
Diffstat (limited to 'mediagoblin/media_types')
-rw-r--r-- | mediagoblin/media_types/audio/processing.py | 8 | ||||
-rw-r--r-- | mediagoblin/media_types/audio/transcoders.py | 2 | ||||
-rw-r--r-- | mediagoblin/media_types/video/processing.py | 6 | ||||
-rw-r--r-- | mediagoblin/media_types/video/transcoders.py | 2 |
4 files changed, 12 insertions, 6 deletions
diff --git a/mediagoblin/media_types/audio/processing.py b/mediagoblin/media_types/audio/processing.py index 558a37f0..18edbf1a 100644 --- a/mediagoblin/media_types/audio/processing.py +++ b/mediagoblin/media_types/audio/processing.py @@ -20,13 +20,14 @@ import os from mediagoblin import mg_globals as mgg from mediagoblin.processing import (create_pub_filepath, BadMediaFail, - FilenameBuilder) + FilenameBuilder, ProgressCallback) from mediagoblin.media_types.audio.transcoders import (AudioTranscoder, AudioThumbnailer) _log = logging.getLogger(__name__) + def sniff_handler(media_file, **kw): try: transcoder = AudioTranscoder() @@ -40,6 +41,7 @@ def sniff_handler(media_file, **kw): return False + def process_audio(entry): audio_config = mgg.global_config['media_type:mediagoblin.media_types.audio'] @@ -72,11 +74,13 @@ def process_audio(entry): transcoder = AudioTranscoder() with tempfile.NamedTemporaryFile() as webm_audio_tmp: + progress_callback = ProgressCallback(entry) transcoder.transcode( queued_filename, webm_audio_tmp.name, - quality=audio_config['quality']) + quality=audio_config['quality'], + progress_callback=progress_callback) transcoder.discover(webm_audio_tmp.name) diff --git a/mediagoblin/media_types/audio/transcoders.py b/mediagoblin/media_types/audio/transcoders.py index be80aa0e..f3d49c30 100644 --- a/mediagoblin/media_types/audio/transcoders.py +++ b/mediagoblin/media_types/audio/transcoders.py @@ -206,7 +206,7 @@ class AudioTranscoder(object): data = dict(message.structure) if self.__on_progress: - self.__on_progress(data) + self.__on_progress(data.get('percent')) _log.info('{0}% done...'.format( data.get('percent'))) diff --git a/mediagoblin/media_types/video/processing.py b/mediagoblin/media_types/video/processing.py index 85e83352..abd14eed 100644 --- a/mediagoblin/media_types/video/processing.py +++ b/mediagoblin/media_types/video/processing.py @@ -19,7 +19,7 @@ import logging from mediagoblin import mg_globals as mgg from mediagoblin.processing import \ - create_pub_filepath, FilenameBuilder, BaseProcessingFail + create_pub_filepath, FilenameBuilder, BaseProcessingFail, ProgressCallback from mediagoblin.tools.translate import lazy_pass_to_ugettext as _ from . import transcoders @@ -78,11 +78,13 @@ def process_video(entry): with tmp_dst: # Transcode queued file to a VP8/vorbis file that fits in a 640x640 square + progress_callback = ProgressCallback(entry) transcoder = transcoders.VideoTranscoder() transcoder.transcode(queued_filename, tmp_dst.name, vp8_quality=video_config['vp8_quality'], vp8_threads=video_config['vp8_threads'], - vorbis_quality=video_config['vorbis_quality']) + vorbis_quality=video_config['vorbis_quality'], + progress_callback=progress_callback) # Push transcoded video to public storage _log.debug('Saving medium...') diff --git a/mediagoblin/media_types/video/transcoders.py b/mediagoblin/media_types/video/transcoders.py index e03f721f..25846ffa 100644 --- a/mediagoblin/media_types/video/transcoders.py +++ b/mediagoblin/media_types/video/transcoders.py @@ -625,7 +625,7 @@ class VideoTranscoder: data = dict(message.structure) if self._progress_callback: - self._progress_callback(data) + self._progress_callback(data.get('percent')) _log.info('{percent}% done...'.format( percent=data.get('percent'))) |