taburineagle / MPC-HC-Looper

A/B looping program to complement the MPC-HC media player, with speed controls, playlist creation (and saving), and tie-in to my Looper Trimmer EDL editing program.
Other
15 stars 1 forks source link

Invalid path is generated when title contains certain character #7

Closed h0rn3z0r closed 3 years ago

h0rn3z0r commented 3 years ago

Greetings, it seems like the vertical slash ( | ) in media file's title messes everything up. This leads not only to a wrong path in the .looper file, but also freezes the player.

taburineagle commented 3 years ago

Hello! This does make sense, as the "|" character is the delimiter for .looper files (.looper files are basically text files with the vertical slash character delimiting the event name, IN and OUT point, and filepath to that event):

1 - Event 1 Name|IN Point|OUT Point|File Path 2 - Event 2 Name|IN Point|OUT Point|File Path, etc.

So if you have an event that uses that character in the event's name, it will feed the wrong information to Looper when the file loads, as it splits that event's information prematurely (making MPC-HC look for a file using an OUT point, like "12:35" instead of a correct path) - I am slightly confused though, do you have events with that character in the event's name or the media file's path itself, because I can't actually create a media file with "|" in the path (Windows doesn't allow filenames or paths using the "|" character)

h0rn3z0r commented 3 years ago

@taburineagle, I agree, by "media file's title" I meant exactly this entry in its metadata:

image

Not sure how the looper uses it, but I have plenty of such files and you won't be able to use them until the metadata is cleared.

taburineagle commented 3 years ago

Ahhh, I think I know where it's getting that - when MPC-HC sends the "now playing" info back to Looper, it also uses a "|" delimiter, but it returns the media file's "title" along with the duration, language, path, etc., so Looper is getting its information from the wrong fields in that case. Let me check into this one...