GithubHelp home page GithubHelp logo

pdlna's Introduction

pDLNA
(c) 2010-2018 Stefan Heumader-Rainer
email: [email protected]
webpage: https://www.pdlna.org

Licensed under GPLv3 (see LICENSE file)

INTRODUCTION
------------
pDLNA is an UPnP and DLNA service which serves multimedia
content to compatible clients on the network and is written
in Perl.

See http://www.perl.org for more details on Perl
and http://www.upnp.org/ for more details on UPnP
and http://www.dlna.org/ for mode details on DLNA.

INSTALLATION
-------------------------
For the installation see the INSTALL file or the
'pDLNA Installation, Configuration and Debugging Guide' available under
https://www.pdlna.org/cgi-bin/index.pl?menu=download&type=icdguide&version=latest

BUGS & FEATURES
---------------
Email me or contact me on GitHub if you find bugs
or if you have some ideas for improvements.
<[email protected]>


Stefan Heumader-Rainer

pdlna's People

Contributors

crisanderson avatar geuma avatar mrproper avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

pdlna's Issues

soap handling

You should have a look at XML::Compile* stuff for handling SOAP requests and XML namespaces. (HTTPServer line 332+)

FreeBSD: initscript unable to completely shut down pDLNA

On FreeBSD, there seems to be a problem shutting down pDLNA. The following error message will occur:

[root@mediaserver ~]# /etc/rc.d/rc.pDLNA start
Starting pDLNA ...
[root@mediaserver ~]# /etc/rc.d/rc.pDLNA stop
[root@mediaserver ~]# /etc/rc.d/rc.pDLNA start
Starting pDLNA ...
[root@mediaserver ~]# Cannot bind to Multicast socket: Address already in use
Going to terminate pDLNA/v0.63.0b on freebsd/9.0-release with FriendlyName 'pDLNA v0.63.0b on mediaserver' ...

At the moment there is a workaround for this problem. Just geht es listing of the processes, kill the pDLNA process, remove the PID file (if any) and use the initscript afterwards again to start pDLNA:

[root@mediaserver ~]# ps
PID TT STAT TIME COMMAND
1354 v0 Is 0:00.04 login pam
1355 v1 Is+ 0:00.00 /usr/libexec/getty Pc ttyv1
1356 v2 Is+ 0:00.00 /usr/libexec/getty Pc ttyv2
1357 v3 Is+ 0:00.00 /usr/libexec/getty Pc ttyv3
1358 v4 Is+ 0:00.00 /usr/libexec/getty Pc ttyv4
1359 v5 Is+ 0:00.00 /usr/libexec/getty Pc ttyv5
1360 v6 Is+ 0:00.00 /usr/libexec/getty Pc ttyv6
1361 v7 Is+ 0:00.00 /usr/libexec/getty Pc ttyv7
1411 0 Ss 0:00.14 -bash (bash)
2246 0 S 0:01.60 /usr/bin/perl ./pDLNA.pl -f /etc/pdlna.conf (perl5.12.4)
2264 0 R+ 0:00.01 ps
[root@mediaserver ~]# kill -9 2246
[root@mediaserver ~]# rm /var/run/pdlna.pid
[root@mediaserver ~]# /etc/rc.d/rc.pDLNA start
Starting pDLNA ...

parsing problem if media file name contains special regex characters like '(', ')' or others

If the media file name contains a regex special character, I get the following log entry:

Issuing rollback() due to DESTROY without explicit disconnect() of DBD::SQLite::db handle dbname=/media/TREK_2/Audio/pdlna.db at ./pDLNA.pl line 63.
Thread 1 terminated abnormally: Unmatched ) in regex; marked by <-- HERE in m/^18-This Live I) <-- HERE 'm Living.mp3$/ at PDLNA/ContentLibrary.pm line 152.

Possible solution: use \Q...\E
ContentLibrary.pm: LIne 135 and 152
/^\Q$element_basename\E$/,

Use of deprecated Net::Interface functions

Hi PDLNA/Config.pm is using a deprecated Net::Interface function around line 240 which is no longer supported in the latest version of the module, You need to use IO::Interface instead. I have made the changes in a fork I made from your repo. You may pull the changes from [email protected]:shantanubhadoria/pDLNA.git
Hope that helps
Cheers!
-Shantanu Bhadoria

default LogFileMaxSize is set wrong

the default value for LogFileMaxSize is wrongly set to 1 MB instead of 10 MB

Thanks to vince for reporting this issue

WorkAround: define the value in the configuration file

move from deprecated FFmpeg to avconv

At least the debian 7.0 binary tells us to:
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.

PostgreSQL: NOTICE messages when initializing database

When a PostgreSQL database is used as a backend for pDLNA, various NOTICE messages will appear. This messages are only informing about some tables or primary keys, which have been created by pDLNA.

it might look like:
root@mediaserver:~# /etc/init.d/pdlna start
Starting pDLNA ...
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "metadata_pkey" for table "metadata"
NOTICE: CREATE TABLE will create implicit sequence "items_id_seq" for serial column "items.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "items_pkey" for table "items"
NOTICE: CREATE TABLE will create implicit sequence "device_ip_id_seq" for serial column "device_ip.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "device_ip_pkey" for table "device_ip"
NOTICE: CREATE TABLE will create implicit sequence "device_bm_id_seq" for serial column "device_bm.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "device_bm_pkey" for table "device_bm"
NOTICE: CREATE TABLE will create implicit sequence "device_udn_id_seq" for serial column "device_udn.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "device_udn_pkey" for table "device_udn"
NOTICE: CREATE TABLE will create implicit sequence "device_nts_id_seq" for serial column "device_nts.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "device_nts_pkey" for table "device_nts"
NOTICE: CREATE TABLE will create implicit sequence "device_service_id_seq" for serial column "device_service.id"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "device_service_pkey" for table "device_service"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "stat_mem_pkey" for table "stat_mem"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "stat_items_pkey" for table "stat_items"

Uninitialized value in SSDP.pm

Fix the following error:

Use of uninitialized value $nt_type in concatenation (.) or string at /PDLNA/SSDP.pm line 299

database preparation problem

root@mediaserver:~# /etc/init.d/rc.pDLNA restart
Stopping pDLNA ...
Starting pDLNA ...
DBD::SQLite::db do failed: table METADATA already exists at PDLNA/Database.pm line 87.
DBD::SQLite::st execute failed: constraint failed
column KEY is not unique at PDLNA/Database.pm line 222.
constraint failed
column KEY is not unique at PDLNA/Database.pm line 222.

fix uninitialized values in get_audio_fileinfo()

for instance

is
$$info{GENRE} = $tag->{'GENRE'} if defined($tag->{'GENRE'}) && length($tag->{'GENRE'}) > 0;
a better idea than
$$info{GENRE} = $tag->{'GENRE'} if length($tag->{'GENRE'}) > 0;

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.