Browse Source

[downloader/fragment] use the documented names for fragment progress_hooks fields

master-ytdl-org
Remita Amine 8 years ago
parent
commit
3e0304fe6e
5 changed files with 14 additions and 12 deletions
  1. +1
    -1
      youtube_dl/downloader/dash.py
  2. +1
    -1
      youtube_dl/downloader/f4m.py
  3. +10
    -8
      youtube_dl/downloader/fragment.py
  4. +1
    -1
      youtube_dl/downloader/hls.py
  5. +1
    -1
      youtube_dl/downloader/ism.py

+ 1
- 1
youtube_dl/downloader/dash.py View File

@ -28,7 +28,7 @@ class DashSegmentsFD(FragmentFD):
frag_index = 0 frag_index = 0
for i, segment in enumerate(segments): for i, segment in enumerate(segments):
frag_index += 1 frag_index += 1
if frag_index <= ctx['frag_index']:
if frag_index <= ctx['fragment_index']:
continue continue
# In DASH, the first segment contains necessary headers to # In DASH, the first segment contains necessary headers to
# generate a valid MP4 file, so always abort for the first segment # generate a valid MP4 file, so always abort for the first segment


+ 1
- 1
youtube_dl/downloader/f4m.py View File

@ -376,7 +376,7 @@ class F4mFD(FragmentFD):
while fragments_list: while fragments_list:
seg_i, frag_i = fragments_list.pop(0) seg_i, frag_i = fragments_list.pop(0)
frag_index += 1 frag_index += 1
if frag_index <= ctx['frag_index']:
if frag_index <= ctx['fragment_index']:
continue continue
name = 'Seg%d-Frag%d' % (seg_i, frag_i) name = 'Seg%d-Frag%d' % (seg_i, frag_i)
query = [] query = []


+ 10
- 8
youtube_dl/downloader/fragment.py View File

@ -66,7 +66,9 @@ class FragmentFD(FileDownloader):
if not (ctx.get('live') or ctx['tmpfilename'] == '-'): if not (ctx.get('live') or ctx['tmpfilename'] == '-'):
frag_index_stream, _ = sanitize_open(self.ytdl_filename(ctx['filename']), 'w') frag_index_stream, _ = sanitize_open(self.ytdl_filename(ctx['filename']), 'w')
frag_index_stream.write(json.dumps({ frag_index_stream.write(json.dumps({
'frag_index': ctx['frag_index']
'download': {
'last_fragment_index': ctx['fragment_index']
},
})) }))
frag_index_stream.close() frag_index_stream.close()
@ -100,7 +102,7 @@ class FragmentFD(FileDownloader):
ytdl_filename = encodeFilename(self.ytdl_filename(ctx['filename'])) ytdl_filename = encodeFilename(self.ytdl_filename(ctx['filename']))
if os.path.isfile(ytdl_filename): if os.path.isfile(ytdl_filename):
frag_index_stream, _ = sanitize_open(ytdl_filename, 'r') frag_index_stream, _ = sanitize_open(ytdl_filename, 'r')
frag_index = json.loads(frag_index_stream.read())['frag_index']
frag_index = json.loads(frag_index_stream.read())['download']['last_fragment_index']
frag_index_stream.close() frag_index_stream.close()
dest_stream, tmpfilename = sanitize_open(tmpfilename, open_mode) dest_stream, tmpfilename = sanitize_open(tmpfilename, open_mode)
@ -108,7 +110,7 @@ class FragmentFD(FileDownloader):
'dl': dl, 'dl': dl,
'dest_stream': dest_stream, 'dest_stream': dest_stream,
'tmpfilename': tmpfilename, 'tmpfilename': tmpfilename,
'frag_index': frag_index,
'fragment_index': frag_index,
# Total complete fragments downloaded so far in bytes # Total complete fragments downloaded so far in bytes
'complete_frags_downloaded_bytes': resume_len, 'complete_frags_downloaded_bytes': resume_len,
}) })
@ -120,8 +122,8 @@ class FragmentFD(FileDownloader):
state = { state = {
'status': 'downloading', 'status': 'downloading',
'downloaded_bytes': ctx['complete_frags_downloaded_bytes'], 'downloaded_bytes': ctx['complete_frags_downloaded_bytes'],
'frag_index': ctx['frag_index'],
'frag_count': total_frags,
'fragment_index': ctx['fragment_index'],
'fragment_count': total_frags,
'filename': ctx['filename'], 'filename': ctx['filename'],
'tmpfilename': ctx['tmpfilename'], 'tmpfilename': ctx['tmpfilename'],
} }
@ -144,12 +146,12 @@ class FragmentFD(FileDownloader):
if not ctx['live']: if not ctx['live']:
estimated_size = ( estimated_size = (
(ctx['complete_frags_downloaded_bytes'] + frag_total_bytes) / (ctx['complete_frags_downloaded_bytes'] + frag_total_bytes) /
(state['frag_index'] + 1) * total_frags)
(state['fragment_index'] + 1) * total_frags)
state['total_bytes_estimate'] = estimated_size state['total_bytes_estimate'] = estimated_size
if s['status'] == 'finished': if s['status'] == 'finished':
state['frag_index'] += 1
ctx['frag_index'] = state['frag_index']
state['fragment_index'] += 1
ctx['fragment_index'] = state['fragment_index']
state['downloaded_bytes'] += frag_total_bytes - ctx['prev_frag_downloaded_bytes'] state['downloaded_bytes'] += frag_total_bytes - ctx['prev_frag_downloaded_bytes']
ctx['complete_frags_downloaded_bytes'] = state['downloaded_bytes'] ctx['complete_frags_downloaded_bytes'] = state['downloaded_bytes']
ctx['prev_frag_downloaded_bytes'] = 0 ctx['prev_frag_downloaded_bytes'] = 0


+ 1
- 1
youtube_dl/downloader/hls.py View File

@ -106,7 +106,7 @@ class HlsFD(FragmentFD):
if line: if line:
if not line.startswith('#'): if not line.startswith('#'):
frag_index += 1 frag_index += 1
if frag_index <= ctx['frag_index']:
if frag_index <= ctx['fragment_index']:
continue continue
frag_url = ( frag_url = (
line line


+ 1
- 1
youtube_dl/downloader/ism.py View File

@ -227,7 +227,7 @@ class IsmFD(FragmentFD):
frag_index = 0 frag_index = 0
for i, segment in enumerate(segments): for i, segment in enumerate(segments):
frag_index += 1 frag_index += 1
if frag_index <= ctx['frag_index']:
if frag_index <= ctx['fragment_index']:
continue continue
count = 0 count = 0
while count <= fragment_retries: while count <= fragment_retries:


Loading…
Cancel
Save