Page 4 of 4

Re: VLC for HMG

Posted: Sat Jul 27, 2024 1:05 pm
by danielmaximiliano
Hola a todos,Volviendo al tema VLC como reproductor hace unos dias un integrante me envio un msj preguntando sobre como reproducir un mp3 directamente y recorde este post, tambien un ejemplo en minigui.
como quedo en mi mente una solucion mas simple comence a leer sobre vlc y su ActiveX https://wiki.videolan.org/ActiveX/ lo cual hay que tenes instalado VLC en 32 bits ya que en 64 bits el ejemplo de Jimmy (HMG_VLC) se cierra con un error.
VLC además de el ActiveX tiene a LibVLC una DLL, se puede exportar sus funciones a un .lib para usarlo en otras aplicaciones cual se explica aqui https://wiki.videolan.org/GenerateLibFromDll/
en mi caso usé Gendef de Mingw32 para generar el archivo de definición de exportación(.def)
Captura de pantalla 2024-07-27 093245.png
Captura de pantalla 2024-07-27 093245.png (36.18 KiB) Viewed 370 times
como usamos Mingw como compilador de nuestras aplicaciones Harbour/HMG necesitamos una libreria tipo .a asi que uso

Code: Select all

dlltool --def libvlc.def --dllname libvlc.dll --output-lib libvlc.a
creo un proyecto en el ide de HMG al cual agrego en configuracion de proyecto la libs pero al ejecutar da error porque no se encuentan las funciones :?
LibVLC.rar
(91.76 KiB) Downloaded 31 times

Code: Select all

hbmk2: Harbour: Compilando m¢dulos...
Harbour 3.2.0dev (r2011030937)
Copyright (c) 1999-2020, https://harbour.github.io/
hbmk2: Compilando...
hbmk2: Enlazando... DemoVLC.exe
c:/hmg.3.5/mingw/bin/../lib/gcc/i686-w64-mingw32/9.3.0/../../../../i686-w64-mingw32/bin/ld.exe: .hbmk/win/mingw/Main.o:Main.c:(.data+0x48): undefined reference to `HB_FUN_LIBVLC_NEW'
collect2.exe: error: ld returned 1 exit status
hbmk2[DemoVLC]: Error: Ejecutando enlazador. 1 -Wl,--end-group -oDemoVLC.exe  -LC:/HMG.3.5/harbour/lib/win/mingw -LC:/HMG.3.5/lib

hbmk2: Error: Funci¢n(es) referenciada, no encontrada, pero desconocida:
       LIBVLC_NEW()
una ayuda para saber donde estoy equivocado ya que hace varios dias estoy en lo mismo .

Re: VLC for HMG

Posted: Sun Jul 28, 2024 8:31 am
by AUGE_OHR
hi Daniel,

using ActiveX should be no Difference of 32 BIt or 64 Bit CODE. both use same CLSID.
what Problem you are talking ?

Re: VLC for HMG

Posted: Mon Jul 29, 2024 3:10 pm
by martingz
Daniel no soy un experto pero te faltan los Wrappers de la API

seria algo asi


#pragma BEGINDUMP

#include <windows.h>

#include "hbapi.h"

HB_FUNC( LIBVLC_NEW )
{

hb_retc( xxx );

}


HB_FUNC( VLC_INIT )
{

hb_retc( xxx);
}


#pragma ENDDUMP

disculpa pero no soy un experto en C

Re: VLC for HMG

Posted: Mon Jul 29, 2024 4:30 pm
by AUGE_OHR
hi,

i do not understand where LIBVLC_NEW come from when use ActiveX Interface of VLC ?