lame_enc.dll and VB.NET

K

kimiraikkonen

Hello,
I wonder a thing about free mp3 encoder lame if it supports to be used
under Visual Basic .NET. I searched the net then i read sth than Lame
is not accessible under Visual Basic directly. Lame was written under
C language, so is that the reason that lame_enc.dll cannot be used in
Visual Basic projects like a toolbox-added activeX control?

How can i use lame_enc.dll under Visual Basic .NET and what differs
interacting a dll without including it as a COM component from control
toolbox?

Thanks :)
 
T

Tom Shelton

Hello,
I wonder a thing about free mp3 encoder lame if it supports to be used
under Visual Basic .NET. I searched the net then i read sth than Lame
is not accessible under Visual Basic directly. Lame was written under
C language, so is that the reason that lame_enc.dll cannot be used in
Visual Basic projects like a toolbox-added activeX control?

How can i use lame_enc.dll under Visual Basic .NET and what differs
interacting a dll without including it as a COM component from control
toolbox?

Thanks :)

I haven't ever used lame, but I did look at it once a couple of years
ago... I believe that it exposes an api that you should be able to
access via P/Invoke.
 
K

kimiraikkonen

I haven't ever used lame, but I did look at it once a couple of years
ago... I believe that it exposes an api that you should be able to
access via P/Invoke.

It would be great if Lame was an COM-compatible control even it's free.
 
T

Tom Shelton

It would be great if Lame was an COM-compatible control even it's free.- Hide quoted text -

- Show quoted text -

Well, you could always create one - or search, maybe someone else has
already done it ;)
 
K

Kerem Gümrükcü

Hi Tom,
I haven't ever used lame, but I did look at it once a couple of years
ago... I believe that it exposes an api that you should be able to
access via P/Invoke.

It has, the Interface is exposed as Standard-C Exports and
you can easlily access it via pinvoke,...

See here:

beCloseStream
beDeinitStream
beEncodeChunk
beEncodeChunkFloatS16NI
beFlushNoGap
beInitStream
beVersion
beWriteInfoTag
beWriteVBRHeader


Regrds

Kerem


--
 
K

kimiraikkonen

Hi Tom,


It has, the Interface is exposed as Standard-C Exports and
you can easlily access it via pinvoke,...

See here:

beCloseStream
beDeinitStream
beEncodeChunk
beEncodeChunkFloatS16NI
beFlushNoGap
beInitStream
beVersion
beWriteInfoTag
beWriteVBRHeader

Regrds

Kerem

--
-----------------------
Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Microsoft Live Space:http://kerem-g.spaces.live.com/
Latest Open-Source Projects:http://entwicklung.junetz.de

Hi,
Could you sample some code includes P/invoke for VB.NET?

Thanks.
 
K

kimiraikkonen

Hi Tom,

see here:

VB Example:http://www.codeproject.com/KB/audio-video/LameShell.aspx?print=true

Other useful Code:http://www.csharphelp.com/archives/.../group/microsoft.public.dotnet.languages.csha...

Regards

Kerem

--
-----------------------
Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Microsoft Live Space:http://kerem-g.spaces.live.com/
Latest Open-Source Projects:http://entwicklung.junetz.de

Hi Kerem,
Thanks for the links replying regarding to Tom but i'm not Tom :),
however i was aware of some them like codeproject's one but that one
is not well-detailed and assumes that you're experienced.

I don't have much experience about invoking methods, could you
describe and say the differences between invoke, begininvoke,
endinvoke and the important one P/invoke?

Is it about .NET's platform invoke?

Thanks.
 
T

Tom Shelton

Hi Kerem,
Thanks for the links replying regarding to Tom but i'm not Tom :),
however i was aware of some them like codeproject's one but that one
is not well-detailed and assumes that you're experienced.

I don't have much experience about invoking methods, could you
describe and say the differences between invoke, begininvoke,
endinvoke and the important one P/invoke?

Is it about .NET's platform invoke?

Yep, it's about Platfrom Invoke - not the same as invoke, begininvoke,
endinvoke. Those are dealing with delegates. Your going to want to
look at the documentation on VB.NET's declare statement. Basically,
it's a way to invoke native methodes form dlls.

It may sound like a daunting task, but in the end it's not really that
difficult.
 
K

kimiraikkonen

Yep, it's about Platfrom Invoke - not the same as invoke, begininvoke,
endinvoke. Those are dealing with delegates. Your going to want to
look at the documentation on VB.NET's declare statement. Basically,
it's a way to invoke native methodes form dlls.

It may sound like a daunting task, but in the end it's not really that
difficult.

http://www.codeproject.com/KB/audio-video/LameShell.aspx?print=true

This tutorial wasn't mentioned well, first of all, it should have told
the procedures like referencing to lame.exe.
However still it can't be done, if you try to reference it, you get
the error: "lame.exe could not be loaded, make sure that file is
accessible, and that's a valid assembly or COM component". Either you
can't add it as a control to toolbox.

The only thing that you can use it to run lame through command prompt
under the project that you're gonna create(i've done it). But the
thing wasn't what i was looking for.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top