[Erp5-report] r45139 priscila.manhaes - in /erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cl...
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Apr 6 16:57:20 CEST 2011
Author: priscila.manhaes
Date: Wed Apr 6 16:57:20 2011
New Revision: 45139
URL: http://svn.erp5.org?rev=45139&view=rev
Log:
Refactor code for not only expecting video but also audio
Modified:
erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/handler.py
erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/tests/testFFMPEGHandler.py
Modified: erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/handler.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/handler.py?rev=45139&r1=45138&r2=45139&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/handler.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/handler.py [utf8] Wed Apr 6 16:57:20 2011
@@ -34,7 +34,7 @@ from tempfile import mktemp
class Handler(object):
- """FFMPEG Handler is used to handler inputed video files"""
+ """FFMPEG Handler is used to handler inputed audio and video files"""
implements(IHandler)
@@ -43,15 +43,15 @@ class Handler(object):
base_folder_url(string)
The requested url for data base folder
data(string)
- The opened and readed video into a string
+ The opened and readed file into a string
source_format(string)
- The source format of the inputed video"""
+ The source format of the inputed file"""
self.base_folder_url = base_folder_url
self.input = File(base_folder_url, data, source_format)
self.environment = kw.get("env", {})
def convert(self, destination_format):
- """ Convert the inputed video to output as format that were informed """
+ """ Convert the inputed file to output as format that were informed """
# XXX This implementation could use ffmpeg -i pipe:0, but
# XXX seems super unreliable currently and it generates currupted files in
# the end
@@ -74,7 +74,7 @@ class Handler(object):
self.input.trash()
def getMetadata(self, base_document=False):
- """Returns a dictionary with all metadata of the video.
+ """Returns a dictionary with all metadata of the file.
Keywords Arguments:"""
command = ["ffprobe",self.input.getUrl()]
stdout, stderr = Popen(command,
@@ -91,7 +91,7 @@ class Handler(object):
self.input.trash()
return metadata_dict
- def setMetadata(self, metadata={}):
+ def setMetadata(self, metadata_dict={}):
"""Returns a document with new metadata.
Keyword arguments:
metadata -- expected an dictionary with metadata.
Modified: erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/tests/testFFMPEGHandler.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/tests/testFFMPEGHandler.py?rev=45139&r1=45138&r2=45139&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/tests/testFFMPEGHandler.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo.handler.ffmpeg/src/cloudooo/handler/ffmpeg/tests/testFFMPEGHandler.py [utf8] Wed Apr 6 16:57:20 2011
@@ -26,10 +26,11 @@
#
##############################################################################
-import magic
+from magic import Magic
from cloudooo.handler.ffmpeg.handler import Handler
from cloudooo.handler.tests.handlerTestCase import HandlerTestCase, make_suite
+file_detector = Magic(mime=True)
class TestHandler(HandlerTestCase):
@@ -40,7 +41,6 @@ class TestHandler(HandlerTestCase):
def testConvertVideo(self):
"""Test coversion of video to another format"""
- file_detector = magic.Magic(mime=True)
output_data = self.input.convert("mpeg")
file_format = file_detector.from_buffer(output_data)
self.assertEquals(file_format, 'video/mpeg')
@@ -54,6 +54,16 @@ class TestHandler(HandlerTestCase):
""" Test if metadata are inserted correclty """
self.assertRaises(NotImplementedError, self.input.setMetadata)
+ def testConvertAudio(self):
+ """Test coversion of audio to another format"""
+ self.data = open("./data/test.ogg").read()
+ kw = dict(env=dict(PATH=self.env_path))
+ self.input = Handler(self.tmp_url, self.data, "ogg", **kw)
+ output_data = self.input.convert("wav")
+ file_format = file_detector.from_buffer(output_data)
+ # XXX this might expect 'audio/vnd.wave' but magic only got 'audio/x-wav'
+ self.assertEquals(file_format, 'audio/x-wav')
+
def test_suite():
return make_suite(TestHandler)
More information about the Erp5-report
mailing list