He utilizado las bibliotecas (libavformat y libavcodec) para decodificar algunas URL de transmisión MMS. Pero algunos de ellos están protegidos por DRM. Cuando trato de decodificarlos, la biblioteca le avisará de ello¿Hay una biblioteca cliente de MS-DRM para Linux?
En 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 variable s es el AVFormatContext estructura. Mi pregunta es dónde conseguir la llave? Parece decodificarlo con una clave DRM.
miro la ASF Spec, y tratar de patch asfdec.c. Ahora, tengo la URL de licencia de adquisición y la identificación de la clave. El problema puede reescribirse como '¿Hay una biblioteca cliente de MS-DRM para Linux?' (antiguo: Cómo decodificar una URL de transmisión MMS con DRM por ffmpeg?)
¿Es posible usar la URL de la licencia y la identificación de la clave para obtener la clave de contenido?