Ffmpeg ətraflı təlimat. FFmpeg konsol video redaktoru kimi. Videodan audio çıxarın

FFmpeg, video və audio faylları redaktə etmək və çevirmək üçün demək olar ki, bütün əsas əməliyyatları yerinə yetirməyə imkan verən kitabxanalar və əmr satırı yardım proqramları toplusudur. Aşağıda videonu redaktə edərkən faydalı ola biləcək FFmpeg ilə işləmək üçün əsas əmrlərin fırıldaqçı vərəqi var. Xüsusilə video və audio faylların keyfiyyətini itirmədən dağıdıcı olmayan montajına diqqət yetiririk. Lisenziya: GNU LGPL və GNU GPL. Veb sayt: http://ffmpeg.org

Yeni başlayanlar üçün FFmpeg

Smartfonlar, kameralar və digər rəqəmsal cihazlardan istifadə edərək rəqəmsal formatda videoların çəkilməsi adi hala çevrilib. Təbii ki, çəkilmiş videoları, məsələn, YouTube-da yerləşdirmək üçün hansısa şəkildə redaktə etməyə ehtiyac var. Yəni, videoları tez-tez kəsmək, audio treki dəyişdirmək və ya silmək, video formatının ölçüsünü dəyişdirmək və sonra hər şeyi bir video faylda birləşdirmək lazımdır.

Bu kütləvi fəaliyyət üçün çoxlu proqramlar yaradılır. Məsələn, əvvəllər Windows sistemləri üçün təchiz edilmiş MoveMaker video redaktorunu götürək. FFmpeg adlı media fayllarını redaktə etmək və çevirmək üçün bir sıra kommunal proqramlar və kitabxanalara baxacağıq.

FFmpeg-in yaxşı cəhətləri:

    FFmpeg faylları ictimai lisenziya altında mövcuddur. Yəni mənbə kodu öyrənilməsi, dəyişdirilməsi və yayılması üçün sərbəst açıqdır. Proqramların özləri isə ictimai kitabxanadakı kitablar kimi praktiki olaraq pulsuzdur.

    İctimai proqramlar üçün səciyyəvi olduğu kimi, FFmpeg bütün məşhur əməliyyat sistemləri üçün paylanır - GNU/Linux, Windows, MacOS.

    FFmpeg proqramları konsol əsaslıdır; siz multimedia fayllarını birbaşa komanda xəttindən redaktə edə bilərsiniz. FFmpeg yardım proqramlarını müxtəlif növ skriptlərdə və skriptlərdə - məsələn, veb saytlarda video və audio faylların işlənməsini avtomatlaşdırmaq üçün əvəzolunmaz edir.

    FFmpeg, demək olar ki, bütün hallar üçün müxtəlif multimedia fayl formatları üçün çoxlu sayda kodekləri dəstəkləyən öz kitabxanasına malikdir. Üstəlik, üçüncü tərəf kodeklərini qoşmaq imkanı ilə FFmpeg qura bilərsiniz.

    Müvafiq olaraq, konsol yardım proqramları üçün, məsələn, MoveMaker-ə bənzər proqram qabıqları yarada bilərsiniz, burada əməliyyatlar komanda xətti ilə deyil, qrafik interfeys və siçan istifadə edərək həyata keçirilir. İctimai lisenziyaya görə, FFmpeg komponentləri praktiki olaraq videoların kodlaşdırılması və redaktəsi üçün proqramların əksəriyyətində tapıla bilər.

    İş üçün FFmpeg keyfiyyətini itirmədən bir çox videoları redaktə etməyə imkan verir. Orta istehlakçının adətən sıxılmamış və ya itkisiz video çəkmək imkanı yoxdur; Buna görə də, sıxılmadan video faylların dağıdıcı olmayan redaktə imkanı heç kimə zərər verməyəcək.

Onu da qeyd etmək lazımdır ki, FFmpeg-in alternativi var - Libav çəngəsi. Komanda parametrinin sintaksisi hər iki halda eynidir.

Formatlar və kodeklər haqqında

Qısaca olaraq, qeyri-lirik bir təxribat olaraq, video və audio fayl formatları haqqında deməliyəm. Bunu başa düşmək lazımdır ki, bu köməkçi proqramlar və kitabxanalar dəstinin əmrləri sehrli sehrlərə bənzəməsin.

Adətən bir video faylı konteynerdir. Bu, bir çox faylları ehtiva edən zip və ya tar arxivatoru tərəfindən yaradılmış arxiv kimi bir şeydir. Əslində, belə bir konteynerdə video məlumat faylları, bir və ya daha çox audio trek var, altyazıların mətn faylları ola bilər və bəzi digər məlumatlar ola bilər. Tipik olaraq, konteynerə daxil edilən bu fayllar axın adlanır.

Video üçün ümumi konteyner formatları 3gp, MP4, MOV, MPEG, AVI, MKV (Matryoshka), WEBM və s. FFmpeg çox sayda belə konteyner formatları ilə işləyir.

Audio fayl formatı - MP3, OGG Vorbis, WAV və s. - adətən janr, müəllif, rəssam və s. haqqında audio trek və mətn metadatasını ehtiva edir.

Konteynerlərdəki video məlumatların özü kodeklər - video kodlaşdırma və dekodlaşdırma proqramları tərəfindən təyin olunan müxtəlif formatlar şəklində "qablaşdırılır". Ən populyar kodeklər MP4 konteyneri üçün H.264 və H.265, WEBM konteyneri üçün V8 və V9 kodekləridir.

FFmpeg çoxlu sayda kodeklərlə, o cümlədən ekzotiklərlə işləyir. Siz ffmpeg əmrini -codecs parametri ilə işlətməklə FFmpeg-də mümkün kodeklərin siyahısını öyrənə bilərsiniz.

ffmpeg-kodeklər

Video məlumatların əsas parametrləri bunlardır:

  • video təsvirin həlli - məsələn, 320x240, p720 və s.;
  • video axını yaratmaq üçün istifadə olunan format və kodek;
  • bit sürəti - videonu bir saniyədə oynamaq üçün lazım olan kilobayt və ya meqabaytdakı məlumatların miqdarı - məsələn, 240 Kb/s, 1 Mb/s;
  • kadr sürəti - saniyədə kadrların sayı (saniyədə kadr) - məsələn 24 fps, 30 fps.

Audio data üçün mühüm parametrlər bunlardır:

  • audio axını yaratmaq üçün istifadə olunan format və kodek;
  • seçmə tezliyi - məsələn, 44 KHz;
  • bit sürəti - bir saniyədə audio faylı oxutmaq üçün lazım olan kilobaytdakı məlumatların miqdarı - məsələn, 96 Kb/s, 128 Mb/s;
  • mono rejim, stereo rejim və s.

Ancaq əslində daha çox parametrlər var. Multimedia faylının yolu və adı ilə ötürülən -i parametri ilə fmpeg əmrindən istifadə edərək video konteynerin parametrlərini və ona daxil olan video və audio məlumatlarını asanlıqla öyrənə bilərsiniz.

Ffmpeg -i video.mp4

VidCutter: FFmpeg üçün GUI

Ancaq FFmpeg-dən istifadə etməyə yalnız əmr satırından başlaya bilərsiniz. FFmpeg üçün qrafik qabıqlar da var - qrafik interfeys və siçan istifadə edərək əsas əmrlər və əməliyyatlar yerinə yetirilə bilən proqramlar.

Belə çox sadə qrafik qabığa misal olaraq çox sadə VidCutter proqramını göstərmək olar. Video faylları yenidən kodlaşdırmadan, yəni keyfiyyətini itirmədən kəsmək üçün qrafik interfeysdən istifadə etməyə imkan verir.

Bu proqramda işləmək bir əməliyyatdan ibarətdir - fraqmentin başlanğıcını və sonunu seçin və video trim düyməsini basın. Ancaq əksər hallarda, video faylları kəsməkdən daha çox şey var.

FFmpeg yardım dəstinin quraşdırılması

Linux. FFmpeg yardım proqramları adətən bütün Linux paylama anbarlarına daxil edilir və bu paylamaların yerli paket menecerləri tərəfindən asanlıqla quraşdırılır. Siz həmçinin rəsmi veb saytından hazır ffmpeg ikili birləşmələrini yükləyə və onları birbaşa ev qovluğunuzdan işə sala bilərsiniz. Və ya mənbələrdən tərtib edin.

üçün WindowsMacOS Rəsmi veb saytından hazır FFmpeg ikili birləşmələri olan arxivi yükləyə və onları istənilən kataloqa çıxara bilərsiniz. Lazımi yardım proqramları adətən zibil qutusunda yerləşir. Bu utilitlərə gedən yolu birbaşa komanda xəttində göstərərək və ya qlobal sistem dəyişənləri vasitəsilə utilitlərə yolu əlavə etməklə onları komanda xəttindən işə salmalısınız.

FFmpeg dəstində iki əsas yardım proqramı var:

  • ffmpeg - multimedia faylları ilə bütün əməliyyatlar üçün bir yardım proqramı;
  • ffplay hər hansı digər pleyerin yerinə istifadə edilə bilən çox sadə media pleyeridir.

FFmpeg ilə redaktə

Tutaq ki, bizim üçün əziz olan bir neçə köhnə Canon, Nikon və ya videokamera tərəfindən hazırlanmış bir neçə video faylımız var. Bu videolardakı artıqlığı azaltmaq, onlardan fon səsini çıxarmaq və bir az musiqi əlavə etmək istədik. Sonra hər şeyi yenidən kodlaşdırmadan və ya keyfiyyətini itirmədən bir faylda birləşdirin.

Gəlin bu faylları ayrı bir qovluğa yerləşdirək və ffmpeg əmrlərindən istifadə edərək video faylları redaktə etmək üçün komanda xəttindən bu qovluğa keçək.

Siz həmçinin ffmpeg yardım proqramının əmr xətti parametrlərinin düzgün sırasını və qruplaşdırılmasını saxlamalısınız:

  • Unutmayın ki, manipulyasiya və redaktə üçün giriş fayl(lar)ı -i seçimindən sonra ffmpeg əmrindən dərhal sonra təyin olunur: ffmpeg -i video.mp4 ;
  • giriş və ya giriş fayllarının parametrlərindən sonra qlobal parametrlər var - məsələn, axınları seçmək seçimi, yeni video qətnamə seçimi;
  • sonra video kodek seçimi var, ardınca onun parametrləri, o cümlədən video filtrləri;
  • sonra audio kodek seçimi var və filtrlər də daxil olmaqla onun parametrləri siyahıya alınır;
  • əmr çıxış faylının adını tamamlayır.

Nümunə əmr xətti

FFmpeg: kod dəyişdirmə və dağıdıcı redaktə

Video stitching kimi bir çox video faylı redaktə əməliyyatları üçün bu faylları tək formata çevirmək lazımdır.

FFmpeg-in əsas məqsədi media fayllarını bir formatdan digərinə çevirməkdir. Və FFmpeg-ə kodlaşdırma çox asanlıqla edilə bilər.

Ən azı başqa formata çevirmək üçün çıxış faylında istədiyiniz fayl uzantısını təyin etməlisiniz. Hamısı budur. Bu uzantıdan istifadə edərək, yardım proqramı tələb olunan kodek seçəcək və giriş faylının parametrlərinə əsasən bu kodek üçün standart parametrlərə uyğun olaraq giriş faylını transkod edəcək. Məsələn, aşağıdakı əmr MP4 video.mp4 giriş faylını WEBM konteyner faylına video.webm çevirəcək

Fmpeg -i video.mp4 video.webm

Lakin standart parametrlər adətən əsasdır və istənilən keyfiyyəti və ya əlavə redaktə olunmaq qabiliyyətini təmin etməyə bilər. Buna görə də, format parametrləri açıq şəkildə təyin edilə bilər. Video parametr blokunun və səs blokunun əsas variantlarını sadalayaq.

video parametrləri üçün ffmpeg seçimləri:

  • -vcodec və ya qısaca c:v - video kodek parametrləri və ya "kopya" və ya boş parametr (defolt dəyər)
  • -f - konteyner formatı
  • -b - saniyədə kilobit və ya meqabit ilə bit sürəti K və ya M hərfi ilə müəyyən edilir
  • -aspekt - şəklin aspekt nisbəti (4:3, 16:9, 1.3333, 1.7777)
  • -r - kadr sürəti

səs seçimləri üçün ffmpeg seçimləri:

  • -akodek və ya qısaca c:a - audio kodek parametrləri və ya "kopya" və ya boş parametr (defolt dəyər)
  • -f - audio formatı
  • -ab - audio bitrate
  • -ar - diskreditasiya tezliyi
  • -ac - kanalların sayı

Məsələn, MP4 video.mp4 giriş faylını bəzi açıq şəkildə müəyyən edilmiş parametrlərlə WEBM video.webm konteyner faylına yenidən kodlayaq.

Bu əmrin nəticəsi olaraq, seçilmiş kodeklərdən istifadə edərək video və audio axınlarının yeni parametrlərə uyğun olaraq kodlaşdırılması prosesi başlayacaq. Multimedia fayllarının parametrlərindən və kompüterin gücündən asılı olaraq, bu transkodlaşdırma prosesi kifayət qədər uzun müddət çəkə bilər.

FFmpeg: video rezolyusiyasını dəyişdirin

Yenidən kodlaşdırma təbii olaraq həyata keçiriləcək və sadəcə qlobal seçim -s istifadə edərək video üçün yeni bir qətnamə təyin etsəniz

Ffmpeg -i video.mp4 -s 320x240 video.webm

FFmpeg: keyfiyyət itkisi olmadan kod dəyişdirmə və dağıdıcı olmayan video redaktə

İndi keyfiyyətini itirmədən videonu bir formatdan digərinə çevirmək haqqında. Bəzi əməliyyatlar üçün konteyner faylının içindəki axınlar toxunulmaz qaldıqda və sadəcə bir fayldan digərinə kopyalandıqda audio və videonun yenidən kodlaşdırılması olmadan, keyfiyyət itkisi olmadan redaktə etmək mümkündür. Bunu etmək üçün -vcodec və -acodec seçimləri kopyalama parametrindən istifadə edir. Məsələn, MP4 video.mp4 faylından video axını və audio axınını TS video.ts konteyner faylına “tökək”:

Nəticədə, yeni video.ts konteyner faylı video.ts konteyner faylından video və audionu transkodlaşdırma ilə toxunulmamış ehtiva edəcək.

FFmpeg: Video faylların dağıdıcı olmayan dilimlənməsi və kəsilməsi

Video faylı -ss və -t seçimlərindən istifadə edərək kəsilir. -ss seçimi kəsmənin başlanğıcını, -t seçimi isə sonrakı fraqmentin müddətini təyin edir. Vaxt "saat: dəqiqə: saniyə" formatında göstərilir. Video faylın məzmununu qeyri-dağıdıcı şəkildə redaktə etmək üçün kopyalama seçimindən istifadə edin.

Yenidən kodlaşdırmadan kəsmə çox sürətlidir və kompüterin çox gücünü tələb etmir.

FFmpeg: video faylları yapışdırmaq və birləşdirmək

Ffmpeg-dən istifadə edərək video faylları yapışdırmaq və birləşdirmək üçün onlar eyni formatda, o cümlədən bu formatın video və audio axınlarının parametrləri baxımından eyni olmalıdır. Əgər belə deyilsə, əvvəlcə video faylları bir formata çevirməlisiniz.

Bir çox formatlar üçün ffmpeg-də faylların əlaqələndirilməsi iki nöqtədən sonra boru simvolu ilə ayrılmış giriş faylları ardıcıllığı ötürülən concat operatorundan istifadə etməklə həyata keçirilir. Eyni formatda və tipdə olan file1.avi və file2.avi fayllarını yenidən kodlaşdırmadan yapışdırmaq nümunəsi:

Ffmpeg -i "concat:file1.avi|file2.avi" -vcodec copy -acodec copy output.avi

Video fraqmentləri bir faylda birləşdirərkən nəzərə almaq lazımdır ki, fraqmentlərin video axınları və audio axınları ayrıca əlavə olunur və sonra bir konteynerə birləşdirilir. Buna görə də, fraqmentlərdən birində audio trek video axınından daha qısadırsa, o zaman qalan fraqmentlərin audio trekləri bu qısa audio trekin sonuna keçəcək və səsin sinxronizasiyası baş verəcəkdir. Bu nəzərə alınmalıdır.

FFmpeg: MP4 video fayllarının birləşdirilməsi və birləşdirilməsi

MP4 konteynerindəki video faylları concat operatorundan istifadə etməklə birləşdirilə bilməz. Ancaq əvvəlcə bu faylları video və audio kodlaşdırmadan bir konteynerə çevirə bilərsiniz, məsələn, MPEG-TS:

Ffmpeg -i vid1.mp4 -acodec surəti -vcodec surəti -vbsf h264_mp4toannexb -f mpegts vid1.ts ffmpeg -i vid2.mp4 -acodec surəti -vcodec surəti -vbsf h264_mp4toannexb -f mpegts vid2ts.

Və sonra bu fayllar concat operatorundan istifadə edərək son mp4 faylına birləşdirilə bilər:

Ffmpeg -i "concat:vid1.ts|vid2.ts" -vcodec copy -acodec copy out.mp4

FFmpeg: audio trek silinir

Çox vaxt video faylı sonradan başqası ilə əvəz etmək üçün audio axınını silməlisiniz. Bu, -an (audio deyil) seçimindən istifadə etməklə edilir.

Ffmpeg -i zvuk.mpg -vcodec surəti -an bezzvuka.mpg

FFmpeg: audio treki əlavə etmək və ya əvəz etmək

Audio faylın yolunu parametr kimi keçirən əlavə -i variantından istifadə edərək video fayla audio axını əlavə etməlisiniz.

FFmpeg: video fayllarında axınlara daxil olmaq üçün "-map" seçimi

Yuxarıda birdən çox giriş media faylları emal edildikdə, birləşdirildikdə, multipleksləndikdə ffmpeg üçün -i seçiminin təkrar istifadəsinin bir nümunəsini gördük. Yuxarıda da deyildi ki, konteyner fayllarında video, səs və məlumatların bir neçə multimedia axını ola bilər. FFmpeg-də emal etmək, kopyalamaq və ya yapışdırmaq üçün konteynerdə xüsusi bir giriş media axını və ya daxili axını təyin etmək üçün istifadə edilə bilən -map xüsusi seçimi var.

Axınlar iki nöqtə ilə ayrılmış ikiqat nömrə ilə təyin olunur - "0:0", "0:1", "1:0", "2:1" və s. İki nöqtədən əvvəl ilk rəqəm -i seçimi ilə müəyyən edilmiş hər bir giriş faylının sıfırdan başlayaraq seriya nömrəsidir. Və iki nöqtədən sonrakı rəqəm faylın içindəki ip nömrəsini göstərir.

Xüsusi nümunələrdən istifadə edərək -map variantına baxaq.

Video fayldan ayrı audio treki yadda saxlayın (demultipleksləşdirmə)

Hər bir video fayldakı axın nömrələri təxminən aşağıdakı formata malik olan ffmpeg -i əmrinin çıxışı ilə müəyyən edilə bilər:

Ffmpeg -i video.mkv ... Stream #0:0(und): Video ... Stream #0:1(ger): Audio ... Stream #0:2(eng): Audio ... Stream # 0:3(rus): Altyazı...

Yəni iki nöqtədən əvvəl 0 onun ffmpeg üçün ilk giriş faylı olduğunu bildirir - yuxarıdakı nümunədə video.mkv faylıdır. Və iki nöqtədən sonrakı rəqəmlər bu faylın daxili axınlarının nömrələrini bildirir. Müəyyən bir axını emal etmək üçün -map seçimi həmin axının xüsusi nömrəsinə ötürülməlidir. Demultipleksləşdirən, yəni konteynerin audio yollarından birini ayrıca faylda saxlayan -map seçimi ilə əmr nümunəsi:

Ffmpeg -i video.mkv -map 0:2 sound.wav

FFmpeg: video fayla çoxlu audio trek əlavə edin (multipleksləmə)

İndi FFmpeg-dən istifadə edərək video fayla çoxlu audio treklərin əlavə edilməsi nümunəsinə baxaq. Bunun üçün yenidən -map variantından istifadə edirik.

Tutaq ki, bizim video.avi boş video faylımız var və biz onun üçün bir neçə zvuk1.mp3 və zvuk2.mp3 audio treki seçmişik - məsələn, müxtəlif musiqilər və ya müxtəlif dillərdə şərhlər. İndi biz multipleksləşdirmə üçün "-map" seçimindən istifadə edirik, yəni bu faylları bir konteyner faylına birləşdiririk:

Ffmpeg -i video.avi -i zvuk1.mp3 -i zvuk2.mp3 -xəritə 0:0 -xəritə 1:0 -xəritə 2:0 out.avi

Gördüyünüz kimi, -i seçimlərindən sonra daxil olan fayllar üçün -map seçimləri iki nöqtədən əvvəl rəqəmlərdən istifadə edir. İçərisində iki audio treki olan bir çıxış video faylı aldıq, onu bir çox pleyerdə dəyişdirmək olar - məsələn, mpv pleyerdə audio treklər arasında keçid "#" (Shift+2) vasitəsilə həyata keçirilir.

Təbii ki, yeni video fayl üçün kodlaşdırma parametrləri əlavə etmək mümkün idi. Məsələn, -c:v copy -c:a surəti seçimləri yuxarıdakı misalda video.avi, zvuk1.mp3 və zvuk2.mp3 giriş fayllarını yenidən kodlaşdırmadan təmiz surətdə çıxarmaqla yeni out.avi faylı yaratmağa imkan verəcəkdir. .

Beləliklə, FFmpeg-dən istifadə edərək video fayla subtitrlər əlavə edə bilərsiniz. Əsas odur ki, konteynerin içərisindəki giriş axınları və iplərin sayında çaşqınlıq olmasın.

Həmişə əlində

Yuxarıdakı məqalə fırıldaqçı vərəq üslubunda yeni başlayanlar üçün əsas FFmpeg əmrlərini təsvir edir. Məqalənin əhatə dairəsindən kənarda, ffmpeg əmr xəttinin bir çox sintaktik xüsusiyyətləri, eləcə də bu proqramın bir çox funksionallığı var idi. Məsələn, FFmpeg filtrlərindən söhbət getmir. FFmpeg-dən daha uğurlu istifadə proqramın tam sənədləri və tələb olunan multimedia formatlarının sənədləri ilə əlavə tanışlıq tələb edir.

Məqalə gələcəkdə FFmpeg istifadəsinin yeni nümunələri ilə tamamlana bilər. Ancaq hər kəsin əlində həmişə ingilis dilində dərslik və istinad kitabı var.

Ffmpeg -h tam > ffmpeg_help.txt

ffmpeg həqiqətən güclü video kodlayıcı/dekoderdir. O, GUI-dən çox komanda xəttində işləyir. Əmr əmri, tıklayıp cmd yazaraq, sonra enter düyməsini basmaqla tapa biləcəyiniz qara pəncərədir. Buna "komanda xətti" də deyilir. Konfiqurasiya edildikdən sonra onu istifadə etmək üçün bu pəncərələrdən birinə ffmpeg əmrlərini daxil edirsiniz.

"Quraşdırmaq" və istifadə etmək üçün əsas addımlar bunlardır:

Quraşdırma

ffmpeg indi "quraşdırılıb". Komanda xətti indi ffmpeg əmrlərini tanıyacaq və onları işə salmağa çalışacaq.

FFmpeg yeniləməsi

FFmpeg-i yeniləmək üçün 1-ci addımda yükləmə səhifəsinə qayıdın və zip faylını endirin. Faylları açın və 2-ci addımda yaradılmış qovluqdakı köhnə faylların üzərinə köçürün.

FFmpeg istifadə

FFmpeg-dən istifadə sizdən əmr sorğusu pəncərəsini açmağınızı və sonra FFmpeg xüsusi əmrlərini daxil etməyinizi tələb edir. Budur tipik bir FFmpeg əmri:

Ffmpeg -i video.mp4 -vn -ar 44100 -ac 1 -b:a 32k -f mp3 audio.mp3

Bu əmr dörd hissədən ibarətdir:

  1. ffmpeg - Bu əmr CMD-yə FFmpeg əmrlərini yerinə yetirmək istədiyimizi bildirir. cmd əvvəlcə Quraşdırma bölməsindəki 6-cı addımdakı qovluqlardan birində ffmpeg.exe faylını axtarır. Əgər tapılarsa, o, əmri yerinə yetirməyə çalışacaq.
  2. -i video.mp4 - Bu giriş faylıdır. Bu fayl üzərində işləyəcəyik.
  3. -vn -ar 44100 -ac 1 -b:a 32k -f mp3 - Bunlar “arqumentlər”dir. Bu simvollar tam olaraq nə etmək istədiyimizi müəyyən edən mini əmrlər kimidir. Bu halda, giriş mənbəyindən mp3 faylı yaratmağı söyləyir.
    • -vn - Video axınından çıxın
    • -ar 44100 - Hertzdə audio rezolyusiyasını təyin edir.
    • -ac 1 - Səs kanalları, yalnız 1 bu, effektiv şəkildə "mono edir".
    • -b:a 32k - Audio bitrate, 32 kbps-ə təyin edilmişdir.
    • -f mp3 - MP3-ə çevirməyə məcbur edin. Bu əmr olmadan, ffmpeg çıxış faylı adında istifadə etdiyiniz genişləndirmə əsasında istədiyinizi şərh etməyə çalışır.
  4. audio.mp3 - Bu çıxış faylıdır.

Təxmin etdiyiniz kimi, bu qısa əmr MP4 faylından MP3 audio faylı yaradır.

Bunu sınamaq üçün MP4 faylınız varsa, bu əmri yerinə yetirmək üçün bu addımları yerinə yetirin:

  1. Windows + R düyməsini basın.
  2. cmd yazın, sonra daxil edin.
  3. Üzərində işləmək istədiyiniz faylın yolunu dəyişdirin. CD növü. Bu cd ​​C:\Users\name\Desktop\ kimi görünməlidir.
  4. İndi giriş faylınızın adı ilə ffmpeg əmrini daxil edin. Komanda bəzi rəylərlə işləyəcək. Bu edildikdə, cmd daha çox əmr üçün əlçatan olacaq.

Bu, ffmpeg istifadə etməyin əsas yoludur. Əmrlər daha mürəkkəb ola bilər, lakin bu, proqramın çox enerjiyə malik olmasıdır. Ffmpeg sənədlərindən istifadə edərək bütün əmrləri öyrənə və çox güclü skriptlər yarada bilərsiniz. Daha sonra bu skriptləri .bat faylında saxlaya bilərsiniz ki, hər dəfə bütün əmri yazmaq əvəzinə faylı iki dəfə klikləmək kifayətdir. Məsələn, bu cavab qovluqdakı bütün MP4-lərdən MP3 yaradacaq skript ehtiva edir. Sonra biz ffmpeg-in gücünü cmd-in gücü ilə birləşdirəcəyik və bu, dağ fayllarında peşəkar video/audio kodlaşdırma etmək lazım olan zaman ən gözəl yerdir.

Tərcümə olduqca əyridir, lakin seçimlər haqqında fikir əldə edə bilərsiniz.

FFMPEG (1) FFMPEG (1)

NAME

FFmpeg - FFmpeg video çeviricisi

SİNTAKS

FFmpeg [[Giriş_fayl_seçimləri] [-i INFILE ]]... ([Çıxış_fayl_seçimləri] OUTFILE) ...

TƏSVİRİ

Bir qayda olaraq, parametrlər hər hansı müəyyən fayla tətbiq edilir.

Beləliklə, sifariş vacibdir, eyni seçimdən istifadə edə bilərsiniz

Komanda xətti bir neçə dəfə. Hər bir halda müraciət edin

Giriş və ya çıxış faylı.

* Çıxış faylının video bit sürətini 64 Kbps-ə təyin etmək üçün:

FFmpeg -i input.avi -b 64K output.avi

* Çıxış faylının kadr sürətini 24 fps-ə təyin etmək üçün:

FFmpeg -i input.avi -r 24 output.avi

* Giriş faylının çərçivə sürətini təyin etmək üçün (yalnız xam formatlar üçün etibarlıdır)

saniyədə 1 kadr və çıxış faylının kadr sürəti saniyədə 24 kadrdır:

Ffmpeg -r 1 -i giriş.m2v -r 24 çıxış.avi

Daxiletmə faylları üçün format seçimləri tələb oluna bilər.

Varsayılan olaraq, FFmpeg mümkün bir nümunə olaraq itkisiz şəkildə çevirməyə çalışır

Giriş kimi eyni audio və video çıxış parametrlərindən istifadə edir.

OPSİYONLAR

*Ümumi seçimlər*

Bu seçimlər ffmpeg* alətlərində mövcuddur.

L Lisenziyaları göstərin.

H, -?, -kömək, --kömək.

Kömək göstər.

Versiya

Versiyanı göstərin.

Formatlar

Mövcud formatları göstərin.

Əvvəlki formatın sahələri aşağıdakı mənalara malikdir:

D deşifrəsi mövcuddur

E Kodlaşdırma mövcuddur

Kodeklər

Mövcud kodekləri göstərin.

Kodek ad sahələrinin aşağıdakı mənaları var:

D deşifrəsi mövcuddur

E Kodlaşdırma mövcuddur

V/A/S

Video/audio/altyazı kodek

S kodek dilimləri dəstəkləyir

D Codec birbaşa göstərməyi dəstəkləyir

T kodek, giriş kəsilmələrini yerinə təsadüfi yerlərdə idarə edə bilər

Yalnız çərçivə sərhədləri daxilində

Bsfs

Mövcud filtr bitlərini göstərin.

Protokollar

Mövcud protokolları göstərin.

Filtrlər

Mövcud libavfiltr filtrlərini göstərin.

Pix_fmts

Mövcud piksel formatlarını göstərin.

LogLevel LogLevel

LogLevel kitabxanası tərəfindən istifadə edilən qeyd səviyyəsini təyin edin, bir nömrə və ya

Aşağıdakı dəyərlərdən birini ehtiva edən sətir:

Sakit

Təlaş

Ölümcül

Xəta

Xəbərdarlıq

Məlumat

Müfəssəl

Debug

Əsas variantlar:

F fmt

Formatlar qrupu.

fayl verirəm

Fayl adını daxil edin

U Çıxış faylını yenidən yazın.

T Müddəti

Video ardıcıllığının kod dəyişdirilməsini/çəkilişini müddəti ilə məhdudlaşdırın,

Hansı ki, saniyələrlə göstərilir. "Ss:dd:[.XXX]SS" sintaksisi də dəstəklənir.

Fs limit_ölçüsü

Fayl ölçüsü limitini təyin edir.

Ss mövqeyi

Verilmiş bir an mövqeyini saniyələrlə hədəfləyin. "Ss:dd:[.XXX]SS" Sintaksisi

Həmçinin dəstəklənir.

Onun ofseti

Giriş vaxtı ofsetini saniyələrlə təyin edin. "[-] Hh: mm: ss ". Sintaksis

Həmçinin dəstəklənir. Bu parametr bütün daxiletmə fayllarına təsir edir

Onu izləyənlər. Girişdən olan etiketlər ofsetə əlavə edilir

Fayllar. Müsbət bir ofsetin təyin edilməsi, müvafiq olan deməkdir

"Kompensasiya" saniyə gecikməsi ilə axınlar.

Vaxt möhürü vaxtı

Etiket təyin edin.

Metadata Metadata dəyəri<ключ ="значение">

Açar/dəyər cütlüyündə metadata təyin edir.

Məsələn, çıxış faylının başlığını təyin etmək üçün:

FFmpeg -i in.avi -metadate Başlıq = "mənim başlığım" out.flv !}

V nömrəsi

Qeydiyyat detallarının səviyyəsini təyin edin.

Hədəf Hədəf növü

Hədəf fayl növünü göstərin ("VCD", "SVCD", "DVD", "DV", "DV50",

"PAL-VCD", "NTSC-SVCD", ...). Bütün format seçimləri (bitrate,

Codecs, bufer ölçüsü) avtomatik olaraq təyin edilir. Sadəcə bilərsən

Növü təyin edin:

FFmpeg -i myfile.avi -hədəf VCD /tmp/vcd.mpg

Bununla belə, bildiyiniz kimi əlavə parametrləri təyin edə bilərsiniz

Onlar standart olanlarla ziddiyyət təşkil etmir, məsələn:

FFmpeg -i myfile.avi -target VCD -bf 2 /TMP/vcd.mpg

Dframe nömrəsi

Qeydə alınacaq məlumat çərçivələrinin sayını təyin edir.

Kodek kodek

Codec altyazı qrupu (axını kopyalamaq üçün "kopyalayın").

Xəbər altyazısı

Arqon kodu

Cari sətirdən ISO 639 dil kodunu (3 hərf) təyin edir

Axın.

Video seçimləri

B bit sürəti

Video bit sürətini bps ilə təyin edir (defolt = 200 Kbps).

Vframe sayı

Yazmaq üçün video kadrların sayını təyin edir.

R fps

Çərçivə sürətini təyin edir (Hz dəyərləri, vuruşlar və ya abbreviatura), (defolt =

25).

S ölçüsü

Çərçivə ölçüsünü təyin edir. WxH formatı (ffserver default = 160x128, TVM-

Defolt bağlamalar = orijinalla eynidir). Aşağıdakı abbreviaturalar

Tanınıb:

SQCIF

128x96

QCIF

176x144

352x288

4CIF

704x576

16cif

1408x1152

QQVGA

160x120

QVGA

320x240

640x480

SVGA

800x600

1024x768

UXGA

1600x1200

QXGA

2048x1536

SXGA

1280x1024

Qsxga

2560x2048

Hsxga

5120x4096

W.V.G.A.

8520x480

WXGA

1366x768

WSXGA

1600x1024

WUXGA

1920x1200

Woxga

2560x1600

Wqsxga

3200x2048

Wquxga

3840x2400

Whsxga

6400x4096

whuxga

7680x4800

320x200

640x350

HD480

852x480

HD720

1280x720

HD1080

1920x1080

Aspekt

Aspekt nisbətini təyin edir (4:3, 16:9 və ya 1.3333, 1.7777).

Croptop ölçüsü

Üst məhsul qrupunun ölçüsünü təyin edin (piksellə).

Kəskin alt ölçüsü

Aşağı kəsmə qrupunun ölçüsünü təyin edir (piksellə).

Kırpılmış ölçüsü

Sol zolağı kəsin (piksellə).

Kəsmə ölçüsü

Düzgün kəsmə qrupunun ölçüsünü təyin edin (piksellə).

Padtop ölçüsü

Üst paneli qrup ölçüsünə (piksellə) təyin edin.

Altlıq ölçüsü

Panel qrupunun alt ölçüsünü təyin edin (piksellə).

Sol tərəfin ölçüsü

Sol pad ölçüsü (piksellə).

Padright ölçüsü

Düzgün pad qrupunun ölçüsünü təyin edin (piksellə).

Padcolor hex_color

Döşənmiş zolağın rəngini təyin edin. Padcolor əlaqəsi kimi ifadə edilir

İlk iki rəqəmin təmsil olunduğu altı rəqəmli onaltılıq nömrə

Qırmızı, orta iki rəqəm yaşıl və son iki rəqəm mavi (defolt

000000 (qara)).

Video qeydini deaktiv edin.

Bt tolerantlığı

Video bit sürətini təyin edin (bitlərlə, standart 4000K). Minimal və

Maksimum dəyər: (target_bitrate / target_framerate). 1 keçid rejimində,

Bitrate tolerantlığı nə qədər uzaq olduğunu müəyyən edir<битпоток>paylaşmağa hazırdır

Bitrate ilə hədəfin orta dəyəri. Bu ilə əlaqəli deyil

Min/maksimum bit sürəti. Azaldılmış tolerantlıq çox mənfi təsir göstərir

Keyfiyyət üçün.

Maksimal bit sürəti

Maksimum video bit sürətini təyin edin (bit/s ilə). Bu tələb olunur

Bufsiz təyin ediləcək.

Minrate bitrate

Minimum video bit sürətini təyin edin (bit/s ilə). Kodlaşdırma yaratmaqda ən faydalı:

FFmpeg -i myfile.avi -b 4000K -minrate 4000k -maxrate 4000K -bufsize 1835k out.m2v

Əks halda az faydası var.

Bufsize ölçüsü

Video bufer yoxlayıcı bufer ölçüsünü təyin edir (bitlərlə).

Vcodec kodek

Kodek üçün video kodekə zəng edin. Xüsusi bir dəyər təyin etmək üçün "kopyala" istifadə edin

RAW Codec məlumatları olduğu kimi kopyalanmalıdır.

Samek

Mənbə kimi video keyfiyyətindən istifadə (VBR nəzərdə tutur).

keçmək n

Göndərmə nömrəsini seçin (1 və ya 2). Videonu ötürmək üçün istifadə olunur

Kodlaşdırmalar. Video statistikası birincidə qeyd olunur

Günlük faylına gedin (həmçinin -passlogfile seçiminə baxın) və daxil olun

İkinci keçid ondan ibarətdir ki, log faylı video yaratmaq üçün istifadə olunur,

Tələb olunan dəqiq bit sürəti. 1-ci keçiddə siz sadəcə olaraq səsi söndürə bilərsiniz

Və çıxışı sıfıra təyin edin, Windows və Unix üçün nümunələr:

FFmpeg -i foo.mov -vcodec libxvid -pass -an -f rawvideo -y NULL

FFmpeg -i foo.mov -vcodec libxvid -pass -an -f rawvideo -y /dev/null

Passlogfile prefiksi

İki keçidli log fayl adını standart fayl adı prefiksinə təyin edin

``ffmpeg2pass"" prefiksi. Tam fayl adı PRE- olacaq

FIX-N.log, burada N çıxış axınındakı xüsusi nömrədir.

Yeni video

Cari çıxış axınına yeni video axını əlavə edin.

Vlanq kodu

Cari videonun ISO 639 dil kodunu (3 hərf) təyin edin

Axın.

Qabaqcıl Video Xüsusiyyətləri

Pix_fmt formatı

Piksel formatını təyin edin. "siyahı" göstərmək üçün parametr kimi istifadə olunur

Bütün dəstəklənən piksel formatları.

Sws_bayraqları

SwScaler bayraqlarını təyin edin.

G gop_size

Qrup şəklinin ölçüsünü təyin edin.

Daxili

Yalnız çərçivə daxilində istifadə edin.

Vdtn

Həddi ləğv edin.

Qscale q

Sabit video miqyasından (VBR) istifadə.

Qmin q

Minimum video miqyası (VBR)

Qmax q

Maksimum video miqyası (VBR)

Qdiff q

Çəki kvantlayıcısı (VBR) arasındakı maksimum fərq

Qblur bulanıqlığı

Video kvantlayıcı miqyasının bulanması (VBR) (aralıq 0,0 - 1,0)

Qcomp sıxılma

Video sıxılma şkalası (VBR) (standart 0.5). Sabit

Lmin lambda

Minimum video Lagrange əmsalı (VBR)

Lmax lambda

Maksimum video Lagrange çarpanı (VBR)

Mblmin lambda

Minimum miqyaslı makroblok kvantizatoru (VBR)

Mblmax lambda

Maksimum miqyaslı makroblok kvantlayıcısı (VBR)

"lambda" vahidlərindən istifadə üçün bu dörd seçim (Lmin, Lmax, mblmin, mblmax),

Lakin siz "Q"-dan asanlıqla çevirmək üçün QP2LAMBDA sabit dəyərindən istifadə edə bilərsiniz.

Vahidlər:

Ffmpeg -i src.ext-Lmax 21 * QP2LAMBDA dst.ext

Rc_init_cplx mürəkkəbliyi

Bir kodlaşdırmadan keçmək üçün ilkin çətinliklər

B_qfaktor-amil

P- və B-çərçivə arasında Qp faktoru

I_qfaktor-amil

P və I çərçivələri arasında Qp faktoru

B_qoffset ofset

Qp P və B çərçivəsi arasında ofset

I_qoffset ofset

Qp P və I çərçivələri arasında ofset

Rc_eq tənlikləri

Kursa nəzarət tənliyini təyin edin (defolt = "text^qComp").

Rc_override override

Müəyyən vaxtlarda sürəti ləğv edin

Me_metod metodu

Hərəkətin qiymətləndirilməsi metodunu metoda təyin edin. Mövcud Metodlar

(Ən aşağıdan ən yaxşı keyfiyyətə qədər):

Sıfır

Sadə (0, 0) vektoru sınayın.

Phods

Epzs

(Defolt üsul)

Tam

Tam axtarış (yavaş və epzs-dən daha yaxşı)

Dct_algo alqoritmi

DCT alqoritmini quraşdırın. Mümkün dəyərlər:

0 FF_DCT_AUTO (defolt)

1 FF_DCT_FASTINT

2 FF_DCT_INT

3 FF_DCT_MMX

4 FF_DCT_MLIB

5 FF_DCT_ALTIVEC

Idct_algo alqoritmi

IDCT alqoritmini quraşdırın. Mümkün dəyərlər:

0 FF_IDCT_AUTO (defolt)

1 FF_IDCT_INT

2 FF_IDCT_SADE

3 FF_IDCT_SIMPLEMMX

4 FF_IDCT_LIBMPEG2MMX

5 FF_IDCT_PS2

6 FF_IDCT_MLIB

7 FF_IDCT_ARM

8 FF_IDCT_ALTIVEC

9 FF_IDCT_SH4

10 FF_IDCT_SIMPLEARM

Ern

Səhv tolerantlığını təyin edin n:

1 FF_ER_CAREFUL (defolt)

2 FF_ER_COMPLIANT

3 FF_ER_AGRESSIVE

4 FF_ER_VERY_AGRESSIVE

Ec bit_mask

Xəta maskalanmasını bit_mask olaraq təyin edin. bit_mask maskaları var

Aşağıdakı dəyərlər:

1 FF_EC_GUESS_MVS (defolt = aktivdir)

2 FF_EC_DEBLOCK (defolt = aktivdir)

Bf çərçivələri

"Çərçivə" B-çərçivələrindən istifadə edin (MPEG-1, MPEG-2 və MPEG-4 dəstəklənir).

Mbd rejimi

Makroblok həlləri

0 FF_MB_DECISION_SIMPLE: mb_cmp istifadə edin (hələ mmpeg ilə dəyişə bilməzsiniz).

1 FF_MB_DECISION_BITS: Daha az tələb edəni seçin

bit.

2 FF_MB_DECISION_RD: siqnal-küy nisbəti

Makro bloklar üçün dörd hərəkət vektorundan istifadə edin (yalnız MPEG-4).

Hissə

Məlumat bölməsindən istifadə (yalnız MPEG-4).

Səhv parametri

Avtomatik olaraq aşkar edilməyən kodlayıcı xətalarını keçin.

Ciddi ciddilik

Standartlara necə ciddi riayət etmək olar.

Genişləndirilmiş daxili kodlaşdırmanı aktivləşdirin (h263+).

Limitsiz Hərəkət Vektorlarını aktivləşdirin (h263+)

Deinterlace

Deinterlace fotoşəkilləri.

Ilme

Kodlayıcıların bir-birinə qarışmasında dəstək qrupu (yalnız MPEG-2 və MPEG-4). istifadə edin

Əgər daxiletmə faylı interlaceddirsə və ya siz saxlamaq istəyirsinizsə, bu seçim

Minimum itki ilə interlaced format. Alternativdir

Giriş axınının -deinterlace ilə deinterlacing, lakin deinterlacing

Zərərləri təqdim edir.

Vstats

vstats_HHMMSS.log statistikasının video kodlaşdırma zibilliyi.

Vstats_file faylı

Kodlaşdırma video statistikasını fayla köçürün.

Üst N

Üst = 1/aşağı = 0/avtomatik =- Əvvəlcə 1 sahə

DC dəqiqliyi

Daxili_dc_dəqiqlik.

Vtag FourCC / etiketlər

Zəng video etiketləri/FourCC.

Qphist

QP histoqramlarını göstərin.

Vbsf bit axını_filtri

Bitstream_filter bunlardır:

əlavə_tökmə

Əlavəni_sil

Səs-küy

H264_mp4toannexb

Imxdump

Mjpegadump

*Audio funksiyaları*

Çərçivələr

Səs yazma çərçivələrinin sayını təyin edin.

Ar tezliyi

Audio seçmə sürətini təyin edin (defolt = 44100 Hz).

Ab bitrate

Səs bit sürətini bps ilə təyin edin (defolt = 64K).

Aq Q

Səs keyfiyyətini təyin edin (kodek xüsusi, VBR).

Ac kanalları

Audio kanalların sayını təyin edin (defolt = 1).

Səs yazısını deaktiv edin.

Akodek kodek

Kodek üçün audio kodek qrupu. Göstərmək üçün "kopyala" xüsusi mənasını istifadə edin

Həmin RAW Codec məlumatları olduğu kimi kopyalanmalıdır.

Yeni audio

Çıxış faylına yeni audio treki əlavə edin. Soruşmaq istəsəniz

Bunu etmək üçün parametrlər belə olmalıdır: “-newaudio” (“-acodec”, “-ab” və s..).

Çıxış axınlarının sayı olduqda Xəritəçəkmə avtomatik olaraq həyata keçiriləcək

Giriş axınlarının sayına bərabərdir, əks halda ilk matça qədər seçiləcək.

Xəritəni "-map" ilə dəyişə bilərsiniz

Həmişəki kimi.

Misal:

FFmpeg -i fayl.mpg -vcodec surəti -acodec AC3 -ab 384k test.mpg -acodec MP2

Ab 192K - yeni audio

Alan kodu

Cari audionun ISO 639 dil kodunu (3 hərf) təyin edin

Axın.

Qabaqcıl Audio Seçimləri:

Atag FourCC / etiketlər

Qrup etiketi audio / FourCC.

Absf bit axını_filtri

Bitstream_filter bunlardır:

əlavə_tökmə

Əlavəni_sil

Səs-küy

Mp3 kompozisiya

Əlavə edilmiş xüsusiyyətlər:

Scodec

Altyazı kodek qrupu (axılı kopyalamaq üçün "kopyalayın").

Xəbər altyazısı

Cari çıxış axınına yeni altyazı axını əlavə edin.

Alan kodu

Cari sətirdən ISO 639 dil kodunu (3 hərf) təyin edin

Axın.

Sn Altyazı qeydini deaktiv edir.

Sbsf bit axını_filtri

Bitstream_filer bunlardır:

Mov2textsub

Text2movsub

Ffmpeg -i file.mov -an -vn -sbsf mov2textsub -scodec surəti -f rawvideo sub.txt_

*Audio/Video çəkmə seçimləri*

Vc kanalı

Video çəkiliş kanalını təyin edin (yalnız DV1394).

Tvstd standartı

Televiziya standartını təyin edin (NTSC, PAL (SECAM)).

Isync

* Əlavə seçimlər:*

Xəritə input_stream_id[:sync_stream_id]

Çıxış axınlarına axın xəritəsini daxil edən axınları təyin edin. Sadəcə enu

Giriş axınları yaxşıdır, siz onları çıxışda istəyirsiniz.

Müəyyən edilmiş giriş axını sinxronizasiya etməyə təyin edərsə, Sync_stream_id.

Xəritə_meta_data OUTFILE: INFILE

Metadata məlumatı INFILE-dən OUTFILE-ə ötürülür.

Debug

Xüsusi sazlama məlumatını çap edin.

Benchmark

Kodlaşdırmanın sonunda müqayisə məlumatını göstərin. CPU göstərir

İstifadə olunan vaxt və maksimum yaddaş istehlakı. Maksimum yaddaş istehlakı,

(bütün sistemlərdə dəstəklənmir). Dəstəklənmirsə, 0 olaraq qaytarılır.

Zibil

Hər giriş paketini boşaltın.

Paket düşməsi və faydalı yük tullantılarına ehtiyac olduqda istifadə olunur.

Bitexact

Kodeki yoxlamaq üçün yalnız bir qədər dəqiq alqoritmlərdən istifadə olunur.

PS Ölçüsü

RTP yükünün ölçüsünü baytla təyin edin.

Cihazlar.

Döngə_girişi

Giriş axını üçün döngə. Hal-hazırda yalnız mövzular üçün işləyir

Şəkillər. Bu seçim ffserver-i avtomatik yoxlamaq üçün istifadə olunur.

Döngü_çıxış_sayı

kimi döngələri dəstəkləyən formatlar üçün təkrar çıxış döngələri

GIF-in aminasiyası (0 qeyri-müəyyən müddətə çıxacaq).

Mövzular sayılır

Mövzular

VSync parametri

Video sinxronizasiya üsulu:

0 Hər bir çərçivə və onun etiketi demultipleksatordan multipleksora köçürülür

1 Sabit kadr sürətinə nail olmaq üçün çərçivələr təkrarlanacaq və atılacaq.

2 Çərçivə öz işarələrindən keçir və ya 2 dəfə keçməsinin qarşısını almaq üçün atılır

Çərçivələr bir işarədən keçir.

1 Multiplekser imkanlarından asılı olaraq 1 və 2 arasında seçim edir

Siz etiketlərin hansı axınından olduğunu və olması lazım olduğunu seçə bilərsiniz

Qəbul edildi. Siz video və ya səsi dəyişməz və sinxronizasiya edə bilərsiniz

Qalan ip(lər) dəyişməz qalır.

Async samples_per_cond

Audio sinxronizasiya metodu, teq sessiyasında səs axınını "genişləndirir/sıxlayır".

Səsin dəyişdiyi saniyədə maksimum nümunə sayının dəyəri.

Async 1, yalnız ilkin audio axınının dəyişdiyi xüsusi haldır

Hər hansı sonrakı dəyişikliklər

Kopyalar

Etiketləri girişdən çıxışa köçürün.

Ən qısa

Ən qısa giriş axını bitdikdə kodlaşdırmanı tamamlayın.

Dts_delta_həddi

Delta ərəfəsində fasilə vaxt damğası.

Muxdelay saniyə

Maksimum demultipleksləşdirmə-şifrləmə gecikməsini təyin edin.

Əvvəlcədən yükləmə saniyələri

İlkin demultipleksləşdirmə-şifrləmə gecikməsini təyin edin.

Cari fayllar

Verilmiş faylda hər biri üçün bir parametr = dəyər cütləri ardıcıllığı var

Yöndəmsiz şəkildə uyğunlaşacaq seçimlərin ardıcıllığını göstərən xətlər

Komanda xəttində. Hash simvolu ilə başlayan sətirlər ('#')

İcazə verilmir və şərhlər üçün istifadə olunur. Ffpresets-ə baxın

Nümunələrin FFmpeg ağac mənbəyində kataloq.

Cari fayllar "vpre", "apre", "spre" və "fpre" ilə sıralanır

Seçimlər. Bunun əvəzinə "Fpre" seçimində əvvəlcədən təyin edilmiş fayl adı var

Şablon adı giriş kimi və hər cür kodek üçün istifadə edilə bilər. üçün

"Vpre", "apre" və "spre" variantları, verilmiş parametrlər

Fayl eyni tipli seçilmiş kodekə tətbiq edilir,

Verilmiş variant.

Arqument "vpre", "apre" və "spre" əvvəlcədən təyin edilmiş parametrlərə keçdi

Aşağıdakı qaydalara uyğun olaraq istifadə üçün verilmiş faylı təyin edir:

Əvvəlcə FFmpeg kataloqlarda arg.ffpreset adlı faylı axtarın

$HOME/.ffmpeg və DATADIR konfiqurasiya zamanı müəyyən edilir (adətən

Ally PREFIX/share/ffmpeg) bu qaydada. Məsələn, əgər mübahisə

"libx264-max"dır, o, libx264-max.ffpreset faylını axtaracaq.

Əgər belə bir fayl tapılarsa, FFmpeg adlı fayl axtaracaq

Codec_name-arg.ffpreset yuxarıdakı qovluqlarda yerləşir

Codec_name faylın əvvəlcədən təyin edilmiş parametrlərə malik olduğu kodek adıdır

Müraciət edəcək. Məsələn, bir video kodek seçsəniz

"-Vcodec libx264" və "vpre-max" istifadə edin, sonra faylı axtaracaq

Libx264-max.ffpreset.

@Anchor (FFmpeg formula qiymətləndiricisi)

FFmpeg formul qiymətləndiricisi

Sürətə nəzarət sətirini qiymətləndirərkən FFmpeg daxili düsturlardan istifadə edir

Məzənnə ilə.

Aşağıdakı ikili operatorlar mövcuddur: "+", "-", "*", "/", "^".

Aşağıdakı birlik operatorları mövcuddur: "+", "-", "(...)".

Aşağıdakı təlimatlar mövcuddur: "LD", "ST", "a".

Aşağıdakı funksiyalar mövcuddur:

Sinh(x)

Cosh(x)

Tanh(x)

Günah(x)

COS (X)

Tan(x)

Atan(x)

Asin(x)

Acos(x)

Exp(x)

Giriş(x)

ABC (X)

Squish(x)

Gauss(x)

Mod(x, y)

Maks (x, y)

Min (x, y)

tənlik(x, y)

Gte (x, y)

Gt (x, y)

Lte (x, y)

Lt (x, y)

Bits2qp (bit)

Qp2bit (QP)

Aşağıdakı sabitlər mövcuddur:

ITex

PTex

FCode

Icount

McVar

Orta QP

QComp

AvgIITex

AvgPITex

AvgPPTex

AvgBPTex

AvgTex

NÜMUNƏLƏR

Video və audio çəkiliş

FFmpeg qeyd etdiyiniz cihazlardan video və audio çəkə bilər

Daxiletmə formatı və cihazı.

Ffmpeg -f OSS -i /dev/DSP -f video4linux2 -i /dev/video0 /tmp/out.mpg

Nəzərə alın ki, əvvəllər video mənbəyi və kanal icazələrini aktivləşdirməlisiniz

XawTV kimi hər hansı bir TV tamaşaçısından ffmpeg-i işə salın (

Sex.org / XawTV />) Gerd Norr. Siz həmçinin audio yazıları quraşdırmalısınız

ING səviyyəsini standart bir qarışdırıcıdan düzgün şəkildə.

X11 tutma

Ffmpeg -f x11grab -x CIF -i: 0.0 /tmp/out.mpg

Ətraf mühit dəyişkənliyi.

Ffmpeg -f x11grab -x CIF -i: 0.0 +10.20 /tmp/out.mpg

0,0 DISPLAY ilə eyni X11 serverinizin ekran nömrəsini təmsil edir

Ətraf mühit dəyişkənliyi. 10, X-ofset və 20 Y-ofset üçün

Tutmaq.

Video və audio fayl formatının çevrilməsi

*FFmpeg hər hansı dəstəklənən fayl formatlarında və protokollarda giriş kimi istifadə edilə bilər:

Nümunələr:

*YUV fayllarını giriş kimi istifadə edə bilərsiniz:

Ffmpeg -i /tmp/test%d.Y /tmp/out.mpg

Bu faylları istifadə edəcək:

/Tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,

/Tmp/test1.Y, /tmp/test1.U, /tmp/test1.V və s. ..

Fayllar U və V fayllarından iki dəfə çox qətnamə istifadə edir. Onlar xammaldır

Fayllar, başlıq yoxdur. Onları bütün layiqli videolar adlandırmaq olar

Dekoderlər. Əgər S-seçimi ilə şəkil ölçüsünü təyin etməlisiniz

FFmpeg təxmin edə bilməz.

*YUV420P xam faylından daxil edə bilərsiniz:

Ffmpeg -i /tmp/test.yuv /tmp/out.avi

Test.yuv xam düz YUV məlumatlarını ehtiva edən fayldır. Hər bir COM çərçivəsi

Y müstəvisinə yerləşdirilən U və V təyyarələrini yarı şaquli olaraq izləyin

Və üfüqi qətnamə.

*YUV420P faylını xammala çıxara bilərsiniz:

Ffmpeg -i mydivx.avi hugefile.yuv

* Siz çoxlu giriş və çıxış faylları təyin edə bilərsiniz:

FFmpeg -i /tmp/a.wav -x 640x480 -i /tmp/a.yuv /tmp/a.mpg

Audio a.wav faylını və xam video YUV faylını a.yuv faylını MPEG-ə çevirir

Fayl a.mpg.

*Siz eyni zamanda audio və video çevirmə də edə bilərsiniz:

Ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2

22050 Hz seçmə sürətində a.wav-ı MPEG audioya çevirir.

*Siz eyni zamanda birdən çox formatı kodlaya və xəritə təyin edə bilərsiniz-

Giriş axınından çıxış axınlarına ping:

Ffmpeg -i /tmp/a.wav -ab 64k /tmp/a.mp2 -ab 128 /tmp/b.mp2 -xəritə 0:0, 0:0 -xəritə

a.wav-ı 64 kbps-də a.mp2-yə və b.mp2-ni 128 kbps-ə çevirir. '-xəritə

Fayl: indeks "hər bir çıxış üçün hansı giriş axınının istifadə olunduğunu göstərir

Çıxış axınlarını müəyyən etmək məqsədi ilə axın.

* Şifrəsi açılmış VOB fayllarını yenidən kodlaya bilərsiniz:

Ffmpeg -i snatch_1.vob -f AVI -vcodec MPEG4 -b 800k -g 300 -bf 2 -acodec libmp3lame -ab 128k snatch.avi

Bu, DVD ripping üçün tipik bir nümunədir; VOB fayl girişi,

MPEG-4 video və MP3 audio ilə AVI faylını çıxarın. Qeyd edək ki, bunda

Əmr B-çərçivəsində istifadə olunur, belə ki, MPEG-4 axını DivX5-ə uyğundur və

GOP ölçüsü 300-dür, bu da hər 10 saniyədə bir daxili çərçivə deməkdir

29.97 fps video girişi. Bundan əlavə, MP3 kodlu audio axını

Siz "- enable -libmp3lame"-ə keçməklə LAME dəstəyini aktivləşdirməlisiniz

Tune. Displey xüsusilə DVD kodlaşdırması üçün faydalıdır

İstədiyiniz audio dilini əldə edin.

QEYD: Dəstəklənən daxiletmə formatlarını görmək üçün "ffmpeg-formatlarından" istifadə edin.

* Videolardan şəkillər çıxara və ya bir çoxlarından video yarada bilərsiniz

Şəkillər:

Videolardan şəkillər çıxarmaq üçün:

Ffmpeg -i foo.avi -r 1 -s GxH -f -image2 Foo% 03d.jpeg

Bu videodan saniyədə bir kadr çıxaracaq və edəcək

Onları Foo-001.jpeg, Foo-002.jpeg və s. adlı fayllara çıxarın. Şəkillər olacaq

Yeni WxH dəyərlərinə uyğunlaşdırmaq üçün yenidən hesablayın.

Yalnız məhdud sayda çərçivə çıxarmaq istəyirsinizsə, istifadə edə bilərsiniz

Yuxarıdakı əmrlər -vframes və ya -t seçimi ilə birlikdə və ya hər hansı

Binaations -ss müəyyən bir vaxtdan bərpa etməyə başlayır.

Çoxlu şəkillərdən video yaratmaq üçün:

Ffmpeg -f image2 -i -foo -%03d.jpeg -r 12 WxH foo.avi

"foo-03d.jpeg%" sintaksisi ibarət olan onluq ədədin istifadəsini göstərir

Üç rəqəmdən seriya nömrəsini ifadə etmək üçün sıfırlar doldurulur. Bu

Bu, EC funksiyası tərəfindən dəstəklənən eyni sintaksisdir, lakin yalnız formatlar

Normal tam uyğunluğu qəbul edin.

* Çıxışa eyni tipli bir çox axın qoya bilərsiniz:

Ffmpeg -i test1.avi -i test2.avi -vcodec surəti -acodec surəti -vcodec surəti

Acodec surəti test12.avi -yenivideo -newaudio

Buraxılış nəticəsində ilk video və audio axınlarına əlavə olaraq

Test12.avi faylında ikinci video və ikinci audio olacaq

Daxiletmə axınları siyahısında axını tapın.

"Newvideo", "-newaudio" və "-newsubtitle" variantları olmalıdır

İçində olduğunuz çıxış faylının adından dərhal sonra təyin olunur

Onları əlavə etmək istəyirəm.

HƏMÇİNİN

Ffserver (1), ffplay (1) və FFmpeg-dən HTML sənədləri.

FFmpeg video və audio faylları emal etmək üçün kitabxanalar toplusudur. FFmpeg mov-u mp4-ə çevirəcək, su nişanı tətbiq edəcək, bir neçə video faylı birinə birləşdirəcək, qətnaməni dəyişdirəcək, axın videonun kodunu dəyişdirəcək, axın özü yaradacaq. FFmpeg video ilə peşəkar şəkildə işləyən, media proqramlarını inkişaf etdirən və ya sadəcə ev qeydlərini emal edənlər üçün faydalıdır.

FFmpeg-in GUI-si yoxdur və konsoldan gələn əmrlərlə idarə olunur. Bir çox istifadəçi bu və ya digər bayrağın nə demək olduğunu başa düşmədən İnternetdən lazımi əmrləri kopyalayaraq onunla işləyir. Bir neçə faydalı əmr nümunəsindən istifadə edərək FFmpeg ilə şüurlu şəkildə necə işləməyi öyrənək.

Bu gün biz fayl haqqında məlumat əldə etməkdən eyni anda bir neçə filtr tətbiq etməyə, video ilə işləyərkən tez-tez rastlaşdığınız problemləri həll etməyə keçəcəyik. Gəlin ffmpeg quraşdıraq və gedək!

Fayl haqqında məlumat əldə etmək

ffmpeg -i fayl.mp4

Burada hər şey sadədir, faylın yolunu daxil edin, bu barədə məlumat əldə edin: kodeklər, treklərin sayı, qətnamə, bit sürəti və çərçivə sürəti. Fayl yollarını -i (giriş) bayrağı ilə təyin edirik:

I fayl1.mp4 -i fayl2.mp4 .

mp4 çevirmək

Tutaq ki, Flash player vasitəsilə videonun oynanıldığı veb saytımız var. Biz onu HTML5 Video ilə dəyişmək istəyirik. Bunun üçün serverdə olan video faylları flv formatından mp4 formatına çeviririk.

  • output.mp4 - çevrilmiş faylın yolu.
  • -vcodec libx264 - hansı video kodeki almaq istədiyimizi göstərin. Bizim vəziyyətimizdə bu, əksər brauzerlər tərəfindən dəstəklənən H264-dir.
  • -acodec libvo_aacenc - AAC audio kodeki.

Ffmpeg tərəfindən dəstəklənən kodeklərin siyahısını ffmpeg -codecs vasitəsilə əldə etmək olar.

-vcodec yerinə -codec:v və -c:v girişi var. ffmpeg -i flashvideo.flv output.mp4 çevrilməsi üçün kodekləri təyin etməsəniz, ffmpeg çıxış faylı formatı üçün standart kodekləri quraşdıracaq.

Konvertasiya zamanı təkcə kodeklər göstərilmir. Parametrlərin sayını artıraq:

Ffmpeg -i flashvideo.flv -b:v 700k -r 25 -pix_fmt yuv420p-vcodec libx264\ -b:a 128k -ar 44100-acodec libvo_aacenc -yçıxış.mp4

Video -b:v və audio -b:a üçün bit sürətini 700 və 128 kb/s olaraq təyin etdik. Bit sürəti digər bayraqlarla göstərilə bilər: video üçün -vb və -b və ya audio üçün -ab.

Qalan üç parametr kadr sürəti -r 25 saniyədə kadr, YUV rəng modeli adi yuv420p dəyərinə bərabərdir və audio seçmə tezliyi 44100 Hz. Əgər fayl artıq varsa, onun üzərinə yazmaq üçün -y bayrağı lazımdır.

Video fraqmentinin kəsilməsi

ffmpeg -ss 10 -t 20-i source_video.mp4 -vcodec surəti -acodec surəti nəticə.mp4

-ss bayrağı mənbə videonun hansı nöqtəsindən onu kəsdiyimizi göstərir, -t müddətdir. Çıxışda orijinalın saniyənin onda birindən başlayacaq iyirmi saniyəlik bir video alacağıq. -ss 00:00:10.250 -t 00:00:20.120 qeydi daha dəqiq vaxt müddətini təyin etmək üçün faydalıdır. 2.1 versiyasından əvvəl FFmpeg hər iki halda videonu ən yaxın əsas kadrda kəsdi. Yeni versiyalarda son video göstərilən intervala mümkün qədər yaxındır.

Orijinal videonun kodeklərini qorumaq üçün -vcodec copy -acodec copy əlavə etdik. Əks halda ffmpeg onları standart kodeklərə yenidən kodlayacaq. İndi video yenidən kodlaşdırılmayıb və əmr tez yerinə yetiriləcək. Gəlin bu girişi -c surəti bayrağı ilə daha da sadələşdirək.

Daxil edilən videodan sonra -ss və -t bayraqlarını qoysanız, nəticədə video eyni olacaq, lakin əmrin yerinə yetirilməsi daha uzun çəkəcək. Bayraqlar nəticələnən videoya nisbətən olacaq və FFmpeg video fraqmentini -ss-ə deşifrə edəcək. Birinci halda, bu hissə nəzərə alınmayacaq.

-t bayrağı -to ilə əvəz edilə bilər, müddət əvəzinə son nöqtəni təyin edir. Bu bayraq gələn videoya tətbiq edilə bilməz:

Ffmpeg -ss 10 -i source_video.mp4 -30-c surəti nəticə.mp4

Komanda bizə fərqli bir nəticə verdi: orijinalın saniyənin onda birindən otuz saniyəlik video. Bu ona görə baş verib ki, -to nəticə.mp4 vaxt qrafikindən istifadə olunub, burada otuzuncu saniyə source_video.mp4-ün qırxıncı saniyəsinə bərabərdir. Orijinal miqyasdan istifadə etmək üçün -copyts bayrağını əlavə edin. Beləliklə, ilk əmrdəki kimi eyni videonu əldə edəcəyik:

Ffmpeg -ss 10 -i source_video.mp4 -to 30 - surətlər-c surəti nəticə.mp4

Filtrlər. Qətnamənin dəyişdirilməsi

Ffmpeg-də ən güclü vasitələrdən biri filtrlərdir. Onlar effektlər əlavə edə, müxtəlif videoları bir-birinin üzərinə qoya və bir neçə faylı birinə birləşdirə bilərlər. Quraşdırılmış filtrlərin siyahısını ffmpeg -filters əmrindən istifadə edərək görə bilərik. Gəlin videonun həllini dəyişmək üçün onlardan istifadə edək:

Ffmpeg -i source_video.avi -vf şkalası=640:480 source_preview.avi

Biz miqyas filtrini və 640:480 qətnaməsini təyin edərək -vf bayrağından istifadə etdik. Bu filtr aspekt nisbətini qoruya və həlli dinamik olaraq hesablaya bilər.

Filtrlərin birləşdirilməsi. Oynatmanı sürətləndirin

ffmpeg -i source_video.mp4 \ -filter_kompleks "setpts=0.5*PTS;atempo=2.0" sürətləndirilmiş.mp4

filter_complex bayrağından istifadə edərək bir neçə filtri birinə birləşdirdik və iki dəfə sürətləndirilmiş fayl əldə etdik. Bunu anlamaq üçün filtrləri bir-bir tətbiq edək.

Ffmpeg -i source_video.mp4 -vf parametrləri=0,5*PTS sürətləndirilmiş_video.mp4

Setpts filtrindən istifadə edərək video trekin oxunmasını sürətləndirdik. Bununla belə, audio trek dəyişməyib və fayl əvvəlki kimi uzunluqda olacaq: video 2 dəfə daha sürətli oynayacaq və sonuncu kadr faylın bütün ikinci yarısı üçün asılacaq. Əgər audio treki -an bayrağı ilə silsəniz, nəticədə yaranan faylın müddəti video trek tərəfindən müəyyən ediləcək və orijinalın yarısı qədər uzun olacaq.

Əksinə, sizə video olmadan yalnız sürətləndirilmiş audio lazımdırsa, biz atempo filtrindən istifadə edəcəyik və video treki vn bayrağı ilə siləcəyik.

Ffmpeg -i source_video.mp4 -af temp=2.0 -vn accelerated_audio.mp3

filter_complex əlavə edərək və hər iki filtri tətbiq etməklə biz bütün faylı sürətləndirdik.

Eyni əməliyyatı fərqli bir üsuldan istifadə edərək yerinə yetirək:

ffmpeg -f concat-i list.txt -c surəti çıxdı.mp4

FFmpeg xüsusi formatlarda media oxuyan və ya yazan elementlərə malikdir. Onlara demultipleksator və multipleksor deyilir. -f concat media fayllarının siyahısı ilə mətn faylını götürən və onları birləşdirir. Siz ffmpeg -formats əmrindən istifadə edərək digər elementlərə baxa bilərsiniz.

list.txt məzmunu:

Fayl "input1.mp4" faylı "input2.mp4"

Əgər çoxlu faylımız varsa və onları bir-birinin ardınca yapışdırmaq lazımdırsa, bu üsul əlverişlidir. O, videonu yenidən kodlaşdırmır və birinci üsuldan daha sürətlidir.

Ancaq birinci üsul daha tez-tez istifadə olunur. Birincisi, müxtəlif kodeklərlə videonu giriş kimi qəbul edə bilər. İkincisi, daha çox elastiklik verir. Məsələn, ilk videonun yalnız bir hissəsinə ehtiyacımız varsa, -ss və -t bayraqlarından istifadə edə bilərik. Nəzərə alın ki, bu bayraqlar yalnız ilk giriş1.mp4 faylına təsir göstərir.

Ffmpeg -ss 5 -t 2 -i input1.mp4 -i input2.mp4 \ -filter_complex " concat=n=2:v=1:a=1 [v] [a]" \ -map "[v]" - xəritə "[a]" -y nəticə.mp4

Su nişanı

Baxacağımız son nümunə su nişanıdır. Üst qat filtri son videoda su nişanının yerinin koordinatlarını daxil edir.

Su nişanını mərkəzə qoyun. Mənbə videonun və png şəklinin ölçüsünü bilməklə koordinatları özünüz hesablaya bilərsiniz. Məsələn, 1280x720 ölçülü video və 200x200 su nişanı ilə üfüqi mövqe x = (1280 - 200) / 2 = 540 və şaquli mövqe y = (720 - 200) / 2 = 260-dır. Müvafiq olaraq, filtr dəyəri "overlay=540:260" dir. Ancaq universal əmr yazmaq daha rahatdır ki, ffmpeg bizim üçün hər şeyi hesablasın. Video ölçüsünü main_w və main_h parametrlərindən, su nişanını isə overlay_w və overlay_h parametrlərindən alırıq. Sonra, koordinatları hesabladığımız düsturu "overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" filtr dəyərinə yazacağıq. Tamamlandı, mərkəzdə su nişanı tətbiq etmək əmrini aldıq:

Ffmpeg -i source_video.mp4 -i watermark.png \ -filter_complex "overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2"\ -kodek: video_protected.mp4 nüsxəsi

Tweet

Tərcüməçidən:
Bir çox insanlar ffmpeg-in bir güc olduğunu bilirlər, lakin hər kəs onun hansı güc olduğunu bilmir. O, çoxşaxəli və hüdudsuzdur və onun adamı həcmlidir və bəzi yerlərdə onunla peşəkar işin yolunu başa düşənlər azdır. Və buna baxmayaraq, bu alət, ən azı bəzən hətta məişət səviyyəsində video və səslə işləyən demək olar ki, hər kəs üçün faydalı ola bilər. Bəzi faydalı ffmpeg konsol əmrləri məqalədə müzakirə olunacaq. Bəzi yerlərdə izahlı məqalələrə keçidlər əlavə etmək azadlığını götürmüşəm.

Ffmpeg -i video_origin.avi -target ntsc-svcd video_finale.mpg
PAL formatı:

Ffmpeg -i video_origin.avi -target pal-svcd video_finale.mpg

18. .avi-ni VCD mpeg2-ə sıxın
NTSC formatı:

Ffmpeg -i video_origin.avi -target ntsc-vcd video_finale.mpg
PAL formatı:

Ffmpeg -i video_origin.avi -target pal-vcd video_finale.mpg

19. Ffmpeg ilə çox keçidli kodlaşdırma
ffmpeg -i fichierentree -pass 2 -passlogfile ffmpeg2pass fichiersortie-2
Tərcüməçinin qeydi:
Şərhlərdə digər faydalı ffmpeg əmrlərini verməyi təklif edirəm, onlardan 19-dan çoxu var;)