Uploading media (MP3) files

Question:

How do I upload my media for use with Centova Cast v3?

Answer:

Typically, media is uploaded either via the web-based file manager or via FTP.

The web-based file manager's upload form is very convenient, especially for new users who may not be comfortable using FTP client software. The process of uploading media via the file manager is described in the user's manual.

FTP is more suitable for uploading large numbers of files. If Centova Cast's FTP server has been installed and enabled, then the process of uploading media via FTP is very similar to that of uploading files to a web site:

  1. Connect to your server's IP address (or domain name) using an FTP client. (If you don't already have an FTP client, we recommend SmartFTP or WinSCP).

  2. Login to the FTP server using your Centova Cast stream's username and password. Note that this is not your "admin" account; you need to use the actual username and password you specified when creating the stream in Centova Cast.

  3. Upon logging in, you should see a "media" directory. Open the "media" directory and upload your media files (i.e., MP3s) into this directory.

  4. Once your media files have been uploaded, they will automatically appear within a minute or two in the media library in Centova Cast's web interface.

Troubleshooting

I cannot login via FTP. I get an "Authentication failed" error.

This can mean one of a few things:

  1. You are entering an invalid username or password. You need to use your Centova Cast account's username and password. Make sure that you're not using the Centova Cast 'admin' account, and that you're not accidentally using your source authentication password instead of your server password.

  2. If you are also using a web hosting control panel on the same server as Centova Cast, it's likely that the web hosting control panel's FTP server is running instead of Centova Cast's. You would need to install Centova Cast's FTP server on an alternate IP address or port if you wish to run both of them at once.

I cannot connect to my FTP server. I "connection refused" or "timed out" error.

This means that either:

  1. Your FTP server is not running, or
  2. You are entering the wrong IP address or hostname in your FTP client, or
  3. Your FTP server is blocked by a firewall

Ensure that your FTP server is running by logging in via SSH and running:

/etc/init.d/centovacast start-ftp

Then try connecting again. If it still fails, then the problem is either number 2 above (in which case you need to figure out the correct IP address or hostname) or number 3 above (in which case you need to ask your systems administrator to open the correct port).

I can login fine, but I don't see any "media" directory.

Do you see any directories at all? If you do see other files or directories, but no media/ directory, then this likely means that you have an alternate FTP server running on your server (eg: from a web hosting control panel) which happens to use the same username and password as your Centova Cast account.

See number 2 under "I cannot login via FTP. I get an "Authentication failed" error." above.

I can login fine, but I encounter an error when I try to upload.

Depending on the error message, this could mean one of a few things:

  1. If the error mentions disk quotas or disk space, it's likely that you've exceeded your disk quota. Delete some files and try again.

    It's also possible that the server itself is out of disk space. Again, free up some space on the server and try again.

  2. If the error mentions a permissions problem (such as "Permission denied", "Access denied", or similar) then your Centova Cast installation is likely damaged -- this would indicate a permissions problem with your /usr/local/centovacast/var/vhosts directory or the subdirectories/files it contains.

    Use the fixperms utility to correct this:

    /usr/local/centovacast/sbin/fixperms
    

Do I have to use FTP or the web-based file uploader?

No, Centova Cast does not require that you use these methods to upload media. In fact, Centova Cast does not care how you place your media on the server.

When a Centova Cast stream account is created, Centova Cast creates a directory named:

/usr/local/centovacast/var/vhosts/USERNAME/var/spool/media/

This is the media directory for the stream, and you simply need to place your media files in this directory to use them with Centova Cast. Centova Cast's FTP server automatically stores uploaded files in the directory above, but you can also place your media files there through other means. For example:

  • You could setup a Samba share to copy files over a local network from a Windows machine.

  • You could create bind mounts in the media directory to point to other directories on the server, thus allowing a single stream to use media from a number of different directories, or allowing multiple streams to share the same directory.

  • For server-to-server transfers, you could use rsync, scp, or similar to copy media directly into the media directory.

  • If your users already have a home directory on the server (perhaps created by a hosting control panel, for example), you could create a bind mount in the media directory to point to a subdirectory of the user's existing home directory. This would allow the user to use a single FTP account for both web hosting and streaming media.

Note that all of the above examples require varying degrees of setup and configuration outside of Centova Cast and are not officially supported by Centova Technologies; these are simply examples of options available to a skilled systems administrator.

After placing media files in the media directory manually, note that you will need to manually update the media library as (unlike uploads via FTP or the file manager) Centova Cast has no way of knowing you've added media. This can be done through the web interface:

  1. Login to the Centova Cast account via the web interface.
  2. Click AutoDJ->Media.
  3. Under the Options menu, click Manual library update.

Alternately, this can also be done from the commandline (via SSH) using the command:

/usr/local/centovacast/bin/ccmanage reindex USERNAME

Replace USERNAME with the username of the account.

Important note: Any media placed in a stream's media directory must be readable by the ccuser UNIX user account. It does not necessarily need to be owned or writable by the ccuser account, however you will definitely encounter errors if any of your media files (or the media directory itself) is unreadable.

FTP integration has not been setup. What do I do?

You have two options. Either:

  1. Setup FTP integration. After you disable any other FTP server on your machine, this can typically be done with a single command:

    /usr/local/centovacast/sbin/update --add ftp
    
  2. Use the web-based uploader in the file manager.

  3. Manually place your media on the server as described in the previous section.

My Centova Cast partition is too small. Can I place my media on another partition?

Yes. Please refer to this article for instructions.

Can I force Centova Cast to use media already on the server?

Yes. Please refer to this article.

My users have uploaded media to their home directories. Can Centova Cast use that?

Yes. Please refer to this article.

Can I pre-load a "default" set of media into my new client accounts?

Yes, please refer to this article.

NOTE: This article is for Centova Cast v3 only; an alternate version exists for Centova Cast v2.