Note de ce sujet :
  • Moyenne : 5 (2 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
DirettaRendererUPnP
Bonsoir,


(02-09-2026, 05:30 PM)Le dom a écrit : DirettaRendererUPnP v2.0.2 disponible.

https://github.com/cometdom/DirettaRende...2026-02-09

j'ai tenté l'installation Fédora en suivant le tutoriel de @Bear sans problème (aide iA quelques fois).

Merci @Bear pour tout ce travail que tu mets à notre disposition.

Installation de HostSDK 148-8
Installation de DirettaRenderer v2.0.2

C'est la que les problèmes commencent avec erreur à la partie 3 installation ffmpeg.

Voici ce qu'en dit l'IA :

Problème de compilation dans DirettaRendererUPnP au niveau de
UPnPDevice.cpp.
L’appel à
UpnpRegisterRootDevice2()
échoue car le callback passé (UpnpCallbackStatic) n’est pas accepté comme
Upnp_FunPtr par le compilateur (erreur de conversion invalide, -fpermissive).
La signature du callback C++ ne correspond plus strictement à celle attendue par libupnp actuelle.
Le code semble dépendre d’un comportement plus permissif d’anciennes versions (libupnp / gcc).
Le souci n’est
pas fonctionnel, mais un problème de typage ABI / API UPnP.

Autant dire une langue étrangère pour moi !

Quelques captures :

[Image: Erreur-2.png]

[Image: CApture-probleme-fedora.png]
DirettaRendererUPnP Le DomSqueeze2diretta Roon
Target GentooPlayer C19B horloge FranckLeRouge 
Audiomat Maestro 3 référence
Ampli Lampes ECC88-5751-6N7-6550 B2
Enceintes Klipschorn 60th Anniversary


Pour nos amis programmeurs, mieux que des captures d'écran, dans "nouvelle réponse", cliquer sur "code" <>. PLus facile à utiliser pour eux.

Merci pour eux.
Serveur à la sauce Bordelaise sous Euphony.
ClearAudio Émotion (DL103) - JCT Neith.
D250 EP - MPC Mélodie - Atlantis Acoustique Argentera.
Mibox 4. Benq 1070 - Visivo Lusso.

Installation : Home Sweet Home
Effectivement, je ne peux rien faire avec une copie d'écran, désolé.

Quelle version de fedora as tu installée?
DirettaRendererUPnP
Soutenez ce projet
Si vous trouvez ce moteur de rendu utile, vous pouvez soutenir le développement :
Buy Me a Coffee at ko-fi.com
Votre soutien m’aidera à continuer ce projet, qui représente pour moi un certain coût en temps et en argent. Merci pour votre compréhension.
(02-09-2026, 11:16 PM)Bluevelvet a écrit : Merci @Bear pour tout ce travail que tu mets à notre disposition.

Installation de HostSDK 148-8
Installation de DirettaRenderer v2.0.2

Bonjour,

Merci et avec plaisir.

Je viens de tester pour te répondre en chargeant la dernière version 2.0.3.
À part une difficulté au niveau de la compilation liée à une mauvaise détection des librairies ffmpeg installées, je n'ai pas rencontré de difficulté particulière.

Je te propose:
- si tu es certain que tes librairies ffmpeg sont correctes de demander à l'IA comment modifier la fichier Makefile pour contourner les contrôles sur les librairies ffmpeg (de mon coté, j'ai simplement supprimé les lignes du fichier en rapport avec ce sujet, mais c'est un peu violent)
- de refaire, depuis le répertoire DirettaRendererUPnP sur ton serveur: 'make clean && make'

Cela relance une compilation qui devrait bien se passer. Après, tu peux faire soit une installation à la main, soit utiliser la partie correspondant du script d'installation.
@Bluevelvet:

Peux-tu me donner le résultat de cette ligne de commande à tout hasard?

rpm -q libupnp libupnp-devel

Tu devrais avoir deux lignes comme celles-ci:

libupnp-1.14.25-1.fc43.x86_64
libupnp-devel-1.14.25-1.fc43.x86_64

Si tu n'as rien:

tapes:

dnf install libupnp libupnp-devel
DirettaRendererUPnP
Soutenez ce projet
Si vous trouvez ce moteur de rendu utile, vous pouvez soutenir le développement :
Buy Me a Coffee at ko-fi.com
Votre soutien m’aidera à continuer ce projet, qui représente pour moi un certain coût en temps et en argent. Merci pour votre compréhension.
Bonjour,

(Hier, 07:07 AM)Fredouille40 a écrit : Pour nos amis programmeurs, mieux que des captures d'écran, dans "nouvelle réponse", cliquer sur "code" <>. PLus facile à utiliser pour eux.

Merci pour eux.

@Fredouille, Merci pour l'info, je ne connaissais pas la procédure. C'est mieux ainsi.

@le Dom, @Bear,
Merci pour vos propositions. Je commence par celle de Dominique.

La Fedora installée, c'est celle à laquelle tu renvoyais il y a quelques jours (bouton vert et rectangle blanc) >  Fedora-Server-netinst x86-64-43-1.6 iso


Code :
[audiophile@DirettaRenderer DirettaRendererUPnP-main]$ rpm -q libupnp libupnp-devel
libupnp-1.14.26-1.fc43.x86_64
libupnp-devel-1.14.26-1.fc43.x86_64

Code :
Compiling src/UPnPDevice.cpp...
g++ -std=c++17 -Wall -Wextra -O2 -pthread -march=x86-64-v3 -mavx2 -mfma -I./ffmpeg-headers -I/usr/include/upnp -I/usr/local/include -I. -Isrc -I/home/audiophile/DirettaHostSDK_148/Host -MMD -MP -c src/UPnPDevice.cpp -o obj/UPnPDevice.o
src/UPnPDevice.cpp: In member function « bool UPnPDevice::start() »:
src/UPnPDevice.cpp:137:34: erreur: conversion invalide de « int (*)(Upnp_EventType, const void*, void*) » {aka « int (*)(Upnp_EventType_e, const void*, void*) »} vers « Upnp_FunPtr » {aka « int (*)(Upnp_EventType_e, void*, void*) »} [-fpermissive]
  137 |    ret = UpnpRegisterRootDevice2(
      |          ~~~~~~~~~~~~~~~~~~~~~~~^
      |                                  |
      |                                  int (*)(Upnp_EventType, const void*, void*) {aka int (*)(Upnp_EventType_e, const void*, void*)}
  138 |        UPNPREG_BUF_DESC,
      |        ~~~~~~~~~~~~~~~~~
  139 |        descXML.c_str(),
      |        ~~~~~~~~~~~~~~~~
  140 |        descXML.length(),
      |        ~~~~~~~~~~~~~~~~~
  141 |        1,  // config_done
      |        ~~~~~~~~~~~~~~~~~~
  142 |        upnpCallbackStatic,
      |        ~~~~~~~~~~~~~~~~~~~
  143 |        this,
      |        ~~~~~
  144 |        &m_deviceHandle
      |        ~~~~~~~~~~~~~~~
  145 |    );
      |    ~
Dans le fichier inclus depuis src/UPnPDevice.hpp:3,
                depuis src/UPnPDevice.cpp:1:
/usr/include/upnp/upnp.h:808:21: note: initialisation de l'argument 5 de « int UpnpRegisterRootDevice2(Upnp_DescType, const char*, size_t, int, Upnp_FunPtr, const void*, UpnpDevice_Handle*) »
  808 |        Upnp_FunPtr Fun,
      |        ~~~~~~~~~~~~^~~
make: *** [Makefile:445: obj/UPnPDevice.o] Error 1

dans nano scr/UPnPDevice.cpp

 il y a ça à la ligne  "upnpCallbackStatic": à l'origine dès la premiere installation, c'était : "(Upnp_FunPtr)UpnpCallbackStatic". Mais cette première version était déjà défaillante. Ensuite, l'IA m'a fait essayer différentes écritures sans succès.

Code :
// 7. Register root device
    ret = UpnpRegisterRootDevice2(
        UPNPREG_BUF_DESC,
        descXML.c_str(),
        descXML.length(),
        1,  // config_done
        upnpCallbackStatic,
        this,
        &m_deviceHandle
    );

    if (ret != UPNP_E_SUCCESS) {
        std::cerr << "[UPnPDevice] UpnpRegisterRootDevice2 failed: "
                  << ret << std::endl;
        UpnpFinish();
        return false;
    }

    DEBUG_LOG("[UPnPDevice] ✓ Device registered (handle="
              << m_deviceHandle << ")");

Enfin, si ça peut-être utile, analyse proposée par l'IA, je cite :

Pour information, le problème ne semble pas lié à une erreur de manipulation ou de configuration locale, mais à une incompatibilité de typage entre la signature du callback utilisée dans DirettaRendererUPnP et celle attendue par la version actuelle de libupnp. La ligne incriminée était déjà présente dans le code d’origine et provoquait le même échec. Les différentes tentatives de cast ou de modification n’ont pas permis de contourner ce point, ce qui laisse penser à un changement d’API/ABI côté libupnp.
DirettaRendererUPnP Le DomSqueeze2diretta Roon
Target GentooPlayer C19B horloge FranckLeRouge 
Audiomat Maestro 3 référence
Ampli Lampes ECC88-5751-6N7-6550 B2
Enceintes Klipschorn 60th Anniversary


Comment procèdes tu pour installer DirettaRendererUPnP?

Essaie d’utiliser la nouvelle version de la procédure d’installation que j’ai mise en ligne. Elle est plus adaptée à mon GitHub.
DirettaRendererUPnP
Soutenez ce projet
Si vous trouvez ce moteur de rendu utile, vous pouvez soutenir le développement :
Buy Me a Coffee at ko-fi.com
Votre soutien m’aidera à continuer ce projet, qui représente pour moi un certain coût en temps et en argent. Merci pour votre compréhension.
Pour être précis, côté commandes j’ai simplement appliqué  les lignes du tutoriel Fedora de @Bear :

chmod +x install.sh
./install.sh

(après extraction de DirettaRendererUPnP-X-main.zip) :

unzip DirettaRendereUPnP-X-main.zip

L’extraction de cette archive a bien fonctionné sans l’option
-x qui posait problème chez moi.

En revanche, la compilation échoue ensuite sur la ligne
UpnpRegisterRootDevice2(...)
avec une erreur de type sur
Upnp_FunPtr
, y compris avec le code d’origine, avant toute modification.

Où est-ce que je trouve ta nouvelle procédure d’installation et comment annuler la précédente ?

Par le zip

Par : https://github.com/cometdom/DirettaRendererUPnP.git

Dans ce cas, quelle commande, car je suppose que ça ne correpond pas à :
scp DirettaRenderer-x-main.zip

si près du but, ça va le faire...

Merci
DirettaRendererUPnP Le DomSqueeze2diretta Roon
Target GentooPlayer C19B horloge FranckLeRouge 
Audiomat Maestro 3 référence
Ampli Lampes ECC88-5751-6N7-6550 B2
Enceintes Klipschorn 60th Anniversary


Le plus simple pour toi étant donné que tu as déjà installé Fedora, tu suis ce qui est indiqué dans Quick start sur le readme de mon GitHub.

https://github.com/cometdom/DirettaRende...uick-start
DirettaRendererUPnP
Soutenez ce projet
Si vous trouvez ce moteur de rendu utile, vous pouvez soutenir le développement :
Buy Me a Coffee at ko-fi.com
Votre soutien m’aidera à continuer ce projet, qui représente pour moi un certain coût en temps et en argent. Merci pour votre compréhension.


Atteindre :


Utilisateur(s) parcourant ce sujet : wgb25, 8 visiteur(s)