Zlúčenie videí bez reencodingu

Sekcia: Aplikácie & Desktop 02.06 | 10:52
Avatar Slavomír Ubuntu 20.10  Používateľ

Čavko chalani,

vedeli by ste mi prosím poradiť aký príkazový riadok použiť aby som zlúčil dve videá rovnakého formátu rovnakej kvality bez reencodingu, to jest bez straty kvality obrazu a zvuku?

Ak použijem príkazové riadky ktoré sú dostupné na na rôznych linuxových fórach a angličtine, nefunguje to. V prehrávači videí, to nezobrazí správne ako správne zlúčené videá, zobrazí len jedno video. (Zdá sa že je to pravdepodobne chyba u vývojárov).

Vedeli by ste nájsť nejaké riešenie nejakého upraveného príkazoveho riadku, kde to funguje správne?

 

Vygooglil som nasledovné príkazové riadky a nefunguje ani jeden:

 

mkvmerge -o outfile.mp4 infile_01.mp4 \+ infile_02.mp4 \+ infile_03.mp4

ffmpeg -i "concat:input1.mpg|input2.mpg|input3.mpg" -c copy output.mpg

avimerge -i input1.avi input2.avi -o output.avi

 

Make a text file listing your inputs:

file 'input0.webm'

file 'input1.webm'

file 'input2.webm'

Now run ffmpeg:

ffmpeg -f concat -i input.txt -c copy output.webm

 

Fungoval mi iba tento a aj to len pre webm súbory

mkvmerge -o output.webm -w file1.webm + file2.webm

 

Videá na testovanie sú môžete stiahnuť tu

https://www.uschovna.cz/zasilka/YXANUKJHU6TMBYY7-3J2/2YMIEPH94X

 

Diki moc

    • RE: Zlúčenie videí bez reencodingu 02.06 | 11:04
      Avatar Branislav Poldauf Manjaro, Debian stable  Používateľ

      príkaz ti neporadím

      ja používam lossless-cut

      ja ho používam na strihanie dlhych videi, ale viem že má aj merge funkciu

      https://github.com/mifi/lossless-cut

      býva dostuzpny aj cez repo

      Linux: the operating system with a CLUE... Command Line User Environment
      • RE: Zlúčenie videí bez reencodingu 02.06 | 15:47
        Avatar Slavomír Ubuntu 20.10  Používateľ

        Diki moc. Podarilo sa mi to nainštalovať cez Ubuntu Software. Snáď mi to pomôže. Pri uvedených skúšobných videách to síce spojilo správne, avšak na konci pár sekúnd chýbal zvuk. Keď som poradie súborov vymenil, potom to bolo so zvukom OK

        • RE: Zlúčenie videí bez reencodingu 02.06 | 17:30
          Avatar bedňa LegacyIce-antiX  Administrátor

          Ak máš v nejakom videu problém s posunutím zvuku hoci tam pred strihaním, alebo spájaním nebol, tak ho pred tým reenkóduj na 100% keyframes.

          ffmpeg -i input.mp4 -vcodec libx264 -x264-params keyint=1:scenecut=0 -acodec copy output.mp4
          Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
    • RE: Zlúčenie videí bez reencodingu 02.06 | 11:09
      Avatar samalama   Návštevník

      prikazovy riadok mozes pouzit akykolvek...

      • RE: Zlúčenie videí bez reencodingu 02.06 | 15:36
        Avatar Slavomír Ubuntu 20.10  Používateľ

        samalama: Pre mp4 nefunguje ani jeden

        • RE: Zlúčenie videí bez reencodingu 02.06 | 15:39
          Avatar Branislav Poldauf Manjaro, Debian stable  Používateľ

          vidím že si asi stoličkou stojíš na kábli, nevadí vysvetlím

          bol to vtip

          ty si nesprávne napísal že chceš príkazový riadok, pričom si chcel príkaz

          "príkazový riadok" = termínal (emulátor terminálu) "príkaz" = to čo do príkazového riadku napíšeš

          Linux: the operating system with a CLUE... Command Line User Environment
    • RE: Zlúčenie videí bez reencodingu 02.06 | 11:51
      Avatar bedňa LegacyIce-antiX  Administrátor

      Bežne používam príkaz čo spomínaš:

      ffmpeg -i "concat:input1.mpg|input2.mpg|input3.mpg" -c copy output.mpg

      Problém je žo to druhé video (vid2.mp4) je nejak posraté, preto ti naň nič nefunguje.

      Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
      • RE: Zlúčenie videí bez reencodingu 02.06 | 15:41
        Avatar Slavomír Ubuntu 20.10  Používateľ

        Diki. No nie je problém v tom videu, to robí tak so všetkými videami. Prehrávač prehrá vždy len prvé video.

        Problém je vo ffmpeg.

        Vyskúšam urobiť bug report. Dúfam, že sa mi to nejak podarí.

        Zdá sa že v minulosti to fungovalo, potom to vývojár asi nejak pokazil.

        • RE: Zlúčenie videí bez reencodingu 02.06 | 17:26
          Avatar bedňa LegacyIce-antiX  Administrátor

          Paráda, takto sa to robí, gratulácia. https://trac.ffmpeg.org/ticket/8706

          Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
        • RE: Zlúčenie videí bez reencodingu 02.06 | 17:57
          Avatar samalama   Návštevník

          ale ono to funguje (ffmpeg-4.2.3):

          $ cat input.txt
          file 'vid1.mp4'
          file 'vid2.mp4'
          
          $ ffmpeg -f concat -safe 0 -i input.txt -c copy output.mp4

          a keby mne niekto poslal takym stylom pisany bug, tak ho rovno poslem do pice (no jo no, ale Slavomir je stary hacker, on tomu rozumie a moze si to dovolit...)

          • RE: Zlúčenie videí bez reencodingu 02.06 | 20:22
            Avatar bedňa LegacyIce-antiX  Administrátor

            Na tieto pri...... reči mám len jeden liek, ukáž svoj GitHub.

            Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
            • RE: Zlúčenie videí bez reencodingu 02.06 | 20:48
              Avatar samalama   Návštevník

              myslis ten github, ktory kupil microsoft? nemam dalsie otazky...

              • RE: Zlúčenie videí bez reencodingu 02.06 | 21:04
                Avatar bedňa LegacyIce-antiX  Administrátor

                To tak býva, keď je niečo úspešné, tak to kúpy veľká firma.

                X ďalších firiem vlastní iné zaujímavé projekty a v pozadí za nimi, je MS, Google, Oracle, IBM, alebo Amazon. To už dnes ani nemá zmysel rozoberať.

                Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org