Hi all, Let me try these suggestions quickly and get back to you guys. Thanks a bunch
--- José > On 12 May 2014, at 12:08 AM, Pipe Gutierrez <[email protected]> wrote: > > I'm posting here the simplest example I could manage (sans html doctypes), > Just to show that you don't need any special code to stream your video. The > browser and HTTP server handle these things automatically. > > Gist > > server.js: > var express = require('express'), > app = express(); > > app.use(express.static("./app")); > > app.get("/", function(req, res, next) { > res.sendfile("index.html") > }); > > app.listen(8080); > console.log("Server started in http://localhost:" + 8080); > > index.html: > <!doctype html> > <html> > <head> > <meta charset="utf-8"> > <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> > </head> > <body> > <video controls="true" src="<videoinAppFolder.mp4>"></video> > </body> > </html> > > RE: >> Note that for the path of the video, I declared the public folder as where >> all static assets should be served from. Then I created a videos folder >> under public and put the file in there. I also made sure I called the play >> function on the video in my script. > > > I suggest you try with the simplest example first and build from there. In my > example I'm assuming you place the video file in the root of your static > directory. > > Tips for debugging: > Check the network tab in the devtools (if an error occurs here, your video is > not being served correctly) > If no network error is present check the codec your video was encoded with. I > recommend downloading and testing with big buck bunny > Not all browsers support mp4, firefox for example. > > Ps: I have a project that encodes and streams any video supported by > handbrake here: https://github.com/Dudemullet/playertwo > >> On Saturday, May 10, 2014 10:33:42 PM UTC-5, Jake Wolpert wrote: >> I thought I could get away without streaming at first. Some browsers only >> like streaming, so I read up on it, started streaming and it works in every >> browser I tested (ff,chrome,safari,IE10+, IOS safari) >> >> The code I shared is what I use on my site. >> >> What do you mean by "other web components"? HTML markup? Is this a web page? >> >> Jake >> >>> On May 10, 2014, at 1:02 PM, José G. Quenum <[email protected]> wrote: >>> >>> No I'm not streaming the video. I just declared the path in the video tag. >>> Should I stream it? Could I get some examples? >>> Btw, the view displaying the video contains other web components. How >>> should I couple it with the streaming. >>> Thanks >>> >>> --- José >>> >>>> On 10 May 2014, at 6:46 PM, Jake Wolpert <[email protected]> wrote: >>>> >>>> Are you streaming the video? Do you see errors in the error console? >>>> >>>> The key to videos is to respect the request.headers.range. >>>> >>>> as in >>>> function send(err,data){ >>>> if (err) >>>> return send404(fileName) >>>> cache.put(fileName,data,600000) // 10 minutes >>>> var range = request.headers.range // bytes=0-1 >>>> if (!range){ >>>> response.writeHead(200, { >>>> "Content-Type": mimeType, >>>> "X-UA-Compatible": "IE=edge;chrome=1", >>>> 'Content-Length': data.length >>>> }); >>>> response.end(data) >>>> }else{ >>>> var total = data.length, >>>> split = range.split(/[-=]/), >>>> ini = +split[1], >>>> end = split[2]?+split[2]:total-1, >>>> chunkSize = end - ini + 1 >>>> response.writeHead(206, { >>>> "Content-Range": "bytes " + ini + "-" + end + "/" + >>>> total, >>>> "Accept-Ranges": "bytes", >>>> "Content-Length": chunkSize, >>>> "Content-Type": mimeType >>>> }) >>>> response.end(data.slice(ini, chunkSize+ini)) >>>> } >>>> } >>>> >>>>> On May 10, 2014, at 4:57 AM, Ghislain Quenum <[email protected]> wrote: >>>>> >>>>> I am developing an app where I'd like to show a video. The app is being >>>>> developed with node.js and express 4. So I grabbed the videos module and >>>>> added the html5 video tag in the view as follows: >>>>> >>>>> <video id="vidid" class="video-js vjs-default-skin" controls >>>>> autoplay="none" preload="auto" width="600" height="400"> >>>>> <source src="path/to/video" type="video/mp4"> >>>>> </video> >>>>> >>>>> >>>>> Note that for the path of the video, I declared the public folder as >>>>> where all static assets should be served from. Then I created a videos >>>>> folder under public and put the file in there. I also made sure I called >>>>> the play function on the video in my script. Although the UI displays >>>>> fine, the video does not load at all. I can't figure out why. Does anyone >>>>> have any idea? Btw, I am testing it on Safari 7.0.3 Thanks in advance >>>>> >>>>> José >>>>> >>>>> -- >>>>> Job board: http://jobs.nodejs.org/ >>>>> New group rules: >>>>> https://gist.github.com/othiym23/9886289#file-moderation-policy-md >>>>> Old group rules: >>>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>>>> --- >>>>> You received this message because you are subscribed to the Google Groups >>>>> "nodejs" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send an >>>>> email to [email protected]. >>>>> To post to this group, send email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/nodejs/CAGXCHEmFmJS_-WoEHjFuJo-%2BjHY94WP5vgJ4197ekrc7wU%2B0DQ%40mail.gmail.com. >>>>> For more options, visit https://groups.google.com/d/optout. >>>> >>>> >>>> -- >>>> Job board: http://jobs.nodejs.org/ >>>> New group rules: >>>> https://gist.github.com/othiym23/9886289#file-moderation-policy-md >>>> Old group rules: >>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>>> --- >>>> You received this message because you are subscribed to the Google Groups >>>> "nodejs" group. >>>> To unsubscribe from this group and stop receiving emails from it, send an >>>> email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/nodejs/EEA59255-A383-4FC9-94AC-D38C735A97A9%40gmail.com. >>>> For more options, visit https://groups.google.com/d/optout. >>> >>> >>> -- >>> Job board: http://jobs.nodejs.org/ >>> New group rules: >>> https://gist.github.com/othiym23/9886289#file-moderation-policy-md >>> Old group rules: >>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>> --- >>> You received this message because you are subscribed to the Google Groups >>> "nodejs" group. >>> To unsubscribe from this group and stop receiving emails from it, send an >>> email to [email protected]. >>> To post to this group, send email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/nodejs/E9075FAF-EC38-41CC-9B0F-34352E81AC70%40gmail.com. >>> For more options, visit https://groups.google.com/d/optout. > > -- > Job board: http://jobs.nodejs.org/ > New group rules: > https://gist.github.com/othiym23/9886289#file-moderation-policy-md > Old group rules: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/nodejs/69991505-2410-456a-a908-d86850ea476c%40googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- Job board: http://jobs.nodejs.org/ New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/E1CBD06E-538C-4D4D-8ABC-4DC7F92ACAD9%40gmail.com. For more options, visit https://groups.google.com/d/optout.
