Jump to content

Container Fields + Container Content Location on shared DB


Recommended Posts

Hi,

My company has an extensive database of songs--each record contains information on the song and also the ability to play it with a container field.  Currently, I have a folder of mp3s which is hosted at one ftp site while the db is hosted on a server computer in the cloud.  We are accessing fm using the cloud ip/fms.  There is a lag whenever we go to a new record in the db because it takes a second or two for the mp3 to load in the player.  (Even without auto play, it wants to load the mp3.)  

I am wanting to explore two options to get the mp3s to load faster:

1) Put the folder of mp3s on the server cloud computer where fms and the dbs are.  However, does each user then have to connect to the computer through finder?  (We are all on macs.)  Is there a way to avoid that?  I can't figure out Manage> Containers.

2) We are all using dropbox on our macs.  I can ask everyone to download the folder of mp3s to their local computer, but then every container path would be different as it would depend on their computer name, username, where they store the folder etc.  Is there a way to set up a calculation field to make this possible?  I can't wrap my head around it.

Thank you!

Currently using FM 17 Adv and FMS 16

Link to post
Share on other sites
9 hours ago, chikanyc said:

1) Put the folder of mp3s on the server cloud computer where fms and the dbs are.  However, does each user then have to connect to the computer through finder?  (We are all on macs.)  Is there a way to avoid that?  I can't figure out Manage> Containers.

Absolutely, under no circumstances, make a direct path from finder to where FMS stores its containers.  Container data is strictly for FMS to manage and no user should be able to have direct non-FM access to the container data files.

With that out of the way, I'm a little confused about your current setup.  How is the mp3 loaded into the container field from the ftp site?  Can you describe the mechanics here?  Perhaps show the script that does it?

Link to post
Share on other sites

Hi @Wim Decorte, thanks for your reply.  I have a field on my layout that is set up as a container field with:

  • the "Security container data externally" checked
  • "relative to [hosted location]/Files/Db Name/"
  • "Security storage" is also checked

I then have a script that:

Goes to audio field
Sets variable to calculate $filepath using the track title  (filepath is a on a mounted cloud drive that shows up in finder so all filepaths are the same for all users who connect to that drive. That cloud drive is mounted using a separate standalone app called Expandrive.)
Insert Audio/Video based on the $filepath

Our cloud server where fm is hosted is much faster than the location where our folders of mp3 is currently.  So i wondered, if the mp3s were on that same server computer, if the audio would load faster.  Alternatively, I wondered if everyone were to have that folder of mp3s downloaded locally to their computers, if the files would load faster but I'm not sure how to calculate the filepath based on user.

Thank you!

Link to post
Share on other sites

I have found that opening url to an mp3 file will play much faster then playing the audio from the container field. Also i believe the record is opened (locked) while the audio is playing/streaming.

Link to post
Share on other sites
5 minutes ago, chikanyc said:

So i wondered, if the mp3s were on that same server computer, if the audio would load faster.

I don't think anyone can answer this without performing a test. Note that you have several options here: place the files in container fields, using either internal or external storage, or keep your existing method of storing only the filename in the database and accessing the files on 'as needed' basis. Each has its pros and cons, and can have different results in terms of performance.
 

14 minutes ago, chikanyc said:

I'm not sure how to calculate the filepath based on user.

You can calculate the filepath on the user machine if you know where the user put the folder. If you can make sure that all users place their mp3 folder in their Documents folder (or in a known folder inside their Documents folder), then you can calculate the filepath easily using the Get(DocumentsPath) function.

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.