Re: VLC for HMG
Posted: Sat Jul 27, 2024 1:05 pm
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) como usamos Mingw como compilador de nuestras aplicaciones Harbour/HMG necesitamos una libreria tipo .a asi que uso
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
una ayuda para saber donde estoy equivocado ya que hace varios dias estoy en lo mismo .
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) 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
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()