mediacms-io / mediacms

MediaCMS is a modern, fully featured open source video and media CMS, written in Python/Django and React, featuring a REST API.
https://mediacms.io
GNU Affero General Public License v3.0
2.52k stars 459 forks source link

Upload fails, original files are uploaded #923

Open tdsotm opened 7 months ago

tdsotm commented 7 months ago

Cannot upload videos

Steps to reproduce the issue: Drag and drop file(s) Upload is starting and finishes, It starts processing Then I get retry(1/2), then retry(2/2) Then I get upload failed

If I go to my media, all files uploaded are shown with 0:00 duration, if I click on a video I get Media encoding is pending If I browse the media folder original files appear to be uploaded with correct size, but there are 2 other files with size 0

File size is small <100MB, way under 4GB. file extentions are .mp4 and .ts

Tailing logs outputs this:

Internal Server Error: /fu/upload/
Traceback (most recent call last):
  File "/home/mediacms.io/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/views/generic/base.py", line 104, in view
    return self.dispatch(request, *args, **kwargs)
  File "/home/mediacms.io/mediacms/uploader/views.py", line 49, in dispatch
    return super(FineUploaderView, self).dispatch(request, *args, **kwargs)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/views/generic/base.py", line 143, in dispatch
    return handler(request, *args, **kwargs)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/views/generic/edit.py", line 153, in post
    return self.form_valid(form)
  File "/home/mediacms.io/mediacms/uploader/views.py", line 68, in form_valid
    new = Media.objects.create(media_file=myfile, user=self.request.user)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/db/models/manager.py", line 87, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/db/models/query.py", line 658, in create
    obj.save(force_insert=True, using=self.db)
  File "/home/mediacms.io/mediacms/files/models.py", line 367, in save
    super(Media, self).save(*args, **kwargs)
  File "/home/mediacms.io/lib/python3.10/site-packages/django/db/models/base.py", line 814, in save
    self.save_base(
  File "/home/mediacms.io/lib/python3.10/site-packages/django/db/models/base.py", line 892, in save_base
    post_save.send(
  File "/home/mediacms.io/lib/python3.10/site-packages/django/dispatch/dispatcher.py", line 176, in send
    return [
  File "/home/mediacms.io/lib/python3.10/site-packages/django/dispatch/dispatcher.py", line 177, in <listcomp>
    (receiver, receiver(signal=self, sender=sender, **named))
  File "/home/mediacms.io/mediacms/files/models.py", line 1373, in media_save
    instance.media_init()
  File "/home/mediacms.io/mediacms/files/models.py", line 430, in media_init
    self.set_media_type()
  File "/home/mediacms.io/mediacms/files/models.py", line 459, in set_media_type
    ret = helpers.media_file_info(self.media_file.path)
  File "/home/mediacms.io/mediacms/files/helpers.py", line 370, in media_file_info
    stream_size = sum([int(line) for line in stdout.split("\n") if line != ""])
  File "/home/mediacms.io/mediacms/files/helpers.py", line 370, in <listcomp>
    stream_size = sum([int(line) for line in stdout.split("\n") if line != ""])
ValueError: invalid literal for int() with base 10: '28857|'
tdsotm commented 7 months ago

Looking at a previous similar issue here, I applied the same fix and it works. https://github.com/mediacms-io/mediacms/issues/417#issue-1144659973 The fix itself is on line 370.

LE: I created a PR for it: https://github.com/mediacms-io/mediacms/pull/925

Thank you for creating this wonderful software :)