main.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import vconfig
  2. import vcollector
  3. import vobjects
  4. config = vconfig.VConfig(open("config.json"))
  5. print("Fetching list of audio")
  6. audio_list = vcollector.audio_list(config)
  7. print("Fetching audio metadata")
  8. audio_data = vcollector.audio_data(config, audio_list)
  9. print("Fetching audio manifests")
  10. for data in audio_data:
  11. if vobjects.Manifest.load(config, data):
  12. print(f"\tPre-Fetched: {data.hindex()}")
  13. continue
  14. manifest = vcollector.audio_manifest(config, data)
  15. data.manifest(manifest)
  16. data.manifest().store(config)
  17. print(f"\tFetched: {data.hindex()}")
  18. print("Fetching audio chunks")
  19. for data in audio_data:
  20. manifest = data.manifest()
  21. if manifest.hashed(config):
  22. print(f"\tPre-fetched: {data.hindex()}")
  23. continue
  24. chunks = manifest.chunks()
  25. for idx, chunk in enumerate(chunks):
  26. chunks[idx] = (vcollector.audio_chunk(config, data, chunk))
  27. print(f"\tFetching: {data.hindex()} | {idx + 1}/{len(chunks)}", end='\r')
  28. for chunk in chunks:
  29. chunk.store(config)
  30. manifest.hash(config, chunks)
  31. print(f"\tFetched: {data.hindex()}", end=' \n')
  32. print("Building audio")
  33. for idx, data in enumerate(audio_data):
  34. if data.hashed(config):
  35. print(f"\tPre-built: {data.hindex()}")
  36. continue
  37. vcollector.audio(config, data.manifest(), idx + 1)
  38. data.hash(config)
  39. print(f"\tBuilt: {data.hindex()}")
  40. print("Done")