DTG library estimatedSizeBytes

Hello everyone.
I have a question regarding the playkit-dtg-android download progress calculations.
In the current version v2.1.6 the only way to calculate the progress for the DownloadItem is to divide getDownloadedSizeBytes()*100f/getEstimatedSizeBytes()

I am using the official sample

These calculations give values greater than 100% because, at the end of the download, downloadedSizeBytes is greater than estimatedSizeBytes. I understand that estimatedSizeBytes is an approximate value as the method name says, and the library does not guarantee that this value will be always precise.

My questions below:

  1. What were the difficulties in detecting the exact size?
  2. Is this a bug or a limitation of the library?

Even after the item was completely downloaded the estimatedSizeBytes is smaller than downloadedSizeBytes