Transcoding in-place FLAC files fails because the mimetype is unrecognised
/label Type: Bug Status: Need triage
Steps to reproduce
- Import FLAC files (44.1kHz 16-bit) in-place
- Try to stream an ogg transcoded version
What happens?
2020-06-21 09:40:44,273 django.request ERROR Internal Server Error: /api/subsonic/rest/stream.view
Traceback (most recent call last):
File "/usr/lib/python3.7/site-packages/django/core/handlers/exception.py", line 34, in inner
response = get_response(request)
File "/usr/lib/python3.7/site-packages/django/core/handlers/base.py", line 115, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/usr/lib/python3.7/site-packages/django/core/handlers/base.py", line 113, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python3.7/contextlib.py", line 74, in inner
return func(*args, **kwds)
File "/usr/lib/python3.7/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
return view_func(*args, **kwargs)
File "/usr/lib/python3.7/site-packages/rest_framework/viewsets.py", line 114, in view
return self.dispatch(request, *args, **kwargs)
File "/app/api/funkwhale_api/subsonic/views.py", line 139, in dispatch
return super().dispatch(request, *args, **kwargs)
File "/usr/lib/python3.7/site-packages/rest_framework/views.py", line 505, in dispatch
response = self.handle_exception(exc)
File "/app/api/funkwhale_api/subsonic/views.py", line 152, in handle_exception
return super().handle_exception(exc)
File "/usr/lib/python3.7/site-packages/rest_framework/views.py", line 465, in handle_exception
self.raise_uncaught_exception(exc)
File "/usr/lib/python3.7/site-packages/rest_framework/views.py", line 476, in raise_uncaught_exception
raise exc
File "/usr/lib/python3.7/site-packages/rest_framework/views.py", line 502, in dispatch
response = handler(request, *args, **kwargs)
File "/app/api/funkwhale_api/subsonic/views.py", line 95, in inner
return func(self, request, *args, **kwargs)
File "/app/api/funkwhale_api/subsonic/views.py", line 314, in stream
wsgi_request=request._request,
File "/app/api/funkwhale_api/music/views.py", line 496, in inner
response = f(*args, **kwargs)
File "/app/api/funkwhale_api/music/views.py", line 548, in handle_serve
transcoded_version = f.get_transcoded_version(format, max_bitrate=max_bitrate)
File "/app/api/funkwhale_api/music/models.py", line 934, in get_transcoded_version
return self.create_transcoded_version(mimetype, format, bitrate=max_bitrate)
File "/usr/lib/python3.7/contextlib.py", line 74, in inner
return func(*args, **kwds)
File "/app/api/funkwhale_api/music/models.py", line 949, in create_transcoded_version
audio=self.get_audio_segment(),
File "/app/api/funkwhale_api/music/models.py", line 868, in get_audio_segment
input_format = utils.MIMETYPE_TO_EXTENSION[self.mimetype]
KeyError: None
What is expected?
Streaming a transcoded track works
Context
Funkwhale version(s) affected: 0.21.1+git.08e94691