2013-09-16 70 views
0

我使用下面了libavformat函數讀取的音頻文件(各種格式),然後將其寫入到磁盤上的一個新的文件與AES加密寫入標題:FFMPEG了libavformat閱讀並

  • avformat_open_input(開始閱讀新的數據流)
  • avio_open(開始的新文件寫入)
  • avformat_write_header(寫相同的頭文件,我開始讀)
  • av_read_frame(獲得幀)
  • av_write_frame(上框架磁盤寫)

我想知道是否有可能爲此添加加密,無論是爲標題部分還是爲while文件。也就是說,我想在數據實際寫入新文件之前對數據進行加密,然後在下次讀取數據之前解密數據。

是否有任何FFMPEG支持使用AES加密進行讀取和解密寫入?

如果沒有,那麼在使用上述功能時,我是否可以攔截和更改正在讀取或寫入的數據?

我知道在libavutil中有一個AES加密/解密函數(在aes.h中),但我無法找到任何有關如何將它適用於我正在使用的其他libavformat函數的好信息。

感謝

回答

0

大量的研究,我找不到一個內置的方式在FFMPEG做到這一點後。

我的解決方案是在使用FFMPEG之前加密和解密文件。

但是我沒有找到libavutil函數/ aes.h這幫助我做實際的加密:

void av_aes_crypt (AVAES *a, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt)