Instead of waiting for the track to end, the game seems to check a preset time. This is fine for the original tracks, but this makes custom tracks cut off early. An easy fix for this could be having the hopper activate based on if the track is over, rather then a preset time.
Thank you for your report!
We're tracking this issue in MCPE-47590, so this ticket is being resolved and linked as a duplicate.
If you would like to add a vote and any extra information to the main ticket it would be appreciated.
If you haven't already, you might like to make use of the search feature to see if the issue has already been mentioned.
Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki