ツールで出力したMMLならある程度の枠組に従っているはずですので、解析はやりやすそうですが手書きなど自由な文法で書いたものを解析するのなるとかなり大変そうです。 ish さんの言われる通り、主旋律が判断できない以上どこか落とし所を決めてざっくりと曲長を調査するのが現実的だと思います。 ちょっと邪道かもしれませんが、MMLから無限ループを取り除く加工を行い、演奏が停止した時に次の曲に切り替えるとか。