View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0019223 | MMW 5 | Playlists | public | 2022-06-27 14:41 | 2022-07-04 22:31 |
Reporter | Ludek | Assigned To | |||
Priority | urgent | Severity | minor | Reproducibility | always |
Status | closed | Resolution | reopened | ||
Product Version | 5.0 | ||||
Target Version | 5.0.4 | Fixed in Version | 5.0.4 | ||
Summary | 0019223: Some M3U playlists are not imported correctly | ||||
Description | Having M3U file that uses relative paths to the music files like this: C:\folder1\playlist.m3u C:\folder1\folder2\file.mp3 then the actual M3U with following content works: folder2\file.mp3 BUT with the following content it fails: \folder2\file.mp3 and is actually taking the file from C:\folder2\file.mp3 instead of C:\folder1\folder2\file.mp3 | ||||
Additional Information | The same exists in MM4 [Ticket # 4338] | ||||
Tags | No tags attached. | ||||
Fixed in build | 2656 | ||||
|
Fixed in 5.0.4.2656 |
|
Re-opened for re-evaluation as: -- VLC, AIMP, iTunes treats paths beginning with backslash as relative -- Foobar, Winamp, Window Media Player treats path beginning with backslash as absolute So it is 3:3 where MM4+MM5 has also always taken it as absolute |
|
Based on https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file A single backslash, for example, "\directory" or "\file.txt". This is also referred to as an absolute path. So we should really revert the "fix". => reverted in 5.0.4.2656 |
|
Reopen and assigned to me for testing all cases of apps and devices. Correction of 0019223:0068712 : AIMP prefers relative over absolute, but also treat "\" as absolute in some cases. NOT: Assign back to @Ludek for implementation after all cases and steps are entered. |
|
Test steps: 1. Extract sample ZIP file to ROOT of any HDD/USBFlash/... (Must be in root) 2. Go to f:\test playlists\ 3. Drag And Drop Playlists to MM5 player and confirm they play 4. Repeat same with AIMP (Note "tracks root.m3u" tracks (File info) will point to "?:\Test playlists\\Test Music\" 5. Copy Full Path from AIMP File info -> Use MM5 File Open file/url -> Paste -> Track will play (which means MM already support paths with "\\" withing full path) 5. Rename "?:\Test playlists\Test Music\" -> "?:\Test playlists\1Test Music\" 6. Drag and drop "tracks root.m3u" to AIMP and check file info they will now show "?:\Test Music\" (Which means AIMP also follow Windows file naming like MM) Reason for such behavior is that like I pointed in chat thread Android and Linux devices uses mount points and "\folder\x.mp3" from SD card on those systems actually refer to "\storage\SDcard\folder\x.mp3" and such behavior from AIMP is prefered because it automatically first check ".\folder\x.mp3" and if it is missing then checks "?:\folder\x.mp3" thus on all apps "tracks with dot.m3u" works and point to same file. Conclusion: Only thing that is missing in MM to behave like any other app is that paths to files in playlists that starts with "\" (excluding UNC Paths that start with "\\") firstly auto check as ".\" and if files exist then use that path and if not check "\" according to Windows filenaming rules.e NOTE: I would also not use "?:\folder\\folder1\x.mp3" even MM auto ignore \\ and translate to \ in order to play file, but correct naming "?:\folder\folder1\x.mp3" TEST NOTE: MM never writes playlist with "\folder\x.mp3" but use "folder\x.mp3" and also make use of "..\" which is full complaint to windows file naming rules. Behavior is tested on Windows Apps, QNAP apps, Car Head unit, Hardware mp3 player and playlists with "folder\x.mp3", ".\folder\x.mp3" always work "\folder\x.mp3" work from device to device QNAP Media center for example do not import such playlists, same goes with MMS |
|
OK, so there are two solutions: 1) just resolve as "no change required" as treating /file as absolute path is correct and MM has always treated it like this. Also user from the ticket # 4338 agrees and is creating an app to remove the leading backslashes. 2) Implement the "hack" suggested. i.e. whenever '\folder\file' does not exist then search for 'folder\file' and if it exists then use it. |
|
The hack 2) implemented in 2656 |
|
Verified 2656 Test Note: use steps from 0019223:0068717 to confirm change 2655 vs 2656 |