Go
Not registered? Sign up!

Some MP3 files not playing...

Google Translate
19 posts | return to the Setup Problems forum | get the rss feed for this thread

Mar. 03, 2008Phil Tanner

First off, I've tried re-encoding them to 44 & 22 kHz, all have the same issue.

So, I've got a page with an audio link. Some IE users report that when they click the link Windows Media Player says that it has "reached end of file" and doesn't play it. I found that if you right click and save the file, then play it on those machines it works just fine - when loaded from the local disk - so the MP3 file itself isn't corrupt. I have not been able to replicate the error in Firefox (even using WMP).

In trying to resolve the issue, rather than link to the file, I thought I would embed it, using this player. But the player also refuses the play some of the MP3's. I have NO idea what's going on, my boss is pressuring me because the CEO is pressuring him & I'm at my wits end. Any solution gratefully received!

Sample links:
Non-working MP3:
http://wap.test.linguaphone-intranet.co.uk/RW5nbGlzaA%3D%3D/5pmu6YCa6K%2Bd/content2.php?rubric_id=1274
Working MP3:
http://wap.test.linguaphone-intranet.co.uk/RnJhbsOnYWlz/VMO8cmvDp2U%3D/content2.php?rubric_id=1189

P.S. It's also not the phrase length (file-size) as the working ones also work on 1 word files, and the non-working ones include whole sentences.

Mar. 03, 2008frameBYframe

Here's my best guess.

Looking at the file paths:
1189_working.mp3:     mm1.addVariable( "file", "/audio/VMO8cmvDp2U=/1189.mp3" );
1274_not-working.mp3: mm1.addVariable( "file", "/audio/5pmu6YCa6K+d/1274.mp3" );

Comparing the file paths, we see that there is a plus sign in the URL of the non-working MP3.

Plus signs don't work very well in URLs because they were used to represent space characters in legacy browsers. Search these forums for all the problems that users are having with Amazon S3 URLs that have a plus sign in them.

The best thing for you to do, if you have control of the URLs, would be to restrict them to alphabetic and numeric characters, a-z, A-Z, 0-9.

Mar. 04, 2008Phil Tanner

You're right, I should have been making the paths URL safe - an oversight on my part while I was trying to get it working.

Unfortunately, fixing this by urlencoding the paths hasn't worked (it was a long shot anyway, as the "=" in the 1189 working file should also have been encoded...)

The two lines in question now read:
mm1.addVariable( "file", "/audio/VMO8cmvDp2U%3D/1189.mp3" );
mm1.addVariable( "file", "/audio/5pmu6YCa6K%2Bd/1274.mp3" );

and the effect is still there :( Any other ideas?

P.S. the file paths are fixed - they're the encoded names of the languages involved in the translation, and used in the application.

Mar. 04, 2008Phil Tanner

Update:
I've added an OBJECT and nested EMBED tag below the jw_media_player pointing to the same file, and that works just fine. This is driving me nuts...

Mar. 04, 2008andersen

when i test the 1274.mp3 locally it plays fine - so nothing is wrong with the file as such -
so the problem indeed seem to be the + in the folder name -
maybe try as an experiment to place the 1274.mp3 somewhere else and see if it plays then...

Mar. 04, 2008Phil Tanner

Ah. Yes, that allowed the file to play, but it's not really a solution for me, as the files are stored in the directories of their native language - base64 encoded (so that there aren't directories called "普通话" which would cause no-end of problems!), and a lot of the application relies upon this structure.

URL encoding the directories creates a syntatically valid filepath, so it should work. I'm guessing the problem lies with one of the calling functions (the JavaScript embedding perhaps?) not passing on the re-encoded path, or decoding it, or possibly even re-encoding it again, and probably in the linking "flashvars" variable, but I'm not sure.

I've tried all manner of things, from double encoding the string, to not encoding it, to renaming the directory to match the URL encoded version (only to try to locate where the issue was lying) - I can't get the file to play at all, unless I move it out of that directory.

This has got to be a bug in the code where it's not handling urlencoded things properly hasn't it?

Mar. 04, 2008touchIt

As we saw with the Amazon S3 URLs, Flash + JavaScript + Internet Explorer is a bad combination. Even encoding the plus sign as %252B (double-encoded % sign) didn't work.

If object/embed works, go with that. All SWFObject does is write the object/embed tags anyway. You don't lose any functionality of the JavaScript API, you only lose the initial setup of the player through JavaScript, which you can work around by making your object/embed with PHP (or another scripting language) when the page is generated.

Mar. 04, 2008Phil Tanner

Thanks for the reply.

The object/embed tags work for some PC's - however for the PC's that originally had the problem (which I tried solving by using the flash player) that solution doesn't work either - so I'm back at the beginning again.

Just another FYI - the flash player doesn't work even in Firefox on the +'d URLs, so it's not restricted to IE.

Mar. 04, 2008touchIt

Have you tried manually encoding a few of the problematic URLs, using %252B in place of the plus sign? Even though it didn't work for Amazon S3, it might work for you, depending on what your server does with the %252B.

The best solution, if you want to keep your hair, would be to avoid special characters in the path. However, it sounds like that may not be an option for you.

Mar. 05, 2008Phil Tanner

Sorry for delay in reply, I have been trying various things and pulling my hair out.

Ok, so I've found the problem with WMP clicking on the links (getting "reached end of file") error has something to do with the links, not the file... the link
audio/5pmu6YCa6K+d/1284.mp3
doesn't work, but
audio/5pmu6YCa6K+d/1285.mp3
did. And yet, renaming the two files made no difference, the 1284.mp3 file still didn't work.

I tried it with other directories that did not have the + sign in them too, they also failed, so that's not the issue.

I have, however, managed to find a way around using the + signed directory names, so at least the Flash player works (obviously where this forum is concerned!), and as I've said, PC's that play the link Quicktime work, as do Firefox browsers (seemingly). So my worry now is for the "Smart Phones" which this application will eventually be aimed at - I'll just have to cross my fingers and hope I think, because WMP is still failing on those original links, whatever the file contents or the directory name is :(

Thanks for all the help & pointers.
Phil

Aug. 14, 2008tabu

the song in mp3 shows no file but it work in computer

Aug. 14, 2008tabu

hi
song in mp3 shows no files.

but it,s work in computer
what is the problem

Aug. 14, 2008kLink

@tabu,

Do you have a link to your test page that you can post here so we can help you?

Sep. 26, 2008Airiesia

@ kLink
- <DeviceInfo>
<WMP DeviceID="{B368ED7B-F7C0-40DA-9319-55A27C14CD17}" RelationshipID="{00000000-0000-0000-0000-000000000000}" />
</DeviceInfo>
is that what link to test page is?
I have the same problem...

Oct. 15, 2008andersen

@Airiesia - the link to the online webpage where you test your JW FLV Media Player player is what is needed
you can get it from here - http://www.jeroenwijering.com/?item=JW_FLV_Media_Player
- so people here can see for them selves and check the sourcecode and the prescence of files and maybe find the problem...

Nov. 11, 2008ksbhan

i have some mp3 songs running in computer but not running in car cd player

Nov. 19, 2008April

I'll add the music to mp3 player and it plays while pluged up to the computor but when I go to play it with the battery then it doesn't play

Oct. 17, 2009admerilwarsaw

why would you link an object rather than embed it?

Oct. 30, 2009TSW

For what it's worth, we are grappling with the same issue.

I've even tried triple-encoding the characters like plus (+) and somehow when I sniff what URL the jwplayer is trying to load, it's decoded my %25252B back into a plus sign! WTF!

Add a reaction

You can also return to the category or try this search for related threads.


 

Search the Forums

Go

Support

Support Here are some helpful links to learn more about the JW Player™:

Monetize Your Video

Monetize Your Video Earn money with ads from LongTail's AdSolution. Watch our demos and sign up now!

Why Buy a License?

Why Buy a License? If you don’t buy a commercial license, you cannot use a JW Player™ on (i) a site that has ads; (ii) a corporate site; or a (iii) CMS. Our licenses are very inexpensive, so what are you waiting for? Buy a license today.