Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function AutoResample(clip c, int "dest_rate")
- {
- dest_default = 48000
- dest_rate = default(dest_rate, dest_default)
- dest_rate = dest_rate < 0 || dest_rate > 19200 ? dest_default : dest_rate
- src_rate = c.audiorate() == 0 ? dest_rate : c.audiorate()
- herpderp = (dest_rate > src_rate ? src_rate : dest_rate) / gcd(src_rate, dest_rate)
- return dest_rate == src_rate ? c :
- \ herpderp % 2 == 0 || herpderp % 3 == 0 ? c.SSRC(dest_rate, false) :
- \ c.ResampleAudio(dest_rate)
- }
- function gcd(int x, int y)
- {
- # この場合、xとyは常に正の整数であることが保証されている。
- t = x % y
- return t == 0 ? y : gcd(y, t)
- }
Add Comment
Please, Sign In to add comment