Forum Controls
Spotlight Features

The Rich Engineering Heritage Behind Dependency Injection

Andrew McVeigh takes us on a tour of the rich heritage behind dependency injection, what it represents, and tells us why its here to stay.

NetBeans 6: Matisse Updates

NetBeans 6 delivers great updates to the Matisse GUI builder. Spend a few minutes with Roman Strobl and get an expert briefing on what's new and what has changed.

Introduction to Groovy Part 3

In this, the third and final installation of Andres' Introduction to Groovy series, you learn about how Groovy handles variable numbers of arguments, named parameters, currying, and more about Groovy operators. Including, some new operators.

Easier Custom Components with Swing Fuse

Swing Fuse (actually just Fuse), is a framework designed to make it easier to create your own custom desktop components. In this article, Daniel Spiewak shows you how to get started and provides sample source code you can download.

Benchmark Analysis: Guice vs Spring

Willam Louth shows how he uses JXInsight Probes to investigate probable performance issues with code bases that he is not familiar with. He also highlights possible pitfalls in creating a benchmark, as well as in the analysis of results.
Replies: 1 - Pages: 1  
Threads: [ Previous | Next ]
  Click to reply to this thread Reply

LAMEOnJ v1.0. The open source Java MP3 API based on LAME

URL: LAMEOnJ

At 12:34 PM on Jan 22, 2008, Jose Marķa Arranz Santamarķa wrote:

LAME is, probably, the best MP3 encoder ever developed (LAME has a decoder too). LAME binaries have two parts :

1. A statically linked command line: "lame.exe" on Windows, "lame" on Unixes.

2. A dynamic link library/shared object: lame_enc.dll on Windows, libmp3lame.so on Linux and libmp3lame.dylib on Mac OS X exporting a standard API .


LAMEOnJ is a 100% Java API wrapping the standard LAME API. LAMEOnJ Java methods call the exported lame_enc.dll (Windows),libmp3lame.so (Linux), libmp3lame.dylib (Mac OS X) methods and LAME native structures are reflected as symmetric Java classes.

Under the hood LAMEOnJ uses JNIEasy , the Java Native Objects bridge, between Java and C/C++.


LAMEOnJ has two levels or versions:

1. A C symmetric API: Java classes and methods mimic the LAME structures and methods. The programming style is almost the same as the C style.

2. An Object Oriented API: Java classes and interfaces encapsulating the boring tasks related to C programming in a simpler and robust API, and providing easy methods to encoding WAV files or WAV/LPCM streams.

LAMEOnJ wraps the BladeEnc API too (C and OOP version), this API is only provided by the Windows version of LAME (lame_enc.dll).

LAMEOnJ is licensed under LGPL and is a SourceForge project.

What do you think about bringing to Java the enormous legacy of the C/C++/native world?
1 . At 8:25 PM on Jan 23, 2008, ABBEY wrote:
  Click to reply to this thread Reply

Re: LAMEOnJ v1.0. The open source Java MP3 API based on LAME

Very nice thing, I like it.
Java Forum

thread.rss_message