#5379 closed defect (cant-reproduce)
Crash upon adding an audio file
Reported by: | kenrestivo | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | programming | Keywords: | audio |
Cc: | Parent Tickets: |
Description
I'm running the latest git 355d062dd4e35409af92e136666baf211161b7cb on an Ubuntu 14.04 server.
Uploading an audio file causes mediagoblin to crash. It appears to be crashing when generating the audiolab PNG. Here's the full stacktrace:
Using paster config: paste_local.ini
Using ./bin/paster
+ export CELERY_ALWAYS_EAGER=true
+ false
+ ./bin/paster serve paste_local.ini --server-name=broadcast --reload
/home/src/mediagoblin/local/lib/python2.7/site-packages/setuptools-3.3-py2.7.egg/pkg_resources.py:1031: UserWarning: /home/ken/.python-eggs is writable by group/others and vulnerable to attack when used with get_resource_filename. Consider a more secure location (set with .set_extraction_path or the PYTHON_EGG_CACHE environment variable).
2015-12-21 18:22:20,925 INFO [mediagoblin.app] GNU MediaGoblin 0.8.0 main server starting
2015-12-21 18:22:21,317 INFO [mediagoblin.app] Setting up plugins.
2015-12-21 18:22:21,318 INFO [mediagoblin.init.plugins] Importing plugin module: mediagoblin.plugins.geolocation
2015-12-21 18:22:21,318 INFO [mediagoblin.init.plugins] Importing plugin module: mediagoblin.plugins.basic_auth
2015-12-21 18:22:21,318 INFO [mediagoblin.init.plugins] Importing plugin module: mediagoblin.media_types.image
2015-12-21 18:22:21,319 INFO [mediagoblin.init.plugins] Importing plugin module: mediagoblin.media_types.video
2015-12-21 18:22:21,319 INFO [mediagoblin.init.plugins] Importing plugin module: mediagoblin.media_types.audio
2015-12-21 18:22:21,400 INFO [mediagoblin.init.celery] Setting celery configuration from object "mediagoblin.init.celery.dummy_settings_module"
/home/src/mediagoblin/local/lib/python2.7/site-packages/SQLAlchemy-0.8.7-py2.7-linux-x86_64.egg/sqlalchemy/engine/default.py:459: SAWarning: Unicode type received non-unicode bind param value.
2015-12-21 18:22:44,656 INFO [mediagoblin.media_types] No plugins handled extension .mp3
2015-12-21 18:22:44,657 INFO [mediagoblin.media_types] No plugins using two-step checking found
2015-12-21 18:22:44,797 DEBUG [mediagoblin.processing.task] Processing <MediaEntry 5: twang>
2015-12-21 18:22:44,798 INFO [mediagoblin.media_types.audio.transcoders] Initializing AudioTranscoder
2015-12-21 18:22:44,800 INFO [mediagoblin.media_types.audio.transcoders] Initializing AudioThumbnailer
2015-12-21 18:22:44,810 INFO [mediagoblin.media_types.audio.transcoders] Transcoding /home/src/mediagoblin/user_dev/media/queue/media_entries/51da0f06-8981-4a27-8c46-972a8ef1477b/08_Twang_64kb.mp3 into /home/src/mediagoblin/user_dev/media/workbench/tmp6Lrm7I/08_Twang_64kb.mp3
2015-12-21 18:22:47,724 INFO [mediagoblin.media_types.audio.transcoders] 100% done...
2015-12-21 18:22:47,725 INFO [mediagoblin.media_types.audio.transcoders] Done
2015-12-21 18:22:47,730 INFO [mediagoblin.media_types.audio.transcoders] Quitting MainLoop gracefully...
2015-12-21 18:22:47,821 INFO [mediagoblin.media_types.audio.processing] Creating OGG source for spectrogram
2015-12-21 18:22:47,822 INFO [mediagoblin.media_types.audio.transcoders] Transcoding /home/src/mediagoblin/user_dev/media/queue/media_entries/51da0f06-8981-4a27-8c46-972a8ef1477b/08_Twang_64kb.mp3 into /home/src/mediagoblin/user_dev/media/workbench/tmp6Lrm7I/08_Twang_64kb.ogg
2015-12-21 18:22:50,582 INFO [mediagoblin.media_types.audio.transcoders] 100% done...
2015-12-21 18:22:50,583 INFO [mediagoblin.media_types.audio.transcoders] Done
2015-12-21 18:22:50,585 INFO [mediagoblin.media_types.audio.transcoders] Quitting MainLoop gracefully...
2015-12-21 18:22:50,811 ERROR [mediagoblin.processing.task] An unhandled exception was raised while processing <MediaEntry 5: twang>
2015-12-21 18:22:50,813 WARNING [mediagoblin.processing] No idea what happened here, but it failed: IndexError('axis 1 out of bounds [0, 1)',)
2015-12-21 18:22:50,829 WARNING [mediagoblin.processing] No idea what happened here, but it failed: IndexError('axis 1 out of bounds [0, 1)',)
Error - <type 'exceptions.IndexError'>: axis 1 out of bounds [0, 1)
URL: http://hub.spaz.org:6543/submit/
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/Paste-1.7.5.1-py2.7.egg/paste/exceptions/errormiddleware.py', line 144 in call
app_iter = self.application(environ, sr_checker)
File '/home/src/mediagoblin/mediagoblin/app.py', line 342 in call
return self.call_backend(environ, start_response)
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/Werkzeug-0.11.3-py2.7.egg/werkzeug/wsgi.py', line 599 in call
return self.app(environ, start_response)
File '/home/src/mediagoblin/mediagoblin/app.py', line 276 in call_backend
return self._finish_call_backend(request, environ, start_response)
File '/home/src/mediagoblin/mediagoblin/app.py', line 318 in _finish_call_backend
response = controller(request)
File '/home/src/mediagoblin/mediagoblin/decorators.py', line 46 in wrapper
return controller(request, *args, kwargs)
File '/home/src/mediagoblin/mediagoblin/decorators.py', line 73 in new_controller_func
return controller(request, *args, kwargs)
File '/home/src/mediagoblin/mediagoblin/decorators.py', line 46 in wrapper
return controller(request, *args, kwargs)
File '/home/src/mediagoblin/mediagoblin/decorators.py', line 73 in new_controller_func
return controller(request, *args, kwargs)
File '/home/src/mediagoblin/mediagoblin/decorators.py', line 102 in wrapper
return controller(request, *args, kwargs)
File '/home/src/mediagoblin/mediagoblin/submit/views.py', line 68 in submit_start
urlgen=request.urlgen)
File '/home/src/mediagoblin/mediagoblin/submit/lib.py', line 208 in submit_media
run_process_media(entry, feed_url)
File '/home/src/mediagoblin/mediagoblin/submit/lib.py', line 257 in run_process_media
task_id=entry.queued_task_id)
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/celery-3.1.19-py2.7.egg/celery/app/task.py', line 552 in apply_async
link=link, link_error=link_error, options)
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/celery-3.1.19-py2.7.egg/celery/app/task.py', line 749 in apply
request=request, propagate=throw)
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/celery-3.1.19-py2.7.egg/celery/app/trace.py', line 355 in eager_trace_task
uuid, args, kwargs, request)
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/celery-3.1.19-py2.7.egg/celery/app/trace.py', line 253 in trace_task
I, R, state, retval = on_error(task_request, exc, uuid)
File '/home/src/mediagoblin/local/lib/python2.7/site-packages/celery-3.1.19-py2.7.egg/celery/app/trace.py', line 240 in trace_task
R = retval = fun(*args, kwargs)
File '/home/src/mediagoblin/mediagoblin/processing/task.py', line 101 in run
processor.process(reprocess_info)
File '/home/src/mediagoblin/mediagoblin/media_types/audio/processing.py', line 260 in process
self.create_spectrogram(max_width=medium_width, fft_size=fft_size)
File '/home/src/mediagoblin/mediagoblin/media_types/audio/processing.py', line 158 in create_spectrogram
fft_size=fft_size)
File '/home/src/mediagoblin/mediagoblin/media_types/audio/transcoders.py', line 76 in spectrogram
seek_point)
File '/home/src/mediagoblin/mediagoblin/media_types/audio/audioprocessing.py', line 180 in spectral_centroid
samples = self.read(seek_point - self.fft_size/2, self.fft_size, True)
File '/home/src/mediagoblin/mediagoblin/media_types/audio/audioprocessing.py', line 168 in read
samples = numpy.concatenate((numpy.zeros(add_to_start), samples), axis=1)
IndexError: axis 1 out of bounds [0, 1)
CGI Variables
CONTENT_LENGTH: '725435'
CONTENT_TYPE: 'multipart/form-data; boundary=----WebKitFormBoundaryMwJkoGtaHB3FAnk8'
CSRF_TOKEN: u'5878169815720531094'
HTTP_ACCEPT: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
HTTP_ACCEPT_ENCODING: 'gzip,deflate'
HTTP_ACCEPT_LANGUAGE: 'en-US,en;q=0.8'
HTTP_CACHE_CONTROL: 'max-age=0'
HTTP_CONNECTION: 'keep-alive'
HTTP_COOKIE: 'mediagoblin_csrftoken=5878169815720531094; PHPSESSID=h1giqmmj8rsu94uln1m4mfeqc1; jsAvailable=1; MGSession=eyJzdGF5X2xvZ2dlZF9pbiI6dHJ1ZSwidXNlcl9pZCI6IjIifQ.CVldEw.cTjLyQFoWW-oR9SEWLdmwN4aCwQ; mediagoblin_csrftoken=5878169815720531094'
HTTP_HOST: 'hub.spaz.org:6543'
HTTP_ORIGIN: 'http://hub.spaz.org:6543'
HTTP_REFERER: 'http://hub.spaz.org:6543/submit/'
HTTP_USER_AGENT: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36'
PATH_INFO: '/submit/'
REMOTE_ADDR: '50.242.111.198'
REQUEST_METHOD: 'POST'
SERVER_NAME: '0.0.0.0'
SERVER_PORT: '6543'
SERVER_PROTOCOL: 'HTTP/1.1'
WSGI Variables
application: <mediagoblin.app.MediaGoblinApp object at 0x7fcf11bbf990>
paste.httpserver.thread_pool: <paste.httpserver.ThreadPool object at 0x7fcf023e3510>
paste.throw_errors: True
werkzeug.request: <Request 'http://hub.spaz.org:6543/submit/' [POST]>
wsgi process: 'Multithreaded'
Change History (7)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
I was not able to reproduce the problem with 0.8.1 (installed using https://wiki.mediagoblin.org/EasyDeployment). Whatever the problem is, it probably comes from your environment. Did you figure it out ?
comment:3 by , 9 years ago
No, we ended up going with an old and simple PHP MP3 jukebox instead of MediaGoblin because it just worked.
comment:4 by , 9 years ago
Resolution: | → worksforme |
---|---|
Status: | new → closed |
comment:5 by , 8 years ago
Please reopen - 0.9.0 is affected as well. I am willing to track this further to find a general solution.
$ /./bin/gmg addmedia user /home/user/media.mp3 /srv/mediagoblin.latest/mediagoblin/media_types/video/transcoders.py:37: PyGIWarning: GstPbutils was imported without specifying a version first. Use gi.require_version(' GstPbutils', '1.0') before import to ensure that the right version gets loaded. from gi.repository import GstPbutils /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bin d param value 'user'. (this warning may be suppressed after 10 occurrences) /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bin d param value 'mediagoblin.media_types.a...'. (this warning may be suppressed after 10 occurrences) /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bi$ d param value 'GNU MediaGoblin'. (this warning may be suppressed after 10 occurrences) /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bi$ d param value 'core__media_entries'. (this warning may be suppressed after 10 occurrences) /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bi$ d param value 'post'. (this warning may be suppressed after 10 occurrences) DEBUG:mediagoblin.processing.task:Processing <MediaEntry 33:...> /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bin d param value 'webm_audio'. (this warning may be suppressed after 10 occurrences) ERROR:mediagoblin.processing.task:An unhandled exception was raised while processing <MediaEntry 33: ...> WARNING:mediagoblin.processing:No idea what happened here, but it failed: IndexError('axis 1 out of bounds [0, 1)',) WARNING:mediagoblin.processing:No idea what happened here, but it failed: IndexError('axis 1 out of bounds [0, 1)',) Traceback (most recent call last): File "/srv/mediagoblin/bin/gmg", line 11, in <module> load_entry_point('mediagoblin', 'console_scripts', 'gmg')() File "/srv/mediagoblin.latest/mediagoblin/gmg_commands/__init__.py", line 148, inmain_cli args.func(args) File "/srv/mediagoblin.latest/mediagoblin/gmg_commands/addmedia.py", line 110, inaddmedia tags_string=maybe_unicodeify(args.tags) or u"") File "/srv/mediagoblin.latest/mediagoblin/submit/lib.py", line 219, in submit_media run_process_media(entry, feed_url) File "/srv/mediagoblin.latest/mediagoblin/submit/lib.py", line 268, in run_process_media task_id=entry.queued_task_id) File "/srv/mediagoblin.latest/lib/python2.7/site-packages/celery-3.1.25-py2.7.egg/celery/app/task.py", line 565, in apply_async link=link, link_error=link_error, **options) File "/srv/mediagoblin.latest/lib/python2.7/site-packages/celery-3.1.25-py2.7.egg/celery/app/task.py", line 763, in apply request=request, propagate=throw) File "/srv/mediagoblin.latest/lib/python2.7/site-packages/celery-3.1.25-py2.7.egg/celery/app/trace.py", line 355, in eager_trace_task uuid, args, kwargs, request) File "/srv/mediagoblin.latest/lib/python2.7/site-packages/celery-3.1.25-py2.7.egg/celery/app/trace.py", line 253, in trace_task I, R, state, retval = on_error(task_request, exc, uuid) File "/srv/mediagoblin.latest/lib/python2.7/site-packages/celery-3.1.25-py2.7.egg/celery/app/trace.py", line 240, in trace_task R = retval = fun(*args, **kwargs) File "/srv/mediagoblin.latest/mediagoblin/processing/task.py", line 101, in run processor.process(**reprocess_info) File "/srv/mediagoblin.latest/mediagoblin/media_types/audio/processing.py", line 260, in process self.create_spectrogram(max_width=medium_width, fft_size=fft_size) File "/srv/mediagoblin.latest/mediagoblin/media_types/audio/processing.py", line 158, in create_spectrogram fft_size=fft_size) File "/srv/mediagoblin.latest/mediagoblin/media_types/audio/transcoders.py", line76, in spectrogram seek_point) File "/srv/mediagoblin.latest/mediagoblin/media_types/audio/audioprocessing.py", line 180, in spectral_centroid samples = self.read(seek_point - self.fft_size/2, self.fft_size, True) File "/srv/mediagoblin.latest/mediagoblin/media_types/audio/audioprocessing.py", line 168, in read samples = numpy.concatenate((numpy.zeros(add_to_start), samples), axis=1) IndexError: axis 1 out of bounds [0, 1)
comment:6 by , 8 years ago
Please try installing specific version of numpy and scikits.audiolab as mentioned in comment 12 of #5457. If that does not fix your issue, then please make a note saying so in that issue. Since that ticket is still open, let's leave this one closed.
comment:7 by , 8 years ago
admin comes to you asking for the reason ..
DEBUG output uploading mp3 via lazyserver.sh (selective output .. solution below)
0:03:42.413651788 8461 0x81d844f0 WARN audioencoder gstaudioencoder.c:985:gst_audio_encoder_finish_frame:<enc> Can't copy metadata because input buffer disapp eared ... 0:04:15.901886228 8461 0x81d84980 WARN basesrc gstbasesrc.c:2400:gst_base_src_update_length:<filesrc> processing at or past EOS ... 2017-02-10 05:19:12,316 INFO [mediagoblin.media_types.audio.transcoders] 100% done... 2017-02-10 05:19:12,317 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_ELEMENT of type Gst.MessageType> 2017-02-10 05:19:12,349 INFO [mediagoblin.media_types.audio.transcoders] 100% done... 2017-02-10 05:19:12,351 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_EOS of type Gst.MessageType> 2017-02-10 05:19:12,352 INFO [mediagoblin.media_types.audio.transcoders] Done ... 2017-02-10 05:19:12,503 INFO [mediagoblin.media_types.audio.transcoders] Quitting MainLoop gracefully... ... 2017-02-10 05:19:12,602 DEBUG [mediagoblin.media_types.audio.processing] Saving medium... /srv/mediagoblin.latest/lib/python2.7/site-packages/SQLAlchemy-1.1.5-py2.7-linux-i686.egg/sqlalchemy/sql/sqltypes.py:219: SAWarning: Unicode type received non-unicode bin d param value 'webm_audio'. (this warning may be suppressed after 10 occurrences) 2017-02-10 05:19:12,866 INFO [mediagoblin.media_types.audio.processing] Creating OGG source for spectrogram 2017-02-10 05:19:12,867 INFO [mediagoblin.media_types.audio.transcoders] Transcoding /media/public/mgoblin/media/queue/media_entries/555c6ffa-7239-4022-ab5c-1f6105a61a e8/20150706-focuseuropan-w2575.mp3 into /srv/mediagoblin/user_dev/media/workbench/tmpgY2Avv/20150706..ogg ... 0:04:17.542465655 8461 0x81ee03c0 INFO filesrc gstfilesrc.c:465:gst_file_src_start:<filesrc> opening file /media/public/mgoblin/media/queue/media_entries /555c6ffa-7239-4022-ab5c-1f6105a61ae8..mp3 0:04:17.542644098 8461 0x81ee03c0 WARN basesrc gstbasesrc.c:3491:gst_base_src_start_complete:<filesrc> pad not activated yet 0:04:17.542771208 8461 0x81ee03c0 INFO filesrc gstfilesrc.c:465:gst_file_src_start:<filesrc> opening file /media/public/mgoblin/media/queue/media_entries /555c6ffa-7239-4022-ab5c-1f6105a61ae8.mp3 0:04:17.542914940 8461 0x81ee03c0 INFO task gsttask.c:456:gst_task_set_lock: setting stream lock 0xace7c8bc on task 0xace8ca48 0 ... 2017-02-10 05:19:13,221 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_TAG of type Gst.MessageType> 0:04:17.754148124 8461 0x81d844f0 FIXME basesink gstbasesink.c:3077:gst_base_sink_default_event:<sink> stream-start event without group-id. Consider implem enting group-id handling in the upstream elements 2017-02-10 05:19:13,222 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_STREAM_START of type Gst.MessageType> ... 0:04:17.840180701 8461 0x81d844f0 INFO oggdemux gstoggstream.c:2678:gst_ogg_stream_setup_map_from_caps_headers: Found headers on caps, using those to determine type 0:04:17.840372344 8461 0x81d844f0 WARN audioencoder gstaudioencoder.c:985:gst_audio_encoder_finish_frame:<enc> Can't copy metadata because input buffer disappeared 0:04:17.758349604 8461 0x81d85030 INFO audiodecoder gstaudiodecoder.c:2320:gst_audio_decoder_sink_eventfunc:<mad1> upstream stream tags: taglist, has-crc=(boo lean)false, channel-mode=(string)joint-stereo, audio-codec=(string)"MPEG-1\ Layer\ 3\ \(MP3\)", nominal-bitrate=(uint)128000, minimum-bitrate=(uint)127706, maximum-bitrat e=(uint)128012, bitrate=(uint)127986; ... 0:04:15.901886228 8461 0x81d84980 WARN basesrc gstbasesrc.c:2400:gst_base_src_update_length:<filesrc> processing at or past EOS 2017-02-10 05:19:38,035 INFO [mediagoblin.media_types.audio.transcoders] 87% done... 0:04:45.789429989 8461 0x81d85030 WARN basesrc gstbasesrc.c:2400:gst_base_src_update_length:<filesrc> processing at or past EOS 2017-02-10 05:19:13,221 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_TAG of type Gst.MessageType> 0:04:17.754148124 8461 0x81d844f0 FIXME basesink gstbasesink.c:3077:gst_base_sink_default_event:<sink> stream-start event without group-id. Consider implem enting group-id handling in the upstream elements 2017-02-10 05:19:13,222 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_STREAM_START of type Gst.MessageType> ... ... 2017-02-10 05:19:41,405 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_ELEMENT of type Gst.MessageType> 2017-02-10 05:19:41,405 INFO [mediagoblin.media_types.audio.transcoders] 100% done... 2017-02-10 05:19:41,406 DEBUG [mediagoblin.media_types.audio.transcoders] <flags GST_MESSAGE_EOS of type Gst.MessageType> 2017-02-10 05:19:41,406 INFO [mediagoblin.media_types.audio.transcoders] Done 0:07:18.514617756 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2071:gst_pad_unlink: unlinking mpegaudioparse1:src(0xacee0bc8) and mad1:sink(0xb5f9d1d8) 0:07:18.514735089 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2125:gst_pad_unlink: unlinked mpegaudioparse1:src and mad1:sink 0:07:18.514895444 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2071:gst_pad_unlink: unlinking mad1:src(0xb5f9d318) and src_0:proxypad3(0xace70978) 0:07:18.515024021 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2125:gst_pad_unlink: unlinked mad1:src and src_0:proxypad3 0:07:18.515141354 8461 0x81ee03c0 INFO GST_PARENTAGE gstbin.c:1816:gst_bin_remove_func:<decodebin> removed child "mad1" 0:07:18.515339842 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2071:gst_pad_unlink: unlinking typefind:src(0xace7c9b8) and mpegaudioparse1:sink(0xace7cd78) 0:07:18.515471352 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2125:gst_pad_unlink: unlinked typefind:src and mpegaudioparse1:sink 0:07:18.515606285 8461 0x81ee03c0 INFO GST_PARENTAGE gstbin.c:1816:gst_bin_remove_func:<decodebin> removed child "mpegaudioparse1" 0:07:18.515712862 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstelement.c:785:gst_element_remove_pad:<decodebin> removing pad 'src_0' 0:07:18.515837039 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2071:gst_pad_unlink: unlinking decodebin:src_0(0x810a9480) and queue:sink(0x810842e8) 0:07:18.515963661 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstpad.c:2125:gst_pad_unlink: unlinked decodebin:src_0 and queue:sink ... 0:07:18.586227429 8461 0x81ee03c0 INFO GST_STATES gstbin.c:2963:gst_bin_change_state_func:<pipeline1> child 'filesrc' changed state to 1(NULL) successfully 0:07:18.586445961 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:2994:gst_element_dispose:<mpegaudioparse1> 0xb5f781f8 dispose 0:07:18.586483116 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstelement.c:785:gst_element_remove_pad:<mpegaudioparse1> removing pad 'sink' 0:07:18.586534450 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstelement.c:785:gst_element_remove_pad:<mpegaudioparse1> removing pad 'src' 0:07:18.586581383 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:3040:gst_element_dispose:<mpegaudioparse1> 0xb5f781f8 parent class dispose 0:07:18.588930972 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:3071:gst_element_finalize:<mpegaudioparse1> 0xb5f781f8 finalize 0:07:18.589075682 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:3077:gst_element_finalize:<mpegaudioparse1> 0xb5f781f8 finalize parent 0:07:18.589188126 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:2994:gst_element_dispose:<mad1> 0x810a0f08 dispose 0:07:18.589298615 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstelement.c:785:gst_element_remove_pad:<mad1> removing pad 'sink' 0:07:18.589413992 8461 0x81ee03c0 INFO GST_ELEMENT_PADS gstelement.c:785:gst_element_remove_pad:<mad1> removing pad 'src' 0:07:18.589517636 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:3040:gst_element_dispose:<mad1> 0x810a0f08 parent class dispose 0:07:18.589623235 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:3071:gst_element_finalize:<mad1> 0x810a0f08 finalize 0:07:18.589815368 8461 0x81ee03c0 INFO GST_REFCOUNTING gstelement.c:3077:gst_element_finalize:<mad1> 0x810a0f08 finalize parent 0:07:18.590644031 8461 0x81ee03c0 INFO GST_STATES gstelement.c:2419:gst_element_continue_state:<pipeline1> completed state change to NULL 2017-02-10 05:22:14,059 INFO [mediagoblin.media_types.audio.transcoders] Quitting MainLoop gracefully... [skipped gst output] 2017-02-10 05:22:17,321 ERROR [mediagoblin.processing.task] An unhandled exception was raised while processing <MediaEntry 34: 20150706-focuseuropan-w2575> 2017-02-10 05:22:17,323 WARNING [mediagoblin.processing] No idea what happened here, but it failed: IndexError('axis 1 out of bounds [0, 1)',) 2017-02-10 05:22:17,370 DEBUG [mediagoblin.tools.processing] No processing callback URL for <MediaEntry 34: 20150706-focuseuropan-w2575> 2017-02-10 05:22:17,373 WARNING [mediagoblin.processing] No idea what happened here, but it failed: IndexError('axis 1 out of bounds [0, 1)',)
194:def halt(self): if getattr(self, 'pipeline', False): self.pipeline.set_state(Gst.State.NULL) del self.pipeline 198: _log.info('Quitting MainLoop gracefully...') GObject.idle_add(self._loop.quit)
mediagoblin/processing/task.py
class ProcessMedia(celery.Task): ... # Try to process, and handle expected errors. try: processor_class = manager.get_processor(reprocess_action, entry) with processor_class(manager, entry) as processor: # Initial state change has to be here because # the entry.state gets recorded on processor_class init entry.state = u'processing' entry.save() _log.debug('Processing {0}'.format(entry)) try: processor.process(**reprocess_info) except Exception as exc: if processor.entry_orig_state == 'processed': _log.error( 'Entry {0} failed to process due to the following' ' error: {1}'.format(entry.id, exc)) _log.info( 'Setting entry.state back to "processed"') pass else: raise # We set the state to processed and save the entry here so there's # no need to save at the end of the processing stage, probably ;) entry.state = u'processed' entry.save() # Notify the PuSH servers as async task if mgg.app_config["push_urls"] and feed_url: handle_push_urls.subtask().delay(feed_url) json_processing_callback(entry) except BaseProcessingFail as exc: mark_entry_failed(entry.id, exc) json_processing_callback(entry) return except ImportError as exc: _log.error( 'Entry {0} failed to process due to an import error: {1}'\ .format( entry.title, exc)) mark_entry_failed(entry.id, exc) json_processing_callback(entry) except Exception as exc: 133: _log.error('An unhandled exception was raised while' + ' processing {0}'.format( entry)) mark_entry_failed(entry.id, exc) json_processing_callback(entry) raise
mediagoblin/tools/processing
ef json_processing_callback(entry): ''' Send an HTTP post to the registered callback url, if any. ''' if not entry.processing_metadata: _log.debug('No processing callback URL for {0}'.format(entry)) return
mediagoblin/processing/init.py
def mark_entry_failed(entry_id, exc): """ Mark a media entry as having failed in its conversion. Uses the exception that was raised to mark more information. If the exception is a derivative of BaseProcessingFail then we can store extra information that can be useful for users telling them why their media failed to process. :param entry_id: The id of the media entry :param exc: An instance of BaseProcessingFail """ # Was this a BaseProcessingFail? In other words, was this a # type of error that we know how to handle? if isinstance(exc, BaseProcessingFail): # Looks like yes, so record information about that failure and any # metadata the user might have supplied. atomic_update(mgg.database.MediaEntry, {'id': entry_id}, {u'state': u'failed', u'fail_error': six.text_type(exc.exception_path), u'fail_metadata': exc.metadata}) else: _log.warn("No idea what happened here, but it failed: %r", exc) # Looks like no, let's record it so that admin could ask us about the # reason atomic_update(mgg.database.MediaEntry, {'id': entry_id}, {u'state': u'failed', u'fail_error': u'Unhandled exception: {0}'.format( six.text_type(exc)), u'fail_metadata': {}})
According to ticket:5457#comment:12 Numpy 1.11.2 and AudioLab 0.11.0 are incompatible (here numpy==1.12.0, scikits.audiolab==0.11.0). The proposed fix
./bin/pip install numpy==1.9.1 ./bin/pip install scikits.audiolab==0.10.2
solves this issue for me as well.
Possible explanation from chat: the actual issue is that numpy deprecated some code, but the third-party freesound audio processing file that we imported as an external library hasn't been updated to work with the more recent code.
I should note, this error happens with every audio file I have tried; it doesn't seem to depend on the data.