diff --git a/index.html b/index.html index b108dd5..72ed7c0 100644 --- a/index.html +++ b/index.html @@ -1,5 +1,5 @@ - + ffmprovisr @@ -17,7 +17,8 @@ -
+ +

➺ ffmprovisr ❥

@@ -79,29 +80,31 @@ Change the above data-target field, the button text, and the below div class (th

Create GIF

-

Part 1: Create 3 second clip from an existing source file (no audio necessary)

+

Part 1: Create 3 second clip from an existing source file (no audio necessary)

- ffmpeg -ss HH:MM:SS -i input.mov -c:v copy -c:a copy -t 3 output.mov + ffmpeg -ss HH:MM:SS -i input -c:v copy -c:a copy -t 3 output

    -
  • ffmpeg : starts the command
  • -
  • -ss HH:MM:SS: The starting point of the gift
  • -
  • -t 3: the number of seconds after the starting point repeated in the gif
  • +
  • ffmpeg starts the command
  • +
  • -i input file (path, name and extension)
  • +
  • -ss HH:MM:SS starting point of the gif
  • +
  • -t 3 number of seconds after the starting point repeated in the gif (here 3; can be specified also with a full timestamp, i.e. here 00:00:03)
  • +
  • output file (path, name and extension)

Part 2: Make the gif

- ffmpeg -i input.mov -vf scale=500:-1 -t 10 -r 30 output.gif + ffmpeg -i input -vf scale=500:-1 -t 10 -r 30 output.gif

    -
  • ffmpeg : starts the command
  • -
  • -vf scale: width:height in pixels (a negative number keeps it in proportion)
  • -
  • -t 10: Maximum length of running time
  • -
  • -r 30: run at 30 frames per second
  • +
  • ffmpeg starts the command
  • +
  • -vf scale=width:height in pixels (a negative number keeps it in proportion)
  • +
  • -t 10 running time in seconds (here 10)
  • +
  • -r 30 run at 30 fps (frames per second)
@@ -130,8 +133,8 @@ Change the above data-target field, the button text, and the below div class (th
  • ffmpeg : starts the command
  • -i for input
  • [inputfile.wav] : file you would like to convert to mp3
  • -
  • -sample_fmt s16p: sample format. This will give you 16 bit audio (To see a list of supported sample formats, type: ffmpeg -sample_fmts)
  • -
  • -ar 44100: Sets the audio sampling frequency to 44.1 kH (CD quality).
  • +
  • -sample_fmt s16p: sample format. This will give you 16 bit audio (To see a list of supported sample formats, type: ffmpeg -sample_fmts)
  • +
  • -ar 44100: Sets the audio sampling frequency to 44.1 kHz (CD quality).
  • [outputfile.mp3] : outputname and format
  • @@ -189,7 +192,7 @@ Change the above data-target field, the button text, and the below div class (th
  • ffmpeg: starts the command
  • -i for input
  • [inputfile.extension]: the file you want to create framemd5 checksums for
  • -
  • -an: ignores the audio track
  • +
  • -an: ignores the audio stream (audio no)
  • -f framemed5: file type
  • [outputfile.framemd5]: output name and format
  • @@ -211,7 +214,7 @@ Change the above data-target field, the button text, and the below div class (th

    Transcode into a deinterlaced Apple ProRes LT

    - ffmpeg -i input.mov -vcodec prores -profile:v 1 -acodec pcm_s16le -vf yadif output.mov + ffmpeg -i input.mov -c:v prores -profile:v 1 -c:a pcm_s16le -vf yadif output.mov

    This command transcodes an input file (input.mov) into a deinterlaced Apple ProRes LT .mov file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif (Yet Another De-Interlacing Filter) command.

    @@ -220,15 +223,15 @@ Change the above data-target field, the button text, and the below div class (th
  • ffmpeg: Calls the program ffmpeg
  • -i: Tells ffmpeg to expect an input file
  • [inputfile]: Specifies the name and location of the file you want to transcode into ProRes
  • -
  • -vcodec prores: Tells ffmpeg to transcode the video stream into Apple ProRes
  • -
  • -profile:v 1: Declares profile of Apple ProRes you want to use. The profiles are explained below:
  • +
  • -c:v prores: Tells ffmpeg to transcode the video stream into Apple ProRes 422
  • +
  • -profile:v 1: Declares profile of ProRes you want to use. The profiles are explained below:
    • 0 : ProRes422 (Proxy)
    • 1 : ProRes422 (LT)
    • 2 : ProRes422 (Normal)
    • 3 : ProRes422 (HQ)
    • -
    -
  • -acodec pcm_s16le: Tells ffmpeg to encode the audio stream in 16-bit Linear PCM
  • + +
  • -c:a pcm_s16le: Tells ffmpeg to encode the audio stream in 16-bit linear PCM
  • -vf yadif: Runs a deinterlacing video filter (yet another deinterlacing filter) on the new file
  • [output.mov]: Specifies the name, location, and extension of the new ProRes file
  • @@ -349,7 +352,7 @@ Change the above data-target field, the button text, and the below div class (th
  • -show_format: outputs file container
  • -show_streams: outputs audio and video codec
  • -show_data: adds “hexdump” to show_streams command output
  • -
  • -print_format: Set the output printing format (in this example “xml”)
  • +
  • -print_format: Set the output printing format (in this example “xml”; other formats are “json” and “flat”)
  • @@ -377,11 +380,11 @@ Change the above data-target field, the button text, and the below div class (th
  • -f: forces ffmpeg to keep the same file format of the joined files
  • concat: ffmpeg’s concatenate command. This tells ffmpeg to join the files.
  • -i: tells ffmpeg to expect input files
  • -
  • mylist.txt: specifies the location of a text file with a list of files to be concatenated. You should create a text file that is formatted as follows:
  • +
  • mylist.txt: specifies the location of a text file with a list of files to be concatenated. You should create a text file that is formatted as follows: +
  • -c copy: specifies the encoder for the output file by telling ffmpeg to copy the codecs of the original files and use them for the output file
  • [output]: specifies the filename and location for the output file
  • @@ -434,13 +437,13 @@ Change the above data-target field, the button text, and the below div class (th

    This command captures a certain portion of a video file, starting from a designated point in the file and taking an excerpt as long as the amount of time (in seconds) specified in the script. This can be used to create a preview or clip out a desired segment. To be more specific, use timecode, such as 00:00:05.

    @@ -516,7 +519,7 @@ Change the above data-target field, the button text, and the below div class (th

    Transcode to h.264

    -

    ffmpeg -i [input file] -vcodec libx264 -acodec copy [output file.mp4]

    +

    ffmpeg -i [input file] -c:v libx264 -c:a copy [output file.mp4]

    This command takes an input file and transcodes it to h.264 with an .mp4 wrapper, keeping the audio the same codec as the original. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting h.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

    @@ -524,21 +527,25 @@ Change the above data-target field, the button text, and the below div class (th
  • ffmpeg: Calls the program ffmpeg
  • -i: Tells ffmpeg to expect an input file
  • [input file]: Tells ffmpeg the location of the file you want to process
  • -
  • -vcodec libx264: Tells ffmpeg to change the video codec of the file to h264 -acodec copy: tells ffmpeg not to change the audio codec
  • +
  • -c:v libx264: Tells ffmpeg to change the video codec of the file to h264
  • +
  • -c:a copy: tells ffmpeg not to change the audio codec
  • [output file.mp4]: Specifies the name and location of the new file, including the desired codec extension
  • In order to use the same basic command to make a higher quality file, you can add some of these presets:

    ffmpeg -i [input file] -vcodec libx264 -acodec copy -preset veryslow -crf 18 [output file.mp4]

    - -
  • -preset veryslow: This option tells ffmpeg to use the slowest preset possible for the best compression quality
  • -
  • -crf 18: Specifying a lower CRF will make a larger file with better visual quality
  • - -

    libx264 also defaults to 4:2:2 chroma subsampling. Some versions of Quicktime can't read x264 files in 4:2:2. In order to allow the video to play in all Quicktime players, you can specify 4:2:0 chroma subsampling instead:

    -

    ffmpeg -i [input file] -vcodec libx264 -pix_fmt yuv420p -acodec copy -preset veryslow -crf 18 [output file.mp4]

    + + -
  • -pix_fmt yuv420p: Specifies a pixel format of YUV 4:2:0 to allow the file to play in a standard Quicktime player
  • - +

    libx264 also defaults to 4:2:2 chroma subsampling. Some versions of Quicktime can't read x264 files in 4:2:2. In order to allow the video to play in all Quicktime players, you can specify 4:2:0 chroma subsampling instead:

    +

    ffmpeg -i [input file] -c:v libx264 -pix_fmt yuv420p -c:a copy -preset veryslow -crf 18 [output file.mp4]

    + +
    @@ -646,5 +653,7 @@ outputfile.mpg: Specifies the name and location of your output file + +