Playing files over network

2007-08-12
2013-02-12
  • Nobody/Anonymous

    Hi,
    I have installed the program on two machines (1 Windows XP and 1 Vista). The XP machine has the access database, the covers and all my movies stored on it. On the XP machine, I added all the movies to the database. Ive shared the database folder and the movie folder on my network, and when adding the "file info" for the movie, I used the shared file path ie \\10.0.0.x\Movies\Movie1.avi . The movies play fine on the XP machine, but not on the Vista machine. The Vista box can view the movies and the covers (when the app is closed on the XP machine) but the play option does not work. I have selected the play button, but it it always greyed out. Have I done something wrong ? If so please help. This really is a great program, but I really need to be able to play across a network.

    Thanks in advance
    Bradley

     
    • Nobody/Anonymous

      Update, this does work if I map a drive pointing to the network path. Any idea why the "\\" network address does not work ?

       
      • Bro

        Bro - 2007-08-13

        Hi

        To make a guess, I'd say it's the media player that doesn't support it.
        When mapping a drive the "nework part" is hidden from the media player.
        Did you try diferent players?

        Bro

         
        • Nobody/Anonymous

          I didnt. The play button is grayed out.

          Ive looked at the source code and in the MovieManagerCommandSelect.java file (line 344 - 380) the file location is retrieved and tokenized.

          The stringTokenizer doesnt look like it would like network paths. Even if it did, I think it would read the first "\" in the path as an escape character and not an actual "\".

          To fix the problem, I added the following on line 382 (just above the line that reads "MovieManager.getDialog().toolBar.setEnablePlayButton(enable);")

          String  originalPath = additionalInfo.getFileLocation();
                 
          if (originalPath.substring(0,2).equals("\\\\")) {
              StringBuffer editedPath = new StringBuffer();
                     
              // loop through string and add extra \ if a backslash is found
              for (int i = 0; i < originalPath.length(); i++) {
                  String compareCharacter = originalPath.substring(i,i+1);
                  if (compareCharacter.equals("\\&quot;) ) {
                      editedPath.append("\\&quot;);
                  }
                  editedPath.append(compareCharacter);
              }
                 
              //check to see if file exists, if it does, enable play button
              if (new File(editedPath.toString()).exists()) {
                  enable = true;
              }
          }

          Ive recompiled and it seems to work.
          Regards
          Bradley

           
          • Bro

            Bro - 2007-08-14

            Cool!

            I'll test it out and add it to the CVS.

            I think the issu with media players not supporting network paths will still apply though.
            Which media player did you test this on.

            Thanks

            Bro

             
            • Nobody/Anonymous

              Ive tried it with Windows media player, Media player classic, nero showtime and power DVD.

               
              • Bro

                Bro - 2007-08-14

                And they all behave the same way?

                 
  • slycker

    slycker - 2010-06-29

    So what I found out may relate to this.
    In MySQL, backslash (\) is an escape character - and this becomes a headache for a network address (\\server\movies\).  Mysolution was far from elegant, but after fighting with mysql trying to get things to work, I did this:

    from a windows machine, I mapped a network drive to the movies, and added multiple movies (because for some reason adding multiple movies only works from local drives, while individual movies can be from a network).
    I then added the large movie collection
    Then, opening up the library.script file, I used a text editor to search and replace the drive with the location (ie, Y:\&nbsp; ->  \\server\movies\)
    I then had to convert to a mdb file and then export to an xml database (export to xml database didn't work straight from the hsql file, even before it was modified)
    I then created my mysql database from MMM using the mysql root login to ease permissions, and imported the xml database
    Finally, I created the new mysql user for movies, and granted the permission to the database so that it could be accessed from anywhere (not just the localhost).

    This may have been self-evident to some others, but I had to discover it.  Some of the database exporting issues, and ability to add multiple files from a network location may significantly streamline this process.

    I can now access the database from any machine, and can play them from any windows machine.  I'm still working on getting the mac player set up, though.

     

Log in to post a comment.