Closed GoogleCodeExporter closed 9 years ago
Did you try xuggle-xuggler-x86_64-linux.sh installer? I use x32 Ubuntu 10.04
and it works for me. I suggest you to review your current codec related
libraries. May be there are old version libs etc.
Original comment by vadym.vi...@gmail.com
on 27 Nov 2010 at 5:24
I tried the xuggle-xuggler-x86_64-linux.sh installer and it didn't work. Is it
because I'm using 64-bit linux?
Original comment by mahasen....@gmail.com
on 7 Dec 2010 at 5:36
Looks like It's problems with a lib in your OS. (/lib64/libc.so.6). I will
install xuggle on Ubuntu 10 64bit and then I give you feedback.
Original comment by vadym.vi...@gmail.com
on 18 Dec 2010 at 2:15
Solution is here:
in a new file /etc/ld.so.conf.d/xuggler.conf add one line
/usr/local/xuggler/lib
and then run
sudo ldconfig -v
It means that OS requires to refresh native libs cache.
Original comment by vadym.vi...@gmail.com
on 22 Dec 2010 at 5:53
[deleted comment]
[deleted comment]
i am too geting this error. after adding "/usr/local/xuggler/lib " in
/etc/ld.so.conf.d/xuggler.conf file
i did all given below process ===>
1. Installed xuggler (/usr/local/) at this location
2. export XUGGLE_HOME=/usr/local/xuggler
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$XUGGLE_HOME/bin:$PATH
added in Environment Variable of server
3. using this command
[root@orion1 ~]# ffmpeg -i /invalid/file
ffmpeg: /lib/libc.so.6: version `GLIBC_2.7' not found (required by ffmpeg)
ffmpeg: /lib/libc.so.6: version `GLIBC_2.7' not found (required by
/usr/local/xuggler/lib/libavformat.so.52)
ffmpeg: /lib/libc.so.6: version `GLIBC_2.7' not found (required by
/usr/local/xuggler/lib/libavcodec.so.52)
ffmpeg: /lib/libc.so.6: version `GLIBC_2.7' not found (required by
/usr/local/xuggler/lib/libx264.so.83)
getting these error.
4. and i write also one service for streaming vedio for that i set library in
my lib file
and getting these errors
2011-01-09 23:49:33,305 [btpool0-2] DEBUG : ServletDispatcher::execute()
requestServiceName = xugglerImpl accessLevel = public
ServletDispatcher::execute() received Response queue from transaction manager.
2011-01-09 23:49:33,305 [Txn-Thread-1] INFO : 00000000000000
2011-01-09 23:49:33,316 [Txn-Thread-1] WARN com.xuggle.ferry.JNILibraryLoader
- Failure: library load of library: xuggle-xuggler; version: 3: absolute path:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3; error:
java.lang.UnsatisfiedLinkError:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3.4.1012: /lib/libc.so.6: version
`GLIBC_2.7' not found (required by /usr/local/xuggler/lib/libavformat.so.52)
2011-01-09 23:49:33,318 [Txn-Thread-1] WARN com.xuggle.ferry.JNILibraryLoader
- Failure: library load of library: xuggle-xuggler; version: 3: absolute path:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3; error:
java.lang.UnsatisfiedLinkError:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3.4.1012: /lib/libc.so.6: version
`GLIBC_2.7' not found (required by /usr/local/xuggler/lib/libavformat.so.52)
2011-01-09 23:49:33,320 [Txn-Thread-1] WARN com.xuggle.ferry.JNILibraryLoader
- Failure: library load of library: xuggle-xuggler; version: 3: absolute path:
/usr/local/xuggler/lib/libxuggle-xuggler.so; error:
java.lang.UnsatisfiedLinkError:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3.4.1012: /lib/libc.so.6: version
`GLIBC_2.7' not found (required by /usr/local/xuggler/lib/libavformat.so.52)
2011-01-09 23:49:33,322 [Txn-Thread-1] WARN com.xuggle.ferry.JNILibraryLoader
- Failure: library load of library: xuggle-xuggler; version: 3: absolute path:
/usr/local/xuggler/lib/libxuggle-xuggler.so; error:
java.lang.UnsatisfiedLinkError:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3.4.1012: /lib/libc.so.6: version
`GLIBC_2.7' not found (required by /usr/local/xuggler/lib/libavformat.so.52)
2011-01-09 23:49:33,323 [Txn-Thread-1] ERROR com.xuggle.ferry.JNILibraryLoader
- Could not load library: xuggle-xuggler; version: 3; Visit
http://www.xuggle.com/xuggler/faq/ to find common solutions to this problem
2011-01-09 23:49:33,324 [Txn-Thread-1] INFO : finally generating success
response....
Exception in thread "Txn-Thread-1" java.lang.UnsatisfiedLinkError:
/usr/local/xuggler/lib/libxuggle-xuggler.so.3.4.1012: /lib/libc.so.6: version
`GLIBC_2.7' not found (required by /usr/local/xuggler/lib/libavformat.so.52)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at com.xuggle.ferry.JNILibraryLoader.loadLibrary0(JNILibraryLoader.java:265)
at com.xuggle.ferry.JNILibraryLoader.loadLibrary(JNILibraryLoader.java:168)
at com.xuggle.xuggler.XugglerJNI.<clinit>(XugglerJNI.java:19)
at com.xuggle.xuggler.IContainer.<clinit>(IContainer.java:1457)
at com.trignos.zinni.xuggle.XugglerImpl.execute(Unknown Source)
at com.innovedic.spacelets.Spacelet.execute(Unknown Source)
if any expert can tell me what should i config for use xuggler
this is my service code
IContainer container = IContainer.make();
IContainerFormat containerFormat_live = IContainerFormat.make();
containerFormat_live.setOutputFormat("flv", url + fileName, null);
container.setInputBufferLength(0);
Log.info(this,"111111111111111111",null,"info",false);
int retVal = container.open(url + fileName, IContainer.Type.WRITE, containerFormat_live);
if (retVal < 0)
{
Log.error(this,"Could not open output container for live stream",null,"info",false);
//System.exit(1);
}
IStream stream = container.addNewStream(0);
IStreamCoder coder = stream.getStreamCoder();
ICodec codec = ICodec.findEncodingCodec(ICodec.ID.CODEC_ID_H264);
Log.info(this,"222222222222222222",null,"info",false);
coder.setNumPicturesInGroupOfPictures(5);
coder.setCodec(codec);
coder.setBitRate(200000);
coder.setPixelType(IPixelFormat.Type.YUV420P);
coder.setHeight(IN_HEIGHT);
coder.setWidth(IN_WIDTH);
Log.info(this,"[ENCODER] video size is " + IN_WIDTH + "x" + IN_HEIGHT,null,"info",false);
coder.setFlag(IStreamCoder.Flags.FLAG_QSCALE, true);
coder.setGlobalQuality(0);
IRational frameRate = IRational.make(5, 1);
coder.setFrameRate(frameRate);
coder.setTimeBase(IRational.make(frameRate.getDenominator(), frameRate.getNumerator()));
Properties props = new Properties();
InputStream isss = XugglerImpl.class.getResourceAsStream("/libx264-normal.ffpreset");
Log.info(this,"333333333333333"+isss,null,"info",false);
try
{
props.load(isss);
}
catch (IOException e)
{
Log.error(this,"You need the libx264-normal.ffpreset file from the Xuggle distribution in your classpath.",null,"info",false);
error = "libx264-normal.ffpreset file from the Xuggle distribution in your classpath "+e.getMessage();
//System.exit(1);
}
Log.info(this,"44444444444444444",null,"info",false);
Configuration.configure(props, coder);
coder.open();
container.writeHeader();
long firstTimeStamp = System.currentTimeMillis();
long lastTimeStamp = -1;
int i = 0;
Log.info(this,"55555555555555555",null,"info",false);
try
{
Robot robot = new Robot();
while (i<framesToEncode)
{
//long iterationStartTime = System.currentTimeMillis();
long now = System.currentTimeMillis();
//grab the screenshot
BufferedImage image = robot.createScreenCapture(new Rectangle(x, y, IN_WIDTH, OUT_HEIGHT));
//convert it for Xuggler
BufferedImage currentScreenshot = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_3BYTE_BGR);
currentScreenshot.getGraphics().drawImage(image, 0, 0, null);
//start the encoding process
IPacket packet = IPacket.make();
IConverter converter = ConverterFactory.createConverter(currentScreenshot, IPixelFormat.Type.YUV420P);
long timeStamp = (now - firstTimeStamp) * 1000;
IVideoPicture outFrame = converter.toPicture(currentScreenshot, timeStamp);
if (i==0)
{
//make first frame keyframe
outFrame.setKeyFrame(true);
}
outFrame.setQuality(0);
coder.encodeVideo(packet, outFrame, 0);
outFrame.delete();
if (packet.isComplete())
{
container.writePacket(packet);
Log.info(this,"[ENCODER] writing packet of size...."+ packet.getSize()+ " for elapsed time " + ((timeStamp - lastTimeStamp) / 1000),null,"info",false);
lastTimeStamp = timeStamp;
}
Log.info(this,"[ENCODER] encoded image " + i + " in " + (System.currentTimeMillis() - now),null,"info",false);
//System.out.println();
i++;
try
{
// sleep for framerate milliseconds
Thread.sleep(Math.max((long) (1000 / frameRate.getDouble()) - (System.currentTimeMillis() - now), 0));
}
catch (InterruptedException e)
{
error = "InterruptedException "+e.getMessage();
}
}
Log.info(this,"666666666666",null,"info",false);
}
catch (AWTException e)
{
error = "AWTException "+e.getMessage();
}
Log.info(this,"77777777777777777",null,"info",false);
container.writeTrailer();
Log.info(this,"8888888888888888",null,"info",false);
}
catch(Exception e)
{
error = "Unknown exception occured. "+e.getMessage();
}
finally
{
if(error == null)
{
Log.info(this, "finally generating success response....", null, "" ,true);
sb.append(IConstants.XML_VER+"<response><status>1</status><message>success</message></response>");
}
else
{
Log.info(this, "finally generating failure response....", null, "" ,true);
sb.append(IConstants.XML_VER+"<response><status>0</status><message>failure</message><error>"+ error +"</error></response>");
}
}
thanks in advance
vijay
Original comment by vkt...@gmail.com
on 10 Jan 2011 at 8:07
I investigated the problem. Unfortunately there is no simple way to run an
application that requires glibc > 2.5 on CentOS. Because the newest version in
the os only glibc 2.5 even if you install latest CentOS 5.5. I tryed to compile
the xuggler sources but it is still failed. You may be more lucky and compile
the source successfully. I use Xuggle video transcoding on Ubuntu 10.10 64bit
and it works good.
Best wishes,
Vadym O Vikulin
Original comment by vadym.vi...@gmail.com
on 12 Jan 2011 at 2:32
Hi
I am also facing the same issue. Can you suggest some library similar to
xuggler. I need to extract frames from .flv file.
Original comment by ankit.sa...@gmail.com
on 14 Jul 2011 at 11:25
i have same issue and not solved yet, how to solve it
Original comment by ravidrea...@gmail.com
on 6 Jan 2012 at 11:56
I have recompiled and now it is working fine.
Original comment by ankit.sa...@gmail.com
on 9 Jan 2012 at 6:57
Original comment by art.cla...@gmail.com
on 7 Apr 2012 at 5:41
Original issue reported on code.google.com by
mahasen....@gmail.com
on 25 Nov 2010 at 11:44