FFmpeg മള്‍ട്ടിമീഡിയ ഡേറ്റ ഹാന്‍ഡ്ലിങ്ങിനുള്ള ലൈബ്രറികളും പ്രോഗ്രാമുകളും തയ്യാറാക്കുന്ന സ്വതന്ത്ര സോഫ്റ്റ്വെയര്‍ പ്രോജക്റ്റ് ആണ്. FFmpeg പ്രോജക്റ്റിലെ ഘടകങ്ങളായ പ്രധാന കമാന്‍ഡ് ലൈന്‍ റ്റൂളുകള്‍ ആണ് ffmpeg , ffserver , ffplay , ffprobe എന്നിവ. ഇതിലെ ffmpeg കമാന്‍ഡ് കൊണ്ടുള്ള ചില നുറുങ്ങു വിദ്യകളാണ് ഇവിടെ ചേര്‍ക്കുന്നത്.

ഇന്‍സ്റ്റാലേഷന്‍

ഡെബിയന്‍ അടിസ്ഥാന ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങളില്‍

sudo apt-get install ffmpeg

ആര്‍ച്ച് അടിസ്ഥാന ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങളില്‍

sudo pacman -S ffmpeg

ഉപയോഗം

ഓഡിയോ,വീഡിയോ ഫയലുകളുടെ കണ്‍വേര്‍ഷന്‍ , ട്രിമ്മിങ്ങ്  തുടങ്ങി സ്ക്രീന്‍ റെക്കോഡിങ്ങിനു വരെ ffmpeg ഉപയോഗപ്രദമാണ്. വേഗതയും കാര്യക്ഷമതയും ഇതിന്റെ പ്രത്യേകത ആണ്.

  1. വീഡിയോ ഫയലിനുള്ളില്‍ നിന്ന് ഒരു ചെറിയ ഭാഗം കട്ട് ചെയ്യാന്‍

ffmpeg -i input.mp4 -ss 00:00:40 -to 00:00:46 -async 1 -strict -2 output.mp4

ഇവിടെ -ss നു ശേഷം HH:MM:SS ഫോര്‍മാറ്റില്‍ നല്‍കിയിരിക്കുന്ന സമയം ഒറിജിനല്‍ വീഡിയോയുടെ എവിടെ നിന്ന് കട്ട് ചെയ്യണമെന്നും -to നു ശേഷം ഉള്ളത് എവിടെ വരെ കട്ട് ചെയ്യണം എന്നുമുള്ളതാണ്.

2.  വീഡിയോ ഫോര്‍മാറ്റ് കണ്‍വേര്‍ട്ട് ചെയ്യാന്‍

ffmpeg -i input.mp4 output.avi

ഇവിടെ input എന്ന mp4 വീഡിയോയെ output എന്ന avi ഫയല്‍ ഫോര്‍മാറ്റിലേക്ക് കണ്‍വേര്‍ട്ട് ചെയ്യുന്നു.

ഉദാഹരണത്തിന്

ffmpeg -i ~/Desktop/song.mp4 ~/Desktop/song.avi

ഈ കമാന്‍ഡിന്റെ എക്സെക്യൂഷനു ശേഷം ഡെസ്ക്ടോപ്പ് ഡയറക്റ്ററിയില്‍ song എന്ന പേരില്‍ രണ്ടു ഫയലുകള്‍ ഉണ്ട്. mp4 ഫയല്‍ ഫോര്‍മാറ്റ് ഉള്ളതും avi ഫയല്‍ ഫോര്‍മാറ്റിലുള്ളതും.

( ഇന്‍പുട്ടും ഔട്ടുപുട്ടും സ്പെസിഫൈ ചെയ്തതിനിടയിലെ വൈറ്റ് സ്പേസ് ശ്രദ്ധിക്കണം.)

വീഡിയോ കണ്‍വേര്‍ഷന്‍ ഇത്തിരി സമയമെടുക്കുന്ന പരിപാടി ആണ്. പക്ഷേ ഇതിനെ നമുക്ക് നാലിരട്ടിയോളം വേഗത്തിലാക്കാം. (സ്വാഭാവികമായും ഔട്ട്പുട്ടിന്റെ ക്വാളിറ്റിയും കുറയും )

ffmpeg -i input.mp4 -preset ultrafast output.avi

3. ഒരുപാട് വീഡിയോ ഫയലുകള്‍ കൂട്ടിച്ചേര്‍ക്കാന്‍

ffmpeg -f concat -i filelist.txt -c copy output.mp4

ഇവിടെ filelist.txt എന്ന ഒരു ഫയല്‍ ശ്രദ്ധിച്ചിരിക്കുമല്ലോ. ഇത് നമുക്ക് കൂട്ടിച്ചേര്‍‍ക്കേണ്ട വീഡിയോകളുടെ എല്ലാം പാത്ത് സൂക്ഷിച്ചിരിക്കുന്ന ഇടമാണ്. ഉദാഹരണത്തിന് നമ്മുടെ ഹോം ഫോള്‍ഡറില്‍ vid1.mp4, vid2.mp4 എന്നീ രണ്ടു ഫയലുകള്‍ ഉണ്ടെന്നും ഇവയെ കൂട്ടിച്ചേര്‍ക്കലാണ് നമ്മുടെ ലക്ഷ്യം എന്നും വയ്ക്കുക. ഇപ്പോള്‍ filelist എന്ന ടെക്സ്റ്റ് ഫയലില്‍ ഉള്‍പ്പെടുത്തേണ്ട വരികള്‍

file vid1.mp4

file vid2.mp4

ജെനറലായി ആ റ്റെക്സ്റ്റ് ഫയലിനകത്തു വരേണ്ട വരികളെ

file ‘path/to/file’

file ‘path/to/file’

എന്നു കുറിക്കാം. ഈ കമാന്‍ഡ് എക്സെക്യൂഷനോടെ നമ്മള്‍ നല്‍കിയ ക്രമത്തില്‍ ഔട്ട്പുട്ട് ലഭിക്കും. എക്സെക്യൂഷന്‍ വളരെ വേഗത്തിലാണു താനും.

4. വീഡിയോയില്‍ നിന്ന് ഓഡിയോ എക്സ്ട്രാക്റ്റ് ചെയ്യാന്‍.

ffmpeg -i video_input.mp4 -vn -ab 256 audio_output.mp3

ഇവിടെ -vn എന്ന സ്വിച്ച് video_input.mp4 എന്ന വീഡിയോയില്‍ നിന്ന് ഓഡിയോ എക്സ്റ്റ്രാക്റ്റ് ചെയ്യവേ -ab എന്ന സ്വിച്ച് അതിനെ audio_output.mp3 എന്ന പേരില്‍ ഒരു ഓഡിയോ ഫയലായി സേവ് ചെയ്യുന്നു.

5. വീഡിയോയെ ഗിഫ് ഫയല്‍ ആക്കാന്‍

ffmpeg -i video.mp4 -vf scale=500:-1 -t 10 -r 10 gif.gif

ഇവിടെ scale എന്നത് ഗിഫിന്റെ സൈസിനേയും -t ഡ്യൂറേഷനേയും -r ഫ്രെയിം റേറ്റിനേയും നിര്‍ണയിക്കുന്ന സ്വിച്ചുകളാണ്.  ഇവിടെ video.mp4 എന്ന ഫയലിന്റെ ആദ്യത്തെ 10 സെക്കന്‍ഡ് ആണ് gif.gif ആയി മാറുന്നത്. ഇതിനോടൊപ്പം -ss സ്വിച്ച് കൂടി ഉപയോഗിച്ച് വീഡിയോയില്‍ നിന്ന് നിശ്ചിത ഭാഗം ഗിഫ് ആക്കാനാകും.

 

(തുടരും..)

Advertisements