Ho usato le librerie (libavformat e libavcodec) per decodificare alcuni URL di streaming MMS. Ma alcuni di questi sono protetti da DRM. Quando cerco di decodificarli, la biblioteca vi avvertirà su di essoEsiste una libreria client MS-DRM per linux?
In libavformat/asfdec.c:
if (!s->keylen) {
if (!guidcmp(&g, &ff_asf_content_encryption)) {
av_log(s, AV_LOG_WARNING, "DRM protected stream detected, decoding will likely fail!\n");
} else if (!guidcmp(&g, &ff_asf_ext_content_encryption)) {
av_log(s, AV_LOG_WARNING, "Ext DRM protected stream detected, decoding will likely fail!\n");
} else if (!guidcmp(&g, &ff_asf_digital_signature)) {
av_log(s, AV_LOG_WARNING, "Digital signature detected, decoding will likely fail!\n");
}
}
La s variabile è l'AVFormatContext struct. La mia domanda è dove prendere la chiave? Sembra decodificarlo con una chiave DRM.
Guardo la specifica ASF e provo a patch asfdec.c. Ora ho l'URL della licenza di acquisizione e l'ID della chiave. Il problema può riscrivere come 'Esiste una libreria client MS-DRM per linux?' (vecchio: come decodificare un URL di streaming MMS con DRM da ffmpeg?)
È possibile utilizzare l'URL della licenza e l'ID della chiave per ottenere la chiave del contenuto?