合并音乐文件

 
from pydub import AudioSegment


def main():

    # 加载MP3文件
    song1 = AudioSegment.from_mp3(r'D:\KuGou\a.mp3')
    song2 = AudioSegment.from_mp3(r'D:\KuGou\b.mp3')

    # 取得两个MP3文件的声音分贝
    db1 = song1.dBFS
    db2 = song2.dBFS

    song1 = song1[300:]  # 从300ms开始截取英文MP3

    # 调整两个MP3的声音大小,防止出现一个声音大一个声音小的情况
    dbplus = db1 - db2
    if dbplus < 0:  # song1的声音更小
        song1 += abs(dbplus)
    elif dbplus > 0:  # song2的声音更小
        song2 += abs(dbplus)

        # 拼接两个音频文件
    song = song1 + song2

    # 导出音频文件
    song.export(r'D:\KuGou\bb.mp3', format="mp3")  # 导出为MP3格式
    pass


if __name__ == '__main__':
    main()


 

python 可能比较复杂 可以用cmd 直接合并

copy /b a.mp3+b.mp3 ab.mp3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我可以回答你的问题。我会从操作系统、文件系统调用程序设计和文件合并复制程序设计三个方面进行回答。 1. 操作系统 操作系统是计算机系统中的核心软件,它负责管理计算机的硬件资源和提供服务。操作系统提供了文件系统接口来管理文件和文件夹。常用的操作系统有Windows、Linux、macOS等。在操作系统中,文件系统提供了统一的接口来访问文件和目录,包括打开、读取、写入、关闭等操作。 2. 文件系统调用程序设计 文件系统调用程序设计是指编写程序来访问文件系统接口。编程语言通常提供了标准的文件系统API,例如C语言中的fopen、fread、fwrite、fclose等函数。使用这些函数可以打开文件、读取文件、写入文件和关闭文件。 下面是一个简单的C语言程序示例,实现将一个文件复制到另一个文件: ``` #include <stdio.h> #include <stdlib.h> int main() { FILE *fp1, *fp2; char ch; fp1 = fopen("file1.txt", "r"); if (fp1 == NULL) { printf("无法打开文件1"); exit(1); } fp2 = fopen("file2.txt", "w"); if (fp2 == NULL) { printf("无法打开文件2"); exit(1); } while ((ch = fgetc(fp1)) != EOF) { fputc(ch, fp2); } fclose(fp1); fclose(fp2); printf("文件复制成功"); return 0; } ``` 3. 文件合并复制程序设计 文件合并复制程序设计是指将多个文件合并成一个文件或者将一个文件复制多次。例如,将多个音乐文件合并成一个专辑,或者将一个文本文件复制成多个备份。 下面是一个简单的C语言程序示例,实现将多个文件合并成一个文件: ``` #include <stdio.h> #include <stdlib.h> int main() { FILE *fp1, *fp2, *fp3; char ch; fp1 = fopen("file1.txt", "r"); if (fp1 == NULL) { printf("无法打开文件1"); exit(1); } fp2 = fopen("file2.txt", "r"); if (fp2 == NULL) { printf("无法打开文件2"); exit(1); } fp3 = fopen("file3.txt", "w"); if (fp3 == NULL) { printf("无法创建文件3"); exit(1); } while ((ch = fgetc(fp1)) != EOF) { fputc(ch, fp3); } while ((ch = fgetc(fp2)) != EOF) { fputc(ch, fp3); } fclose(fp1); fclose(fp2); fclose(fp3); printf("文件合并成功"); return 0; } ``` 希望这些回答能对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安果移不动

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值