Python 音频添加水印

本文介绍了一个使用Python的pydub库实现音频文件水印添加功能,包括单次水印叠加和多次定时添加,以及wav转mp3格式的转换示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


#!/usr/env python3
# -*- coding: UTF-8 -*-
from pydub import AudioSegment


# 给音频加水印
def add_watermark( source, watermark, i, save_audio):
    audio_ext = source.split('.')[-1]
    # 读取源音频
    source_audio = AudioSegment.from_file(source)
    # 读取水印音频
    watermark_audio = AudioSegment.from_file(watermark)
    # 将水印音频混合到源音频中
    mix_audio = source_audio.overlay(watermark_audio, position= i * 1000)
    # 保存混合后的音频
    mix_audio.export(save_audio, format=audio_ext)


#获取音频的时长
def get_audio_duration( audio_source ):
    source_audio = AudioSegment.from_file(audio_source)
    return len(source_audio) / 1000


# 给音频多次添加水印
def add_watermark_many_times( source, watermark, save_audio, num):
    duration = get_audio_duration(source)
    #每隔10秒添加一次水印
    for i in range(int(duration/num)):
        position = i * num
        if position > 0:
            source = save_audio
        add_watermark(source, watermark, position, save_audio)


# wav转mp3
def wav_to_mp3( source ):
    save_audio = source.split('.')[0] + '.mp3'
    # 读取源音频
    source_audio = AudioSegment.from_file(source)
    # 保存混合后的音频
    source_audio.export(save_audio, format="mp3")




if __name__ == '__main__':
    source = "feeling the love3-37{73007a43a1b36010008}.wav"
    # watermark = "watermark.m4a"
    # save_audio = "./001.wav"
    # add_watermark_many_times(source, watermark, save_audio, 15)
    wav_to_mp3(source)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值