Browse Source

[downloader/fragment] Make speed more smooth

At the beginning of every segment there was a drop to Unknown speed due to timeslice being too small to calculate speed.
Now last speed from the previous fragment is used.
Sergey M․ 9 years ago
parent
commit
1b5284b13f
1 changed files with 2 additions and 1 deletions
  1. 2 1
      youtube_dl/downloader/fragment.py

+ 2 - 1
youtube_dl/downloader/fragment.py

@@ -99,7 +99,8 @@ class FragmentFD(FileDownloader):
                     state['eta'] = self.calc_eta(
                     state['eta'] = self.calc_eta(
                         start, time_now, estimated_size,
                         start, time_now, estimated_size,
                         state['downloaded_bytes'])
                         state['downloaded_bytes'])
-                state['speed'] = s.get('speed')
+                state['speed'] = s.get('speed') or ctx.get('speed')
+                ctx['speed'] = state['speed']
                 ctx['prev_frag_downloaded_bytes'] = frag_downloaded_bytes
                 ctx['prev_frag_downloaded_bytes'] = frag_downloaded_bytes
             self._hook_progress(state)
             self._hook_progress(state)