PC users not able to open Q-time audio files

Discussion in 'Web Design and Development' started by Lakecharles, Feb 23, 2009.

  1. Lakecharles macrumors newbie

    Jan 3, 2009
    Hi, new to this site... thanks for all the great info!

    First.... sorry the heading is wrong... it's not quick Time files PC users can't open... it's my itune files in .mp4a.

    I am having trouble with PC users who visit my iweb site. They can't seem to listen to the audio files. I make my programs on garage band... share them with itunes and then drag them onto the website as .m4a's.

    What am I doing wrong? How can I change this thing?

    Here is a page on my site: http://web.me.com/cmillerfaith/Site...2009/2/21_Let_Not_YOUr_Heart_Be_Troubled.html

    they say they can read it but not get the program to work?

    What do I need to tell them?

    Thanks for your help.
  2. Mal macrumors 603


    Jan 6, 2002
    They need to have Quicktime installed, and iTunes is of course the easy way for them to listen to them. Assuming that... try a different format? (You should be able to convert to .mp3 easily, though of course it's not quite as nice of a format).

  3. SrWebDeveloper macrumors 68000


    Dec 7, 2007
    Alexandria, VA, USA
    I also recommend converting to a standardized MP3, but iWeb plays a role in this specific situation using an m4a.

    Please take a moment to read this so you know *why* - and I ask all iWeb users to pay close, careful attention to this:


    An m4a file is a really the proprietary Apple iTunes MPEG-4 AAC format, but many PC players now support this format such as winamp and foobar2000. Beyond that, as Windows Media player does not readily support this format, the browser will associate it with QuickTime, just like on your Mac. I'm referring to either the QuickTime browser plugin or QuickTime Pro (paid license). For users who do not have any of the above, it's up to the developer to prompt the user to download the appropriate plugin for that format.

    I checked your code, and see you embedded the object via iWeb, which then generated Javascript which does a browser check and then generates the HTML to load the m4a file. Rather complex, but that's what's going on under the hood.

    Here is the relevant code for MSIE users who visit your site:
    // Created by iWeb 2.0.4 local-build-20090222
    function writeMovie1()
    {document.write('<object id="id4" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="224" height="16"><param name="src" value="../../../../Media/Let%20Not%20Your%20Heart%20Be%20Troubled%20Pt%20I.m4a" /><param name="controller" value="true" /><param name="autoplay" value="false" /><param name="scale" value="tofit" /><param name="volume" value="65" /><param name="loop" value="false" /></object>');}
    else if(isiPhone)
    {document.write('<object id="id4" type="video/quicktime" width="224" height="16"><param name="src" value="../../../../Media/Let%20Not%20Your%20Heart%20Be%20Troubled%20Pt%20I.m4a"/><param name="controller" value="true"/><param name="scale" value="tofit"/></object>');}
    {document.write('<object id="id4" type="video/quicktime" width="224" height="16" data="../../../../Media/Let%20Not%20Your%20Heart%20Be%20Troubled%20Pt%20I.m4a"><param name="src" value="../../../../Media/Let%20Not%20Your%20Heart%20Be%20Troubled%20Pt%20I.m4a"/><param name="controller" value="true"/><param name="autoplay" value="false"/><param name="scale" value="tofit"/><param name="volume" value="65"/><param name="loop" value="false"/></object>');}}
    setTransparentGifURL('../../../../Media/transparent.gif');function applyEffects()
    {var registry=IWCreateEffectRegistry();registry.registerEffects({stroke_1:new IWPhotoFrame([IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_01.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_02.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_03.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_06.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_09.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_08.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_07.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_04.png')],null,0,0.660526,6.000000,9.000000,6.000000,6.000000,23.000000,25.000000,22.000000,25.000000,1.000000,1.000000,1.000000,1.000000,null,null,null,0.100000),stroke_0:new IWPhotoFrame([IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_01.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_02.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_03.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_06.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_09.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_08.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_07.png'),IWCreateImage('http://www.me.com/st/1/sharedassets/2.0.4/Common/Frames/Letterpress/letterpress_04.png')],null,0,0.660526,6.000000,9.000000,6.000000,6.000000,23.000000,25.000000,22.000000,25.000000,1.000000,1.000000,1.000000,1.000000,null,null,null,0.100000)});registry.applyEffects();}
    function hostedOnDM()
    {return true;}
    function onPageLoad()
    function onPageUnload()
    If you follow the logic, users with MSIE will see it in QT courtesy of the object tag, and they'll be prompted automatically to download the plugin if they don't have it installed (based on the codebase setting). iPhone users will see it just fine as they obviously have QT pre-installed and m4a are native to Apple.

    But for other users of other browsers, iWeb generates the object tag again, instead of the embed tag which is intended for non MSIE browsers. As a result of that there is no "pluginspage" parameter! That tells the browser where to download the plugin if it's not on the user's computer.

    So if you're visiting with Firefox on a PC and you don't have the QT plugin installed, there is no code to inform the user they need the plugin, and where to download it.

    This means iWeb handles this situation poorly in terms of cross platform support, and it also means the better solution really is to not use m4a's outside of iTunes, but convert to mp3's which are universally supported on all platforms by all kinds of players. Side note - if the user disables Javascript, they see -- nothing. So I am not a fan of iWeb at all for things like this.

    And there you have it!

  4. Lakecharles thread starter macrumors newbie

    Jan 3, 2009
    Thanks Jw,

    I changed an audio file from .m4a to .mp3 and tried to open it with Windows media player... The media player opens and I get a window that says "Cannot play back the file. The file format is invalid."
  5. Lakecharles thread starter macrumors newbie

    Jan 3, 2009
    Thanks Jim,

    And wow.... After reading the content in that box and following along with you as you explained it... I had to go lie down. :) Man, I just found out that although I knew I didn't know very much about these matters.... I now know how very little I know:p.

    Anyway, I thank you for the explanation about .m4a files... I was going to ask what the differences were all about. I really don't know how I came to use these instead of .mp3's but I did. I will certainly convert the files that I load onto the website to .mp3 from here out.

    I guess your telling me that pc users will be able to hear the programs then?

    You will note my post before this one regarding not being able to open an mp3 in windows media player.... I wonder why not?
  6. SrWebDeveloper macrumors 68000


    Dec 7, 2007
    Alexandria, VA, USA
    My comments were mostly directed at iWeb's embedding of m4a's. In all truthfulness, I personally prefer Flash players due to the customization and cool look of many open source Flash MP3 players available on the web. M4a's use MPEG level 4 compression which is superb, but even though this chart seems to make clear it is widely supported across Windows and Mac, as you discovered, in the real world it's not necessarily true. Combined with iWeb's crazy embedding, the suggestion to switch to MP3 is advised in your specific situation.

    I'd rather eat human feces than debug Windows issues, but if you're having trouble converting, double check to make sure the source ACC files are not copyright protected (they usually end in .m4p, but not always) which would also explain the problem with Windows Media and the MP3. Otherwise just try another utility like Max (which allows batch processing of many files at once, faster than iTunes), plenty out there.


Share This Page