FFmpeg

 
 

מסגרת עיבוד מולטימדיה קוד פתוח

קידוד, פענוח, המרה, הזרמה והמרת קבצי אודיו וידאו דרך API של FFmpeg.

מהו FFmpeg?

FFmpeg הוא מסגרת מולטימדיה קוד פתוח מובילה המאפשרת למפתחים להקליט, להמיר ולשדר תוכן אודיו ווידאו. היא כוללת סט מקיף של ספריות—כגון libavcodec, libavformat, libavutil, libavfilter, libswscale ו-libswresample—המספקות כלים חזקים לטיפול במשימות מולטימדיה מגוונות. עם תמיכה במאות קודקים ופורמטים, FFmpeg משמש במאות יישומים, מתוכנות עריכת וידאו ועד שרתי סטרימינג ונגני מדיה.

FFmpeg מאומץ באופן נרחב בתעשיות שונות בזכות הגמישות, הביצועים ותמיכת הקהילה הפעילה שלו. הוא מטפל בכל דבר מהמרת פורמט פשוטה ועד סינון וידאו מורכב ושידור בזמן אמת. בין אם אתה בונה שרת מדיה, נגן שולחני, או צינור קידוד בענן, FFmpeg מספק יכולות עיבוד אמינות ואיכותיות. כלי השורת פקודה שלו כגון ffmpeg, ffplay ו-ffprobe מקלים על אינטגרציה בסקריפטים ובתהליכי אוטומציה, בעוד שה-API של C והקשרים (למשל, עבור Python) מאפשרים שליטה תכנותית עמוקה.

Previous Next

התחלה עם FFmpeg

כדי להתחיל להשתמש ב‑FFmpeg, התקן אותו דרך מנהל החבילות של המערכת שלך (למשל `apt install ffmpeg` ב‑Ubuntu, `brew install ffmpeg` ב‑macOS) או הורד קבצים בינאריים מוכנים מהאתר הרשמי. לשימוש תכנותי, התקן את עטיפת הפייתון דרך `pip install ffmpeg-python` או השתמש בכותרות הספרייה הרשמית של C. FFmpeg זמין גם ב‑GitHub בכתובת [FFmpeg GitHub](https://github.com/FFmpeg/FFmpeg), שם ניתן לבנות ממקור עבור תצורות מותאמות. המשקל הקל שלו ותמיכת הפלטפורמות הרבות הופכים אותו לאידיאלי לשימוש במחשבים שולחניים, שרתים והתקנות משובצות.

התקנת FFmpeg דרך מנהלי חבילות

# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg

# macOS (Homebrew)
brew install ffmpeg

# Python wrapper
pip install ffmpeg-python

המרת מדיה בין פורמטים

FFmpeg מצטיין בהמרת קבצי מדיה בין מאות פורמטים וקודקים. ניתן להמיר וידאו מ-MP4 ל-WebM, לחלץ שמע מקבצי וידאו, או לשנות פורמטים של מכולות ללא קידוד מחדש (העתקת זרם). ההגדרות המחדל החכמות שלו מבטיחות איכות גבוהה, בעוד שאפשרויות מתקדמות מאפשרות לכוונן במדויק קצב ביט, רזולוציה, קצב פריימים ופרמטרי קודק. בין אם אתם מכינים תוכן לשידור באינטרנט, ארכיון, או הפעלה במכשירים ספציפיים, FFmpeg מספק שליטה מדויקת על איכות הפלט וההתאמה. ממשק שורת הפקודה תומך ברצפי מסננים מורכבים לשינוי גודל, חיתוך והחלת אפקטים במהלך ההמרה.

איך להמיר MP4 ל‑WebM עם FFmpeg?

ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -c:a libopus output.webm

הזרמת בזמן אמת ושידור חי

FFmpeg תומך בקליטת, קידוד מחדש והזרמת מדיה חיה באמצעות פרוטוקולים כגון RTMP, HLS ו‑SRT. הוא יכול ללכוד ממצלמות רשת, מיקרופונים או מקורות רשת ולדחוף זרמים לפלטפורמות כגון YouTube, Twitch או שרתי RTMP מותאמים. עם אפשרויות השהייה נמוכה והזרמת קצב ביט מותאם, FFmpeg מניע צינורות שידור חי לאירועים, משחקים ומעקב. היכולת שלו להתמודד עם קלטים מרובים, להניח גרפיקה וליישם מסננים בזמן אמת עושה אותו אידיאלי להגדרות הזרמה ברמה מקצועית. ניתן גם לחלק את הפלט ל‑DASH/HLS לנגינה מותאמת במכשירים ניידים ובקלאיינטים של אינטרנט.

איך להזרים קובץ וידאו ל-YouTube Live?

ffmpeg -re -i input.mp4 -c:v libx264 -preset veryfast -maxrate 3000k -bufsize 6000k -g 50 -c:a aac -b:a 160k -f flv "rtmp://a.rtmp.youtube.com/live2/your_stream_key"

סינון וידאו ועיבוד לאחר

מסגרת libavfilter של FFmpeg מאפשרת סינון וידאו בזמן אמת חזק באמצעות גרף מכוון חסר מחזור של פילטרים. ניתן לחתוך, לשנות גודל, לסובב, להסיר שזירה, להפחית רעש, להוסיף סימני מים, להוסיף טקסט, לכוונן צבעים, וליישם אפקטים מורכבים כמו צילום לאט או טיים‑לפס—הכל ללא קידוד מחדש של כל הזרם. ניתן לחבר פילטרים יחד לעיבוד מרובה שלבים, והאצת חומרה (למשל, NVENC, VAAPI, VideoToolbox) מבטיחה ביצועים על GPU מודרניים. זה עושה את FFmpeg לחיוני עבור עורכי וידאו, יוצרי תוכן, ומפתחים הבונים צינורות עיבוד מדיה הדורשים שיפורים חזותיים או נרמול פורמט.

איך לחתוך, לשנות קנה מידה ולהוסיף סימן מים לוידאו?

ffmpeg -i input.mp4 -i watermark.png -filter_complex "[0:v]crop=1280:720:0:0[scaled];[scaled][1:v]overlay=10:10" -c:a copy output.mp4

חילוץ וניהול מטא-דאטה וכתוביות

FFmpeg מספק שליטה מלאה על מטא‑נתונים (תגים) וכתוביות המוטמעות בקבצי מדיה. ניתן לחלץ, לערוך או להסיר מטא‑נתונים (למשל, כותרת, אומן, אלבום, נתוני GPS) באמצעות פקודות פשוטות, או להמיר כתוביות בין פורמטים כגון SRT, ASS ו‑VTT. הוא תומך בשריפת כתוביות לתוך הווידאו או בהטמעתן כנתיבים נפרדים. עבור תהליכי נגישות ולוקליזציה, FFmpeg מאפשר עיבוד אצווה של קבצי כתוביות, התאמות זמן וניהול מסלולי שפה. זה הופך אותו לאידיאלי ללוקליזציית כתוביות, ניהול נכסי מדיה, ולעמידה בתקני שידור הדורשים מטא‑נתונים מוטמעים.

איך לחלץ כתוביות מקובץ וידאו?

ffmpeg -i input.mkv -map 0:s:0 -c:s srt output.srt
 עִברִית