01-05-2008
|
#1
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
[Release] Meizu Playlist Converter
To everybody who likes playlists and finds syncing the player to the PC to be a big hassle, here's my response. A playlist converter. :D
It's a simple command-line app, regular M3U/PLS playlist goes in, Meizu-compatible M3U playlist comes out. Simple as that.
How to use:
1. Extract the archive.
2. Run Meizu Playlist Converter.exe
3. Type in the filename of the playlist to convert (with .M3U or .PLS extension)
4. Type in the desired filename of the converted playlist (cannot be the same as the source, put .M3U extension here)
5. Copy converted playlist to PLAYLISTS folder on your M6 and enjoy!
If you haven't figured out already, the initial playlists should be made by opening the music folder on your M6 with your favorite music player, selecting the tracks and saving the playlist in either M3U or PLS format.
Playlists converted by this program work perfectly on my M6SL, might work with the M3 too, if they do, let me know.
Sorry for the size, it's written in Python. Might port it to C++ sometime.
Feedback is welcome!
Change log:
v0.41 (11 Jan 2008)
Turns out the 2nd address line in the converted playlists wasn't actually needed, so i removed it. Playlists load a bit faster now, but don't expect anything major.
This whole thing proves just how buggy Meizu's playlist handling code is. I also think i know why the unit freezes for such a long period before playing a song from the playlist. The M6's playlist format does not store ID3 tags, so the player has to fetch the tags of all the songs before starting playback. This is similar to what is done during the "update music library" process. Hope they'll think it over.
v0.4 (7 Jan 2008)
Added support for playlists initially saved without drive letters. While this was piece of cake on M3U, i had to make the already complicated PLS handling code more than two times longer. Hope i finally got it right now. It's silly for people who code windoze software to behave like they're on nix, wake up, idiots, there are some standards you should respect! By the way, the PLS format sucks. Just so you know.
v0.3 (6 Jan 2008)
Added spaces in EXE name.
Added version number to program.
Fixed conversion from PLS format, removed "EXPERIMENTAL" notice when you convert PLS files.
Created this file (changelog.txt).
v0.2 (5 Jan 2008)
Added experimental PLS conversion support, which didn't actually work. The playlist was recognized by the M6 and the songs were listed but the player wouldn't find the songs when you tried to play them.
v0.1 (5 Jan 2008)
Initial public release.
Last edited by Th3_uN1Qu3; 05-13-2008 at 10:33 AM.
Reason: Update
|
|
|
01-06-2008
|
#2
|
|
Valued Member
Join Date: Jun 2007
Posts: 1,007
|
Cool. Good job, very handy to use.
|
|
|
01-06-2008
|
#3
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Quote:
Originally Posted by mbarry
Cool. Good job, very handy to use.
|
Thanks. Will code drag-and-drop support too when i'll feel like it. :P This little project is a great way for me to learn some more "real" coding, as the old Borland C++ i learn at school isn't of any use nowadays.
Edit: I'm currently working on fixing PLS support - the resulting file was read by the M6 but when you selected a song for the playlist it'll hang for a while (like it usually does on playlists) but then it will not recognize any songs in the playlist. That is close to being solved, expect an update in a couple hours max.
Later edit: PLS is now fully supported! Updated attachment in first post.
Last edited by Th3_uN1Qu3; 01-06-2008 at 04:38 PM.
|
|
|
01-06-2008
|
#4
|
|
Member
Join Date: Aug 2007
Location: Hungary
Posts: 262
|
I've been thinking about making such a playlist, and yours is nice, however it will still need some work on it it seems.
For me, it made the "\Music" starting of lines into "usic" instead from a WinAMP 5.5 generated M3U playlist. 
I've tried doing an edit->replace in notepad tho, and it worked nice after
(damm, this is the first part of the M6 I do concider badly buggy, it takes multiple minutes to load a not-even-so-big playlist)
|
|
|
01-06-2008
|
#5
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Quote:
Originally Posted by Speeder
I've been thinking about making such a playlist, and yours is nice, however it will still need some work on it it seems.
For me, it made the "\Music" starting of lines into "usic" instead from a WinAMP 5.5 generated M3U playlist. 
I've tried doing an edit->replace in notepad tho, and it worked nice after
(damm, this is the first part of the M6 I do concider badly buggy, it takes multiple minutes to load a not-even-so-big playlist)
|
Yeah, it sucks that the M6 takes so long to load playlists.
You know what's weird? It works just fine for me on both M3U and PLS playlists, both generated with the same Winamp 5.5. :P Would you give me one of your playlists so i can check what's wrong? There must be something different in your playlist.
Oh wait. Are you sure your Winamp-generated playlist includes the drive letter too? The program skips the first two bytes of the line to remove the drive letter, and if it isn't there in the first place it cuts from the path.
Try the PLS format in Winamp (i hope it works as reading the INI-styled format required a few dirty tricks).
Last edited by Th3_uN1Qu3; 01-06-2008 at 11:09 PM.
|
|
|
01-07-2008
|
#6
|
|
Member
Join Date: Aug 2007
Location: Hungary
Posts: 262
|
uhm as far as I've remembered, yes it did. You should perhaps check the second character for a ":" tho to make sure the drive letter's there 
Also, I'd like to recommend not to "reinvent the wheel", maybe you could find a free, open source playlist parser somewhere which could eliminate any future bugs.
Point is, my view on your proggy is that it's good, it's needed for the Meizus and you should finnish it for sure ^^
|
|
|
01-07-2008
|
#7
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
I'll implement some more checks in the program (if i can get them right, that is :P). I'm still waiting for that sample playlist from you.
I haven't found any other playlist parser written in Python for the time being. And my C++ skills are really basic, i doubt i can handle writing proper C++ code without some serious studying. Python is so much more straightforward for a beginner like me.
Last edited by Th3_uN1Qu3; 01-07-2008 at 10:05 AM.
|
|
|
01-07-2008
|
#8
|
|
Junior Member
Join Date: Oct 2007
Posts: 54
|
Sorry for my bad english. I have the same problem. In my winamp generated playlists each line starts as "\Music" (It not includes the drive letter). Because the program cuts off the first two letters, lines in new playlists start as "usic". Both .m3u an .pls playlists have the same problem. Maybe you can tell me how include the drive letter in the original playlist using winamp. Here you can download a sample of what i mean: original and converted playlists.
|
|
|
01-07-2008
|
#9
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Quote:
Originally Posted by passero
Sorry for my bad english. I have the same problem. In my winamp generated playlists each line starts as "\Music" (It not includes the drive letter). Because the program cuts off the first two letters, lines in new playlists start as "usic". Both .m3u an .pls playlists have the same problem. Maybe you can tell me how include the drive letter in the original playlist using winamp. Here you can download a sample of what i mean: original and converted playlists.
|
Thanks, this is clearly the problem. What i don't get is why doesn't your winamp put the drive letter in your path. I generate my playlists by dragging the MUSIC folder of my M6 into the winamp playlist, selecting the tracks and then saving the playlist. And it ALWAYS puts the drive letter in the path (obviously, coz it has to know where to get the files from). I don't know how your winamp makes the playlists, but i'd be better off coding a fix than asking why it's like that, so i'm off to work on it.
Edit: Done. My internet was acting up so i could only upload it now, you can find the updated version in the first post.
Tell me if there are any bugs when converting PLS files that don't have drive letters, i'm not really sure about the ending offset there.
Last edited by Th3_uN1Qu3; 01-07-2008 at 09:28 PM.
|
|
|
01-07-2008
|
#10
|
|
Junior Member
Join Date: Oct 2007
Posts: 54
|
Now it's working perfectly!!!! Many thanks!!!!
|
|
|
01-07-2008
|
#11
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Quote:
Originally Posted by passero
Now it's working perfectly!!!! Many thanks!!!!
|
Glad to hear that.  I'm working on implementing a scanning algorithm in the program, so i won't have to deal anymore with all these problems generated by fixed offsets aka "blind reads".
|
|
|
01-08-2008
|
#12
|
|
Member
Join Date: Aug 2007
Location: Hungary
Posts: 262
|
Sorry for the delay, I see the playlist isn't needed any more 
Good luck with it, unique!
(I know a book you could read to learn C++, it's very very good, send a PM if you want it)
|
|
|
01-08-2008
|
#13
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Quote:
Originally Posted by Speeder
Sorry for the delay, I see the playlist isn't needed any more 
Good luck with it, unique!
|
Yeah, passero was quicker with it. See, i was right about that missing drive letter.
|
|
|
01-10-2008
|
#14
|
|
Junior Member
Join Date: Oct 2007
Posts: 54
|
Another problem i've found.
This program works perfectly only with songs whose name and id3tag contain english characters. But there are many languages like french,german,spanish,italian ,ecc,that use special characters like à,è,ì,ò,ù....
I make a winamp playlist with 15 songs,some of them (3 for example) contains these characters. When i play it on my meizu, all is ok.
After the conversion with your program, my meizu doesn't show all playlist's songs, but skips those which use special characters. It shows only 12 songs in the playlist.
I tried to make the same playlist directly from my meizu, and all is working perfectly.
This happens because meizu internal generated playlist makes some sostitutions:
à -> Ã
ò -> ò
ù -> ù
ì -> ì
é -> è
For example:
with your program this song:
#[UTF8FULLPATH]\MUSIC\Artist\Album\12 - Artist - xxxxà.mp3
\MUSIC\Artist\Album\12 - Artist - xxxxà.mp3
doesn't appear to be in the playlist
cause meizu internal playlist changes à with à in this way:
#[UTF8FULLPATH]\MUSIC\Artist\Album\12 - Artist - xxxxÃ.mp3
\MUSIC\Artist\Album\12 - Artist - xxxxà.mp3
i don't know why this happens, but i think it's impossible for you to fix, maybe a strange bug of the firmware.
Anyway you have made a good job! Thanks!!!
|
|
|
01-10-2008
|
#15
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Quote:
Originally Posted by passero
Another problem i've found.
This program works perfectly only with songs whose name and id3tag contain english characters. But there are many languages like french,german,spanish,italian ,ecc,that use special characters like à,è,ì,ò,ù....
I make a winamp playlist with 15 songs,some of them (3 for example) contains these characters. When i play it on my meizu, all is ok.
After the conversion with your program, my meizu doesn't show all playlist's songs, but skips those which use special characters. It shows only 12 songs in the playlist.
I tried to make the same playlist directly from my meizu, and all is working perfectly.
This happens because meizu internal generated playlist makes some sostitutions:
à -> Ã
ò -> ò
ù -> ù
ì -> ì
é -> è
For example:
with your program this song:
#[UTF8FULLPATH]\MUSIC\Artist\Album\12 - Artist - xxxxà.mp3
\MUSIC\Artist\Album\12 - Artist - xxxxà.mp3
doesn't appear to be in the playlist
cause meizu internal playlist changes à with à in this way:
#[UTF8FULLPATH]\MUSIC\Artist\Album\12 - Artist - xxxxÃ.mp3
\MUSIC\Artist\Album\12 - Artist - xxxxà.mp3
i don't know why this happens, but i think it's impossible for you to fix, maybe a strange bug of the firmware.
Anyway you have made a good job! Thanks!!!
|
The Meizu playlist engine doesn't care about ID3 tags. It's just the filename that has to contain english-only characters.
If it can be fixed? Yes, but it's most likely not worth the hassle. Your finds tell me the MiniPlayer uses a Chinese codepage internally, that's why all those weird replacements. It'd be pretty tricky to pull out, and getting PLS conversion to work was annoying enough so no thanks.
This is a fault on Meizu's side, not on mine. My program correctly copies any characters, if the Meizu expects a tricked-up codepage, that ain't gonna happen, sorry.
Edit: A little update. Read about it in the first post.
Last edited by Th3_uN1Qu3; 01-11-2008 at 02:19 AM.
|
|
|
01-16-2008
|
#16
|
|
Passing By
Join Date: Jan 2008
Posts: 4
|
Greetings,
This "playlist converter" sounds pretty nifty. Do you know of one that works in the Mac (PPC not Intel) platform?
History: I recently purchased an M6 SL 8GB v. 2.004.4 and I use a Mac system running OS X 10.4.11 with iTunes 7.4.2 (4). As is well known Meizu and iTunes are not natively compatible. So I've been using SyncTunes v. 2.0.0 ((Release 2) Universal) in order to transfer playlists and songs from my Mac to my M6 SL.
Problem: SyncTunes creates playlists in both M3U and PLS formats. I use M3U since it seems to be what was native on the M6. After syncing, the playlist that is created by SyncTunes on the M6 is unusable. A folder with the playlist name is created but when selected on my M6 it is an empty folder and the option to "DELETE PLAYLIST?" is displayed.
Solution: This is my work around, which is a very time consuming and tedious one. I end up having to delete the M6 playlist created by SyncTunes. disconnect the M6 from my Mac, and then I have to individually add each song on the M6 to "MY PLAYLIST", and save the playlist. I then reconnect the M6 to my Mac and then rename the "PLAYLIST 1.M3U" to the original name of the playlist from iTunes (leaving the M3U extension in tact). As I said very tedious and time consuming.
Question: As indicated at the start, do you know of a playlist converter, or an easier alternative, that will work with a Mac?
Thanks for any assistance.
|
|
|
01-16-2008
|
#17
|
|
Passing By
Join Date: Jan 2008
Posts: 4
|
Playlist Problems M6 SL, Mac, iTunes, SyncTunes
Greetings,
This "playlist converter" sounds pretty nifty. Do you know of one that works in the Mac (PPC not Intel) platform?
History: I recently purchased an M6 SL 8GB v. 2.004.4 and I use a Mac system running OS X 10.4.11 with iTunes 7.4.2 (4). As is well known Meizu and iTunes are not natively compatible. So I've been using SyncTunes v. 2.0.0 ((Release 2) Universal) in order to transfer playlists and songs from my Mac to my M6 SL.
Problem: SyncTunes creates playlists in both M3U and PLS formats. I use M3U since it seems to be what was native on the M6. After syncing, the playlist that is created by SyncTunes on the M6 is unusable. A folder with the playlist name is created but when selected on my M6 it is an empty folder and the option to "DELETE PLAYLIST?" is displayed.
Solution: This is my work around, which is a very time consuming and tedious one. I end up having to delete the M6 playlist created by SyncTunes. disconnect the M6 from my Mac, and then I have to individually add each song on the M6 to "MY PLAYLIST", and save the playlist. I then reconnect the M6 to my Mac and then rename the "PLAYLIST 1.M3U" to the original name of the playlist from iTunes (leaving the M3U extension in tact). As I said very tedious and time consuming.
Question: As indicated at the start, do you know of a playlist converter, or an easier alternative, that will work with a Mac?
Thanks for any assistance.
|
|
|
01-16-2008
|
#18
|
|
Junior Member
Join Date: Oct 2007
Posts: 54
|
I don't have a mac, but i think that a valid alternative could be connect your M6 as MSC usb mode (under "Settings" option) and then use a mp3 software player for mac to create playlists (in this way your player is recognised as an usb pen if it's the same as in windows)
For example, you can use videolan (if it's working the same as in windows, simply drag and drop the music files on it, then View->Playlist->Manage->Save playlist in \Playlists folder of your M6), but i don't know if videolan playlists are M6 compatible.
Maybe you can try with other mp3 software player for Mac, like Audion ( https://www.panic.com/audion/index.html, look here for the serial https://www.panic.com/audion/buy.html), CogOSX ( Cog - News), Toolplayer ( AleNofx Dev Site :: ToolPlayer) or others.
|
|
|
01-17-2008
|
#19
|
|
Member
Join Date: Dec 2007
Location: Bucharest, Romania
Posts: 206
|
Now that makes me glad i coded in Python. :D The Python interpreter is also available for the Mac, just download it here, drop me a PM and i'll send you the source you can use on the Mac.
|
|
|
01-20-2008
|
#20
|
|
Passing By
Join Date: Jan 2008
Posts: 4
|
Greetings Passero,
Thank you for the suggestions. I tried each of the programs you listed but with no success. The "drag and drop" feature does not work. Likewise these programs could not read my iTunes Library, hence my playlists either. I am able to transfer various folders (categorized by artists) from my iTunes Music Folder, however, my playlists are not categorized by "artists" but rather by "personalized song preference." I have no desire to transfer all my songs, and then recreate all new playlists. As it is a great investment of time has gone into creating the playlists I presently have in iTunes.
In my web surfing I did stumble across a couple of applications that appear to be solutions for doing precisely what I desire, such as Export iTunes and Media Monkey, but these appear to be for Windows based platforms and not for Macs.
I am still hopeful that a solution will present itself. I have sent eMails to Th3_uN1Qu3 as well as to the developer of SyncTunes. If and when a workable solution presents itself I will post it for others to benefit from.
Again, thank you for your suggestions.
Respectfully,
Cpt. Buff
|
|
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
Powered by vBulletin. Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.
|