Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Prosba o vytvoření jednoduchého batch skriptu pro AviDemux: *.ts -> *.mp4

Dobrý den,

mohl bych poprosit o vytvoření jednoduchého skriptu pro AviDemux (mám 2.7.5 pro Windows)?

Z nahrávacího zařízení mám hromadu souborů ve formátu .ts , a potřebuju je zkonvertovat na .mp4.

V AviDemux to po jednom udělám tak, že .ts soubor otevřu, v položce Výstupní formát zvolím MP4 Muxer, a pomocí tlačítka Nastavit vyberu políčko "Vynutit poměr stran" 16:9. Nic jiného neměním, pak dám Soubor - Uložit a hotovo.

A teď jde o to, že těch souborů jsou desítky až stovky, tak bych potřeboval to dělat dávkově.

A nemá pro mě cenu se to nějak učit, protože toto je zatím jediné, co s tímto programem potřebuji dělat.

Nebyl by někdo tak hodný a nenapsal mi pro to jednoduchý skript? Stačí sem v textové podobě, dokážu si to zkopírovat, stejně jako upravit cesty. Víc ale ne, zkoušel jsem to dle nějakých návodů a nešlo mi to (chybí mi v tomto naprosté základy).

Předem děkuji za pomoc

Předmět Autor Datum
Tu si sa skúšal pozrieť a inšpirovať sa? https://www.avidemux.org/admWiki/doku.php?id=tutorial:batc…
pme 25.05.2020 18:36
pme
Dák za odpověď. Tam jsem samozřejmě byl, a taky jsem byl tady https://avidemux.org/smif/index.php?to…
Slon_neregistrovany 25.05.2020 18:44
Slon_neregistrovany
A čomu konkrétne na tomto nerozumieš? set avidemux="C:\Program Files\Avidemux 2.5\avidemux2.exe" se…
pme 25.05.2020 18:56
pme
To jsem přesně udělal, ale asi tam byla nějaká chyba nebo co, neboť to nefungovalo ... Tak jsem to s…
Slon_neregistrovany 25.05.2020 19:08
Slon_neregistrovany
Na to potřebuješ program, který ti to projde soubor po souboru, adresář po adresáři. Musí předávat s…
Flash_Gordon 25.05.2020 18:53
Flash_Gordon
Tak myslím, že cenovka tady chybí u více dotazů.
Slon_neregistrovany 25.05.2020 18:56
Slon_neregistrovany
Ha! Už to funguje, bylo tam jen potřeba něco vymazat z toho vzorového skriptu (sice metodou cvičená…
Slon_neregistrovany 25.05.2020 18:56
Slon_neregistrovany
set videocodec("Copy") set audiocodec("copy") set setContainer("MP4",... syntaxe bez "=" je nesmysl…
lední brtník 25.05.2020 20:41
lední brtník
Ja nahraté a orezané *.ts prevádzam dávkovo do *.mkv s pomocou mkvmerge takýmto .bat súborom, umiest…
poihu 25.05.2020 21:45
poihu
(tohle vážně ještě někdo používá po roce 2010?) ffmpeg -i soubor.ts -c copy soubor.mp4 for %i in (…
trojile 25.05.2020 22:55
trojile
podla tohto prikladu by som potreboval prekonvertovat len audio do aac.. set avidemux="c:\Program F…
peat 28.12.2020 10:28
peat
Když to nefunguje, tak to je asi rozbitý. Určitě to píše nějakou chybu, tak tu chybu musíš opravit.
host 28.12.2020 10:33
host
nenapise to nic, vsetko prebehne a audio len skopiruje
peat 28.12.2020 10:34
peat
Skript pouštíš v CMD okně nebo dvojklikem?
host 28.12.2020 11:38
host
dvojklikom, vytvoril som subor bat
peat 28.12.2020 12:08
peat
a je ten soubor bat správně v adresáři ve kterém jsou ty soubory ? nebo je špatně někde na ploše/v d…
MM_tank 28.12.2020 12:54
MM_tank
ano subor je v danom adresari s filmami...na obrazku je vidiet, ze hned po spusteni sa nepremenil au…
peat 28.12.2020 13:10
peat
Tak spusť nejdřív příkazový řádek (Win+R, cmd [Enter]) a v něm pak teprve ten dávkový soubor. Když…
host 28.12.2020 14:42
host
no ja nie som zrovna odbornik na tieto prikazy a skripty...takze akym prikazom spustim v prikazovom… poslední
peat 28.12.2020 14:55
peat

A čomu konkrétne na tomto nerozumieš?

set avidemux="C:\Program Files\Avidemux 2.5\avidemux2.exe"
set videocodec=Xvid
set audiocodec=MP3
for %%f in (*.mp4) do %avidemux% --video-codec %videocodec% --audio-codec %audiocodec% --force-alt-h264 --load "%%f" --save "%%f.avi" --quit

skopíruj si uvedený text, vlož do nejakého textového editoru (notepad-poznámkový blok), uprav prvý riadok (cesta...), posledný riadok zmeň (*.mp4) na (*.ts) a na konci riadku f.avi zmeň na f.mp4

ulož ako: prevod.bat, nakopíruj si ten bat súbor do priečinka, kde máš tie stovky videosúborov a s ten spusti ten prevod.bat....

To jsem přesně udělal, ale asi tam byla nějaká chyba nebo co, neboť to nefungovalo ... Tak jsem to smazal, udělal celé znova a už to fungovalo (viz můj příspěvek z 18:56). Nechápu proč, asi nějaký překlep nebo bug, nebo co :-D .... No každopádně to je riziko toho, dělat to metodou cvičená opice, pokud člověk náhodou neudělá chybu, tak to funguje, ale pokud udělá, tak je totálně nahranej. Proto jsem šel sem, a každopádně děkuji za pomoc.

Na to potřebuješ program, který ti to projde soubor po souboru, adresář po adresáři.
Musí předávat soubory postupně a se správnými parametry (Vstupní názvy souborů, výstupní názvy souborů, konfigurace výstupního souboru mp4).

Není to akce na 5 minut a troufám si říct, že klasický programovací jazyk je na to lepší, než nouzovka batch file.

A nakonec nevidím tady nikde nabízenou cenovku, co za tu práci.

Ha! Už to funguje, bylo tam jen potřeba něco vymazat z toho vzorového skriptu (sice metodou cvičená opice, ale lepší, než kamenem do hlavy ...)


set avidemux="c:\Program Files\Avidemux 2.7 VC++ 64bits\avidemux.exe"
set videocodec("Copy")
set audiocodec("copy")
set setContainer("MP4", "muxerType=0", "optimize=1", "forceAspectRatio=True", "aspectRatio=1", "rotation=0")
for %%f in (*.ts) do %avidemux% --video-codec %videocodec% --audio-codec %audiocodec% --load "%%f" --save "%%f.mp4" --quit

Ja nahraté a orezané *.ts prevádzam dávkovo do *.mkv s pomocou mkvmerge takýmto .bat súborom, umiestni sa do adresára s *.ts súbormi spolu s mkvmerge.exe a spustí sa:


chcp 1250

pushd %~dp0

for %%f in (*.ts) do (

    ECHO Processing %%f
    
    rem mkvmerge -a 1,3 -o "out/%%~nf.mkv" "%%f"
    mkvmerge -a 1 -o "out/%%~nf.mkv" "%%f"

    if errorlevel 1 (
        ECHO Warnings/errors generated during remuxing %%~nxf, original file not deleted.
        ECHO Warnings/errors generated during remuxing %%~nxf, original file not deleted. >> logging.txt
    ) else (
        ECHO Processing of %%~nxf successful!
        ECHO Processing of %%~nxf successful! >> logging.txt
        ECHO Deleting %%~nxf.
        ECHO Deleting %%~nxf. >> logging.txt
        del "%%f"
        )
    )

pause

popd

Súbory premuxované na *.mkv ukladá do adresára "out" a v prípade úspešného prevodu zdrojový *.ts maže. Do remuxovaného *.mkv ukladá prvú zvukovú stopu, a tá za"rem"ovaná alternatíva ukladá 1 aj 3 zvukovú stopu (to sa zíde keď je v tej tretej napr. aj originál zvuk - platí pre ČT, na inej stanici to môže byť inak). Automaticky sa ukladajú aj titulky do *.mkv ak v tom zdrojovom *.ts sú. Všetko je to samozrejme bez rekompresie jak videa tak audia.

podla tohto prikladu by som potreboval prekonvertovat len audio do aac..

set avidemux="c:\Program Files\Avidemux 2.7 VC++ 64bits\avidemux.exe"
set videocodec("Copy")
set audiocodec("copy")
set setContainer("MP4", "muxerType=0", "optimize=1", "forceAspectRatio=True", "aspectRatio=1", "rotation=0")
for %%f in (*.ts) do %avidemux% --video-codec %videocodec% --audio-codec %audiocodec% --load "%%f" --save "%%f.mp4" --quit

takze som skusil toto, ale samozrejme nefunguje...co tam treba doplnit?

set avidemux="c:\Program Files\Avidemux 2.7 VC++ 64bits\avidemux.exe"
set videocodec=Copy
set audiocodec=FDK_AAC
for %%f in (*.avi) do %avidemux% --video-codec %videocodec% --audio-codec %audiocodec% --load "%%f" --save "%%f.mkv" --quit

no ja nie som zrovna odbornik na tieto prikazy a skripty...takze akym prikazom spustim v prikazovom riadku ten davkovy subor?

/// tak sa mi to podarilo spustit cez ten prikazovy riadok ale vysledok je ten isty...ked sa spusti avidemux, tak sa to skratka neprepne na ten codec ktory ja potrebujem ale je tam vzdy copy

vidim ze aj niekomu inemu to neslo

https://forum.videohelp.com/threads/398365-AviDemux-Batch-Convert-Audio-and-Video-Problem

...taky skvely program a taku zakladnu vec nema vo vybave, to nepochopim

Zpět do poradny Odpovědět na původní otázku Nahoru