[Application] PLUM (DLNA client)

Discussion in 'DragonBox Coding Compo 2012/2013' started by freamon, Jan 14, 2013.

  1. freamon

    freamon Active Member

    Apr 13, 2011

    My entry for the compo will be an application that extends PickleLauncher so that it can search for Media Servers on your network, browse them, and then pass the URL of your chosen file to a capable player (such a mplayer or vlc).

    Here's a screenshot:


    It shows the screen after it has found 3 servers on my network - Twonky is on a network-attached-storage drive; PS3 Media Server and XBMC Media Server are both running on my PC.   PLUM was running on my laptop.  Porting to the Pandora (or other similarly capable devices) should just be a simple re-compile.

    There's still lots to do, but I thought I'd make a post about my progress so far.
  2. crow_riot

    crow_riot Well-Known Member

    Sep 21, 2009
    hey thats cool, i've wanted to create something like that on my own. now i dont need to :D
  3. sswam

    sswam Advanced Member

    Dec 16, 2009
    Sounds good.  Is a media server different from http server or ssh server?  (I'm ignorant!)

    Be cool if it can support http, ftp, and ssh too!  But great idea anyways.

    I'm thinking to buy an HP microserver for my home media needs!

    They are very cheap, have ECC RAM, and take 3 drives.
    Last edited by a moderator: Jan 16, 2013
  4. freamon

    freamon Active Member

    Apr 13, 2011
    DLNA media servers are different from http or ftp servers, yes. They scan the media that is stored on the drive, and present it to the client in an organised way. For example, I have Twonky media server on a WD MyBook-Live network hard drive. When I connect to it from a client (such as PLUM, or XBMC), it presents a list a navigate that starts:




    and if you go in to Videos, it presents:

    By Folder

    By Date

    By Genre

    ...etc. Going into By Folder (for example), it presents videos using the name they're tagged with (rather than the filename), as well as a screenshot.

    There are also other media servers (like PS3 Media Server) that can present what's available, and then do on-the-fly transcoding - so you can connect to it with a device like a Pandora, choose a high-def file, and it will stream a version of it that the device is able to play.
  5. Green7

    Green7 Member

    Mar 22, 2012
    Missed this.

    This will be incredibly useful. I have video, pics and music on multiple devices and a DNLA enabled TV.

    It's became the norm that I consume media on all my devices but they can use the big screen for easy sharing, better visuals and, more importantly to me, will sound great.

    Good luck with this:)
    Last edited by a moderator: Jan 31, 2013
  6. freamon

    freamon Active Member

    Apr 13, 2011
    Oh good - I'm glad I'm not the only person who'll be able to use this.

    Do you know the name of the media server you're running? If it's a free one, I can test that my software works okay with it.

    So far, I've tested Twonky, XBMC, PS3MediaServer, serviio, MediaTomb and miniDLNA, and they all work.

    There's some I can't test though - e.g. tversity and the one integrated in Windows 7 - because I don't have Windows.
  7. Green7

    Green7 Member

    Mar 22, 2012
    Good question. It's LGs built in DNLA server. No idea what it's called.

    But yea, I'll love this.
  8. ptitSeb

    ptitSeb Serial Porter

    Aug 15, 2012
    France, near Lyon
    I have PS3MediaServer too, I use it with a PS3 (as the default Windows7 one is not that good), I will certainly use it too !
  9. freamon

    freamon Active Member

    Apr 13, 2011
    "Testing" PND uploaded: http://repo.openpandora.org/?page=detail&app=plum

    For on-screen help, tap 'h'. Pressing 'h' again will go back to the previous screen.

    This is what the icons do:


    Or you can press these keyboard buttons:

    DPAD UP: Scroll Up

    DPAD DOWN: Scroll Down

    DPAD LEFT: Page Up

    DPAD RIGHT: Page Down

    'L' Trigger: Switch between network and local filesystem

    'R' Trigger: Perform new search for media servers

    h: toggle help mode

    'Y' action button: Go up a directory

    'X' action button: Select / Play selected file

    'B' action button: Play all files on screen

    'A' action button: Quit.

    Also, here's the beginnings of a PLUM.conf file for PS3 Media Server - if you put it in the server's 'renderers' directory, it'll transcode content so it's more playable on Pandora (I tried with some 1080p content and it sort of worked - it still needs some tweaking to get skip-free playback).

    # PS3 Media Server renderer configuration profile for Plum
    # This configuration profile serves two purposes:
    #   - Allow PMS to recognize a specific connecting renderer
    #   - Define the possibilities of that renderer
    # RendererName: Determines the name that is displayed in the PMS user
    # interface when this renderer connects.
    RendererName = PLUM
    # RendererIcon: Determines the icon that is displayed in the PMS user
    # interface when this renderer connects. By default, these icons are
    # bundled with PMS in pms.jar, but they can easily be customised:
    # http://www.ps3mediaserver.org/forum/viewtopic.php?f=6&t=3507&p=49536#p49536
    RendererIcon = ps3.png
    # When a renderer connects, it sends a "User-Agent" header. PMS tries to
    # match that header with all configuration profiles. If none of the profiles
    # matches, the message "Unknown User-Agent:" will be displayed in the logs and
    # PMS will switch to a default profile.
    # Because matching involves all renderer configuration profiles, it is
    # important to match as long a string as possible. This increases the chances
    # that a match is unique. Version numbers are best avoided.
    # To learn the exact headers of any renderer, set the logging level in
    # "logback.xml" to "TRACE" and look for messages like "Received on socket:".
    # ============================================================================
    # PlayStation 3 uses the following strings:
    # User-Agent: PLAYSTATION 3
    # ---
    # User-Agent: UPnP/1.0
    # X-AV-Client-Info: av=5.0; cn="Sony Computer Entertainment Inc."; mn="PLAYSTATION 3"; mv="1.0";
    # ---
    # User-Agent: UPnP/1.0 DLNADOC/1.50
    # X-AV-Client-Info: av=5.0; cn="Sony Computer Entertainment Inc."; mn="PLAYSTATION 3"; mv="1.0";
    # ============================================================================
    # UserAgentSearch: Optional regular expression to detect a connected renderer.
    # The expression is case insensitive. When the expression is empty User-Agent
    # headers are not used, this is the default. Note that one renderer can use
    # several different User-Agent headers.
    # Examples:
    # UserAgentSearch = Platinum/.*DLNADOC/|yxplayer2|MPlayer |NSPlayer/
    # UserAgentSearch = Windows-Media-Player-DMS|Microsoft-Windows
    # Ignoring the "UPnP/1.0" and "UPnP/1.0 DLNADOC/1.50" headers since they are
    # too general, plus they can be detected from the additional header.
    UserAgentSearch = PLUM
    # UserAgentAdditionalHeader: Optional additional HTTP header for better
    # detection. When defined, PMS also considers this header when trying to find
    # a match. Even when the standard UserAgentSearch match fails, this extra
    # header can provide a positive match.
    #UserAgentAdditionalHeader = X-AV-Client-Info
    # UserAgentAdditionalHeaderSearch: Regular expression to search for in the
    # additional HTTP header.
    #UserAgentAdditionalHeaderSearch = PLAYSTATION
    # This indicates to PMS what kind of media the renderer can handle. Files that
    # the renderer cannot handle will be hidden from it.
    # Video: Set to "true" if the renderer can play video.
    Video = true
    # Audio: Set to "true" if the renderer can play audio.
    Audio = true
    # Image: Set to "true" if the renderer can display images.
    Image = true
    # LongFileNameFormat: Determines how media file names in the regular folders
    # are formatted. The formatting string may contain several tokens, which will
    # be replaced by their respective values. If a token cannot be meaningfully
    # replaced, it (and its optional surrounding braces) will not be displayed.
    # The following tokens can be used:
    #    %A       Audio language full name (e.g. "Japanese")
    #    %a       Audio language short name (e.g. "jp")
    #    %b       Audio flavor (e.g. "ac3 5.1 @ 640 kbps")
    #    %c       Audio codec (e.g. "AC3")
    #    %d       DVD track duration (e.g. "3:27:15")
    #    %E       Engine full name (e.g. "FFmpeg Web Video")
    #    %e       Engine short name (e.g. "FFWV")
    #    %F       File name with extension (e.g. "Big_Buck_Bunny.mov")
    #    %f       File name without extension (e.g. "Bug_Buck_Bunny")
    #    %S       Subtitle language full name (e.g. "English")
    #    %s       Subtitle language short name (e.g. "en")
    #    %t       Subtitle type (e.g. "Timed text")
    #    %u       Subtitle flavor (e.g. "TX3G")
    #    %x       External subtitles ("External Subtitles")
    # Default value is "%F - %d [%E] {%x} {Sub: %t/%S (%u)}".
    # LongFileNameFormat = %F - %d [%E] {%x} {Sub: %t/%S (%u)}
    # ShortFileNameFormat: Determines how media file names in the transcoding
    # virtual folder are formatted. See LongFileNameFormat for the tokens that
    # can be used.
    # Default value is "[%E] {Audio: %c/%A (%} {Sub: %t/%S (%u)}".
    # ShortFileNameFormat = [%E] {Audio: %c/%A (%} {Sub: %t/%S (%u)}
    # SeekByTime: Set to true to use the DLNA feature seek by time instead of by
    # range.
    SeekByTime = true
    # DLNALocalizationRequired: Serve different flavors of localization in the
    # DLNA parameters (PAL/NTSC, NA/EU/JP) to allow every world wide renderer to
    # see the files. Important for Sony Bravia TVs.
    DLNALocalizationRequired = false
    # CBRVideoBitrate is useful for renderers without SeekByTime support. It does time2byte conversion to support FF/RW.
    # Only possibility how to predict where we are when seeking is using CBR bitrate instead of VBR used by default
    # Making CBR stream by MEnocder is 3 times slower than using VBR so count with it if you have poor computer!
    # Speed can be hopefully optimized little bit in the future:
    # http://www.ps3mediaserver.org/forum/viewtopic.php?f=14&t=8883&p=53706&hilit=ditlew#p53700
    # http://www.ps3mediaserver.org/forum/viewtopic.php?f=11&t=11284&p=62765&hilit=1835#p62765
    # CBRVideoBitrate=15000
    # ByteToTimeseekRewindSeconds is used for finetuning so default is 0 
    # ByteToTimeseekRewindSeconds=0
    # MediaInfo: Set to "true" if PMS should parse files with MediaInfo. This will
    # give PMS more accurate information, speed up browsing and prevent potential
    # playback errors. It also enables the use of "Supported" to more accurately
    # define the supported formats for the renderer.
    MediaInfo = true
    # CreateDLNATreeFaster: Use faster method to create the DLNA tree using the
    # MediaInfo library. Since this is a UPnP specification violation, it is not
    # supported by some renderers and false by default.
    CreateDLNATreeFaster = true
    # It is very likely that a renderer cannot render all file formats. If this is
    # the case, PMS should transcode or mux the file to a format that the renderer
    # can display. This section defines the format that PMS should transcode or
    # mux to.
    # TranscodeVideo: Profile to use for video transcoding.
    # One of the following:
    #     MPEGPSAC3: MPEG-2 video, AC-3 audio, MPEG-PS container
    #     MPEGTSAC3: MPEG-2 video, AC-3 audio, MPEG-TS container
    #     WMV:       WMV2 video, WMA2 audio, ASF container
    # XXX MPEGPSAC3 was previously named MPEGAC3. The old name is deprecated.
    # XXX Currently only the MEncoder engine supports all 3 profiles.
    # Other engines transcode video to the MPEGPSAC3 profile,
    # regardless of this setting.
    # The default value is MPEGPSAC3.
    TranscodeVideo = MPEGPSAC3
    # TranscodeAudio: Profile to use for audio transcoding.
    # Currently supported: "LPCM", "MP3" or "WAV".
    # Default: LPCM
    TranscodeAudio = WAV
    # DefaultVBVBufSize: Whether or not to use the default DVD buffer size. Setting
    # this to "false" means a greater bit rate and faster encoding, but it can
    # generate incompatible videos dependent on the renderer.
    DefaultVBVBufSize = false
    # MuxH264ToMpegTS: Set to "true" if the media renderer supports H264 and MPEG2
    # in a MPEGTS file. Ignored if MediaInfo = true.
    MuxH264ToMpegTS = true
    # MuxDTSToMpeg: Set to "true" if the media renderer supports DTS in a MPEG
    # file. Ignored if MediaInfo = true.
    MuxDTSToMpeg = false
    # WrapDTSIntoPCM: Set to "true" if the media renderer supports DTS wrapped
    # into LPCM in a MPEG file.
    WrapDTSIntoPCM = true
    # MuxLPCMToMpeg: Set to "true" if the media renderer supports LPCM in a MPEG
    # file. Ignored if MediaInfo = true.
    MuxLPCMToMpeg = true
    # MaxVideoBitrateMbps: The maximum bit rate supported by the media renderer.
    # Setting to "0" means unlimited.
    # If computer is low on resources it is better to avoid using bandwidth limit which is much CPU demanding
    # It is better to lower quality settings by defining "CustomMencoderQualitySettings".
    # By lowering quality also bitrate is decreased but it is not so CPU aggresive so it is preferred to use it this way
    MaxVideoBitrateMbps = 0
    # MaxVideoWidth: Maximum width supported by the media renderer. Setting to "0"
    # means unlimited. This setting is ignored for files matching "Supported"
    # formats when MediaInfo = true.
    MaxVideoWidth = 800
    # MaxVideoHeight: Maximum height supported by the media renderer. Setting to
    # "0" means unlimited. This setting is ignored for files matching "Supported"
    # formats when MediaInfo = true.
    MaxVideoHeight = 480
    # H264Level41Limited: Set to "true" if the media renderer supports only H264
    # L4.1 at most.
    H264Level41Limited = true
    # TranscodeAudioTo441kHz: Set to "true" if music files need to be resampled at
    # 44.1kHz.
    TranscodeAudioTo441kHz = false
    # TranscodeFastStart: Set to "true" if the renderer has a short timeout delay
    # and needs to receive transcoded video with minimal delay. If set to "false",
    # PMS will take some time to buffer some of the transcoded video.
    TranscodeFastStart = true
    # TranscodedVideoFileSize: The amount of transcoded data is unknown at the
    # time of transcoding. Still, some renderers expect a size for the video file
    # to be returned. Possible values are:
    #            0: No size is sent to the renderer (default value)
    # 100000000000: Fake size of 100 GB is sent to the renderer.
    #           -1: Specific value that works perfect for the PS3. It is against
    #               the DLNA spec though.
    TranscodedVideoFileSize = -1
    # MimeTypesChanges: A list of mimetype transformations in the format
    # "old/mime1=new/mime1|old/mime2=new/mime2|...". Ignored if MediaInfo = true.
    MimeTypesChanges = video/avi=video/x-divx
    # TranscodeExtensions: Comma separated list of file extensions that are forced
    # to be transcoded and never streamed. Best left empty if MediaInfo = true,
    # and define "Supported" formats instead.
    TranscodeExtensions =
    # StreamExtensions: Comma separated list of file extensions that are forced
    # to be streamed and never transcoded. Best left empty if MediaInfo = true,
    # and define "Supported" formats instead.
    StreamExtensions =
    # ForceJPGThumbnails: Some renderers require thumbnails to be represented as
    # JPEGs (JPEG_TN) in the DLNA directory XML (e.g. Sony Bravia TVs and Blu-ray
    # players). Set this to true to force PMS to use this representation. Note:
    # this has no effect on thumbnail file formats or content-type headers.
    ForceJPGThumbnails = false
    # ChunkedTransfer: Some renderers are particular about the "Content-Length"
    # headers in requests (e.g. Sony Blu-ray players). By default, PMS will send
    # a "Content-Length" that refers to the total media size, even if the exact
    # length is unknown. Default value is false. Set this option to true to omit
    # sending a length when it is unknown.
    ChunkedTransfer = false
    # CustomMencoderQualitySettings: Overrides the MEncoder transcoding quality
    # settings in PMS for this renderer. Default is empty, which means the PMS
    # settings will be used.
    CustomMencoderQualitySettings =
    # CustomMencoderOptions: Overrides the MEncoder custom options in PMS for
    # this renderer. Default is empty, which means the PMS
    # settings will be used.
    CustomMencoderOptions =
    # SubtitleHttpHeader: Some devices recognize a custom HTTP header for
    # retrieving the contents of a subtitles file. Set this option to the name of
    # that custom header and PMS will send the URL for the subtitles file in that
    # header (e.g. Samsung devices recognize the "CaptionInfo.sec" header).
    # Default value is "", which means PMS will not send such header information.
    SubtitleHttpHeader =
    # Another useful hidden params and their default values if not defined:
    # Display audio tag in TRANSCODE folder if defined in container (useful to find out correct audio track like commentary etc.)
    # ShowAudioMetadata = true
    # Display subtitle tag in TRANSCODE folder if defined in container (showing subtitles info like forced, full, documentary etc.)
    # ShowSubMetadata = true
    # Some renderers can't show length of DVD titles so it will add it directly to title name to be shown
    # ShowDVDTitleDuration = false
    # Specified extension will be added to every file shared by PMS
    # UseSameExtension = null
    # ????????????????????????????
    # DLNAProfileChanges = null
    # ????????????????????????????
    # DLNAOrgPN = true
    # ????????????????????????????
    # MediaParserV2_ThumbnailGeneration = false
    # IMAGES
    # AutoExifRotate: Many cameras store information in the image file about the
    # orientation of the camera while the picture was taken, allowing viewers to
    # know which way was up. Set this option to "true" to allow PMS to rotate JPEG
    # files based on EXIF information contained in the file, and relieve the
    # renderer of that task.
    AutoExifRotate = true
    # This section defines which media formats are supported by this renderer. If
    # a file is supported and its mediainfo indicates that it falls within the
    # capabilities of this renderer, PMS will stream the file to the renderer. All
    # other files will be transcoded before being sent to the renderer.
    # Each format that the renderer supports should result in a "Supported" line
    # that defines the capabilities of the renderer. When MediaInfo = true, media
    # files are parsed and their properties are matched against all "Supported"
    # lines. If a value for a specific property cannot be parsed, that property
    # is assumed to match.
    # The order of the "Supported" lines matters: when multiple lines match, the
    # first match is used.
    # The media parser and this configuration file will recognize the following
    # formats and codecs. Use lower case names only. Regular expressions are
    # supported.
    #        aac                (Advanced Audio Codec)
    #        ac3                (Audio Coding 3)
    #        aiff               (AIFF)
    #        alac               (Apple Lossless)
    #        ape                (Monkey's Audio)
    #        atrac              (Atrac)
    #        avi                (AVI container)
    #        bmp                (Bitmap)
    #        divx               (DivX Video)
    #        dts                (Digital Theater Systems)
    #        dtshd              (Digital Theater Systems)
    #        dv                 (Digital Video)
    #        eac3               (Extended AC3)
    #        flac               (Free Lossless Audio Codec)
    #        flv                (Flash Video)
    #        gif                (GIF)
    #        h264               (H.264)
    #        jpg                (JPEG)
    #        lpcm               (Linear PCM)
    #        mjpeg              (M-JPEG)
    #        mkv                (Matroska)
    #        mov                (Quicktime container, Apple)
    #        mp3                (MPEG Audio Layer 3)
    #        mp4                (ISOM/MPEG4 container, or MPEG4 codec)
    #        mpa                (MPEG Audio)
    #        mpc                (MusePack)
    #        mpeg1              (Codec used in VCD)
    #        mpeg2              (Codec used in DVD Videos and HDTV)
    #        mpegps             (MPEG presentation stream, used in DVD Videos, VCDs, etc.)
    #        mpegts             (MPEG transport stream, used in sat TV, Blu-ray discs (BDAV) etc.)
    #        ogg                (Ogg Vorbis)
    #        png                (PNG)
    #        ra                 (Real Audio)
    #        rm                 (Real Media, RMVB)
    #        tiff               (TIFF)
    #        truehd             (TrueHD)
    #        vc1                (VC-1)
    #        wavpac             (WavPack)
    #        wav                (WAVE file)
    #        wma                (Windows Media Audio)
    #        wmv                (Windows Media Video, tag also used for asf files)
    #        und                (Undetermined, if the parser did not recognize one of above)
    # Each of the "Supported" lines contains the following parameters separated by
    # spaces or tabs:
    #    f:    Regular expression to match the format of a file as parsed by the
    #          MediaInfo library (see the list above). This parameter is mandatory.
    #          Be careful when matching everything with ".+"; the renderer must be
    #          able to handle all formats.
    #    v:    Regular expression to match the video codec of the file as parsed by
    #          the MediaInfo library (see the list above).
    #    a:    Regular expression to match the audio codec of the file as parsed by
    #          the MediaInfo library (see the list above).
    #    m:    The MIME type to send to the renderer. Use of this parameter is
    #          strongly recommended. If it is not set, an estimated value will be
    #          assigned.
    #    n:    The maximum number of audio channels used in the file as parsed by
    #          the MediaInfo library.
    #    s:    The maximum audio sample frequency used in the file as parsed by
    #          the MediaInfo library, specified in Hertz.
    #    b:    The maximum audio bit rate used in the file as parsed by the
    #          MediaInfo library, specified in bits per second.
    #    w:    The maximum video width used in the file as parsed by the MediaInfo
    #          library, specified in pixels.
    #    h:    The maximum video height used in the file as parsed by the MediaInfo
    #          library, specified in pixels.
    #    qpel: Quarter pixel codec setting in the file as parsed by the MediaInfo
    #          library.
    #    gmc:  The number of global motion compensation warp points in the file as
    #          parsed by the MediaInfo library.
    # ============================================================================
    # Taken from the PlayStation site:
    #    The following types of files can be played under  (Video).
    #    Memory Stick Video Format
    #    - MPEG-4 SP (AAC LC)
    #    - H.264/MPEG-4 AVC High Profile (AAC LC)
    #    - MPEG-2 TS(H.264/MPEG-4 AVC, AAC LC)
    #    MP4 file format
    #    - H.264/MPEG-4 AVC High Profile (AAC LC)
    #    MPEG-1 (MPEG Audio Layer 2)
    #    MPEG-2 PS (MPEG2 Audio Layer 2, AAC LC, AC3(Dolby Digital), LPCM)
    #    MPEG-2 TS (MPEG2 Audio Layer 2, AC3(Dolby Digital), AAC LC)
    #    MPEG-2 TS (H.264/MPEG-4 AVC, AAC LC)
    #    AVI
    #    - Motion JPEG (Linear PCM)
    #    - Motion JPEG (mu-Law)
    #    AVCHD (.m2ts / .mts)
    #    DivX
    #    WMV
    #    - VC-1(WMA Standard V2)
    # ============================================================================
    # [Supported video formats]:
    # Here we declare support (or lack) of DTS (here, none of the entries declare
    # DTS as a supported audio codec)
    #Supported = f:mpegps|mpegts    v:mpeg1|mpeg2|mp4|h264    a:ac3|lpcm|aac|mpa        m:video/mpeg
    # No H264 for AVI files, plus specific mediainfo attributes, for better auto
    # detection. gmc is not supported here.
    Supported = f:avi|divx    v:mp4|divx|mjpeg        a:mp3|lpcm|mpa|ac3        m:video/x-divx        gmc:0
    #Supported = f:mp4    v:mp4|h264        a:ac3|aac        m:video/mp4
    # WMV files are supported, but not with 5.1 audio: (hence the n:2)
    #Supported = f:wmv    v:wmv|vc1        a:wma        n:2        m:video/x-ms-wmv
    # [Supported audio formats]:
    #Supported = f:wav        a:dts|lpcm        n:6        s:48000        m:audio/wav
    #Supported = f:wav        n:2        s:48000        m:audio/wav
    Supported = f:mp3        n:2        m:audio/mpeg
    # Apple lossless not supported
    #Supported = f:aac        n:2        a:(?!alac).+        m:audio/x-m4a
    #Supported = f:wma        n:2        m:audio/x-ms-wma
    #Supported = f:atrac      n:2        m:audio/x-oma
    # [Supported image formats]
    Supported = f:jpg        m:image/jpeg
    Supported = f:png        m:image/png
    Supported = f:gif        m:image/gif
    Supported = f:tiff       m:image/tiff
    Last edited by a moderator: Feb 2, 2013
  10. renegadechic

    renegadechic Active Member

    Sep 10, 2008
    I have been interested in this kind of development for quite a long time. In an ideal world i would have all my data stored on my NAS be it films, music, videos, pictures and roms. Picklelauncher is great but within the code it restricts access to hidden files specifically .gvfs . This has meant that when trying to store roms on my NAS and play them on things like snes9x, i havent been able to access the files. Is there potential extension of PLUM to be used on game frontends, etc? Since I don't play my pandora much on the go, the ability to access all my files more easily at a central location without always copying and pasting would be pretty fantastic.
  11. Eight Bit

    Eight Bit Hardcore Member

    Nov 16, 2008
    Amsterdam, Netherlands
    It crashes when I start it with wifi switched on. When WiFi is off it does start but renders it useless :(
  12. Neelix

    Neelix Insecticidal Maniac

    Jan 8, 2011
    Melbourne, Australia
    For that you could place a symlink in your home folder that points to the .gvfs folder, that should get around the issue of it being hidden.

    ln -s .gvfs mnt Then just point picklelauncher to ~/mnt/NASdrivename/

    - Neelix
  13. freamon

    freamon Active Member

    Apr 13, 2011
    Alternatively, picklelauncher has a "show_hidden" entry in its config.txt file - if you set that to "1", it shows stuff like .gvfs up. The file'll be in the PND's appdata directory.

    Emulator front-ends is not the kind of thing I could extend PLUM for - it only sees what a media server running on a NAS shows it (e.g. films and music).

    Oh. Anything in /tmp/pndrun_plum.out? What media server do you have? Is it crashing when it finds the server, or straight away?

    Please could someone else try it? Just to see if it crashes on start up or not, you don't need a media server running.
  14. JeanLouSchmidt

    JeanLouSchmidt Member

    Jul 3, 2007
    Paris France
    It works with my mediatomb setup,

    I've been able to watch 720p movie, fast forward/backward crash mplayer but if I dont touch anything after the videos starts, it plays normaly.

    Another great app !
  15. superatarian

    superatarian Member

    Jun 20, 2009
    Works great with my video files on my NAS. Nice to be able to see them on my Pandora. Too bad I cannot display my photos. Will this ever be fixed?
  16. freamon

    freamon Active Member

    Apr 13, 2011
    Yes, but not anytime soon. Sorry. :(
  17. Creature XL

    Creature XL Active Member

    Jun 12, 2004
    Started using it today as my Samsung TV I am using now for DLNA stuff (Videos, Music from my Pogo-Plug using minidlna) is not that great.

    For music "audacious" is used. However, PLUM always starts a new instance of audacious. What would be nice is to "enque" the selection to the currently playing "audacious".

    To offer a choice "play/enque" would be perfect I guess.

    For now I am trying to change the "audacious2.sh" to use "-e" option and I hope it always enques the selection.


    in the mean time I succeeded modifying the "audacious2.sh" script. However, it seems to start a new instance of "audacious" every time and enques the file to the last playlist. But even IF it would work as expected, it's still tiresome to restart "PLUM" for each file. As it is only a modified launcher that's what one should expect :)
    Last edited by a moderator: May 18, 2013
  18. superatarian

    superatarian Member

    Jun 20, 2009
    That is fine. Take your time and get it right. Love the program. Thanks alot.
  19. lingenfr

    lingenfr Member

    Mar 17, 2009
    This sounds like a great project. I've got a few settop boxes and my MBP running Plex.
  20. Zero3K

    Zero3K Active Member

    Sep 27, 2003
    How do I get it to detect the DLNA server that I have running on my PC using my Wireless connection which is on a different subnet?

    EDIT: I fixed it by disabling DHCP on the 2nd Router and connecting it a LAN Ethernet Port instead of the WAN (Internet) Ethernet Port.
    Last edited by a moderator: Jun 9, 2013

Share This Page