Apple 有一些非常好的工具可以将实体媒体文件分割为 HLS 并添加 AES-128 加密。但是,它们仅在 Mac 上运行,因此在机器在 Linux 上运行的典型云环境中不是很有用。
我正在寻找任何有助于将 AES-128 加密添加到预分段 HLS 的现有工具和库。我不相信这将是超级复杂的实施。我想用 Ruby 编写它。有谁知道任何有用的工具或资源?
Apple 有一些非常好的工具可以将实体媒体文件分割为 HLS 并添加 AES-128 加密。但是,它们仅在 Mac 上运行,因此在机器在 Linux 上运行的典型云环境中不是很有用。
我正在寻找任何有助于将 AES-128 加密添加到预分段 HLS 的现有工具和库。我不相信这将是超级复杂的实施。我想用 Ruby 编写它。有谁知道任何有用的工具或资源?
您可以在 Ruby中使用OpenSSL::Cipher类。由于 OpenSSL 扩展基本上是原生 OpenSSL 的包装器,因此速度非常快。
您可以 fork 并执行 openssl 来进行实际加密。您很可能不想在 ruby 中进行 AES 加密,因为它会非常慢。
您可以在此 shell 脚本之后为您的程序建模:https ://stackoverflow.com/a/3600805/759140
FFMPEG可以转码和加密HLS文件
ffmpeg -y -i <file in> -hsl_time 10 -hls_key_info_file <key info file> -hls_segment_filename "encrupted-%d.ts" encrypted.m3u
您可以在此处找到更多信息: FFMPEG 加密
AVCONV 应该也可以,但我还没有让它工作。