Japanatron Logo

The open source stuff that JomSocial uses to convert and render video uploads (ffmpeg) also supports audio files.  I thought it would be cool to modify JomSocial to allow audio files to be used in its videos section.  It actually wasn't as hard to figure out as I thought it would be.  Please let me know if you have a better way to do this.  It would be cool if I could figure out how to customize the dull background ffmpeg puts on the "video," but at least it works.  Anyways, here's what I did...

* Find this file --> /components/com_community/helpers/videos.php
* Find the section that lists the MIME types that will be accepted
* Change / add MIME types as necessary

For example, I added this to videos.php:

$mimeType= array(
'audio/mpeg',
'video/x-flv',
'video/mpeg',
'video/mp4',

* You may also want to modify the language file so that audio files are listed as allowed uploads.  This just tells those uploading that they're allowed.

UPDATE 1
Something changed in a later version of ffmpeg, which broke JomSocial video uploads.  The wording on the ffmpeg version / copyright info changed, so some code modification was necessary to fix it.

* Go to a terminal on your server and type ffmpeg -version to see what the version / copyright info wording looks like.
* Edit this file --> /components/com_community/libraries/videos.php and look for the "hasFFmpegSupport" section.
* In my case I had to modify it to look like this:

function hasFFmpegSupport()
{
//return JFile::exists($this->ffmpeg);
$cmd= $this->ffmpeg . ' -version 2>&1';
$output= $this->_runCommand($cmd);
$hasVersion= JString::strpos( $output, 'ffmpeg version' );
$hasCopyright= JString::strpos( $output, 'the Libav developers' );

UPDATE 2
Newer versions of JomSocial have an additional file extension check upon upload, so 1 more change is necessary to get it working.

* Find the section below in file /components/com_community/helpers/videos.php, and add the file extensions you wish to support.  I added mp3 below as an example.

public function getValidExtensionType()
{
$extensionType= array(
'3g2',
'3gp',
'asf',
'asx',
'avi',
'flv',
'mov',
'mp3',
'mp4',

Related Articles

Adding iTunes to Joomla Stalke...

The Joomla extension Stalker is awesome, but oddly enough it doesn't have iTunes as one of the default available networks.  If you're using the component, you c...

JomSocial - How to Disable Cov...

I don't particularly like Facebook's cover photo feature, so I didn't particularly like it when JomSocial followed suit.  Here's how to disable JomSocial's cove...

Joomla - YouTube Videos Too Bi...

PROBLEMAfter updating my Joomla Gavick template to the latest version, the embedded YouTube videos appeared massively large on desktop browsers.  Mobile browser...

Joomla 2.5 - Horizontal Footer...

For some reason Joomla 2.5 lost the ability to show nice horizontal menus in the footer; instead the items appear vertically.  I personally used this in Joomla ...