Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Registered User
Join Date: Jan 2014
Location: Guelph, Ontario
Posts: 1
|
Ubuntu 12.04 server video editing from CLI
Working for someone who has a virtual linux server (12.04LTS) who wants to process large amounts of video... two, three or four files that need to be stacked (side by side, or 3-4 on the screen at once) to make a single video with one audio track.
Server has no video card (headless), only able to use limited GUI through VNC, looking for suggestions for CLI solution to automate changing these hundreds of files into desired format. To clarify: Project goal is to take two, three or four files and put them together to display as a single file (with two, three or four windows on screen) with one audio track. Large amounts of files need to be converted, so CLI and scripting will have to be used, GUI solutions cannot be used. Output format can be AVI or mp4 I'm looking for suggestions on software to use and guides if written, have been attempting to get AVXsynth to work, but it seems ancient and clumsy... any and all suggestions are appreciated. I am new to linux, so as much detail as can be given would be appreciated... suggestions such as 'simply rebuild using current .git repositories' don't mean much to me... I literally need step by step guides to install, configure and use whatever software people use to do this... I was able to get an AVIsynth install running on Windows 7 that could do this, now I basically need to do the same on Linux Ubuntu 12.04LTS No changes can be made in the operating system, 12.04 server LTS MUST be used, and is a virtual server... Running WINE is not desirable unless performance while running on a virtual server isn't impacted... Thanks in advance for any help. |
![]() |
![]() |
![]() |
#2 | Link | |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,398
|
As mentioned in the Doom10 post, I'm copying the content over here too.
Quote:
The problem with using the System-Setup page from the AvxSynth wiki is that it's ridiculously outdated. The recommended versions of FFmpeg and FFMS2 are higher now. There's no need to use avxFrameServer at all anymore - x264 has supported direct input of scripts by using AvxSynth on Linux & OSX since last February, so if you built x264 from git rather than grabbing it from the repositories, then you can just use the script as-is. FFmpeg committed the rewritten demuxer in March of last year, Libav finally got around to committing it in December, making it possible to use either FFmpeg 2.0 (or higher, although preferably FFmpeg-git) or Libav-git to open scripts on Linux and OSX by using AvxSynth - or as an extension of the support in libavformat, to watch scripts using any player that uses libavformat, like mpv. Also, there are issues with AVXEdit crashing, so it's better to use --disable-avxedit when configuring AvxSynth, meaning that the Qt requirements aren't actually required (and wouldn't be any use on a headless server anyway). In a visual environment, it's not like AVXEdit could even do syntax highlighting from what I remember, so you'd be better off with [generic text editor: Leafpad, gedit, Kate, etc.]+mpv anyway. AvxSynth also for some reason doesn't like FFMS2.avsi (or .avsi files in general, more likely) - this means you can't use the FFmpegSource2 wrapping function, so if you need video+audio, you have to use FFVideoSource and FFAudioSource separately, and then AudioDub to join them for output: Code:
a=FFAudioSource("file.avi") v=FFVideoSource("file.avi") AudioDub(v,a) I did almost post this on Doom9 instead (I may copy this post over there for coverage's sake), but you can see updated instructions here: http://forum.doom9.org/showpost.php?p=1643184&postcount=193 The only thing to really remember is that bash has different character escaping rules than cmd.exe, so things like (, ), and " all need to be escaped with a \ when being echo'ed into an AviSynth script as part of an automated bash script. Where on Windows, you could do: Code:
echo FFVideoSource("file.mkv")>test.avs Code:
echo FFVideoSource\(\"file.mkv\"\)>test.avs For example, and purely for example (choose other configuration options; these are meant for speed only): Code:
ffmpeg -i test.avs -vcodec libx264 -preset ultrafast -crf 18 -acodec libmp3lame -ab 192k test.mp4 |
|
![]() |
![]() |
![]() |
#3 | Link |
Registered User
Join Date: Oct 2001
Location: Germany
Posts: 7,150
|
may be instead of using avisynthWhatever one could probably stick to ffmpeg using the pad, movie and overlay filter, http://stackoverflow.com/questions/1...several-videos seems like a simple example which shows the general idea. (encoding setting would still be needed)
more complex example: http://stackoverflow.com/questions/1...vies-in-ffmpeg |
![]() |
![]() |
![]() |
Tags |
12.04lts, batch, headless, server, stacking |
Thread Tools | Search this Thread |
Display Modes | |
|
|