Bem, eu acrescentei vídeos, mas nunca acrescentei no começo. Você pode usar o avidemux para anexar os vídeos!
Eu não sou bom em javascripting, então, por favor, desculpe-me por não escrever isso para você. Há um tutorial para scripts do Avidemux. Avidemux é um conversor de vídeo gratuito e de código aberto. Você pode adicionar efeitos ao seu áudio / vídeo no avidemux e salvá-lo em vários formatos.
Este script é um tutorial de exemplo no link da página dado aqui: [ ::: link: :: ] e o script simplesmente varrerá o diretório orgDir e descompactará todos os arquivos AVI. O arquivo resultante é colocado no diretório destDir (usando a nova API directorySearch).
As funções do Avidemux são as seguintes: displayError, displayInfo, fileReadSelect, fileWriteSelect, allFilesFrom, nextFile
e mais funções: carregar, acrescentar, salvar, salvarDVD, saveOGM, clearSegments, addSegment, goToTime, forceUnpack, setContainer
Mais funções de script aqui: link
o Script Turotial que converte o arquivo avi é o seguinte:
//AD <-
/*
Simple script that scans the orgDir directory
and unpack all AVI files
The resulting file is put in destDir directory
Using new directorySearch API
*/
var app = new Avidemux();
var ds = new DirectorySearch();
var orgDir;
var destDir;
var reg =new RegExp(".$");
/*
This is for Unix
For Windows change to
sep="\";
reg2=new RegExp("\.*\");
*/
var sep="\";
var reg2 =new RegExp("\/.*\/");
var extension;
var target;
//
//
//
// select files from original & target directories
//
orgDir=fileReadSelect();
destDir=fileWriteSelect();
orgDir=pathOnly(orgDir);
destDir=pathOnly(destDir);
//
// strip last \ or //
//
orgDir=orgDir.replace(reg,"");
destDir=destDir.replace(reg,"");
print("orgDir : <"+orgDir+">");
print("destDir : <"+destDir+">");
//
// Go
//
if(ds.Init(orgDir))
{
while(ds.NextFile())
{
// Only process file we want i.e. AVI
if(!ds.isNotFile && !ds.isDirectory && !ds.isHidden && !ds.isArchive && !ds.isSingleDot && !ds.isDoubleDot)
{
extension=ds.GetExtension();
if(extension == "avi")
{
target=ds.GetFileName();
target=destDir+sep+target;
print("***"+ds.GetFileName()+"-->"+target);
processFile(orgDir+sep+ds.GetFileName(),target);
}
//print("File: "+ds.GetFileName()+" is "+ds.GetFileSize()+" bytes, extension "+extension);
}
}
print("We just searched in directory \"" + ds.GetFileDirectory() + "\"");
ds.Close();
}
else
displayError("Error initializing the directory search");
displayInfo("Finished !");
function processFile(filename, targetfile)
{
// Load the file
app.forceUnpack();
app.load(filename);
app.rebuildIndex();
app.audio.delay=0;
app.audio.mixer("NONE");
app.audio.scanVBR();
app.setContainer("AVI_UNP");
app.save(targetfile);
return 1;
}
Espero que isso ajude ...
fontes: