Kmaiti

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Saturday, 7 August 2010

Install ffmpeg mplayer flvtool2 yamdi x264 theora mp3lame vorbis ogg faac

Posted on 21:09 by Unknown
Guys,

Here are the steps those I followed :

=======
This is a tutorial to enable video sharing support on Centos servers.
This should install ffmpeg, mplayer, mencoder, flvtool2, yamdi, x264, theora, mp3lame, vorbis, ogg, faac, faad2, xvid . These tools will enable on your server:
video conversion
thumbnail generation
FLV meta injection (flvtool2, yamdi)
extra codecs (x264, theora, mp3lame, vorbis, ogg, faac, faad2, xvid)
This is functional and we update it each time we configure a new server.
Installation is done using the “root” account.
Attention: If you copy and paste commands below, make sure “-” are not converted to “.”. If these get converted, edit “.” back to “-”. Some options use 2 * “-”.
GIT
(required to get X264)
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
cd /usr/local/src
wget http://www.kernel.org/pub/software/scm/git/git-1.6.0.4.tar.gz
tar -zxvf git-1.6.0.4.tar.gz
cd git-1.6.0.4
make prefix=/usr/local all
make prefix=/usr/local/ install
git –version
And git manpages:
cd /usr/local/src
wget http://www.kernel.org/pub/software/scm/git/git-manpages-1.6.0.4.tar.gz
cd /usr/local/share/man
tar -zxvf /usr/local/src/git-manpages-1.6.0.4.tar.gz
YASM
YASM is a modular assembler, it is required by the x264 package.
cd /usr/local/src/
wget http://www.tortall.net/projects/yasm/releases/yasm-0.7.0.tar.gz
tar zfvx yasm-0.7.0.tar.gz
cd yasm-0.7.0
./configure
make && make install
cd ..
X264

cd /usr/local/src/
git clone git://git.videolan.org/x264.git
cd /usr/local/src/x264
./configure –enable-shared –prefix=/usr
make && make install
Essential Codecs
cd /usr/local/src/
wget www3.mplayerhq.hu/MPlayer/releases/codecs/essential-20061022.tar.bz2
tar jxvf essential-20061022.tar.bz2
mkdir /usr/local/lib/codecs/
mv /usr/local/src/essential-20061022/* /usr/local/lib/codecs/
chmod -R 755 /usr/local/lib/codecs/
LAME
cd /usr/local/src/
wget easynews.dl.sourceforge.net/sourceforge/lame/lame-3.97.tar.gz
tar zxvf lame-3.97.tar.gz
cd /usr/local/src/lame-3.97
./configure
make && make install
OGG
cd /usr/local/src/
wget downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
tar zxvf libogg-1.1.3.tar.gz
cd /usr/local/src/libogg-1.1.3
./configure –enable-shared && make && make install
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
VORBIS
cd /usr/local/src/
wget downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz
tar zxvf libvorbis-1.1.2.tar.gz
cd /usr/local/src/libvorbis-1.1.2
./configure && make && make install
Theora
cd /usr/local/src/
wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.bz2
tar jxvf libtheora-1.1.1.tar.bz2
cd /usr/local/src/libtheora-1.1.1
./configure –prefix=/usr
make && make install
FAAC
cd /usr/local/src/
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
tar zxvf faac-1.28.tar.gz
cd /usr/local/src/faac-1.28
./configure –prefix=/usr
make && make install
FAAD2
cd /usr/local/src/
wget http://downloads.sourceforge.net/faac/faad2-2.6.1.tar.gz
tar zxf faad2-2.6.1.tar.gz
cd faad2
autoreconf -vif
./configure –disable-drm –disable-mpeg4ip
make && make install
Xvid
cd /usr/local/src/
wget http://downloads.xvid.org/downloads/xvidcore-1.2.1.tar.gz
tar zxfv xvidcore-1.2.1.tar.gz
cd xvidcore/build/generic
./configure
make && make install
Before installing ffmpeg, setup some linking for scripts that look in certain locations for codecs:
ln -s /usr/local/lib/libavformat.so.50 /usr/lib/libavformat.so.50
ln -s /usr/local/lib/libavcodec.so.51 /usr/lib/libavcodec.so.51
ln -s /usr/local/lib/libavutil.so.49 /usr/lib/libavutil.so.49
ln -s /usr/local/lib/libmp3lame.so.0 /usr/lib/libmp3lame.so.0
ln -s /usr/local/lib/libavformat.so.51 /usr/lib/libavformat.so.51
ln -s /usr/lib/libtheora.so.0.3.10 /usr/local/lib/libtheora.so.0.3.10
ln -s /usr/lib/libx264.so.80 /usr/local/lib/libx264.so.80
ln -s /usr/lib/libtheora.so.0.3.10 /usr/local/lib/libtheora.so
ln -s /usr/lib/libx264.so.80 /usr/local/lib/libx264.so
FFMPEG (download latest from SVN)
cd /usr/local/src/
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
cd /usr/local/src/ffmpeg/
./configure –enable-gpl –enable-shared –enable-nonfree –enable-libmp3lame –enable-libvorbis –enable-libxvid –enable-libx264 –enable-libtheora –enable-libfaac –enable-libfaad
make && make install
export LD_LIBRARY_PATH=/usr/local/lib/
FFMPEG configure options use 2 x “-”.
MPLAYER
cd /usr/local/src/
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
cd /usr/local/src/mplayer
svn update
cd /usr/local/src/mplayer
./configure && make && make install
cd ..
FLVTOOL2
First install Ruby from WHM.
cd /usr/local/src/
wget rubyforge.org/frs/download.php/9225/flvtool2_1.0.5_rc6.tgz
tar zxvf flvtool2_1.0.5_rc6.tgz
cd /usr/local/src/flvtool2_1.0.5_rc6/
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
YAMDI
cd /usr/local/src/
wget http://downloads.sourceforge.net/project/yamdi/yamdi/1.4/yamdi-1.4.tar.gz?use_mirror=ufpr
tar zxf yamdi-1.4.tar.gz
cd yamdi-1.4
gcc yamdi.c -o yamdi -O2 -Wall
mv yamdi /usr/bin/
yamdi -h
=======
INSTALLATION RESULTS
mencoder: /usr/local/bin/mencoder
mplayer: /usr/local/bin/mplayer
yamdi: /usr/bin/yamdi
Add these shortcuts to /usr/bin if you need these there by default:
mencoder to /usr/local/bin/mencoder
mplayer to /usr/local/bin/mplayer
========

try :)
Read More
Posted in | No comments

Thursday, 5 August 2010

How to convert mp4 file to flv file on linux machine using the ffmpeg binary ?

Posted on 21:50 by Unknown
Guys,

I executed the following command to do the same:

====
root@starslite [~]# ffmpeg -i vdosong.mp4 -f flv -vcodec flv -r 30 -b 512000 -s 400x300 -aspect 1.33333333333 -acodec libmp3lame -ab 128000 -ar 22050 -map_meta_data /home/user/public_html/files/videos/testme.flv:/home/user/vdosong.mp4 /home/user/public_html/files/videos/testme.flv
====

PS : /home/user/public_html/files/videos/testme.flv is the path of out put file and
vdosong.mp4 is source file inside the current directory(ie /home/user/).

You can also try to use padding. Here is the exact command :

=====
root@starslite [~]#ffmpeg -i vdosong.mp4 -f flv -vcodec flv -r 30 -b 512000 -s 400x300 -aspect 1.33333333333 -vf 'pad=0:0:0:0:black' -acodec libmp3lame -ab 128000 -ar 22050 -map_meta_data /home/liveghos/public_html/files/videos/testme.flv:/home/liveghos/vdosong.mp4 /home/liveghos/public_html/files/videos/testme.flv
=====

Try :)
Read More
Posted in | No comments

How to install pdo_mysql module with php on 64 bit linux machine?

Posted on 21:40 by Unknown
Guys,

The PHP Data Objects (PDO) extension defines a lightweight, consistent interface for accessing databases in PHP. Each database driver that implements the PDO interface can expose database-specific features as regular extension functions. Note that you cannot perform any database functions using the PDO extension by itself; you must use a database-specific PDO driver to access a database server.

PDO_MYSQL is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to MySQL 3.x and 4.x databases.

I referred the followings steps :

=======
1) Download the PDO package to server :

#wget http://pecl.php.net/get/PDO

2) Manually build and install the PDO extension:

# tar xzf PDO-0.2.tgz
# cd PDO-0.2
# phpize
# ./configure
# make
# make install
# echo extension=pdo.so >> /usr/local/lib/php.ini

3) rebuild PHP along with the drivers for PDO_mysql.

CUSTOM_PHP_FLAGS=”--with-pdo-mysql” /scripts/easyapache

4) check php module using php -m command
========

try :)
Read More
Posted in | No comments

Why clipbucket or ffmpeg is unable convert video files using ffmpeg on linux machine?

Posted on 20:03 by Unknown
Guys,

I have tired to upload the video files in the clipbucket script enabled site but every time it's not converting the video file to flv file. I logged in the admin area and saw the conversion log(Did't get any server log). The -vf option of ffmpeg was causing to convert the mp4 file to flv file for my case. I have checked the issue as per the basic concept. What I actually did I searched the exact file which was uploading the video file(upload.php). I had conception like some file or code in a file which was converting the video. So, I started to get my clue from upload.php and got another included file(./includes/classes/conversion/ffmpeg.class.php). This contains ffmpeg conversion procedures where -vf option has implemented. So, I searched the particular line and commented the -vf enabled logic.


I wanted to go beyond that. I manually uploaded one .mp4 file and tried to convert it to .flv using the ffmpeg binary(via command prompt). I got same error messages. So, I assured myself that I have to disable the -vf option since it was successfully converting without -vf or padding option(I dont' know how the developers think here!).


Here are those codes I commented.

============
# video size, aspect and padding

$this->calculate_size_padding( $p, $i, $width, $height, $ratio, $pad_top, $pad_bottom, $pad_left, $pad_right );
# $use_vf = config('use_ffmpeg_vf');
$use_vf='no';
if($use_vf=='no')
{
$opt_av .= " -s {$width}x{$height} -aspect $ratio -padcolor 000000 -padtop $pad_top -padbottom $pad_bottom -padleft $pad_left -padright $pad_right ";
}else
{
$opt_av .= "-s {$width}x{$height} -aspect $ratio -vf 'pad=0:0:0:0:black'";
}
============

Following is the exact command to convert the video file(mp4 to flv) via backend :

====
root@starslite [~]# ffmpeg -i vdosong.mp4 -f flv -vcodec flv -r 30 -b 512000 -s 400x300 -aspect 1.33333333333 -acodec libmp3lame -ab 128000 -ar 22050 -map_meta_data /home/me/public_html/files/videos/testme.flv:/home/me/vdosong.mp4 /home/me/public_html/files/videos/testme.flv
====

Here /home/me/public_html/files/videos/testme.flv is path of output file.

Note error message that I got :
====
-------------------------
Unrecognized option 'vf'
ERROR: No such file or directory - /home/sucess/public_html/files/videos/1282138755d3fab.flv
ERROR: /usr/lib/ruby/site_ruby/1.8/flvtool2/base.rb:259:in `initialize'
ERROR: /usr/lib/ruby/site_ruby/1.8/flvtool2/base.rb:259:in `open'
====

PS: I would like you to always try to find the solution from the basic concept and error messages :)
Read More
Posted in | No comments

How to limit CPU ususage for a process?

Posted on 00:43 by Unknown
Here are the steps those I followed :

Install cpulimit binary:-

Type the following commands to install latest stable release:
# cd /tmp
# wget 'http://downloads.sourceforge.net/cpulimit/cpulimit-1.1.tar.gz'
# tar -zxvf cpulimit-1.1.tar.gz
# cd cpulimit-1.1
# make
# cp cpulimit /usr/local/sbin/
# rm -rf cpulimit*

Note : You can search the latest tar file.

===
if gcc is not on the server, please run yum install gcc*. I got error here.
===

How do I use cpulimit?

To limit CPU usage of the process called firefox to 30%, enter:
# cpulimit -e firefox -l 30
To limit CPU usage of the process to 30% by using its PID, enter:
# cpulimit -p 1313 -l 30

====
PS:

[root@cy cpulimit-1.1]# cpulimit --help
Usage: cpulimit TARGET [OPTIONS...]
TARGET must be exactly one of these:
-p, --pid=N pid of the process
-e, --exe=FILE name of the executable program file
-P, --path=PATH absolute path name of the executable program file
OPTIONS
-l, --limit=N percentage of cpu allowed from 0 to 100 (mandatory)
-v, --verbose show control statistics
-z, --lazy exit if there is no suitable target process, or if it dies
-h, --help display this help and exit
[root@cy cpulimit-1.1]#
=====

Try :)
Read More
Posted in | No comments

Wednesday, 4 August 2010

How to install Mp4Box on 64 bit linux machine ?

Posted on 03:35 by Unknown
What is Mp4Box ?

MP4Box is a MP4 multiplexer. It can import MPEG-4 video, DivX, XviD, 3ivx, h264 etc, audio streams and subtitles into the .mp4 container. The end result is a compliant MP4 stream. It can also extract streams from a .mp4. MP4Box is a command line tool, but can be used with graphical user interfaces such as YAMB or my MP4box GUI.

What is zlib ?

zlib is a software library used for data compression. zlib was written by Jean-Loup Gailly and Mark Adler and is an abstraction of the DEFLATE compression algorithm used in their gzip file compression program.

Source: http://sourceforge.net/projects/gpac/files/

Download MP4Box and Libraries

#cd /root
#wget http://nchc.dl.sourceforge.net/project/gpac/GPAC/GPAC%200.4.5/gpac-0.4.5.tar.gz
# wget http://nchc.dl.sourceforge.net/project/gpac/GPAC%20extra%20libs/GPAC%20extra%20libs%200.4.5/gpac_extra_libs-0.4.5.tar.gz

Installing Zlib

#yast install zlib*
or
#yum install zlib*

Extract and Compiling MP4Box

#tar -zxf gpac-0.4.5.tar.gz
#tar -zxf gpac_extra_libs-0.4.5.tar.gz
#cd gpac_extra_libs
#cp -r * ../gpac/extra_lib
#cd ../gpac
#chmod +x configure
#./configure
#make lib
#make apps
#make install lib
#make install
#cp bin/gcc/libgpac.so /usr/lib

If everything goes smoothly.
You can verify it with the command below :

#/usr/bin/MP4Box -version

Try :)
------

Note : I got following error message during executing ./configure

-----
./configure: line 1286: /tmp/gpac-conf-14648-9347-16837.o: Permission denied
-----

I had setup another tmp directory for this installation. Just do following :

TEMP_DIR=/home/tmp or any other tmp directory.

O/P :
====
root@starslite [~/gpac]# which MP4Box
/usr/local/bin/MP4Box
root@starslite [~/gpac]# /usr/local/bin/MP4Box -version
MP4Box - GPAC version 0.4.5 (build 33)
GPAC Copyright: (c) Jean Le Feuvre 2000-2005
(c) ENST 2005-200X
root@starslite [~/gpac]#
====
Read More
Posted in | No comments

Tuesday, 3 August 2010

How to partition a linux drive or raw disk?

Posted on 03:13 by Unknown
Here are the steps those I followed :

servername : abc
New device attached : /dev/sdc //You'll view it by executing fdisk -l command.

Example :

====
root@abc [~]# fdisk -l

Disk /dev/sda: 251.0 GB, 251059544064 bytes
255 heads, 63 sectors/track, 30522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 274 2096482+ 82 Linux swap / Solaris
/dev/sda3 275 30522 242967060 83 Linux

Disk /dev/sdb: 251.0 GB, 251059544064 bytes
255 heads, 63 sectors/track, 30522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Disk /dev/sdc: 251.0 GB, 251000193024 bytes
255 heads, 63 sectors/track, 30515 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdc doesn't contain a valid partition table
root@abc [~]#
====

Steps to partition the disk :

=======
1.
root@sbc[/]#fdisk /dev/sdc
Command (m for help): d
Selected partition 4

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-30515, default 1): //press enter
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-30515, default 30515): //press enter
Using default value 30515

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Note : /dev/sdc1 has created here.
============

2.
root@abc [~]# mkfs.ext3 /dev/sdc1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
30654464 inodes, 61277926 blocks
3063896 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
1871 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: 547/1871
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 34 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
root@abc [~]#
---------------------------------

3.
mkdir /disk2
# mount /dev/sdc1 /disk2
# df -H
# vi /etc/fstab

Append as follows:

/dev/sdc1 /disk2 ext3 defaults 1 2
============


Task: Label the partition

You can label the partition using e2label. For example, if you want to labelthe new partition /backup, enter
# e2label /dev/sdb1 /backup
You can use label name insted of partition name to mount disk using /etc/fstab:

LABEL=/backup /disk2 ext3 defaults 1 2
========

That's it try :)
Read More
Posted in | No comments
Newer Posts Older Posts Home
Subscribe to: Posts (Atom)

Popular Posts

  • [a fatal error or timeout occurred while processing this directive] + cpanel
    Guys, Just check the cpanel log file and you'll get the clue from there. I got following messages : execute : tail -f /usr/local/cpanel/...
  • How to access the webalizer from the outside of the cpanel?
    Guys, I don't want to post this type of article since you'll get it from the Google. But still I did. I followed following steps : E...
  • How to store sftp log messages in custom file on RHEL 6?
    How to setup chrooted sftp account on RHEL 6? $groupadd sftponly $$useradd user123 $usermod -d /myhome -g sftponly -s /bin/false user123 $mk...
  • How to verify UDP packet communication between two linux system?
    Guys, Today, I had to check UDP packet communication between linux and a windows system. Main purpose of the windows system was to capturing...
  • How to enable php in apache on RHEL ?
    1. In order to enable php engine in apache, you should make sure php is installed in the system first. Then refer following steps : locate l...
  • WHM + http showing failed ?
    Guys, Please check the log of the apache server like : 1. tail -f /usr/local/apache/logs/error_log 2. check the http port in /usr/local/apac...
  • Details about NFS timeout on Red Hat Enterprise Linux 5
    There are two mount options for timeouts of an NFS request. # timeo: a timeout value. the unit is 1/10 seconds. # retran...
  • How do I determine if my x86-compatible Intel system is multi-processor, multi-core or supports hyperthreading?
    Guys, We need to know about multi-processor, multi-core or supports hyperthreading. Here are the details : Physical ID (Physical processor o...
  • How to configure apache-tomcat on linux box?
    Environment : RHEL 5.8 Package version : JDk 1.7.0_03 Apache tomcat : 6.0.35 Reference : http://www.puschitz.com/InstallingTomcat.html JDK s...
  • make: *** [install-webconf] Error 1
    Guys, I got this error message during configuring the nagios : Here is the exact error message. ======= root@server [/usr/local/src/nagios-3...

Categories

  • ACL
  • ESX
  • Linux
  • Storage
  • UCS

Blog Archive

  • ▼  2013 (5)
    • ▼  May (1)
      • NDMP communication failure error
    • ►  April (3)
    • ►  February (1)
  • ►  2012 (10)
    • ►  July (1)
    • ►  June (1)
    • ►  April (1)
    • ►  March (3)
    • ►  February (3)
    • ►  January (1)
  • ►  2011 (86)
    • ►  December (3)
    • ►  November (2)
    • ►  September (19)
    • ►  August (9)
    • ►  July (5)
    • ►  June (9)
    • ►  May (12)
    • ►  April (3)
    • ►  March (4)
    • ►  February (5)
    • ►  January (15)
  • ►  2010 (152)
    • ►  December (9)
    • ►  November (34)
    • ►  October (20)
    • ►  September (14)
    • ►  August (24)
    • ►  July (19)
    • ►  June (3)
    • ►  May (25)
    • ►  April (3)
    • ►  January (1)
Powered by Blogger.