in reply to Re^6: Perl not playing video with vlc plugin
in thread Perl not playing video with vlc plugin

Please run your script outside of the HTTP server and inspect its output. Your web server adds some headers and misinterprets some other headers. Most likely, your script does not output what you think it should.

  • Comment on Re^7: Perl not playing video with vlc plugin

Replies are listed 'Best First'.
Re^8: Perl not playing video with vlc plugin
by awanti (Acolyte) on Dec 29, 2015 at 12:04 UTC
    I added this line in starting
    print "Content-type: text/plain\n\n";
    The output is generated was
    Content-Type: application/x-vlc-plugin Cache-Control: public, must-revalidate, max-age=0 Pragma: no-cache Accept-Ranges: bytes Content-Length: 128959310 - 0 Content-Range: bytes 0'-'128959310'/'128959310 Content-Disposition: inline; filename="lua.mp4" Content-Transfer-Encoding: binary Connection: close
    I think the http headers are not giving expected output.

      Maybe now is a good time to find out what the supposed format of the Content-Length and Content-Range headers is. I recommend comparing the headers your script produces against the headers another web server produces for Content-Range headers for example.

      Also see Simple HTTP in under 100 lines for a small webserver that correctly (enough) implements Content-Range replies.

        I am not sure about this
        my $content_length = $end - $begin; print "Content-Type: text/html \r\n"; print "Content-Type: application/x-vlc-plugin \r\n"; print "Cache-Control: public, must-revalidate, max-age=0 \r\n"; print "Pragma: no-cache \r\n" ; print "Accept-Ranges: bytes \r\n"; print "Content-Length: $content_length", "\r\n"; print "Content-Range: bytes $begin-$end/$size \r\n"; print "Content-Disposition: inline; filename=\"$name$ext\"\r\n"; print "Content-Transfer-Encoding: binary\r\n"; print "Connection: close\r\n";
        but still it is giving internal server error