Markos Gogoulos 2 роки тому
батько
коміт
fe7427a1f2
1 змінених файлів з 10 додано та 0 видалено
  1. 10 0
      files/models.py

+ 10 - 0
files/models.py

@@ -818,6 +818,7 @@ class Media(models.Model):
         """
         """
 
 
         res = {}
         res = {}
+        valid_resolutions = [240, 360, 480, 720, 1080, 1440, 2160]
         if self.hls_file:
         if self.hls_file:
             if os.path.exists(self.hls_file):
             if os.path.exists(self.hls_file):
                 hls_file = self.hls_file
                 hls_file = self.hls_file
@@ -829,11 +830,20 @@ class Media(models.Model):
                         uri = os.path.join(p, iframe_playlist.uri)
                         uri = os.path.join(p, iframe_playlist.uri)
                         if os.path.exists(uri):
                         if os.path.exists(uri):
                             resolution = iframe_playlist.iframe_stream_info.resolution[1]
                             resolution = iframe_playlist.iframe_stream_info.resolution[1]
+                            # most probably video is vertical, getting the first value to
+                            # be the resolution
+                            if resolution not in valid_resolutions:
+                                resolution = iframe_playlist.iframe_stream_info.resolution[0]
+
                             res["{}_iframe".format(resolution)] = helpers.url_from_path(uri)
                             res["{}_iframe".format(resolution)] = helpers.url_from_path(uri)
                     for playlist in m3u8_obj.playlists:
                     for playlist in m3u8_obj.playlists:
                         uri = os.path.join(p, playlist.uri)
                         uri = os.path.join(p, playlist.uri)
                         if os.path.exists(uri):
                         if os.path.exists(uri):
                             resolution = playlist.stream_info.resolution[1]
                             resolution = playlist.stream_info.resolution[1]
+                            # same as above
+                            if resolution not in valid_resolutions:
+                                resolution = playlist.stream_info.resolution[0]
+
                             res["{}_playlist".format(resolution)] = helpers.url_from_path(uri)
                             res["{}_playlist".format(resolution)] = helpers.url_from_path(uri)
         return res
         return res