嫌音乐压缩不利用多核处理器,特意写了个Makefile...

现有很多wav文件,转换成ogg,可以:

$ oggenc -q5 *.wav


但是,如果你用的是双核,只有一个核心在工作。
所以,写一个Makefile:


SRCS = $(wildcard *.wav)
OBJS = $(patsubst %.wav,%.ogg,$(SRCS))

all: ${OBJS}

%.ogg: %.wav
oggenc -q5 $<


然后,命令行执行:

$ make -j2 # 把2改成你的CPU的数量


讲解:
Makefile里面,$(wildcard .....)是通配符,可以匹配很多文件名。$(patsubst src,dst,targets)用来批量查找替换。同样,目标也可以用通配,比如%.ogg: %.wav,就表示凡是以.ogg结尾的目标,都用相应的.wav的文件生成。

同样的技巧也适用于C语言。

SRCS = $(wildcard *.c)
OBJS = $(patsubst %.c,%,$(SRCS))

all: myprog

myprog: ${OBJS}
gcc -o myprog ${OBJS}

.c.:
gcc -c -o $@ $<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值