2013-03-18 76 views
4

我注意到,公司,如iTunes和亞馬遜的MP3文件顯示信息「水印」添加如下所示:添加水印的MP3下載

  • 從該文件被購買。
  • 誰購買了它。

亞馬遜還states

「有些唱片公司要求我們在隨音樂元數據插入標識」

的電子商務網站,我忙於開發將銷售MP3下載。由於iTunes和亞馬遜被迫爲他們的歌曲添加水印,一些唱片公司很可能會要求我們正在開發的那個公司也這樣做。

該網站是一個使用ASP.NET 4和C#開發的Web應用程序。對於每個下載mp3的用戶,在我們的網絡服務器上生成一個新的文件並進行元數據修改似乎是不切實際的,因爲這會導致成千上萬的臨時mp3文件駐留在我們的服務器上。

有沒有辦法在下載文件時將相關的元數據注入到文件中,或者可能在客戶端使用HTML5?

+4

要在客戶端上標記文件聽起來像是一個非常糟糕的主意。用戶可以刪除添加水印的代碼,並獲得一個未標記的文件。 – magnattic

+1

它不只是使用[ID3標籤](http://en.wikipedia.org/wiki/ID3)?僅僅因爲這在技術上不是好主意並不意味着唱片公司不會要求它... – robertc

+1

我同意,但用戶可以下載工具從他們的文件中刪除元數據......您是否有任何建議? –

回答

3

您不需要在服務器上創建數千個文件。您可以從源代碼讀取數據,通過插入水印的方法進行流式處理,然後直接輸出到新的mp3數據流到http響應。

這個庫提供了很多有用的類來讀取和寫入mp3流和其他音頻操作。

http://naudio.codeplex.com/

它沒有水印內置的。你需要做的。那將是非常複雜的部分。您需要修改原始文件,以便您可以識別水印數據,但不會影響音頻質量,並且無法輕鬆刪除。祝你好運。