View unanswered posts    View active topics

All times are UTC - 6 hours





Post new topic Reply to topic  [ 62 posts ] 
Go to page Previous  1, 2, 3, 4, 5  Next

Print view Previous topic   Next topic  
Author Message
Search for:
 Post subject:
PostPosted: Tue Feb 02, 2010 1:09 pm 
Offline
Joined: Fri Apr 02, 2004 10:08 am
Posts: 1637
Location: Virginia, USA
Here's my lighttpd.conf file... sorry, I couldn't find or remember the name of the service where you can post this stuff as a link.

Note I had the inserted code at line 170 initially, tried moving it to the bottom, neither worked.

Code:
# lighttpd configuration file
#
# use it as a base for lighttpd 1.0.0 and above
#
# $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $

############ Options you really have to take care of ####################

## modules to load
# at least mod_access and mod_accesslog should be loaded
# all other module should only be loaded if really neccesary
# - saves some time
# - saves memory
server.modules              = (
                               "mod_rewrite",
#                               "mod_redirect",
#                               "mod_alias",
                                "mod_access",
#                               "mod_cml",
#                               "mod_trigger_b4_dl",
                               "mod_auth",
#                               "mod_status",
                               "mod_setenv",
                               "mod_fastcgi",
#                               "mod_proxy",
#                               "mod_simple_vhost",
#                               "mod_evhost",
#                               "mod_userdir",
                               "mod_cgi",
#                               "mod_compress",
#                               "mod_ssi",
#                               "mod_usertrack",
#                               "mod_expire",
#                               "mod_secdownload",
#                               "mod_rrdtool",
                                "mod_accesslog" )

## a static document-root, for virtual-hosting take look at the
## server.virtual-* options
server.document-root        = "/data/srv/httpd/htdocs"

## where to send error-messages to
server.errorlog             = "/var/log/lighttpd/error.log"

# files to check for if .../ is requested
index-file.names            = ( "index.php", "index.html",
                                "index.htm", "default.htm" , "mythweb.php" )

## set the event-handler (read the performance section in the manual)
# server.event-handler = "freebsd-kqueue" # needed on OS X

# mimetype mapping
mimetype.assign             = (
  ".pdf"          =>      "application/pdf",
  ".sig"          =>      "application/pgp-signature",
  ".spl"          =>      "application/futuresplash",
  ".class"        =>      "application/octet-stream",
  ".ps"           =>      "application/postscript",
  ".torrent"      =>      "application/x-bittorrent",
  ".dvi"          =>      "application/x-dvi",
  ".gz"           =>      "application/x-gzip",
  ".pac"          =>      "application/x-ns-proxy-autoconfig",
  ".swf"          =>      "application/x-shockwave-flash",
  ".tar.gz"       =>      "application/x-tgz",
  ".tgz"          =>      "application/x-tgz",
  ".tar"          =>      "application/x-tar",
  ".zip"          =>      "application/zip",
  ".mp3"          =>      "audio/mpeg",
  ".m3u"          =>      "audio/x-mpegurl",
  ".wma"          =>      "audio/x-ms-wma",
  ".wax"          =>      "audio/x-ms-wax",
  ".ogg"          =>      "application/ogg",
  ".wav"          =>      "audio/x-wav",
  ".gif"          =>      "image/gif",
  ".jar"          =>      "application/x-java-archive",
  ".jpg"          =>      "image/jpeg",
  ".jpeg"         =>      "image/jpeg",
  ".png"          =>      "image/png",
  ".xbm"          =>      "image/x-xbitmap",
  ".xpm"          =>      "image/x-xpixmap",
  ".xwd"          =>      "image/x-xwindowdump",
  ".css"          =>      "text/css",
  ".html"         =>      "text/html",
  ".htm"          =>      "text/html",
  ".js"           =>      "text/javascript",
  ".asc"          =>      "text/plain",
  ".c"            =>      "text/plain",
  ".cpp"          =>      "text/plain",
  ".log"          =>      "text/plain",
  ".conf"         =>      "text/plain",
  ".text"         =>      "text/plain",
  ".txt"          =>      "text/plain",
  ".dtd"          =>      "text/xml",
  ".xml"          =>      "text/xml",
  ".mpeg"         =>      "video/mpeg",
  ".mpg"          =>      "video/mpeg",
  ".mp4"          =>      "video/quicktime",
  ".mov"          =>      "video/quicktime",
  ".qt"           =>      "video/quicktime",
  ".avi"          =>      "video/x-msvideo",
  ".asf"          =>      "video/x-ms-asf",
  ".asx"          =>      "video/x-ms-asf",
  ".wmv"          =>      "video/x-ms-wmv",
  ".bz2"          =>      "application/x-bzip",
  ".tbz"          =>      "application/x-bzip-compressed-tar",
  ".tar.bz2"      =>      "application/x-bzip-compressed-tar",
  # default mime type
  ""              =>      "application/octet-stream",
 )

# Use the "Content-Type" extended attribute to obtain mime type if possible
#mimetype.use-xattr        = "enable"


## send a different Server: header
## be nice and keep it at lighttpd
# server.tag                 = "lighttpd"

#### accesslog module
accesslog.filename          = "/var/log/lighttpd/access.log"

## deny access the file-extensions
#
# ~    is for backupfiles from vi, emacs, joe, ...
# .inc is often used for code includes which should in general not be part
#      of the document-root
url.access-deny             = ( "~", ".inc" )

$HTTP["url"] =~ "\.pdf$" {
  server.range-requests = "disable"
}

##
# which extensions should not be handle via static-file transfer
#
# .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )

######### Options that are good to be but not neccesary to be changed #######

## bind to port (default: 80)
#server.port                = 81

## bind to localhost (default: all interfaces)
#server.bind                = "127.0.0.1"

## error-handler for status 404
#server.error-handler-404   = "/error-handler.html"
#server.error-handler-404   = "/error-handler.php"

## to help the rc.scripts
server.pid-file            = "/var/run/lighttpd/lighttpd.pid"


###### virtual hosts
##
##  If you want name-based virtual hosting add the next three settings and load
##  mod_simple_vhost
##
## document-root =
##   virtual-server-root + virtual-server-default-host + virtual-server-docroot
## or
##   virtual-server-root + http-host + virtual-server-docroot
##
#simple-vhost.server-root   = "/srv/http/vhosts/"
#simple-vhost.default-host  = "www.example.org"
#simple-vhost.document-root = "/htdocs/"


##
## Format: <errorfile-prefix><status-code>.html
## -> ..../status-404.html for 'File not found'
#server.errorfile-prefix    = "/usr/share/lighttpd/errors/status-"
#server.errorfile-prefix    = "/srv/http/errors/status-"

## virtual directory listings
#dir-listing.activate       = "enable"
## select encoding for directory listings
#dir-listing.encoding        = "utf-8"

## enable debugging
#debug.log-request-header   = "enable"
#debug.log-response-header  = "enable"
#debug.log-request-handling = "enable"
#debug.log-file-not-found   = "enable"

### only root can use these options
#
# chroot() to directory (default: no chroot() )
#server.chroot              = "/"

## change uid to <uid> (default: don't care)
server.username            = "http"

## change uid to <uid> (default: don't care)
server.groupname           = "http"

#### compress module
#compress.cache-dir         = "/var/cache/lighttpd/compress/"
#compress.filetype          = ("text/plain", "text/html")

#### proxy module
## read proxy.txt for more info
#proxy.server               = ( ".php" =>
#                               ( "localhost" =>
#                                 (
#                                   "host" => "192.168.0.101",
#                                   "port" => 80
#                                 )
#                               )
#                             )

#### fastcgi module
## read fastcgi.txt for more info
## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini
 fastcgi.server = (
        ".php" => ((
            "bin-path" => "/usr/bin/php-cgi",
            "socket"   => "/var/run/lighttpd/mythtv-php-fcgi.socket",
            "broken-scriptfilename" => "enable",
            "bin-environment" => (
                "db_server"   => "localhost",
                "db_name"     => "mythconverg",
                "db_login"    => "mythtv",
                "db_password" => "mythtv"
            )
        ))
    )

     setenv.add-environment = (
             "db_server"   => "localhost",
             "db_name"     => "mythconverg",
             "db_login"    => "mythtv",
             "db_password" => "mythtv"
)   
#### CGI module
cgi.assign                 = ( ".pl"  => "/usr/bin/perl",
                               ".cgi" => "/bin/bash" )

   url.rewrite-once = (
        "^/mythweb/(css|data|images|js|themes|skins|[a-z_]+\.(php|pl)).*" => "$0",
       "^/mythweb/(pl(/.*)?)$" => "/mythweb/mythweb.pl/$1",
       "^/mythweb/(.+)$"       => "/mythweb/mythweb.php/$1",
       "^/mythweb/(.*)$"       => "/mythweb/mythweb.php"
   )



#### SSL engine
#ssl.engine                 = "enable"
#ssl.pemfile                = "/etc/ssl/private/lighttpd.pem"

#### status module
#status.status-url          = "/server-status"
#status.config-url          = "/server-config"

#### auth module
## read authentication.txt for more info
#auth.backend               = "plain"
#auth.backend.plain.userfile = "lighttpd.user"
#auth.backend.plain.groupfile = "lighttpd.group"

#auth.backend.ldap.hostname = "localhost"
#auth.backend.ldap.base-dn  = "dc=my-domain,dc=com"
#auth.backend.ldap.filter   = "(uid=$)"

#auth.require               = ( "/mythweb =>
#                               (
#                                 "method"  => "plain",
#                                 "realm"   => "download archiv",
#                                 "require" => "valid-user"
#                               )
#                               "/server-config" =>
#                               (
#                                 "method"  => "digest",
#                                 "realm"   => "download archiv",
#                                 "require" => "valid-user"
#                               )
#                             )

#### url handling modules (rewrite, redirect, access)
#url.rewrite                = ( "^/$"             => "/server-status" )
#url.redirect               = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )
#### both rewrite/redirect support back reference to regex conditional using %n
#$HTTP["host"] =~ "^www\.(.*)" {
#  url.redirect            = ( "^/(.*)" => "http://%1/$1" )
#}

#
# define a pattern for the host url finding
# %% => % sign
# %0 => domain name + tld
# %1 => tld
# %2 => domain name without tld
# %3 => subdomain 1 name
# %4 => subdomain 2 name
#
#evhost.path-pattern        = "/srv/http/vhosts/%3/htdocs/"

#### expire module
#expire.url                 = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")

#### ssi
#ssi.extension              = ( ".shtml" )

#### rrdtool
#rrdtool.binary             = "/usr/bin/rrdtool"
#rrdtool.db-name            = "/var/lib/lighttpd/lighttpd.rrd"

#### setenv
#setenv.add-request-header  = ( "TRAV_ENV" => "mysql://user@host/db" )
#setenv.add-response-header = ( "X-Secret-Message" => "42" )

## for mod_trigger_b4_dl
# trigger-before-download.gdbm-filename = "/var/lib/lighttpd/trigger.db"
# trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
# trigger-before-download.trigger-url = "^/trigger/"
# trigger-before-download.download-url = "^/download/"
# trigger-before-download.deny-url = "http://127.0.0.1/index.html"
# trigger-before-download.trigger-timeout = 10

## for mod_cml
## don't forget to add index.cml to server.indexfiles
# cml.extension               = ".cml"
# cml.memcache-hosts          = ( "127.0.0.1:11211" )

#### variable usage:
## variable name without "." is auto prefixed by "var." and becomes "var.bar"
#bar = 1
#var.mystring = "foo"

## integer add
#bar += 1
## string concat, with integer cast as string, result: "www.foo1.com"
#server.name = "www." + mystring + var.bar + ".com"
## array merge
#index-file.names = (foo + ".php") + index-file.names
#index-file.names += (foo + ".php")

#### include
#include "/etc/lighttpd/auth-inc.conf"
## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf"
#include "lighttpd-inc.conf"

#### include_shell
#include_shell "echo var.a=1"
## the above is same as:
#var.a=1

$HTTP["url"] =~ "/mythexport/" {
  cgi.assign = ( ".cgi" => "/usr/bin/perl" )
}



Top
 Profile  
 
 Post subject:
PostPosted: Tue Feb 02, 2010 6:39 pm 
Offline
Joined: Fri Apr 02, 2004 10:08 am
Posts: 1637
Location: Virginia, USA
And PS: my audio sync appears to be fine for SD recordings from my PVR-150, but sync is totally off for a HD recording of 24 from a HD HomeRun.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Feb 02, 2010 7:44 pm 
Offline
Joined: Thu Apr 03, 2008 11:42 pm
Posts: 114
Location: Calgary, Canada
Ran a diff against mine, nothing notable. FWIW the actual location of mine is not line 170, that was just a rough guess. I've since learned how to get nano to tell me the exact line# and it's actually at line 132, right below the similar-looking section for PDF files. I don't think it matters though.

The only other difference was that I have server.port uncommented and set to 8080, but I highly doubt that would affect the cgi.

BTW I have been assuming that your MythWeb installation is working and accessible? (I.e. that it's not a broader issue with lighttpd.)

Wish I could help but I'm out of ideas... if I think of anything more though I'll let you know.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Feb 02, 2010 8:42 pm 
Offline
Joined: Fri Apr 02, 2004 10:08 am
Posts: 1637
Location: Virginia, USA
Thanks for trying. Yeah, other than this, MythWeb is working fine. Oh well.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Feb 02, 2010 11:20 pm 
Offline
Joined: Thu Apr 03, 2008 11:42 pm
Posts: 114
Location: Calgary, Canada
ceenvee703 wrote:
And PS: my audio sync appears to be fine for SD recordings from my PVR-150, but sync is totally off for a HD recording of 24 from a HD HomeRun.

Occurred to me I'd never tried to export an HD program so I did. The sync is off... not by a lot, maybe 1/10th of a second, but it's definitely not the same as an SD recording. Also this is a letterboxed SD program so that might be mitigating the problem. (All my HD recordings are 3hr+ sports and I didn't want to wait for one of those.)

I did some poking around Google and think I may have found out why -async isn't doing anything... This post says -async must come before -i, the input filename. However, according to my mythexport.log from when I've run in debug mode, -i is always inserted before any of the options given in the config.

Looking at the mythexport-daemon script it looks like it runs ffmpeg from either line 504 or 507, so @Martian and/or @indolent can you try editing your script and inserting -async xx in there, before the "-i $filename"? Then restart the service and try another export to see if that helps. It's a bit of a hack but hey if it works...


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 03, 2010 3:18 pm 
Offline
Joined: Wed Feb 08, 2006 6:13 pm
Posts: 480
Location: IN
paulsid - I believe I did try that although I'd hacked up my config files so many times I really have no idea what was actually happening.

I did manage to build the latest ffmpeg-svn on LinHES however it requires the replacement of some libraries that mplayer and xine need with newer versions which in theory could hose mplayer and / or xine so I don't want to upgrade my production box and I don't have MythExport working on the test setup nor do I have any recordings on it anyway (how's that for a run on sentance).

If some brave soul would like to try the packages (at your own risk) send me a PM, otherwise I need to reload my test box in order to try them.

Martian

_________________
ABIT NF-M2 nView | Athlon 64 X2 3800+ | 2GB DDR2 800 | HDHomerun | GeForce 6150 (onboard) | WD 640 GB SATA HD | DVD-RW (sata) | StreamZap IR receiver with Logitech Harmony remote

Vizio 37" LCD HDTV (1080p)


Top
 Profile  
 
 Post subject:
PostPosted: Thu Feb 18, 2010 11:50 am 
Offline
Joined: Fri Apr 02, 2004 10:08 am
Posts: 1637
Location: Virginia, USA
Wasn't brave enough to try the SVN version of ffmpeg, but I did try editing the mythexport daemon to add -async 1, and it didn't help. Didn't try other numbers as that seemed like an exercise in frustration.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Feb 18, 2010 12:16 pm 
Offline
Joined: Wed Feb 08, 2006 6:13 pm
Posts: 480
Location: IN
ceenvee703 wrote:
Wasn't brave enough to try the SVN version of ffmpeg, but I did try editing the mythexport daemon to add -async 1, and it didn't help. Didn't try other numbers as that seemed like an exercise in frustration.


I didn't have any luck with -async either.

_________________
ABIT NF-M2 nView | Athlon 64 X2 3800+ | 2GB DDR2 800 | HDHomerun | GeForce 6150 (onboard) | WD 640 GB SATA HD | DVD-RW (sata) | StreamZap IR receiver with Logitech Harmony remote

Vizio 37" LCD HDTV (1080p)


Top
 Profile  
 
 Post subject:
PostPosted: Thu Feb 18, 2010 5:03 pm 
Offline
Joined: Fri Apr 02, 2004 10:08 am
Posts: 1637
Location: Virginia, USA
Semi-rant time:

I was using mythexport so I could view MythTV programs remotely on an iPhone and (possibly down the road) an iPad. Would have been nice to get the RSS feed working, but oh well, it could still transcode and put things into a folder. Except HD transcodes have the audio sync problem.

Then, today, I was reading some blog and found out about Air Video:

http://www.inmethod.com/air-video/index.html

How much this costs: $3 for the iPhone app

How long it took to install and configure: 5 minutes

How many .config files I edited: 0

How many daemon restarts required: 0

I pointed it to a SMB mount of /myth/pretty and I was done configuring.

If the video it streams to the iPhone is not in the appropriate format, it transcodes on the fly and delivers it in a proper format. Both SD and HD. No audio sync problems.

And the final insult? They're using FFmpeg as their transcoding engine. So it's possible to do. Can't believe I spent time on this instead of a big $3.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Feb 19, 2010 11:26 pm 
Offline
Joined: Mon Feb 12, 2007 11:51 am
Posts: 9
Looks like they don't have any plans to make an Android version so I'm out of luck...

ceenvee703 wrote:
Semi-rant time:

I was using mythexport so I could view MythTV programs remotely on an iPhone and (possibly down the road) an iPad. Would have been nice to get the RSS feed working, but oh well, it could still transcode and put things into a folder. Except HD transcodes have the audio sync problem.

Then, today, I was reading some blog and found out about Air Video:

http://www.inmethod.com/air-video/index.html

How much this costs: $3 for the iPhone app

How long it took to install and configure: 5 minutes

How many .config files I edited: 0

How many daemon restarts required: 0

I pointed it to a SMB mount of /myth/pretty and I was done configuring.

If the video it streams to the iPhone is not in the appropriate format, it transcodes on the fly and delivers it in a proper format. Both SD and HD. No audio sync problems.

And the final insult? They're using FFmpeg as their transcoding engine. So it's possible to do. Can't believe I spent time on this instead of a big $3.


Top
 Profile  
 
PostPosted: Sat Feb 27, 2010 2:41 pm 
Offline
Joined: Mon Dec 24, 2007 9:47 am
Posts: 535
Location: Ottawa, Canada
paulsid wrote:
[*]Make the scripts executable: chmod 755 /etc/sv/*

I believe that should be: chmod 755 /etc/sv/mythexport/*


Top
 Profile  
 
 Post subject:
PostPosted: Sun Feb 28, 2010 5:53 pm 
Offline
Joined: Mon Dec 24, 2007 9:47 am
Posts: 535
Location: Ottawa, Canada
Martian wrote:
EDIT: I think I got it!

Code:
chown http:users /srv/http


and now it appears to be working!

hmmm. this didn't work for me.

If I run the script from the command line then it works but not through the web server. Enabling error checking, I get 500 Internal server error. so no doubt it is something in my lighttpd settings.

I've disapled the openbasedir so it is not that.

I'll have to keep digging when I get back from travels... but if anyone has any hints, feel free to pass them on. I'm running 0.22 from testing.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Feb 28, 2010 6:02 pm 
Offline
Joined: Mon Dec 24, 2007 9:47 am
Posts: 535
Location: Ottawa, Canada
christ wrote:
hmmm. this didn't work for me.

Got it!!!!

you need the myth config.xml in the /srv/http/.mythtv directory. Bloody hell! That sucker needs to be everywhere for mythexport!!!

I solved as follows:
Code:
ln -s /home/mythtv/.mythtv/config.xml config.xml


Top
 Profile  
 
 Post subject:
PostPosted: Sun Feb 28, 2010 6:34 pm 
Offline
Joined: Mon Dec 24, 2007 9:47 am
Posts: 535
Location: Ottawa, Canada
One more thing you will need if you mount your ipodfeed directory across the network. I use cifs to mount and I need this in my /etc/lighttpd/lighttpd.conf:
Code:
# allow big files to be transfered over cifs
server.network-backend = "writev"


By default lighttpd will use sendfile which isn't really meant for large files such as these. So I switched to writev.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Feb 28, 2010 9:13 pm 
Offline
Joined: Fri Oct 20, 2006 12:04 pm
Posts: 905
Location: LA, CA
ceenvee703 wrote:
Semi-rant time:

I was using mythexport so I could view MythTV programs remotely on an iPhone and (possibly down the road) an iPad. Would have been nice to get the RSS feed working, but oh well, it could still transcode and put things into a folder. Except HD transcodes have the audio sync problem.

Then, today, I was reading some blog and found out about Air Video:

http://www.inmethod.com/air-video/index.html

How much this costs: $3 for the iPhone app

How long it took to install and configure: 5 minutes

How many .config files I edited: 0

How many daemon restarts required: 0

I pointed it to a SMB mount of /myth/pretty and I was done configuring.

If the video it streams to the iPhone is not in the appropriate format, it transcodes on the fly and delivers it in a proper format. Both SD and HD. No audio sync problems.

And the final insult? They're using FFmpeg as their transcoding engine. So it's possible to do. Can't believe I spent time on this instead of a big $3.


Does the above allow you to view 'near live' TV? Something currently being recorded? Can you stream over 3G or just WiFi? Can you easily access outside your local network?

This looks real interesting, but I don't have much time to play right now. Maybe in a couple weeks. Thanks for the heads post!


Top
 Profile  
 

Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 62 posts ] 
Go to page Previous  1, 2, 3, 4, 5  Next



All times are UTC - 6 hours




Who is online

Users browsing this forum: No registered users and 17 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group

Theme Created By ceyhansuyu