ConcatĂ©ner de lâaudio
Le Robot đ€/audio/concat concatĂšne plusieurs fichiers audio.

Ce Robot peut concaténer un nombre presque infini de fichiers audio.
Exemple dâutilisation
Si vous avez un formulaire avec 3 champs de saisie de fichier et souhaitez concatĂ©ner les fichiers audio tĂ©lĂ©versĂ©s dans un ordre prĂ©cis, indiquez-le Ă Transloadit Ă lâaide de lâattribut name de chaque champ. Utilisez cet attribut comme valeur de la clĂ© fields dans le JSON et dĂ©finissez as sur audio_[[index]]. Transloadit concatĂšnera les fichiers selon lâordre croissant des index :
{
"steps": {
"concatenated": {
"ffmpeg_stack": "v7",
"robot": "/audio/concat",
"use": {
"steps": [
{
"as": "audio_1",
"fields": "first_audio_file",
"name": ":original"
},
{
"as": "audio_2",
"fields": "second_audio_file",
"name": ":original"
},
{
"as": "audio_3",
"fields": "third_audio_file",
"name": ":original"
}
]
}
}
}
}ParamĂštres
interpolateboolean | Record<string, boolean>DĂ©termine si les Assembly Variables sont interpolĂ©es pour chaque champ dâinstruction.
Par dĂ©faut, la plupart des champs dâinstruction des Robots interpolent les Assembly Variables. DĂ©finissez ce paramĂštre sur
falsepour traiter tous les champs dâinstruction comme du texte littĂ©ral, ou dĂ©finissez le chemin dâun champ individuel surfalsepour traiter uniquement ce champ comme du texte littĂ©ral. Pour les champs propres Ă un Robot qui sont littĂ©raux par dĂ©faut, dĂ©finissez ce paramĂštre surtrueou dĂ©finissez le chemin de ce champ surtruepour rĂ©activer lâinterpolation.Utilisez des noms de champs tels que
path, ou des chemins avec points tels queffmpeg.vfpour les objets imbriqués.output_metaRecord<string, boolean> | boolean | Array<string>Permet de spécifier un ensemble de métadonnées dont le calcul est plus coûteux en puissance CPU et qui sont donc désactivées par défaut afin que le traitement de vos Assemblies reste rapide.
Pour les images, vous pouvez ajouter
"has_transparency": truedans cet objet pour dĂ©terminer si lâimage contient des parties transparentes, et"dominant_colors": truepour extraire de lâimage un tableau de codes couleur hexadĂ©cimaux.Pour les images, vous pouvez Ă©galement ajouter
"blurhash": truepour extraire une chaĂźne BlurHash â une reprĂ©sentation compacte dâun espace rĂ©servĂ© pour lâimage, utile pour afficher un aperçu flou pendant le chargement de lâimage complĂšte.Pour les images,
"thumbhash": trueextrait plutĂŽt un ThumbHash encodĂ© en base64 dansmeta.thumbhash, accompagnĂ© demeta.has_alpha(qui indique si un canal alpha existe, mĂȘme lorsque lâimage est entiĂšrement opaque). Il dĂ©crit les pixels orientĂ©s selon les donnĂ©es EXIF et utilise la premiĂšre image des images animĂ©es. Lâextraction est effectuĂ©e au mieux : les images de plus de 40 mĂ©gapixels, les formats non pris en charge ou un dĂ©codage Ă©chouĂ© ou limitĂ© ne produisent aucun espace rĂ©servĂ©. Une extraction rĂ©ussie ajoute des frais de mĂ©tadonnĂ©es Ă©quivalents Ă 20 % des octets de ce fichier. Aucun supplĂ©ment ThumbHash ne sâapplique lorsque lâoption est dĂ©sactivĂ©e ou lorsquâaucun hash nâest produit.DĂ©finissez cette option sur le Step qui produit lâimage, par exemple
/upload/handlepour les originaux tĂ©lĂ©versĂ©s ou/image/resizepour les sorties traitĂ©es. La dĂ©finir uniquement sur/transloadit/storene dĂ©clenche pas lâextraction : le stockage conserve les mĂ©tadonnĂ©es du Step producteur. Transloadit Storage conserve un hash gĂ©nĂ©rĂ© avec sa version immuable et le renvoie dans les rĂ©sultats stockĂ©s et lors des lectures natives de ressources. Les tĂ©lĂ©versements directs vers S3 ne gĂ©nĂšrent pas dâespaces rĂ©servĂ©s. Un espace rĂ©servĂ© contient des informations sur lâimage : protĂ©gez-le donc avec les mĂȘmes contrĂŽles dâaccĂšs que lâimage complĂšte.Pour les vidĂ©os, vous pouvez ajouter le paramĂštre
"colorspace": truepour extraire lâespace colorimĂ©trique de la vidĂ©o de sortie.Pour les vidĂ©os, vous pouvez Ă©galement ajouter
"interlaced": truepour dĂ©tecter si la vidĂ©o est entrelacĂ©e. Cette option combine lâindicateur ffprobe peu coĂ»teuxfield_orderavec une passe dâĂ©chantillonnageidetlimitĂ©e sur les premiĂšres images de la source, et exposeinterlaced,field_orderainsi quâun objet de diagnosticinterlace_detectionsousfile.meta. Cette opĂ©ration est coĂ»teuse en calcul et facturĂ©e en consĂ©quence.Pour lâaudio, vous pouvez ajouter
"mean_volume": truepour obtenir une valeur unique représentant le volume moyen du fichier audio.Vous pouvez également définir cette option sur
falsepour ignorer lâextraction des mĂ©tadonnĂ©es et accĂ©lĂ©rer le transcodage.user_metaRecord<string, any>(par dĂ©faut :{})Ajoute des mĂ©tadonnĂ©es JSON personnalisĂ©es Ă chaque fichier Ă©mis sans modifier son contenu. Les objets et tableaux imbriquĂ©s sont pris en charge.
LâhĂ©ritage dĂ©pend du Robot. Les valeurs sont fusionnĂ©es avec la valeur
user_metaexistante du fichier de sortieâŻ; le Step actuel remplace les clĂ©s de premier niveau correspondantes. Attribuez explicitement les clĂ©s requises lorsquâun Robot crĂ©e de nouvelles sorties.Dans les Steps de traitement,
${file.*}dĂ©signe la premiĂšre entrĂ©e et${result.*}le fichier Ă©mis. Les valeurs sont Ă©valuĂ©es pour chaque sortie aprĂšs lâexĂ©cution du Robot, avant lâextraction ultĂ©rieure des mĂ©tadonnĂ©es et le stockage temporaire. Sur:original, les valeurs sont Ă©valuĂ©es pour chaque tĂ©lĂ©versement avant lâextraction des mĂ©tadonnĂ©es.Les Steps en aval lisent
${file.user_meta.key}. Consultez MĂ©tadonnĂ©es personnalisĂ©es pour un exemple complet et les rĂšgles dâhĂ©ritage.resultbooleanIndique si les rĂ©sultats de ce Step doivent figurer dans lâAssembly Status JSON
queuebatchDĂ©finir la file dâattente sur « batch » abaisse manuellement la prioritĂ© des Jobs de ce Step afin dâĂ©viter de consommer des emplacements prioritaires de Jobs pour des Jobs qui nâont pas besoin dâun temps dâattente nul dans la file
force_acceptboolean(par dĂ©faut :false)Forcer un Robot Ă accepter un type de fichier quâil aurait ignorĂ©.
Par dĂ©faut, les Robots ignorent les fichiers quâils ne connaissent pas. Le Robot đ€/video/encode, par exemple, ignorera volontiers les images en entrĂ©e.
Avec le paramĂštre
force_acceptdĂ©fini surtrue, vous pouvez forcer les Robots Ă accepter tous les fichiers qui leur sont envoyĂ©s. Cela entraĂźne gĂ©nĂ©ralement des erreurs et ne doit ĂȘtre utilisĂ© que pour le dĂ©bogage ou pour traiter des cas limites.ignore_errorsboolean | Array<meta | execute>(par dĂ©faut :[])Ignore les erreurs pendant certaines phases du traitement.
Si vous définissez cette valeur sur
["meta"], le Robot ignorera les erreurs lors de lâextraction des mĂ©tadonnĂ©es.Si vous dĂ©finissez cette valeur sur
["execute"], le Robot ignorera les erreurs lors de la phase dâexĂ©cution principale.DĂ©finir cette valeur sur
trueĂ©quivaut Ă["meta", "execute"] : les erreurs seront alors ignorĂ©es dans les deux phases.usestring | Array<string> | Array<object> | objectIndique quel(s) Step(s) utiliser comme entrĂ©e.
- Vous pouvez choisir nâimporte quel nom pour les Steps, sauf
":original"(rĂ©servĂ© aux tĂ©lĂ©versements des utilisateurs gĂ©rĂ©s par Transloadit) - Vous pouvez fournir plusieurs Steps en entrĂ©e Ă lâaide de tableaux :
{ "use": [ ":original", "encoded", "resized" ] } - Vous pouvez Ă©galement Ă©tiqueter les Steps dâentrĂ©e avec
aspour transmettre une intention sémantique aux Robots :{ "use": [ { "name": ":original", "as": "image" }, { "name": ":original", "as": "mask" } ] }
AstuceCâest probablement tout ce que vous devez savoir sur
use, mais vous pouvez consulter les cas dâutilisation avancĂ©s.- Vous pouvez choisir nâimporte quel nom pour les Steps, sauf
ffmpegobjectUn objet de paramÚtres à transmettre à FFmpeg. Si un préréglage est utilisé, les options spécifiées sont fusionnées par-dessus celles du préréglage. Pour connaßtre les options disponibles, consultez la documentation de FFmpeg. Les options spécifiées ici ont priorité sur celles du préréglage.
ffmpeg_stackv6 | v7 | v8 | string(par dĂ©faut :"v6.0.0")SĂ©lectionne la version de la pile FFmpeg Ă utiliser pour lâencodage. Nous recommandons actuellement dâutiliser « v7 ». Les versions exactes « v6.0.0 », « v7.0.0 » et « v8.0.0 » sont des valeurs hĂ©ritĂ©es qui restent acceptĂ©es pour assurer la rĂ©trocompatibilitĂ©. Les valeurs « v5.x », dĂ©prĂ©ciĂ©es, sont Ă©galement acceptĂ©es.
presetaac | alac | audio/aac | audio/alac | audio/flac | audio/mp3 | audio/ogg |Effectue la conversion Ă lâaide de paramĂštres prĂ©configurĂ©s.
Si vous spĂ©cifiez vos propres paramĂštres FFmpeg Ă lâaide du paramĂštre
ffmpegdu Robot et que vous nâavez pas spĂ©cifiĂ© de prĂ©rĂ©glage, le prĂ©rĂ©glage par dĂ©fautmp3nâest pas appliquĂ©. Cela vous Ă©vite dâavoir Ă remplacer manuellement chacune des valeurs du prĂ©rĂ©glage MP3.Pour la liste des prĂ©rĂ©glages audio, consultez les prĂ©rĂ©glages audio.
bitratestring | numberDĂ©bit binaire du fichier audio obtenu, en bits par seconde. Sâil nâest pas spĂ©cifiĂ©, le dĂ©bit binaire du fichier audio dâentrĂ©e est utilisĂ© par dĂ©faut.
sample_ratestring | numberFrĂ©quence dâĂ©chantillonnage du fichier audio obtenu, en hertz. Si elle nâest pas spĂ©cifiĂ©e, la frĂ©quence dâĂ©chantillonnage du fichier audio dâentrĂ©e est utilisĂ©e par dĂ©faut.
audio_fade_secondsstring | number(par dĂ©faut :0)Lors de la concatĂ©nation dâau moins deux fichiers, une valeur positive applique un fondu sortant Ă lâaudio de chaque entrĂ©e et un fondu entrant Ă chaque entrĂ©e aprĂšs la premiĂšre. Il nây a pas de fondu entrant au dĂ©but du rĂ©sultat, mais le fondu sortant est Ă©galement appliquĂ© Ă la derniĂšre entrĂ©e.
La valeur est une durée en secondes. Par exemple,
0.5correspond Ă 500 millisecondes. Omettez ce paramĂštre ou dĂ©finissez-le sur0pour dĂ©sactiver ces fondus par entrĂ©e. Ils ne font pas se chevaucher les clips et nâinsĂšrent pas de temps supplĂ©mentaire entre eux.Les fondus sortants audio commencent sur une limite de seconde entiĂšre et peuvent se terminer avant la fin de lâentrĂ©e.
Lorsque
crossfadevauttrue, ce paramĂštre contrĂŽle le chevauchement entre les entrĂ©es au lieu de ces fondus distincts. Pour ajouter un fondu entrant au dĂ©but du rĂ©sultat, utilisez un Step dâencodage audio supplĂ©mentaire avec le paramĂštreffmpeg, comme le montre la dĂ©mo de fondu entrant et sortant (English).crossfadeboolean(par dĂ©faut :false)Lorsquâil est dĂ©fini sur
true, ce paramĂštre active le fondu enchaĂźnĂ© entre les fichiers audio concatĂ©nĂ©s Ă lâaide du filtreacrossfadede FFmpeg. Cela crĂ©e une transition fluide dans laquelle la fin dâun fichier audio chevauche le dĂ©but du fichier suivant et se fond avec lui.Le paramĂštre
audio_fade_secondscontrĂŽle la durĂ©e du chevauchement. Sâil est omis ou dĂ©fini sur0, un fondu enchaĂźnĂ© de 1 seconde est utilisĂ©. Chaque chevauchement raccourcit le rĂ©sultat de cette durĂ©eâŻ; ce mode nâajoute pas de fondu entrant au dĂ©but ni de fondu sortant Ă la fin.Remarque : ce paramĂštre nĂ©cessite au moins 2 fichiers audio Ă concatĂ©ner et ne fonctionne quâavec des fichiers audio, pas avec des fichiers vidĂ©o.
sort_byauto | basename | import_order(par dĂ©faut :"basename")ContrĂŽle lâordre des entrĂ©es regroupĂ©es lorsquâaucun alias numĂ©rotĂ© explicite nâest utilisĂ© pour le type dâentrĂ©e. Les alias numĂ©rotĂ©s se terminent par un suffixe numĂ©rique tel que
_1.La valeur par défaut
"basename"conserve lâancien comportement de tri naturel par nom de base.DĂ©finissez cette option sur
"import_order"pour prĂ©server lâordre des Steps dâimportation basĂ©s sur un tableau lorsque tous les fichiers dâentrĂ©e portent des mĂ©tadonnĂ©es dâordre dâimportation complĂštes."auto"applique la mĂȘme prĂ©fĂ©rence pour lâordre dâimportation, avec le tri naturel par nom de base comme solution de repli.