मुख्य कंटेंट तक स्किप करें

वीडियो स्टेबलाइज़ेशन

AIBudsVideoStabilization optional post-processing plugin है। यह downloaded source सुरक्षित रखते हुए supported compound six-axis recording से stabilized MP4 बनाता है।

यह device camera setting नहीं है और live preview को stabilize नहीं करता। Processing तब शुरू होती है जब Media File Import local file बना चुका हो।

Animated flow map

Import के बाद stabilization pipeline

Eligible six-axis video optional processing से गुजरता है, जबकि downloaded original सुरक्षित fallback बना रहता है।

Import

Downloaded Source

Downloaded source को सुरक्षित fallback के रूप में रखें।

योग्यता

Recording जाँचें

Metadata और supported six-axis recording data जाँचें।

Optional processor

Video stabilize करें

Source को बदले बिना derivative file बनाएँ।

Preferred output

Stabilized MP4

Playback के लिए verified stabilized output चुनें।

सुरक्षित fallback

Original file उपयोग करें

Processing skip या fail होने पर original उपयोग करें।

  • Downloaded Sourcecontinues toRecording जाँचें
  • Recording जाँचेंeligibleVideo stabilize करें
  • Video stabilize करेंcontinues toStabilized MP4
  • Recording जाँचेंprocess नहीं हुआOriginal file उपयोग करें
  • Video stabilize करेंfailureOriginal file उपयोग करें
Stabilization failure derivative output को प्रभावित करता है, पहले से पूरी download को नहीं।

Pipeline की सीमा

AIBuds import coordinate करता है और registered VideoStabilizationPlugin call करता है। Built-in implementation AIBudsVideoStabilization देता है। AIBudsAllInOne suite initialization में इसे register करता है; modular integration में app को registration संभालना होगा।

Module VideoStabilizer भी देता है, जो device transfer के बिना पहले से local compound recording को process करता है। काम cancel किया जा सके, इसके लिए लौटाए गए VideoStabilizationTask को completion तक retain रखें।

AI की सहायता से लागू करें

AI से बनाएँ

इस वर्कफ़्लो को AI से लागू करें

आधिकारिक “AIBuds से मीडिया आयात करें” स्किल से वर्कफ़्लो को अपने ऐप के अनुसार लागू करें।

https://docs-aibuds.github.io/hi/skills/import-aibuds-media को पढ़ें और निर्देशों का पालन करें। इस स्किल से “AIBuds से मीडिया आयात करें” को इस iOS प्रोजेक्ट में लागू करें और परिणाम सत्यापित करें।
आधिकारिक स्किल देखें

Processing कहाँ होगी

Import और stabilization को एक coordinated operation रखना हो तो SDK-managed processing उपयोग करें। Product अपना local या server-side processor चलाता हो तो इसे disable करें। Eligibility केवल file extension से तय न करें; plugin local file और MediaFileInfoModel जाँचता है।

Source सुरक्षित रखें

Plugin contract input को replace या remove नहीं करता। सफलता पर derivative output चुनें; अन्यथा downloaded original उपयोग करें:

Swift
let playableURL = importedFile.stabilizedFileURL ?? importedFile.localFileURL

Stabilization failure को download failure न मानें। Transfer और stabilization को अलग phases दिखाएँ और हर file की state अलग रखें।

Status का अर्थ

StatusProduct में अर्थ
notRequiredSix-axis file नहीं है; original उपयोग करें।
pendingProcessing की प्रतीक्षा है।
stabilizedProcessing सफल; stabilizedFileURL चुनें।
pluginUnavailablePlugin registered नहीं है; original रखें।
skippedPlugin file process नहीं कर सकता; original रखें।
failedProcessing fail हुई; error दिखाएँ और उपलब्ध original रखें।
disabledApp स्वयं processing संभालता है।

StabilizationStatus देखें। Output मौजूद होने से missing status का अनुमान न लगाएँ।

Quality और Resources का संतुलन

Built-in default configuration trimRatio = 0.1 उपयोग करती है, averageBitRate = 0 पर bitrate निकालती है और automatic चुनती है। Automatic mode कम-memory वाले gyro/Metal engine को प्राथमिकता देता है और gyro metadata या Metal उपलब्ध न होने पर AWEIS fallback कर सकता है। Configuration में calibrated focal length, axis mapping, sensor time offset, gyro smoothing, AWEIS radius और console-output controls भी हैं। अधिक crop image area घटाता है और अधिक bitrate storage तथा throughput बढ़ाता है। Custom settings को representative conditions पर validate करें।

Parallel processing सुरक्षित साबित न होने तक eligible files क्रम से process करें। Per-file progress (0.0...1.0) को batch index/count से अलग रखें, UI updates throttle करें और cancellation idempotent बनाएँ। Processing के दौरान app original, partial और final files एक साथ रख सकता है।

फ़ाइल बनाए रखने की checklist

  • Optional module और license resource package में हैं।
  • Modular initialization केवल intended plugin register करता है।
  • सभी stabilization states product में संभाली गई हैं।
  • Playback stabilized output चुनता है और original पर fallback करता है।
  • Transfer, per-file processing और batch completion अलग phases हैं।
  • Cancellation usable output और originals सुरक्षित रखता है।
  • लंबे videos को storage, memory, thermal load और interruption पर test किया गया है।
  • Temporary और retained media privacy व deletion policy का पालन करते हैं।