J'ai une application qui exécute ffmpeg/ffprobe en tant que processus enfant (similaire à une exécution en ligne de commande), puis analyse la sortie de la commande pour récupérer les métadonnées d'un fichier et/ou effectuer le transcodage du fichier. Et mon application doit savoir si un fichier donné est protégé ou non par un DRM .
NOTE - J'ai consulté cette question . Elle ne traite pas de l'analyse programmatique de la sortie pour déterminer la protection DRM. Elle ne traite que de l'analyse humaine de la sortie.
Je sais déjà que je peux lancer ffprobe et si je regarde la sortie avec mes yeux et que je vois quelque chose comme "DRM protection detected ... decoding will likely fail" quelque part dans la sortie, je sais que le fichier est protégé. Voir cet exemple de sortie :
ffprobe -hide_banner CelticWoman-OnlyAWomansHeart.wma
[asf @ 0x7f9bab000000] DRM protected stream detected, decoding will likely fail!
Input #0, asf, from 'CelticWoman-OnlyAWomansHeart.wma':
Metadata:
...
Cependant, le résultat ci-dessus pose deux problèmes :
1 - Il est ne convient pas aux machines . Je dois parcourir toute une série de résultats pour rechercher quelques mots. L'analyse de ces résultats est inefficace, car ils sont destinés à la consommation humaine, et non à celle des machines.
2 - Je ne sais pas si le résultat ci-dessus est cohérent entre les différents types de fichiers. En d'autres termes, l'exemple de sortie ci-dessus concerne un fichier WMA dans un conteneur ASF. Qu'en serait-il s'il s'agissait d'un fichier FLAC ou DTS ou d'un autre type de fichier ? Le verbiage utilisé serait-il le même pour que mon application puisse l'analyser et le détecter à chaque fois ?
Ce dont j'ai besoin, c'est d'une sorte de propriété de sortie que mon application peut analyser de manière fiable et prévisible ... une paire clé-valeur comme "drm-protected=true" qui est cohérente pour tous les types de fichiers multimédias
Quelles options de ffprobe/ffmpeg me permettront d'obtenir une paire clé-valeur analysable par la machine qui m'indiquera si un fichier est protégé par un DRM ?
Merci beaucoup !