> ## Documentation Index
> Fetch the complete documentation index at: https://generaltranslation.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# सर्वोत्तम प्रक्रियाएँ

[`POST /2/media/upload`](/hi/x-api/media/media-upload) एंडपॉइंट का उपयोग करते समय कुछ महत्वपूर्ण बातों को समझना ज़रूरी है। OAuth के साथ मीडिया अपलोड करना थोड़ा जटिल हो सकता है, इसलिए हमने यहाँ ध्यान में रखने योग्य कुछ बातें और इस एंडपॉइंट का उपयोग करने का एक काम करने वाला उदाहरण दिया है।

<div id="keep-in-mind">
  ## ध्यान रखें
</div>

* आप एक पोस्ट में अधिकतम 4 फ़ोटो, 1 एनिमेटेड GIF, या 1 वीडियो संलग्न कर सकते हैं।
* भेजी गई इमेज, इमेज का raw binary या binary base64-encoded रूप में होनी चाहिए; यदि Content-Type सही तरीके से सेट है, तो सामग्री को अलग से encode या escape करने की आवश्यकता नहीं है (संदेह होने पर: `application/octet-stream`)।
* base64-encoded इमेज पोस्ट करते समय, संदेश के इमेज भाग में “Content-Transfer-Encoding: base64” सेट करना सुनिश्चित करें।
* Multi-part संदेश की boundaries अलग पंक्ति में होनी चाहिए और उनका अंत CRLF से होना चाहिए।
* इस एंडपॉइंट का उपयोग करके POST करने के काम करने वाले उदाहरणों के लिए, हम [xurl](https://github.com/xdevplatform/xurl) के साथ परीक्षण करने की सलाह देते हैं। साथ ही, उपलब्ध [X Libraries](/hi/resources/tools-and-libraries) भी देखें।
* Javascript और उन अन्य भाषाओं के लिए जो long integer को सटीक रूप से निरूपित नहीं कर सकतीं, API रिस्पॉन्स में दिया गया `media_id_string` इस्तेमाल करें।

<div id="media-categories">
  ## मीडिया श्रेणियाँ
</div>

Media Category पैरामीटर अपलोड की जाने वाली मीडिया फ़ाइल के उपयोग के मामले को परिभाषित करता है, और यह मीडिया अपलोड पर लागू फ़ाइल आकार सीमाओं या अन्य प्रतिबंधों को प्रभावित कर सकता है। मीडिया का उपयोग करते समय समस्याओं से बचने के लिए, मीडिया अपलोड करते समय सही media category का उपयोग करना महत्वपूर्ण है। यह अपलोड फ़्लो के हिस्से के रूप में INIT अनुरोध में भेजा जाने वाला एक वैकल्पिक मान है। यदि media category निर्दिष्ट नहीं की जाती है, तो अपलोड की गई मीडिया को सामग्री type के आधार पर किसी पोस्ट की मीडिया माना जाता है (`tweet_image`, `tweet_video`, या `tweet_gif`)।

सबसे सामान्य media categories इस प्रकार हैं:

* `tweet_image`
* `tweet_video`
* `tweet_gif`
* `dm_image`
* `dm_video`
* `dm_gif`
* `subtitles`

यदि आप Ads API पार्टनर हैं, तो promoted video के लिए अनुशंसित media category के बारे में अधिक जानकारी के लिए कृपया [ये docs](/hi/x-ads-api/creatives#promoted-video) देखें।

<div id="image-specifications-and-recommendations">
  ## छवि विनिर्देश और अनुशंसाएँ
</div>

छवि फ़ाइलों को निम्नलिखित सभी मानदंडों को पूरा करना होगा:

* **समर्थित छवि मीडिया प्रकार**: `JPG`, `PNG`, `GIF`, `WEBP`
* **छवि का आकार**: `<= 5 MB`
* **एनिमेटेड GIF का आकार**: `<= 15 MB`

ऊपर दी गई फ़ाइल आकार सीमा मीडिया अपलोड एंडपॉइंट द्वारा लागू की जाती है। इसके अतिरिक्त, एक अलग प्रोडक्ट एंटिटी-विशिष्ट फ़ाइल आकार सीमा भी होती है, जो `media_id` के साथ पोस्ट निर्माण (या समान) एंडपॉइंट को कॉल करते समय लागू होती है। फ़ाइल आकार सीमा और अन्य प्रतिबंध `media_category` पैरामीटर के आधार पर भिन्न हो सकते हैं।

<div id="animated-gif-recommendations">
  ## एनिमेटेड GIF के लिए अनुशंसाएँ
</div>

फ़ाइल आकार सीमा के भीतर होने पर भी, पोस्ट बनाते समय GIF विफल हो सकता है। सफलता दर बेहतर करने के लिए नीचे दी गई सीमाओं का पालन करें।

* **रिज़ॉल्यूशन**: `<= 1280x1080` (`width` x `height`)
* **फ़्रेमों की संख्या**: `<= 350`
* **पिक्सेल की संख्या**: `<= 300 million` (`width` \* `height` \* `num_frames`)
* **फ़ाइल आकार**: `<= 15Mb`

बड़े GIF को प्रोसेस करने के लिए, `media_category` पैरामीटर के साथ [चंक्ड अपलोड](/hi/x-api/media/quickstart/media-upload-chunked) एंडपॉइंट का उपयोग करें। इससे सर्वर GIF फ़ाइल को असिंक्रोनस रूप से प्रोसेस कर सकता है, जो बड़ी फ़ाइलों को प्रोसेस करने के लिए आवश्यक है। एनिमेटेड GIF वाले पोस्ट्स के लिए असिंक्रोनस अपलोड व्यवहार सक्षम करने हेतु `media_category=tweet_gif` पास करें।

<div id="video-specifications-and-recommendations">
  ## वीडियो विनिर्देश और अनुशंसाएँ
</div>

कृपया मीडिया अपलोड के लिए Async Path का इस्तेमाल करें।

<div id="recommended">
  ### अनुशंसित
</div>

* **वीडियो कोडेक**: `H264 High Profile`
* **फ़्रेम दरें**: `30 FPS`, `60 FPS`
* **वीडियो रिज़ॉल्यूशन**: `1280x720` (लैंडस्केप), `720x1280` (पोर्ट्रेट), `720x720` (वर्गाकार)। सदस्यता वाले उपयोगकर्ता 1080p वीडियो अपलोड कर सकते हैं और 1080p प्लेबैक प्राप्त कर सकते हैं। बिना सदस्यता वाले उपयोगकर्ता 720p वीडियो अपलोड कर सकते हैं और 720p प्लेबैक प्राप्त कर सकते हैं।
* **न्यूनतम वीडियो बिटरेट**: `5,000 kbps`
* **न्यूनतम ऑडियो बिटरेट**: `128 kbps`
* **ऑडियो कोडेक**: `AAC LC`
* **आस्पेक्ट रेशियो**: `16:9` (लैंडस्केप या पोर्ट्रेट), `1:1` (वर्गाकार)

<div id="advanced">
  ### उन्नत
</div>

* **फ़्रेम दर**: `60 FPS` या उससे कम होनी चाहिए
* **आयाम**: `32x32` और `1280x1024` के बीच होने चाहिए
* **फ़ाइल आकार**: `512 mb` से अधिक नहीं होना चाहिए
* **अवधि**: `0.5 seconds` और `140 seconds` के बीच होनी चाहिए
* **आस्पेक्ट अनुपात**: `1:3` और `3:1` के बीच होना चाहिए
* **[पिक्सेल आस्पेक्ट अनुपात](https://en.wikipedia.org/wiki/Pixel_aspect_ratio)**: `1:1` होना चाहिए
* **पिक्सेल फ़ॉर्मैट**: केवल [YUV](https://en.wikipedia.org/wiki/YUV) 4:2:0 समर्थित है
* ऑडियो [`Low Complexity प्रोफ़ाइल वाला AAC`](https://en.wikipedia.org/wiki/Advanced_Audio_Coding#Modular_encoding) होना चाहिए। (High-Efficiency `AAC` समर्थित नहीं है)
* ऑडियो `mono` या `stereo` होना चाहिए, 5.1 या उससे अधिक नहीं
* [`open GOP`](https://en.wikipedia.org/wiki/Group_of_pictures) नहीं होना चाहिए
* [`progressive scan`](https://en.wikipedia.org/wiki/Progressive_scan) का उपयोग होना चाहिए

<div id="additional-information">
  ### अतिरिक्त जानकारी
</div>

नीचे दी गई तालिका की प्रत्येक पंक्ति एक अनुशंसित अपलोड कॉन्फ़िगरेशन को दर्शाती है, लेकिन यह अनिवार्य नहीं है। सभी अपलोड कई प्लेटफ़ॉर्म पर अनुकूलन के लिए संसाधित किए जाते हैं।

| Orientation | Width | Height | वीडियो बिटरेट | ऑडियो बिटरेट |
| :---------- | :---- | :----- | :------------ | :----------- |
| लैंडस्केप   | 1280  | 720    | 2048K         | 128K         |
| लैंडस्केप   | 640   | 360    | 768K          | 64K          |
| लैंडस्केप   | 320   | 180    | 256K          | 64K          |
| पोर्ट्रेट   | 720   | 1280   | 2048K         | 128K         |
| पोर्ट्रेट   | 360   | 640    | 768K          | 64K          |
| पोर्ट्रेट   | 180   | 320    | 256K          | 64K          |
| वर्गाकार    | 720   | 720    | 2048K         | 128K         |
| वर्गाकार    | 480   | 480    | 768K          | 64K          |
| वर्गाकार    | 240   | 240    | 256K          | 32K          |

मीडिया अपलोड करने का उदाहरण देखने के लिए, कृपया [चंक्ड मीडिया अपलोड दस्तावेज़](/hi/x-api/media/quickstart/media-upload-chunked) देखें।

<div id="troubleshooting">
  ### समस्या निवारण
</div>

Media APIs से जुड़ी समस्याओं के लिए, उत्तर पाने हेतु डेवलपर फ़ोरम में [Media API category](https://devcommunity.x.com/c/x-api/media-apis) ब्राउज़ करें।
