Sponsored Content
Top Forums Shell Programming and Scripting Script to reencode all files in a directory Post 303040332 by colt on Saturday 26th of October 2019 05:49:16 PM
Old 10-26-2019
Script to reencode all files in a directory

Hello. I usually reencode many video files with this ffmpeg command or similar

Code:
ffmpeg -y -i -c:a copy -vf scale=720:-2 -c:v mpeg4 -vtag xvid -b:v 969k -r 25 -pass 1 -an -f avi /dev/null && ffmpeg -i  -c:a libmp3lame -b:a 48k -ac 1 -vf scale=720:-2,subtitles=1.srt:force_style='Fontsize=20' -c:v mpeg4 -vtag xvid -b:v 969k -r 25 -pass 2 /.avi

So I would like to insert the parameters of this ffmpeg command on a script that reencodes all the videos on a certain directory. I tried to adapt a script that I found for it

Code:
for f in $(find -type f -name *.mkv); do ffmpeg -n -y -i "$f.mkv" -vf scale=720:-2 -c:v mpeg4 -vtag xvid -b:v 969k -r 25 -pass 1 -an -f avi /dev/null && ffmpeg -n -i "$f" -c:a libmp3lame -b:a 48k -ac 1 -vf scale=720:-2,subtitles="$f.srt":force_style='Fontsize=20' -c:v mpeg4 -vtag xvid -b:v 969k -r 25 -pass 2  ".$f.avi" ; done

However, when I try to run this script. it says that cannot find such file or directory. This happens because its treating every word separated by a blank space of the file's name as a file on its own.

So how can I solve this question. Also warns about any possible errors that might arise are welcome. Thank you
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Go Thru Files in a directory:Script

Hi, I am new to unix scripting and I need to write a script that accepts a directory name as an argument, and inside the script to go through all the ".dat" files in that directory. For each ".dat" file in the directory, create a control file(.ctl) file containing the associated ".dat" file name... (0 Replies)
Discussion started by: Axis99
0 Replies

2. Shell Programming and Scripting

script to count files in a directory

Hello, I was wondering if anyone had an answer for this? thanks, KW (3 Replies)
Discussion started by: kwa71
3 Replies

3. Shell Programming and Scripting

How to execute script on files in another directory?

Hi Guys, Is there any way I can execute my bash script on files in a different folder than what the script is in? Here is an excerpt of my script: #!/usr/bin/bash input_path="/cygdrive/c/files" output_path="/cygdrive/c/files/data" #script uses files from /cygdrive/c/files directory,... (1 Reply)
Discussion started by: npatwardhan
1 Replies

4. UNIX for Dummies Questions & Answers

Reading files in script from another directory

Hi I'm trying to call my files from different directories in my script. Can you please help me. Here is my script: #!/bin/bash #---------------------------------------------------------------------------------------------------------------------- #This script allows the user... (1 Reply)
Discussion started by: ladyAnne
1 Replies

5. Shell Programming and Scripting

Script which removes files from the first directory if there is a file in the second directory

Script must removes files from the first directory if there is a file with same name in the second directory Script passed to the two directories, it lies with them in one directory: sh script_name dir1 dir2 This is my version, but it does not work :wall: set - $2/* for i do set -... (6 Replies)
Discussion started by: SLAMUL
6 Replies

6. Shell Programming and Scripting

How to check whether directory has files in it or not in shell script?

hi, I am having script in which i want to check if directory has any file in it or not. If directory contains a single or more files then and only then it should proceed to further operations... P.S.: Directory might have thousand number of files. so there might be chance of getting error... (4 Replies)
Discussion started by: VSom007
4 Replies

7. UNIX for Dummies Questions & Answers

Script to remove zip files from a directory

Hi Folks, There is a job which generates a .zip files every day at /usr/app/generated directory , now please advise for the script that will delete this zip files permanently.but while deleting it should make sure that it will not delete the last two days recently generated zip files and this... (1 Reply)
Discussion started by: punpun66
1 Replies

8. Shell Programming and Scripting

Moving Files one directory to another directory shell script

Hi, Could you please assist how to move the gz files which are older than the 90 days from one folder to another folder ,before that it need to check the file system named "nfs" if size is less than 90 or not. If size is above 90 then it shouldn't perform file move and exit the script throwing... (4 Replies)
Discussion started by: venkat918
4 Replies

9. Shell Programming and Scripting

Script to keep checking the directory for files.

Hello Folks, Looking for a script which can keep doing ls to the directories and once file landed to the directory then ,read the files do further calculation and exit. Kindly guide. Regards, Sadique (3 Replies)
Discussion started by: sadique.manzar
3 Replies
avimerge(1)						      General Commands Manual						       avimerge(1)

NAME
avimerge - merge several AVI-files into one SYNOPSIS
avimerge -o name -i file1 [ file2 [ ... ] ] [ -p file ] [ -a num ] [ -A num ] [ -b num ] [ -c ] [ -f commentfile ] [ -x indexfile ] COPYRIGHT
avimerge is Copyright (C) by Thomas Oestreich. DESCRIPTION
avimerge is a versatile tool. It can contatenate several AVI files into one. It can also be used to fix an index of a broken file and can also replace audio tracks or muxes new ones. It can read raw AC3 and MP3 files for multplexing. OPTIONS
-o name Specify the name of the output file. -i file Specify the name(s) of the input file(s) to merge into the output file. -p file Specify the name of the audio file to multiplex into the output file. The type of file can be either another AVI file or an MP3 or AC3 file. -b num Specify if avimerge should write an VBR mp3 header into the AVI file. Default is dependent on the input file (and usually correct). num is either 1 or 0. -c Drop video frames in case audio is missing [off] Only when merging multiple AVI files. Some AVI files run a little bit (usually for one or two video frames) short on audio. This means avimerge cannot keep up sync when concatinating them. The files play fine when played individually but not when merged because audio from the new file gets played back with video from the old file. avimerge will print a message like No audiodata left for track 0->0 (59950.25=59950.25) continuing .. When you turn on the -c option, the video which is too much will be dropped. -f commentfile Read AVI tombstone data for header comments from commentfile. See /docs/avi_comments.txt for a sample. -x indexfile Read the AVI index from indexfile. See aviindex(1) for information on how to create such a file. -a num Specify the number of the audio track you want to use from the input file. -A num Specify the number of the audio track you want to use in the output file. If you specify an existing track number, the track will be replaced. If omitted, the next free slot will be used. EXAMPLES
The command avimerge -o big.avi -i my_file1.avi my_file2.avi my_file3.avi merges the three input files my_file[123].avi into one big AVI-file big.avi. avimerge -o out.avi -i in.avi -p audio2.avi -a 1 merges track number 1 form in.avi to the next free track number in out.avi. You can create audio-only AVI-files using transcode -i song.mp3 -x null,mp3 -g 0x0 -y raw -a 1 -o audio2.avi -u 50 The command avimerge -o out.avi -i in.avi -p sound.mp3 merges the file sound.mp3 as an additional audio track into out.avi. AUTHORS
avimerge was written by Thomas Oestreich <ostreich@theorie.physik.uni-goettingen.de> with contributions from many others. See AUTHORS for details. SEE ALSO
aviindex(1), avifix(1), avisplit(1), tccat(1), tcdecode(1), tcdemux(1), tcextract(1), tcprobe(1), tcscan(1), transcode(1) avimerge(1) 26th January 2004 avimerge(1)
All times are GMT -4. The time now is 04:17 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy