Live data from Hacker News

Reading local files in JavaScript (HTML5)

html5rocks.com

11–20 of 26 posts

Re: Reading local files in JavaScript (HTML5)

#11
The spec changes quiet often and if you do the javascript file stuff alot (my startup deals with local files with javascript so i use js for files alot) you will come across something that has been changed from what it is on html5rocks. It gets ugly very quickly. When i started it, the condition was alot worse, there was practically no one writing any tutorials. Your only option was to reverse engineer the spec draft. That wasn't pretty. Now the condition is much better (but i would still love to see more people write tutorials about this). This is very powerful stuff and not many people are writing about it, maybe because some parts of filesystem interaction spec are still not stable and used my many people.

Re: Reading local files in JavaScript (HTML5)

#12
post #10

Does anyone know of a browser plugin or anything that allows you to write files, too?

well you can always use file system api. http://www.html5rocks.com/en/tutorials/file/filesystem/ but its chrome only

For what it's worth, TiddlyWiki can save itself on the filesystem even with Firefox (user gets prompted to allow access). I don't know how it works though and when I tried it seemed to be quite buggy.

Re: Reading local files in JavaScript (HTML5)

#13
post #8

The new file reading stuff in HTML5 is fantastic- I've written a little JS widget for my site that takes a local video file, reads the first 100KB of it, then sends that off to a remote video processor by cross-domain AJAX to get a thumbnail, which is then loaded onto the user's page. It really is amazing what you can do. The only thing missing is being able to decode video metadata so that I know whether 100KB is to…

When you say cross-domain AJAX, do you mean JSONP or proxying, or is there another technique I'm not aware of?

Re: Reading local files in JavaScript (HTML5)

#14
post #8

The new file reading stuff in HTML5 is fantastic- I've written a little JS widget for my site that takes a local video file, reads the first 100KB of it, then sends that off to a remote video processor by cross-domain AJAX to get a thumbnail, which is then loaded onto the user's page. It really is amazing what you can do. The only thing missing is being able to decode video metadata so that I know whether 100KB is to…

you could use broadway, which is a h.264 player written in js onto canvas to get your frame and then just send that. see: http://badassjs.com/post/12035631618/broadway-an-h-264-decod... http://mbebenita.github.com/Broadway/broadway.html

Re: Reading local files in JavaScript (HTML5)

#15
post #8

The new file reading stuff in HTML5 is fantastic- I've written a little JS widget for my site that takes a local video file, reads the first 100KB of it, then sends that off to a remote video processor by cross-domain AJAX to get a thumbnail, which is then loaded onto the user's page. It really is amazing what you can do. The only thing missing is being able to decode video metadata so that I know whether 100KB is to…

When you say cross-domain AJAX, do you mean JSONP or proxying, or is there another technique I'm not aware of?

https://developer.mozilla.org/en/http_access_control

Re: Reading local files in JavaScript (HTML5)

#16
post #8

The new file reading stuff in HTML5 is fantastic- I've written a little JS widget for my site that takes a local video file, reads the first 100KB of it, then sends that off to a remote video processor by cross-domain AJAX to get a thumbnail, which is then loaded onto the user's page. It really is amazing what you can do. The only thing missing is being able to decode video metadata so that I know whether 100KB is to…

you could use broadway, which is a h.264 player written in js onto canvas to get your frame and then just send that. see: http://badassjs.com/post/12035631618/broadway-an-h-264-decod... http://mbebenita.github.com/Broadway/broadway.html

That is an extremely cool project. Unfortunately, we don't know what format users are uploading, so we have to pass it off to an ffmpeg-powered service.

Re: Reading local files in JavaScript (HTML5)

#17
post #16

Earlier quoted context omitted.

you could use broadway, which is a h.264 player written in js onto canvas to get your frame and then just send that. see: http://badassjs.com/post/12035631618/broadway-an-h-264-decod... http://mbebenita.github.com/Broadway/broadway.html

That is an extremely cool project. Unfortunately, we don't know what format users are uploading, so we have to pass it off to an ffmpeg-powered service.

oh well in that case there still is no need to just send 100k and hope it works, you could use websockets to push it to the service, pipe it directly into ffmpg and when you get back a frame have websocket tell browser to stop sending data.

you can do the same thing with 2 ajax requests too. one doing the upload and the other that opens a connection at the same time and waits for a success response. onreadystate 3 of the second request, abort() the upload request.

Re: Reading local files in JavaScript (HTML5)

#19
post #10

Does anyone know of a browser plugin or anything that allows you to write files, too?

well you can always use file system api. http://www.html5rocks.com/en/tutorials/file/filesystem/ but its chrome only

What about security? I assume its not possible to read and write arbitrary files in the fs?

Re: Reading local files in JavaScript (HTML5)

#20
post #11

The spec changes quiet often and if you do the javascript file stuff alot (my startup deals with local files with javascript so i use js for files alot) you will come across something that has been changed from what it is on html5rocks. It gets ugly very quickly. When i started it, the condition was alot worse, there was practically no one writing any tutorials. Your only option was to reverse engineer the spec draft…

I've found the same thing. I'm holding off on implementing some of this stuff (outside of prototypes) because it seems Safari/IE support is missing and there isn't a decent polyfill that I'm aware of.
Post reply on HN