Advertisement
nixco3033

Untitled

Jun 5th, 2025 (edited)
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. {js:
  2. const fetch = require("node-fetch")
  3. const fs = require("fs")
  4.  
  5. async function preview(args) {
  6.  
  7.   if (args.trim() == "") {
  8.     console.log(
  9.     "[nombre del tema]\n" +
  10.     "-q  [int]    - bitrate (default 128)\n" +
  11.     "-f  [string] - formato (default mp3)\n" +
  12.     "-s  [float]  - velocidad (default 1.0)\n" +
  13.     "-r  [float]  - volumen de reverb (default 0.0)\n" +
  14.     "-rd [int]    - delay de reverb (default 500)\n" +
  15.     "-b  [float]  - db+ de bass (default 0)\n" +
  16.     "-p  [float]  - pitch (default = velocidad))\n"
  17.     )
  18.     return
  19.   }
  20.  
  21.   const match = args.match(/^(.*?)(?:\s+-q\s+(\d*?))?(?:\s+-f\s+(\S*?))?(?:\s+-s\s+(\S*?))?(?:\s+-r\s+(\S*?))?(?:\s+-rd\s+(\d*?))?(?:\s+-b\s+(\S*?))?(?:\s+-p\s+(\S*?))?$/)
  22.   const song = match[1] ?? ""
  23.   const bitrate = match[2] ?? "128"
  24.   const format = match[3] ?? "mp3"
  25.   var speed = match[4] ?? "1"
  26.   const reverbAmount = match[5] ?? "0"
  27.   const reverbDelay = match[6] ?? "500"
  28.   const bass = match[7] ?? "0"
  29.   const pitch = match[8] ?? speed
  30.  
  31.   const res = await fetch(
  32.     `https://api.deezer.com/search?q=${encodeURIComponent(song)}`
  33.   );
  34.   const data = await res.json()
  35.  
  36.   var version = []
  37.   if (speed != "1") {
  38.     version.push(parseFloat(speed) > 1 ? "NIGHTCORE" : "SLOWED")
  39.   }
  40.   if (reverbAmount != "0") {
  41.     version.push("REVERB")
  42.     discord.variables.reverb = `,aecho=0.8:0.9:${reverbDelay}:${reverbAmount}`
  43.   }
  44.   if (bass != "0") {
  45.     discord.variables.bass = `,bass=g=${bass}`
  46.     version.push("BASSBOST")
  47.   }
  48.   if (pitch != speed) {
  49.     discord.variables.pitch = `${pitch},aresample=44100`
  50.     speed = parseFloat(speed) * 1 / Math.pow(2, parseFloat(pitch) - 1)
  51.     version.push("PITCHED")
  52.   } else {
  53.     discord.variables.pitch = speed
  54.   }
  55.  
  56.   versionTag = version.length > 0 ? `[${version.join(" ")}] ` : ""
  57.  
  58.  
  59.   const track = data.data[0];
  60.   const title = track.title.replaceAll("/","_")
  61.   const artist = track.artist.name.replaceAll("/","_")
  62.   const url = `https://theanx-deezer-ai.hf.space/deezer?song=${track.id}&quality=flac`
  63.   const path = `/home/notsocoder/output/${versionTag}${title} - ${artist}.${format}`
  64.  
  65.   discord.variables.url = url
  66.   discord.variables.path = path
  67.   discord.variables.speed = speed
  68.   discord.variables.bitrate = bitrate
  69. }
  70.  
  71. preview("{args}")
  72. }
  73.  
  74. {if:{argslen}|>|0|then:{sh:curl -L "{get:url}" -o "input.flac" && ffmpeg -loglevel error -i "input.flac" -b:a {get:bitrate}k -filter:a "asetrate=44100*{get:pitch},atempo={get:speed}{get:reverb}{get:bass}" -vn "{get:path}"}}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement