Greetings all. I can post a .MOV or .MP3 file that has been encoded according to the Apple spec, on any of my normal webservers, pull up that URL and have the file play back beautifully over the iPhone.
Where I am stuck, is that we have a app that has a custom webserver built into it. This server responds fine to every device and browser so far in serving mp3 or quicktime files (including on Safari 2 & 3 on OSX).
However when accessing QT content on the iPhone that plays fine from an IIS or Apache server, it is not playing at all when served from our custom webserver. (I get a QT logo with the Ghostbusters icon on it ;)
>From deduction, I believe that there is something malformed about our
response.headers on the quicktime content. The only thing I could see was that we were not making use of Etag in the response.header. I have been trying to determine the format for creating this tag, and was left thinking that any Unique ID would work, however it seems something is still amiss.
Wondering if any server peeps know about Safari's use of Etag. From my research it seems that it is becoming very common to use them as a way to improve caching of sites and files. But any clue why not having Etag would stop my QT content from playing on an iPhone? Our server is kind of based on Apache, but I am not sure if I need to get CURL working to enable that, or if I can just make up my own Etag somehow? Here are a few sample headers so you can see where I am at. Thanks for any help!
////////////////////// DOESNT WORK FROM MY CUSTOM WEBSERVER (although this plays on OSX Safari it doesnt play on iPhone) The Etag shown is also a custom Unique ID that I am using, but I realize it is probably not the right format.
> -----Original Message----- > From: iphonewebdev@googlegroups.com [mailto:iphonewebdev@googlegroups.com] > On Behalf Of dad...@gmail.com > Sent: Friday, July 06, 2007 11:35 AM > To: iPhoneWebDev > Subject: iPhone / Quicktime / Etags
> Greetings all. I can post a .MOV or .MP3 file that has been encoded > according to the Apple spec, on any of my normal webservers, pull up > that URL and have the file play back beautifully over the iPhone.
> Where I am stuck, is that we have a app that has a custom webserver > built into it. This server responds fine to every device and browser > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > OSX).
> However when accessing QT content on the iPhone that plays fine from > an IIS or Apache server, it is not playing at all when served from our > custom webserver. (I get a QT logo with the Ghostbusters icon on > it ;)
> >From deduction, I believe that there is something malformed about our > response.headers on the quicktime content. The only thing I could see > was that we were not making use of Etag in the response.header. I > have been trying to determine the format for creating this tag, and > was left thinking that any Unique ID would work, however it seems > something is still amiss.
> Wondering if any server peeps know about Safari's use of Etag. From > my research it seems that it is becoming very common to use them as a > way to improve caching of sites and files. But any clue why not > having Etag would stop my QT content from playing on an iPhone? Our > server is kind of based on Apache, but I am not sure if I need to get > CURL working to enable that, or if I can just make up my own Etag > somehow? > Here are a few sample headers so you can see where I am at. Thanks > for any help!
> ////////////////////// > DOESNT WORK FROM MY CUSTOM WEBSERVER > (although this plays on OSX Safari it doesnt play on iPhone) > The Etag shown is also a custom Unique ID that I am using, but I > realize it is probably not the right format.
On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> Greetings all. I can post a .MOV or .MP3 file that has been encoded > according to the Apple spec, on any of my normal webservers, pull up > that URL and have the file play back beautifully over the iPhone.
> Where I am stuck, is that we have a app that has a custom webserver > built into it. This server responds fine to every device and browser > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > OSX).
I think the answer is fairly simple, your custom webserver isn't handling byte-range requests.
HTTP servers hosting media files for iPhone must support byte-range requests, which iPhone uses to perform random access in media playback. (Byte-range support is also known as content-range or partial-range support.) Most, but not all, HTTP 1.1 servers already support byte-range requests.
If you are not sure whether your media server supports byte-range requests, you can open the Terminal application in Mac OS X and use the curl command-line tool to download a short segment from a file on the server:
curl -range 0-99 http://example.com/test.mov -o /dev/null If the tool reports that it downloaded 100 bytes, the media server correctly handled the byte-range request. If it downloads the entire file, you may need to update the media server. For more information on curl, see Mac OS X Man Pages.
Ensure that your HTTP server sends the correct MIME types for movie family file suffixes shown in the following table.
File name suffix MIME type .mov video/quicktime .mp4 video/mp4 .m4v video/x-m4v .3gp video/3gpp Be aware that iPhone supports movies greater than 2 GB. However, some older web servers are not able to serve files this large. Apache 2 supports downloading files greater than 2GB.
Thanks Christopher... We actually atarted there. The thing is we do have built in byte range support, and can serve files to all sorts of interfaces fine, whether normal browser, Wii, PS3, or PSP. The PSP was the first non standard browser that required byte range support and it has been working fine with that for a long time.
I really think that it has to do with the Etag although I could be wrong. But being that iPhone is so standards reliant, I really think that this is part of the problem.
Here are 2 examples of files which play fine on my regular server. Just type them into the iPhone browser and it will pull them up.
> On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > according to the Apple spec, on any of my normal webservers, pull up > > that URL and have the file play back beautifully over the iPhone.
> > Where I am stuck, is that we have a app that has a custom webserver > > built into it. This server responds fine to every device and browser > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > OSX).
> I think the answer is fairly simple, your custom webserver isn't > handling byte-range requests.
> HTTP servers hosting media files for iPhone must support byte-range > requests, which iPhone uses to perform random access in media > playback. (Byte-range support is also known as content-range or > partial-range support.) Most, but not all, HTTP 1.1 servers already > support byte-range requests.
> If you are not sure whether your media server supports byte-range > requests, you can open the Terminal application in Mac OS X and use > the curl command-line tool to download a short segment from a file on > the server:
> curl -range 0-99http://example.com/test.mov-o /dev/null > If the tool reports that it downloaded 100 bytes, the media server > correctly handled the byte-range request. If it downloads the entire > file, you may need to update the media server. For more information on > curl, see Mac OS X Man Pages.
> Ensure that your HTTP server sends the correct MIME types for movie > family file suffixes shown in the following table.
> File name suffix MIME type > .mov video/quicktime > .mp4 video/mp4 > .m4v video/x-m4v > .3gp video/3gpp > Be aware that iPhone supports movies greater than 2 GB. However, some > older web servers are not able to serve files this large. Apache 2 > supports downloading files greater than 2GB.
> On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > according to the Apple spec, on any of my normal webservers, pull up > > that URL and have the file play back beautifully over the iPhone.
> > Where I am stuck, is that we have a app that has a custom webserver > > built into it. This server responds fine to every device and browser > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > OSX).
> I think the answer is fairly simple, your custom webserver isn't > handling byte-range requests.
> HTTP servers hosting media files for iPhone must support byte-range > requests, which iPhone uses to perform random access in media > playback. (Byte-range support is also known as content-range or > partial-range support.) Most, but not all, HTTP 1.1 servers already > support byte-range requests.
> If you are not sure whether your media server supports byte-range > requests, you can open the Terminal application in Mac OS X and use > the curl command-line tool to download a short segment from a file on > the server:
> curl -range 0-99http://example.com/test.mov-o /dev/null > If the tool reports that it downloaded 100 bytes, the media server > correctly handled the byte-range request. If it downloads the entire > file, you may need to update the media server. For more information on > curl, see Mac OS X Man Pages.
> Ensure that your HTTP server sends the correct MIME types for movie > family file suffixes shown in the following table.
> File name suffix MIME type > .mov video/quicktime > .mp4 video/mp4 > .m4v video/x-m4v > .3gp video/3gpp > Be aware that iPhone supports movies greater than 2 GB. However, some > older web servers are not able to serve files this large. Apache 2 > supports downloading files greater than 2GB.
I think I figured it out. I was having the same problem. Check to see if your server is responding with status 206 Partial Content. I'm doing something with CGI.pm and had to put in a little hack to get it to take my declaration of the status. Suddenly the content started playing on the iphone. I guess the iphone doesn't like to make a content-range request and get a status of 200.
On Jul 6, 12:47 pm, "dad...@gmail.com" <dad...@gmail.com> wrote:
> Also Christopher the odd thing is that when I run the test CURL on my > remote webserver and custom server on the same file I get the same > response.
> > On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> > > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > > according to the Apple spec, on any of my normal webservers, pull up > > > that URL and have the file play back beautifully over the iPhone.
> > > Where I am stuck, is that we have a app that has a custom webserver > > > built into it. This server responds fine to every device and browser > > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > > OSX).
> > I think the answer is fairly simple, your custom webserver isn't > > handling byte-range requests.
> > HTTP servers hosting media files for iPhone must support byte-range > > requests, which iPhone uses to perform random access in media > > playback. (Byte-range support is also known as content-range or > > partial-range support.) Most, but not all, HTTP 1.1 servers already > > support byte-range requests.
> > If you are not sure whether your media server supports byte-range > > requests, you can open the Terminal application in Mac OS X and use > > the curl command-line tool to download a short segment from a file on > > the server:
> > curl -range 0-99http://example.com/test.mov-o/dev/null > > If the tool reports that it downloaded 100 bytes, the media server > > correctly handled the byte-range request. If it downloads the entire > > file, you may need to update the media server. For more information on > > curl, see Mac OS X Man Pages.
> > Ensure that your HTTP server sends the correct MIME types for movie > > family file suffixes shown in the following table.
> > File name suffix MIME type > > .mov video/quicktime > > .mp4 video/mp4 > > .m4v video/x-m4v > > .3gp video/3gpp > > Be aware that iPhone supports movies greater than 2 GB. However, some > > older web servers are not able to serve files this large. Apache 2 > > supports downloading files greater than 2GB.
Ok - try again. I spoke too quickly. The issue for me seemed to be that my server wasn't sending "content-range" when iphone/quicktime asked for all of the bytes by range. In other words, it appears to be important that range be provided by the server when a range is requested by the client, even if it's the whole range. I don't send a range if none requested.
On Jul 16, 12:41 am, "dkoberst...@gmail.com" <dkoberst...@gmail.com> wrote:
> I think I figured it out. I was having the same problem. Check to > see if your server is responding with status 206 Partial Content. I'm > doing something with CGI.pm and had to put in a little hack to get it > to take my declaration of the status. Suddenly the content started > playing on the iphone. I guess the iphone doesn't like to make a > content-range request and get a status of 200.
> On Jul 6, 12:47 pm, "dad...@gmail.com" <dad...@gmail.com> wrote:
> > Also Christopher the odd thing is that when I run the test CURL on my > > remote webserver and custom server on the same file I get the same > > response.
> > > On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> > > > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > > > according to the Apple spec, on any of my normal webservers, pull up > > > > that URL and have the file play back beautifully over the iPhone.
> > > > Where I am stuck, is that we have a app that has a custom webserver > > > > built into it. This server responds fine to every device and browser > > > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > > > OSX).
> > > I think the answer is fairly simple, your custom webserver isn't > > > handling byte-range requests.
> > > HTTP servers hosting media files for iPhone must support byte-range > > > requests, which iPhone uses to perform random access in media > > > playback. (Byte-range support is also known as content-range or > > > partial-range support.) Most, but not all, HTTP 1.1 servers already > > > support byte-range requests.
> > > If you are not sure whether your media server supports byte-range > > > requests, you can open the Terminal application in Mac OS X and use > > > the curl command-line tool to download a short segment from a file on > > > the server:
> > > curl -range 0-99http://example.com/test.mov-o/dev/null > > > If the tool reports that it downloaded 100 bytes, the media server > > > correctly handled the byte-range request. If it downloads the entire > > > file, you may need to update the media server. For more information on > > > curl, see Mac OS X Man Pages.
> > > Ensure that your HTTP server sends the correct MIME types for movie > > > family file suffixes shown in the following table.
> > > File name suffix MIME type > > > .mov video/quicktime > > > .mp4 video/mp4 > > > .m4v video/x-m4v > > > .3gp video/3gpp > > > Be aware that iPhone supports movies greater than 2 GB. However, some > > > older web servers are not able to serve files this large. Apache 2 > > > supports downloading files greater than 2GB.
> Ok - try again. I spoke too quickly. The issue for me seemed to be > that my server wasn't sending "content-range" when iphone/quicktime > asked for all of the bytes by range. In other words, it appears to be > important that range be provided by the server when a range is > requested by the client, even if it's the whole range. I don't send a > range if none requested.
> On Jul 16, 12:41 am, "dkoberst...@gmail.com" <dkoberst...@gmail.com> > wrote:
> > I think I figured it out. I was having the same problem. Check to > > see if your server is responding with status 206 Partial Content. I'm > > doing something with CGI.pm and had to put in a little hack to get it > > to take my declaration of the status. Suddenly the content started > > playing on the iphone. I guess the iphone doesn't like to make a > > content-range request and get a status of 200.
> > On Jul 6, 12:47 pm, "dad...@gmail.com" <dad...@gmail.com> wrote:
> > > Also Christopher the odd thing is that when I run the test CURL on my > > > remote webserver and custom server on the same file I get the same > > > response.
> > > > On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> > > > > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > > > > according to the Apple spec, on any of my normal webservers, pull up > > > > > that URL and have the file play back beautifully over the iPhone.
> > > > > Where I am stuck, is that we have a app that has a custom webserver > > > > > built into it. This server responds fine to every device and browser > > > > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > > > > OSX).
> > > > I think the answer is fairly simple, your custom webserver isn't > > > > handling byte-range requests.
> > > > HTTP servers hosting media files for iPhone must support byte-range > > > > requests, which iPhone uses to perform random access in media > > > > playback. (Byte-range support is also known as content-range or > > > > partial-range support.) Most, but not all, HTTP 1.1 servers already > > > > support byte-range requests.
> > > > If you are not sure whether your media server supports byte-range > > > > requests, you can open the Terminal application in Mac OS X and use > > > > the curl command-line tool to download a short segment from a file on > > > > the server:
> > > > curl -range 0-99http://example.com/test.mov-o/dev/null > > > > If the tool reports that it downloaded 100 bytes, the media server > > > > correctly handled the byte-range request. If it downloads the entire > > > > file, you may need to update the media server. For more information on > > > > curl, see Mac OS X Man Pages.
> > > > Ensure that your HTTP server sends the correct MIME types for movie > > > > family file suffixes shown in the following table.
> > > > File name suffix MIME type > > > > .mov video/quicktime > > > > .mp4 video/mp4 > > > > .m4v video/x-m4v > > > > .3gp video/3gpp > > > > Be aware that iPhone supports movies greater than 2 GB. However, some > > > > older web servers are not able to serve files this large. Apache 2 > > > > supports downloading files greater than 2GB.
Hey all not at all trying to spam here but thought I would follow up to my original question and promise, and let you all know about the official release of our application called DOT.TUNES that lets you stream anything (except ITMS files or non-iphone encoded videos) to your iPhone! Check it out at http://www.dottunes.net
Now that the project has launched I will have more time to spend here learning all the latest tricks.
And hats off to Joe Hewitt as always for providing iUI which served as a nice tutorial for what was possible!
> yeah we figured it out, the byte range request wasnt right initially. > as soon as that was fixed we were fine.
> On Jul 16, 5:30 pm, "dkoberst...@gmail.com" <dkoberst...@gmail.com> > wrote:
> > Ok - try again. I spoke too quickly. The issue for me seemed to be > > that my server wasn't sending "content-range" when iphone/quicktime > > asked for all of the bytes by range. In other words, it appears to be > > important that range be provided by the server when a range is > > requested by the client, even if it's the whole range. I don't send a > > range if none requested.
> > > I think I figured it out. I was having the same problem. Check to > > > see if your server is responding with status 206 Partial Content. I'm > > > doing something with CGI.pm and had to put in a little hack to get it > > > to take my declaration of the status. Suddenly the content started > > > playing on the iphone. I guess the iphone doesn't like to make a > > > content-range request and get a status of 200.
> > > > Also Christopher the odd thing is that when I run the test CURL on my > > > > remote webserver and custom server on the same file I get the same > > > > response.
> > > > > On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> > > > > > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > > > > > according to the Apple spec, on any of my normal webservers, pull up > > > > > > that URL and have the file play back beautifully over the iPhone.
> > > > > > Where I am stuck, is that we have a app that has a custom webserver > > > > > > built into it. This server responds fine to every device and browser > > > > > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > > > > > OSX).
> > > > > I think the answer is fairly simple, your custom webserver isn't > > > > > handling byte-range requests.
> > > > > HTTP servers hosting media files for iPhone must support byte-range > > > > > requests, which iPhone uses to perform random access in media > > > > > playback. (Byte-range support is also known as content-range or > > > > > partial-range support.) Most, but not all, HTTP 1.1 servers already > > > > > support byte-range requests.
> > > > > If you are not sure whether your media server supports byte-range > > > > > requests, you can open the Terminal application in Mac OS X and use > > > > > the curl command-line tool to download a short segment from a file on > > > > > the server:
> > > > > curl -range 0-99http://example.com/test.mov-o/dev/null > > > > > If the tool reports that it downloaded 100 bytes, the media server > > > > > correctly handled the byte-range request. If it downloads the entire > > > > > file, you may need to update the media server. For more information on > > > > > curl, see Mac OS X Man Pages.
> > > > > Ensure that your HTTP server sends the correct MIME types for movie > > > > > family file suffixes shown in the following table.
> > > > > File name suffix MIME type > > > > > .mov video/quicktime > > > > > .mp4 video/mp4 > > > > > .m4v video/x-m4v > > > > > .3gp video/3gpp > > > > > Be aware that iPhone supports movies greater than 2 GB. However, some > > > > > older web servers are not able to serve files this large. Apache 2 > > > > > supports downloading files greater than 2GB.
> > > > > RTSP is not supported. > > > > > [/quote]
> Hey all not at all trying to spam here but thought I would follow up > to my original question and promise, and let you all know about the > official release of our application called DOT.TUNES that lets you > stream anything (except ITMS files or non-iphone encoded videos) to > your iPhone! Check it out athttp://www.dottunes.net
> Now that the project has launched I will have more time to spend here > learning all the latest tricks.
> And hats off to Joe Hewitt as always for providing iUI which served as > a nice tutorial for what was possible!
> > > Ok - try again. I spoke too quickly. The issue for me seemed to be > > > that my server wasn't sending "content-range" when iphone/quicktime > > > asked for all of the bytes by range. In other words, it appears to be > > > important that range be provided by the server when a range is > > > requested by the client, even if it's the whole range. I don't send a > > > range if none requested.
> > > > I think I figured it out. I was having the same problem. Check to > > > > see if your server is responding with status 206 Partial Content. I'm > > > > doing something with CGI.pm and had to put in a little hack to get it > > > > to take my declaration of the status. Suddenly the content started > > > > playing on the iphone. I guess the iphone doesn't like to make a > > > > content-range request and get a status of 200.
> > > > > Also Christopher the odd thing is that when I run the test CURL on my > > > > > remote webserver and custom server on the same file I get the same > > > > > response.
> > > > > > > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > > > > > > according to the Apple spec, on any of my normal webservers, pull up > > > > > > > that URL and have the file play back beautifully over the iPhone.
> > > > > > > Where I am stuck, is that we have a app that has a custom webserver > > > > > > > built into it. This server responds fine to every device and browser > > > > > > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > > > > > > OSX).
> > > > > > I think the answer is fairly simple, your custom webserver isn't > > > > > > handling byte-range requests.
> > > > > > [quote] > > > > > > Configure Your Server
> > > > > > HTTP servers hosting media files for iPhone must support byte-range > > > > > > requests, which iPhone uses to perform random access in media > > > > > > playback. (Byte-range support is also known as content-range or > > > > > > partial-range support.) Most, but not all, HTTP 1.1 servers already > > > > > > support byte-range requests.
> > > > > > If you are not sure whether your media server supports byte-range > > > > > > requests, you can open the Terminal application in Mac OS X and use > > > > > > the curl command-line tool to download a short segment from a file on > > > > > > the server:
> > > > > > curl -range 0-99http://example.com/test.mov-o/dev/null > > > > > > If the tool reports that it downloaded 100 bytes, the media server > > > > > > correctly handled the byte-range request. If it downloads the entire > > > > > > file, you may need to update the media server. For more information on > > > > > > curl, see Mac OS X Man Pages.
> > > > > > Ensure that your HTTP server sends the correct MIME types for movie > > > > > > family file suffixes shown in the following table.
> > > > > > File name suffix MIME type > > > > > > .mov video/quicktime > > > > > > .mp4 video/mp4 > > > > > > .m4v video/x-m4v > > > > > > .3gp video/3gpp > > > > > > Be aware that iPhone supports movies greater than 2 GB. However, some > > > > > > older web servers are not able to serve files this large. Apache 2 > > > > > > supports downloading files greater than 2GB.
> > > > > > RTSP is not supported. > > > > > > [/quote]
Sounds pretty cool, similiar to what we are doing. our opensource product will allow you to stream any unprotected content from any upnp enabled media server, and find content published via bonjour.
We launch an alpha on sourceforge next week.
www.mooncatventures.com or mooncatventures.blogspot.com for a youtube video of our offering.
The final product will work on the iphone in an ajax enabled interface or just about any other device that supports a web browser, content is adjusted to the device playing it. obviously video on the iphone is limited to mp4 and h264 and on a wm mobile device wmv.
Wish you luck with your offering, I know the issues of trying to launch, still having research issues (bugs) and trying to get a public facing web presence up.
On Sep 2, 12:22 am, "dad...@gmail.com" <dad...@gmail.com> wrote:
> oops one clarification and very important point. DOT.TUNES allows you > to stream any *iTunes* content to your iPhone.
> sorry long week this week with the launch and all :p
> On Sep 2, 12:16 am, "dad...@gmail.com" <dad...@gmail.com> wrote:
> > Hey all not at all trying to spam here but thought I would follow up > > to my original question and promise, and let you all know about the > > official release of our application called DOT.TUNES that lets you > > stream anything (except ITMS files or non-iphone encoded videos) to > > your iPhone! Check it out athttp://www.dottunes.net
> > Now that the project has launched I will have more time to spend here > > learning all the latest tricks.
> > And hats off to Joe Hewitt as always for providing iUI which served as > > a nice tutorial for what was possible!
> > Phil > > TriAgency / DOT.TUNES development team
> > > > Ok - try again. I spoke too quickly. The issue for me seemed to be > > > > that my server wasn't sending "content-range" when iphone/quicktime > > > > asked for all of the bytes by range. In other words, it appears to be > > > > important that range be provided by the server when a range is > > > > requested by the client, even if it's the whole range. I don't send a > > > > range if none requested.
> > > > > I think I figured it out. I was having the same problem. Check to > > > > > see if your server is responding with status 206 Partial Content. I'm > > > > > doing something with CGI.pm and had to put in a little hack to get it > > > > > to take my declaration of the status. Suddenly the content started > > > > > playing on the iphone. I guess the iphone doesn't like to make a > > > > > content-range request and get a status of 200.
> > > > > > Also Christopher the odd thing is that when I run the test CURL on my > > > > > > remote webserver and custom server on the same file I get the same > > > > > > response.
> > > > > > > > Greetings all. I can post a .MOV or .MP3 file that has been encoded > > > > > > > > according to the Apple spec, on any of my normal webservers, pull up > > > > > > > > that URL and have the file play back beautifully over the iPhone.
> > > > > > > > Where I am stuck, is that we have a app that has a custom webserver > > > > > > > > built into it. This server responds fine to every device and browser > > > > > > > > so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > > > > > > > > OSX).
> > > > > > > I think the answer is fairly simple, your custom webserver isn't > > > > > > > handling byte-range requests.
> > > > > > > [quote] > > > > > > > Configure Your Server
> > > > > > > HTTP servers hosting media files for iPhone must support byte-range > > > > > > > requests, which iPhone uses to perform random access in media > > > > > > > playback. (Byte-range support is also known as content-range or > > > > > > > partial-range support.) Most, but not all, HTTP 1.1 servers already > > > > > > > support byte-range requests.
> > > > > > > If you are not sure whether your media server supports byte-range > > > > > > > requests, you can open the Terminal application in Mac OS X and use > > > > > > > the curl command-line tool to download a short segment from a file on > > > > > > > the server:
> > > > > > > curl -range 0-99http://example.com/test.mov-o/dev/null > > > > > > > If the tool reports that it downloaded 100 bytes, the media server > > > > > > > correctly handled the byte-range request. If it downloads the entire > > > > > > > file, you may need to update the media server. For more information on > > > > > > > curl, see Mac OS X Man Pages.
> > > > > > > Ensure that your HTTP server sends the correct MIME types for movie > > > > > > > family file suffixes shown in the following table.
> > > > > > > File name suffix MIME type > > > > > > > .mov video/quicktime > > > > > > > .mp4 video/mp4 > > > > > > > .m4v video/x-m4v > > > > > > > .3gp video/3gpp > > > > > > > Be aware that iPhone supports movies greater than 2 GB. However, some > > > > > > > older web servers are not able to serve files this large. Apache 2 > > > > > > > supports downloading files greater than 2GB.
> > > > > > > RTSP is not supported. > > > > > > > [/quote]
> > > > > > > Let us know if this was the problem.
> > > > > > > -- Christopher Allen- Hide quoted text -
- when I downloaded DOT.TUNES (OSX) and clicked GetKey (without entering data) it hung and I had to kill it in order to be able to continue.
- I don't see anything special for iPhones there - except that I could buy an iPhone-Plugin. Not sure what that is supposed to do, except loading a couple of different CSS.
> Hey all not at all trying to spam here but thought I would follow up > to my original question and promise, and let you all know about the > official release of our application called DOT.TUNES that lets you > stream anything (except ITMS files or non-iphone encoded videos) to > your iPhone! Check it out at http://www.dottunes.net
> Now that the project has launched I will have more time to spend here > learning all the latest tricks.
> And hats off to Joe Hewitt as always for providing iUI which served as > a nice tutorial for what was possible!
> On Jul 20, 12:11 am, "dad...@gmail.com" <dad...@gmail.com> wrote: >> yeah we figured it out, the byte range request wasnt right initially. >> as soon as that was fixed we were fine.
>> On Jul 16, 5:30 pm, "dkoberst...@gmail.com" <dkoberst...@gmail.com> >> wrote:
>>> Ok - try again. I spoke too quickly. The issue for me seemed to be >>> that my server wasn't sending "content-range" when iphone/quicktime >>> asked for all of the bytes by range. In other words, it appears to be >>> important that range be provided by the server when a range is >>> requested by the client, even if it's the whole range. I don't send a >>> range if none requested.
>>> On Jul 16, 12:41 am, "dkoberst...@gmail.com" <dkoberst...@gmail.com> >>> wrote:
>>>> I think I figured it out. I was having the same problem. Check to >>>> see if your server is responding with status 206 Partial Content. I'm >>>> doing something with CGI.pm and had to put in a little hack to get it >>>> to take my declaration of the status. Suddenly the content started >>>> playing on the iphone. I guess the iphone doesn't like to make a >>>> content-range request and get a status of 200.
>>>> On Jul 6, 12:47 pm, "dad...@gmail.com" <dad...@gmail.com> wrote:
>>>>> Also Christopher the odd thing is that when I run the test CURL on my >>>>> remote webserver and custom server on the same file I get the same >>>>> response.
>>>>>> On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
>>>>>>> Greetings all. I can post a .MOV or .MP3 file that has been encoded >>>>>>> according to the Apple spec, on any of my normal webservers, pull up >>>>>>> that URL and have the file play back beautifully over the iPhone.
>>>>>>> Where I am stuck, is that we have a app that has a custom webserver >>>>>>> built into it. This server responds fine to every device and browser >>>>>>> so far in serving mp3 or quicktime files (including on Safari 2 & 3 on >>>>>>> OSX).
>>>>>> I think the answer is fairly simple, your custom webserver isn't >>>>>> handling byte-range requests.
>>>>>> HTTP servers hosting media files for iPhone must support byte-range >>>>>> requests, which iPhone uses to perform random access in media >>>>>> playback. (Byte-range support is also known as content-range or >>>>>> partial-range support.) Most, but not all, HTTP 1.1 servers already >>>>>> support byte-range requests.
>>>>>> If you are not sure whether your media server supports byte-range >>>>>> requests, you can open the Terminal application in Mac OS X and use >>>>>> the curl command-line tool to download a short segment from a file on >>>>>> the server:
>>>>>> curl -range 0-99http://example.com/test.mov-o/dev/null >>>>>> If the tool reports that it downloaded 100 bytes, the media server >>>>>> correctly handled the byte-range request. If it downloads the entire >>>>>> file, you may need to update the media server. For more information on >>>>>> curl, see Mac OS X Man Pages.
>>>>>> Ensure that your HTTP server sends the correct MIME types for movie >>>>>> family file suffixes shown in the following table.
>>>>>> File name suffix MIME type >>>>>> .mov video/quicktime >>>>>> .mp4 video/mp4 >>>>>> .m4v video/x-m4v >>>>>> .3gp video/3gpp >>>>>> Be aware that iPhone supports movies greater than 2 GB. However, some >>>>>> older web servers are not able to serve files this large. Apache 2 >>>>>> supports downloading files greater than 2GB.
>>>>>> RTSP is not supported. >>>>>> [/quote]
>>>>>> Let us know if this was the problem.
>>>>>> -- Christopher Allen
-- Andy Fuchs
----------------------------------------------------------------- Elgato Systems GmbH Nymphenburger Straße 14 http://www.elgato.com D-80335 München, Germany
Amtsgericht München, HRB 108591 Geschäftsführer: Dr. Markus Fest -----------------------------------------------------------------
So how is this any better than using an apache webserver with the docroot pointed at my itunes directory. Or a simple php apps that reads the apple xml and produces an html listing . there are about a dozen of those for the iphone all free. I believe you have to buy this plugin.
On Sep 3, 4:16 am, Andy Fuchs <a...@elgato.com> wrote:
> - when I downloaded DOT.TUNES (OSX) and clicked GetKey (without entering > data) it hung and I had to kill it in order to be able to continue.
> - I don't see anything special for iPhones there - except that I could buy > an iPhone-Plugin. Not sure what that is supposed to do, except loading a > couple of different CSS.
> > Hey all not at all trying to spam here but thought I would follow up > > to my original question and promise, and let you all know about the > > official release of our application called DOT.TUNES that lets you > > stream anything (except ITMS files or non-iphone encoded videos) to > > your iPhone! Check it out athttp://www.dottunes.net
> > Now that the project has launched I will have more time to spend here > > learning all the latest tricks.
> > And hats off to Joe Hewitt as always for providing iUI which served as > > a nice tutorial for what was possible!
> > Phil > > TriAgency / DOT.TUNES development team
> > On Jul 20, 12:11 am, "dad...@gmail.com" <dad...@gmail.com> wrote: > >> yeah we figured it out, the byte range request wasnt right initially. > >> as soon as that was fixed we were fine.
> >>> Ok - try again. I spoke too quickly. The issue for me seemed to be > >>> that my server wasn't sending "content-range" when iphone/quicktime > >>> asked for all of the bytes by range. In other words, it appears to be > >>> important that range be provided by the server when a range is > >>> requested by the client, even if it's the whole range. I don't send a > >>> range if none requested.
> >>>> I think I figured it out. I was having the same problem. Check to > >>>> see if your server is responding with status 206 Partial Content. I'm > >>>> doing something with CGI.pm and had to put in a little hack to get it > >>>> to take my declaration of the status. Suddenly the content started > >>>> playing on the iphone. I guess the iphone doesn't like to make a > >>>> content-range request and get a status of 200.
> >>>> On Jul 6, 12:47 pm, "dad...@gmail.com" <dad...@gmail.com> wrote:
> >>>>> Also Christopher the odd thing is that when I run the test CURL on my > >>>>> remote webserver and custom server on the same file I get the same > >>>>> response.
> >>>>>> On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> >>>>>>> Greetings all. I can post a .MOV or .MP3 file that has been encoded > >>>>>>> according to the Apple spec, on any of my normal webservers, pull up > >>>>>>> that URL and have the file play back beautifully over the iPhone.
> >>>>>>> Where I am stuck, is that we have a app that has a custom webserver > >>>>>>> built into it. This server responds fine to every device and browser > >>>>>>> so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > >>>>>>> OSX).
> >>>>>> I think the answer is fairly simple, your custom webserver isn't > >>>>>> handling byte-range requests.
> >>>>>> HTTP servers hosting media files for iPhone must support byte-range > >>>>>> requests, which iPhone uses to perform random access in media > >>>>>> playback. (Byte-range support is also known as content-range or > >>>>>> partial-range support.) Most, but not all, HTTP 1.1 servers already > >>>>>> support byte-range requests.
> >>>>>> If you are not sure whether your media server supports byte-range > >>>>>> requests, you can open the Terminal application in Mac OS X and use > >>>>>> the curl command-line tool to download a short segment from a file on > >>>>>> the server:
> >>>>>> curl -range 0-99http://example.com/test.mov-o/dev/null > >>>>>> If the tool reports that it downloaded 100 bytes, the media server > >>>>>> correctly handled the byte-range request. If it downloads the entire > >>>>>> file, you may need to update the media server. For more information on > >>>>>> curl, see Mac OS X Man Pages.
> >>>>>> Ensure that your HTTP server sends the correct MIME types for movie > >>>>>> family file suffixes shown in the following table.
> >>>>>> File name suffix MIME type > >>>>>> .mov video/quicktime > >>>>>> .mp4 video/mp4 > >>>>>> .m4v video/x-m4v > >>>>>> .3gp video/3gpp > >>>>>> Be aware that iPhone supports movies greater than 2 GB. However, some > >>>>>> older web servers are not able to serve files this large. Apache 2 > >>>>>> supports downloading files greater than 2GB.
> >>>>>> RTSP is not supported. > >>>>>> [/quote]
> >>>>>> Let us know if this was the problem.
> >>>>>> -- Christopher Allen
> -- > Andy Fuchs
> ----------------------------------------------------------------- > Elgato Systems GmbH Nymphenburger Straße 14http://www.elgato.com D-80335 München, Germany
> Amtsgericht München, HRB 108591 Geschäftsführer: Dr. Markus Fest > ------------------------------------------------------------------ Hide quoted text -
Hi Andy sorry for your installation troubles, may I ask if you are using OSX or the Windows version? Were you able to get the app installed finally? Any feed back you can provide is great. We have an auto update feature built in to address any issues and fix them as soon as they are identified. This honestly is the first time I heard of this error.
If you would like to preview the interface on your iPhone go to http://music.dottunes.net:9998 (no password needed for the Guest account)
Also regarding your and Shelly's questions:
The iPhone plugin is in essence some extra CSS (along with lots of backend coding), however there is more that goes into it than that. The plugin will actually display your album art, as well as all Meta data (Comments, Lyrics, etc) on the file detail page. Beside that, the Share Plugin(s) functionality allow you to open up your DOTTUNES to multiple users.
True there are home brew methods and other apps out there. Not only does DT work on OSX and Windows it will run on any machine that has iTunes on it. Doesnt need to be anything special. Not trying to be the only solution and realize we never will. At the same time, we feel that having all of the features that we do (SSL, Flash player, access over multiple devices etc) we are a little different. I also realize most of the people here reading this list are well smart enough to whip something like this up on their own, however there are many people who enjoy clicking a few buttons and getting access to their entire iTunes library.
Again being that this is a developer's group and not a sales platform, my whole reason for even following up is that I had posted the question about Quicktime & Etags while I was in research mode, and answered all related responses to it. This forum has helped me to better understand the iPhone interface and I thought I would share the results of our work!
As for why we are charging for the Plug-In, well the application has been slowly built over the course of 4 years. My team came on board with the web stuff 2 years ago. We recently made the decision to give the core parts of the app away free, and allow people to customize it with Plug-Ins based on their needs. I know some people will love this and some will hate it. Like they say you can't please them all!
Once again, anyone with any development related questions I look forward to jumping back into that part of the group. Now that this project has launched I look forward to working with and learning from you all back in R&D world.
Have a great day!
Phil
On Sep 3, 4:16 am, Andy Fuchs <a...@elgato.com> wrote:
> - when I downloaded DOT.TUNES (OSX) and clicked GetKey (without entering > data) it hung and I had to kill it in order to be able to continue.
> - I don't see anything special for iPhones there - except that I could buy > an iPhone-Plugin. Not sure what that is supposed to do, except loading a > couple of different CSS.
> > Hey all not at all trying to spam here but thought I would follow up > > to my original question and promise, and let you all know about the > > official release of our application called DOT.TUNES that lets you > > stream anything (except ITMS files or non-iphone encoded videos) to > > your iPhone! Check it out athttp://www.dottunes.net
> > Now that the project has launched I will have more time to spend here > > learning all the latest tricks.
> > And hats off to Joe Hewitt as always for providing iUI which served as > > a nice tutorial for what was possible!
> > Phil > > TriAgency / DOT.TUNES development team
> > On Jul 20, 12:11 am, "dad...@gmail.com" <dad...@gmail.com> wrote: > >> yeah we figured it out, the byte range request wasnt right initially. > >> as soon as that was fixed we were fine.
> >>> Ok - try again. I spoke too quickly. The issue for me seemed to be > >>> that my server wasn't sending "content-range" when iphone/quicktime > >>> asked for all of the bytes by range. In other words, it appears to be > >>> important that range be provided by the server when a range is > >>> requested by the client, even if it's the whole range. I don't send a > >>> range if none requested.
> >>>> I think I figured it out. I was having the same problem. Check to > >>>> see if your server is responding with status 206 Partial Content. I'm > >>>> doing something with CGI.pm and had to put in a little hack to get it > >>>> to take my declaration of the status. Suddenly the content started > >>>> playing on the iphone. I guess the iphone doesn't like to make a > >>>> content-range request and get a status of 200.
> >>>> On Jul 6, 12:47 pm, "dad...@gmail.com" <dad...@gmail.com> wrote:
> >>>>> Also Christopher the odd thing is that when I run the test CURL on my > >>>>> remote webserver and custom server on the same file I get the same > >>>>> response.
> >>>>>> On 7/6/07, dad...@gmail.com <dad...@gmail.com> wrote:
> >>>>>>> Greetings all. I can post a .MOV or .MP3 file that has been encoded > >>>>>>> according to the Apple spec, on any of my normal webservers, pull up > >>>>>>> that URL and have the file play back beautifully over the iPhone.
> >>>>>>> Where I am stuck, is that we have a app that has a custom webserver > >>>>>>> built into it. This server responds fine to every device and browser > >>>>>>> so far in serving mp3 or quicktime files (including on Safari 2 & 3 on > >>>>>>> OSX).
> >>>>>> I think the answer is fairly simple, your custom webserver isn't > >>>>>> handling byte-range requests.
> >>>>>> HTTP servers hosting media files for iPhone must support byte-range > >>>>>> requests, which iPhone uses to perform random access in media > >>>>>> playback. (Byte-range support is also known as content-range or > >>>>>> partial-range support.) Most, but not all, HTTP 1.1 servers already > >>>>>> support byte-range requests.
> >>>>>> If you are not sure whether your media server supports byte-range > >>>>>> requests, you can open the Terminal application in Mac OS X and use > >>>>>> the curl command-line tool to download a short segment from a file on > >>>>>> the server:
> >>>>>> curl -range 0-99http://example.com/test.mov-o/dev/null > >>>>>> If the tool reports that it downloaded 100 bytes, the media server > >>>>>> correctly handled the byte-range request. If it downloads the entire > >>>>>> file, you may need to update the media server. For more information on > >>>>>> curl, see Mac OS X Man Pages.
> >>>>>> Ensure that your HTTP server sends the correct MIME types for movie > >>>>>> family file suffixes shown in the following table.
> >>>>>> File name suffix MIME type > >>>>>> .mov video/quicktime > >>>>>> .mp4 video/mp4 > >>>>>> .m4v video/x-m4v > >>>>>> .3gp video/3gpp > >>>>>> Be aware that iPhone supports movies greater than 2 GB. However, some > >>>>>> older web servers are not able to serve files this large. Apache 2 > >>>>>> supports downloading files greater than 2GB.
> >>>>>> RTSP is not supported. > >>>>>> [/quote]
> >>>>>> Let us know if this was the problem.
> >>>>>> -- Christopher Allen
> -- > Andy Fuchs
> ----------------------------------------------------------------- > Elgato Systems GmbH Nymphenburger Straße 14http://www.elgato.com D-80335 München, Germany
> Amtsgericht München, HRB 108591 Geschäftsführer: Dr. Markus Fest > -----------------------------------------------------------------
> Hi Andy sorry for your installation troubles, may I ask if you are > using OSX or the Windows version?
MacOS X
> Were you able to get the app > installed finally?
After killing the Dottunes.app and try again, yes. But that's a bad user experience - sorry to say, but either should you disable the Get Key button, if there's no data in the fields and/or verify the user's input before hanging.
> Any feed back you can provide is great. We have > an auto update feature built in to address any issues and fix them as > soon as they are identified. This honestly is the first time I heard > of this error.