iZAP-Videos, Full featured videos plugin v3.61b

Release Notes

Release 3.61b

Cool enhancement

  1. We decided to removed "izap_videos" from URL. now you can enjoy urls like "www.xyz.com/pg/videos/xxxxx". Complete branding for you :).


  1. Small fix in video play page for elgg 1.6.1 and elgg 1.5

Release 3.6b

In the previous release we added the support to monitor the actual ffmpeg process to be sure about if queue is running or not. But that was behaving different on different server configurations (dual core, cord core). Number of cores effect on the number of threads of ffmpeg and hence background processes. So that's why it was behaving differently on different flavor of servers. To over come this, we stop this monitoring and start to see the queue status via sqlite db. And i tested it alot here, and it's working perfectly and now we also restored windows support. WAMP is tested with this version.

Release 3.55b:

How do we planned stability in this version

In this version we have removed complex video conversion preset command and use simple ffmpeg command "ffmpeg -y -i [inputfile] [outputfile]". I setup a testing lenny instance of a server. than simply install ffmpeg using lenny package manager. And setup elgg with izap_videos. And it was working perfectly there was not any issue. Please post your feedback. And if it works for you. than post your server environment and give us one recommendation. As we will reach to the recommendation of 20. We will change this beta release to stable one.

  1. You can control plugin setting either you want to keep original video file after conversion
  2. Sqlite implementation to cut down all background processing.
  3. More control in queue management.
  4. Implemented Trash, This will just put videos in trash having any issue. it could be ffmpeg supporting libraries. Admin can delete them or can restore them after fix.
  5. Cron implementation to re-trigger queue in case of sudden interruption in the queue. You can manage cron timing according to your need.

Upgrading from previous release:

  1. Backup your database and izap_videos folder.
  2. Disable izap_videos plugin from your admin panel.
  3. Download and unzip izap_videos version 3.5 and place it in mod directory.
  4. Re-enable this new izap_videos plugin from you admin panel.
  5. You may need to re-enable ON-SERVER support from setting tab of izap_videos plugin settings.
  6. Clear simple cache.

New installation:

  1. Download and unzip the plugin in your mod dir.
  2. Enable it from admin panel.
  3. Clear simple cache.

ONSERVER Prerequisites:

  1. PDO sqlite drivers must be installed. This release and all future release will support queue management using PDO sqlite.
  2. ffmpeg and all supporting libraries.

Optional Prerequisites:

  1. notifications p lugin
  2. crontrigger plugin
  3. messages plugin

Optional plugins will give you better control over izap_videos plugin. These optional plugins are only required for ONSERVER support. If you leave them, izap_videos will yet to work with its basic functionality.

Bug fixes:

  1. Access control of uploaded video.
  2. Cutdown elgg-db communications to save resources
  3. Delete video entity will also delete all related media.


  1. Elgg 1.5
  2. Elgg 1.6
  3. Elgg 1.7a
  4. Elgg 1.7

Operating system compatiblity:

  1. *nix (confirmed)
  2. Windows (working perfectly tested with WAMP)

We are releasing beta release so we could collect feedback from all of you. Post your tickets at https://izapvideos.googlecode.com

I am twitting on: http://www.twitter.com/the_izap

I am blogging at: http://www.tarunjangra.com

Follow below our group discussion:


  • @iionly:
    Thanks for your reply. I got "settings" inclusion problem. But yet i couldn't re-produce tidypic conflict. I have elgg 1.7.1 + tidypic 1.6.8  + izap_videos 3.61b. I tried tidypic settings options. But failed to re-produce conflict problem.


  • Hi,

    Works great for me on 1.7.1.  No problem loading and playing flv videos. Super slick. Called my server company and they installed PDO SQLite drivers

    But several questions ( am somewhat of a newbe ).

    Where are videos stored? You mention an izap_videos folder in a posting above. I see the one in mod but is there a data folder somewhere where the FLV's are stored?

    What formats will it accept for conversion?  I tried MOV, MP4 and SWF but none would convert.

    How do I empty the video conversion queue (contains failed attempts)?

    Is there a progress bar when loading or converting a video? I didn't see one.

    In the setup screen, there are comands like:  /usr/bin/ffmpeg -y -i [inputVideoPath] [outputVideoPath].

    Do I have to provide those paths or are they automatically reconcilled by the software?

    I'm not that familiar with ffmpeg.  Do I have to edit these settings each time I want to convert a different kind of video format?

    Thats my laundry list of questions.  Any help would be greatly appreciated.

    Thanks for a great plugin.



  • I put the id of thumbnail in tidypic's plugin settings. When i click "submit" button, large corresponding image is appeared below the field and i hope, it also created new thumbnail. But i didn't get any token error. when i used current version of "izap_videos 3.61b".

  • Well... maybe the order of the plugin is causing the problem. I get this error even with Elgg 1.6.2 (and it surely should appear with this version at all!). If izap_videos is disabled, the error doesn't occur and tidypics works fine in Elgg 1.6.2 and Elgg 1.7.1.


    The videos are stored in the user's data directories, i.e. in the corresponding subdirectories of the Elgg data dir.

    According to izap_videos's Wiki on code.google.com the supported formats are 3gp, mp4, avi, flv , wmv, mpeg.

    The only way to delete the queue is to delete the videos' entries in the video section (at least I know no other way).

    You will have to provide the paths to ffmpeg and php in the admin section yourself (most likely /usr/bin/ or /usr/local/bin/).

    The settings work with all different formats of videos, but they depend on the version of ffmpeg installed on the server. Some parameters might not work on all systems.

  • @iionly: I will do more investigation on this issue.

  • iionly thanks

    I'm almost there thanks to your help.  The server analysis screen shows everything setup correctly.

    When i tried to load an wmv video the thumbnail gets created ok so ffmpeg is doing its thing.

    The video is queued up correctly but never gets converted.  Its a 2.6 mbyte file so size shouldn't be an issue.

    The ffmpeg version is SVN-r16119 if that means anything.

    Thanks again,


  • @MontanaMike:

    Do you use the "simple" command, i.e. no parameters apart from input/output file?

    This might be the reason for the failure. I had the same problem with some movie files, too, if I didn't define audio encoding settings. Too "optimized" parameters might also be a problem. Sometimes the preset might also not be available or ffmpeg was compiled without preset support.

    The command I currently use is (SVN-r20523):

    /usr/local/bin/ffmpeg -y -i [inputVideoPath] -vcodec libx264 -vpre hq -b 300k -bt 300k -acodec libfaac -ar 22050 -ab 48k [outputVideoPath]

    I also disabled the crontrigger in izap_videos admin settings.

  • @iionly

    Thanks for the assistance.

    Unfortunately it didn't fix it.

    I looked at the server analysis page and it said it tested the "simple" command using a test avi video.  I found the test avi video in my data folder and submitted it manually.  It didn't work.  So I'm not sure its the ffmpeg syntax thats broken.  If the test avi is converted when the server analysis page is openned and not when I submitt it using the add video processs, the error would seem to be in the code.

    I'm at a loss to what try next.

  • @iionly

    So to continue. The problem, like a number of others on this form, seems to be that the queue doesn't start.  Interestingly, the thumbnail does get created.


  • @MontanaMike:

    Are there any entries in the queue or on the trash tab left? This might block the conversion of other videos.

    You can test the upload of videos by using a FLV file. This won't be converted by ffmpeg but used directly. So if this works then you know that the upload of video files is not the problem in the first place.

    I don't know what the server analysis really does. As far as I rememeber the test video didn't work with the simple command on my site either even if the server analysis tab showed no problems.

    Have you entered the correct path to ffmpeg? What might also help is to enter the same path for php. With different paths it didn't work on my site either. Fortunately, php is also available at /usr/local/bin in my case.

    As I mentioned the conversion might fail if there are no audio parameters entered.

    You might try the conversion with a test video and the command (path might have to be adjusted):

    /usr/local/bin/ffmpeg -y -i [inputVideoPath] -ar 22050 -ab 48k [outputVideoPath]

    If this works you might want to test adding parameters step-by-step. Maybe libfaac is not available. In this case you could try to replace "-acodec libfaac" with "-acodec aac". If the HQ preset doesn't work, you can try to replace "-vpre hq" for example with "-vpre default" or "-vpre baseline", but the video quality will be not good then.

  • @iionly

    I am able to add flv videos just fine except I haven't been able to get thumbnails to show.

    The paths to ffmpeg and php are the same  /usr/local/bin

    The queue shows the avi video and an flv version of same filename with 0 B size

    There's nothing in trash.

    On the settings page, in red, next to the "on server videos" checkbox it says "Enable PDO sqlite drivers to use onsrever feature". 

    I checked with my server host company and I did a phpinfo on my server to confirm the drivers are installed so should the message stay there or is this an indication that its not being recognized?

    I changed the ffmpeg to your suggestion but no change.

    I've never seen the queue status say anything other than "not running"

    I put an echo "here" line in the function izapRunQueue_izap_videos() to see if its ever called and it doesn't seem to be.

    Should simplecache and filepath cache be disabled?

    I appreciate all your help. I just may have to limit videos to flv only.



  • It should create thumbnails also if you upload FLV files.

    If there are entries in the queue left it might block any further conversions/operations of izap_videos. Delete these videos in the video section and the entries in the queue should vanish (also all corresponding video files uploaded to the server).

    The "Enable PDO..." message is alright. It's just a hint that you have to have PDO enabled if you want to use onserver videos.

    You might have to set up the izap_videos plugin again. Maybe something in the queue.db file is wrong. I had some problems in the beginning, too, and I'm enabling/configuring izap_videos in the following way:

    • disable izap_videos,
    • disable simple cache and filepath cache (it works with cache activated later on but it might lead to problems during the configuration of the plugin),
    • delete the izap_queue_db folder in the elgg data directory,
    • enable izap_videos again,
    • run upgrade.php in /mod/izap_videos (it won't hurt),
    • enable onserver videos support,
    • configure the video settings (what ffmpeg command are you using now?),
    • enable simple cache and filepath cache again.

    Hopefully it works then.

  • @iionly

    Progress, Yeah!

    I followed your steps precisely. Now when I upload an FLV video, it makes the thumbnail correctly. Cool. Thanks you very much.

    I then tried the test avi video but that didn't work.

    Here's the code I'm currently using.

    /usr/local/bin/ffmpeg -y -i [inputVideoPath] -ar 22050 -ab 48k [outputVideoPath]


  • @Mike:

    did the conversion fail or did only an entry in the queue remain? I might have found a problem with izap_videos in Elgg 1.7.1. You should try it again and add parameters one at a time to find a working command. But the queue must be empty or the conversion won't even start.

    Possible parameters to add... it all depends on the version of ffmpeg what might work:

    -vcodec libx264 and later the -vpre hq parameter,

    -acodec libmp3lame or -acodec libfaad.



    Possible bug:

    I'd upgraded ffmpeg on my test server lately (to version 0.5.23539) and had to adjust the ffmpeg command parameters to get it working again. It worked on Elgg 1.6.2, but when I tried the same in Elgg 1.7.1 today I found a problem. I don't think the problem is due to the new version of ffmpeg but once again a problem with the queue. The conversion of an uploaded video finished and the video can also be watched on the site. But there remains an entry in the queue (filesize of uploaded video and converted video changes to 0Byte after the conversion is finished). When I upload another video afterwards, this video won't start to convert. As there's no reset button for the queue the only way to clean the queue is to delete the video that was uploaded before. Re-trigger the queue via cron doesn't work either. As I said, it works fine with Elgg 1.6.2 on the same server with the same settings, so it might be a problem in connection with Elgg 1.7.1 only.

  • @iionly

    The conversion failed.  I checked the data folder and while the thumbnail png is there, the video isn't.

    I'm experimenting with some of the parameters as you suggested and I'll let you know what I find out.


  • @iionly

    I manually ran the script izap_convert_video.php and it converted the avi test video just fine.

    So apparently, the queue is never getting called.  This sounds like a cron issue to me.


  • @iionly

    I setup my cron server to email me whenever a cron process executed. Here is what I got.

    /bin/sh: '/usr/bin/GET': No such file or directory

    So, does the izap plugin set this up or do I set this up manualy and what should it be.  I think this might be the problem. 

    Here's what my cron jobs look like.


  • @MontanaMike:

    In the crontab example provided by Elgg GET is a variable that has to be assigned with an available command. Most likely wget will be available:


    or better

    GET='/usr/bin/wget --output-document=/dev/null'

  • Does the ELGG cron job generate any output.  I've got mine setup to generate an email to me when it runs but my IT folks says email is only sent when the cron generates output. I'm not getting any emails. I'm trying to understand how this works and how to verify that the cron job is actually causing the queue to run.  Any thoughts?

  • Sorry to be a nusance on this. I'm sure you can tell I'm a newbe.

    If I run http://www.connectmontana.net/pg/cron/minute/ from my browser, should that accomplish the same thing as the cron job?   Should it start the queue processing?


  • @MontanaMike:

    I don't know if the cronjobs produce output, but if the commands defined in the cronjobs contains >/dev/null all possible output will go to nirvana anyway. Maybe that's the reason you don't get emails.

    I've notived that the last entry visible in the image above for your crontab for @hourly looks strange, i.e. the parameters for hour, day etc. are filled with the command that should be executed. I dont know if the @hourly, @daily etc. parameters can be used if you configure the cronjobs in CPanel. I've filled all the time fields manually.

    A useful plugin for checking the cronjobs of Elgg is the CronCheck plugin (http://community.elgg.org/pg/plugins/jdalsem/read/484590/croncheck). You will see when the jobs have been executed the last time at the bottom of the SiteAdministration page.

    Regarding the izap_videos queue I'm beginning to think that there's a bug with starting/reseting the conversion queue that only occurs in Elgg 1.7.1 while it runs fine in Elgg 1.6.2. The re-triggering of the queue seems to have no effect at all. On my test site the videos get converted correctly and can be watched, but there remains an entry in the queue that blocks subsequent conversion jobs. I've not managed to reset the queue. The entry only vanish if the video is deleted, but that's not useful of course.

    I've noticed that a reset option has been implemented in the latest development version. Hopefully, the next version of izap_videos will be released soon and maybe the problems with the queue will end with this version.

  • @iionly

    Installed croncheck.  Thanks

    Apparently the cronjob is firing and the process is registered so I think you're right.  There must be a in starting the queue processing.  On my test site the queue is never started and the video is never converted. Hopefully they fix it, as you say, on the next release of izap.

    Thanks again for all your help.


  • @iionly

    I checked the error log to see if the cron process was throwing an error. Here's what I found.

    [11-Jun-2010 13:06:02] WARNING: 2010-06-11 13:06:02 (PDT): "_exec() [<a href='function.-exec'>function.-exec</a>]: Permission Denied" in file /home/eiggsma/public_html/mod/izap_videos/lib/izapLib.php (line 320)

    Line 320 code:

    exec($PHPpath . ' ' . $CONFIG->pluginspath . 'izap_videos/izap_convert_video.php izap web > /dev/null 2>&1 &', $output);

    My php isn't strong enough to figure out what's going wrong here. Any thoughts.

    I added some debug code to echo out the value of output and it was empty.



  • @izap Please add a list of supported sites in the discussions group. thnx.

  • @IZAP

    I have 1.7.1 and am unable to convert non-flv videos. I'm using your test video as a test.  I've debugged the problm down to a line in a file as shown in the code below. Its apparently a permissions issue.   I've set the permissions on the data folder where videos are stored to 777.  Also, the thumbnail gets created and stored successfully.   The config->pluginspath resolves correctly.

    Here is the error message from the log and the line of code causing it.

    [11-Jun-2010 13:06:02] WARNING: 2010-06-11 13:06:02 (PDT): "_exec() [<a href='function.-exec'>function.-exec</a>]: Permission Denied" in file /home/eiggsma/public_html/mod/izap_videos/lib/izapLib.php (line 320)

    Line 320 code:

    exec($PHPpath . ' ' . $CONFIG->pluginspath . 'izap_videos/izap_convert_video.php izap web > /dev/null 2>&1 &', $output);




We are leading elgg providers. We have implemented complex combination of applications like "elgg + elasticsearch + cloud infrastructure + comet server for active pages"


  • Category: Media
  • License: GNU General Public License (GPL) version 2
  • Updated: 2015-3-13
  • Downloads: 61243
  • Recommendations: 95

Other Projects

View iZAP's plugins