2009-03-13 16 views
27

के साथ वीडियो में छवि अनुक्रम बारी करें मुझे लगता है कि यह वास्तव में एक साधारण समस्या होनी चाहिए, लेकिन यह अपेक्षा से कहीं अधिक कठिन साबित हो रहा है।पारदर्शिता

मैं एक काफी बड़े छवि गिने फ्रेम से मिलकर अनुक्रम (माया से उत्पादन, क्या इसके लायक के लिए) मिल गया है: यहाँ मुद्दा है। छवियां वर्तमान में तर्गा (.tga) प्रारूप में हैं, लेकिन यदि वे महत्वपूर्ण हैं तो मैं उन्हें पीएनजी या अन्य मनमाना प्रारूप में परिवर्तित कर सकता हूं। महत्वपूर्ण बात यह है कि उन्हें अल्फा चैनल मिला है।

मुझे क्या करना प्रोग्राम के लिए उन्हें एक वीडियो क्लिप में बदल जाता है चाहता हूँ। प्रारूप वास्तव में कोई फर्क नहीं पड़ता है, लेकिन इसे लापरवाह होने की आवश्यकता है और अल्फा चैनल है। एक क्विकटाइम कंटेनर में असंपीड़ित वीडियो शायद आदर्श होगा।

मेरे प्रारंभिक सोचा ffmpeg था, लेकिन उस पर एक दिन के सबसे बर्बाद कर के बाद यह यह अल्फा चैनलों के लिए सभी में कोई समर्थन मिला है लगता है। या तो मुझे कुछ याद आ रहा है, या अंतर्निहित libavcodec बस यह नहीं करता है।

तो, यहां सही तरीका क्या है? Ffmpeg जैसे कमांड लाइन टूल अच्छा होगा, लेकिन विंडोज पर चलने वाला कोई भी समाधान और स्क्रिप्ट से कॉल किया जा सकता है।

नोट: आपके वीडियो में अल्फा चैनल होने के कारण वास्तव में यह असामान्य नहीं है, और यह वास्तव में उपयोगी है यदि आप इसे किसी अन्य वीडियो क्लिप या अभी भी छवि के शीर्ष पर मिश्रित करना चाहते हैं। जहां तक ​​मुझे असंपीड़ित वीडियो, क्विकटाइम एनीमेशन कोडेक, और सोरेनसन वीडियो 3 कोडेक सभी को ट्रांस्पैन्सी का समर्थन है, और मैंने सुना है कि एच .264 भी करता है। हम वास्तव में 32-बिट रंग गहराई के बारे में बात कर रहे हैं, और यह काफी व्यापक रूप से समर्थित है; क्विकटाइम। एमओवी फाइलें और विंडोज़ दोनों .avi फाइलें इसे संभाल सकती हैं, और शायद बहुत अधिक।

क्विकटाइम प्रो एक 32-बिट .mov फ़ाइल में एक छवि अनुक्रम चालू करने के लिए खुश से अधिक है। निर्यात को दबाएं, रंगीन गहराई को "लाखों रंगों +" में बदलें, एनीमेशन कोडेक का चयन करें, 100 तक की गुणवत्ता को क्रैंक करें, और वहां आप हैं - अल्फा चैनल के साथ लापरवाही से संपीड़ित वीडियो, और यह कोडेक के बाद लगभग कहीं भी खेलेंगे संस्करण 1.0 के बाद से क्विकटाइम का हिस्सा रहा है। समस्या यह है कि क्विकटाइम प्रो में कोई भी प्रकार का कमांड लाइन इंटरफ़ेस नहीं है (कम से कम विंडोज़ पर)। ffmpeg क्विकटाइम एनीमेशन कोडेक (जिसे यह qtrle कहते हैं) का उपयोग करके एन्कोडिंग का समर्थन करता है, लेकिन यह केवल 24 बिट्स की बिट-गहराई का समर्थन करता है।

समस्या को एक वीडियो प्रारूप नहीं मिला है जो अल्फा चैनल का समर्थन करता है। क्विकटाइम एनीमेशन आदर्श होगा, लेकिन असम्पीडित वीडियो भी काम करना चाहिए। समस्या यह उपकरण ढूंढ रही है जो इसका समर्थन करती है।

+1

क्या आप अल्फ़ा चैनल के साथ हो करना चाहते हैं? क्या वीडियो स्थानों में पारदर्शी होना चाहिए? (मुझे उस प्रारूप का पता नहीं है जो इसका समर्थन करता है) या पिछले फ्रेम के माध्यम से दिखाना चाहिए? – Greg

+0

मैं RoBerg से सहमत हूं, मैं नहीं आया हूं और वीडियो प्रारूप जो ऐसा करते हैं। आपको अपना खुद का रोल करना पड़ सकता है। –

+0

ठीक है, यह केवल पारदर्शी होना चाहिए, इसलिए यदि आप पृष्ठभूमि छवि पर इसे ओवरलैड करते हैं तो आप पृष्ठभूमि देख सकते हैं। मैंने इस सवाल के बारे में और जानकारी जोड़ दी है। –

उत्तर

-1

कोड़ी,

आप Quicktime SDK for Windows उपयोग कर अपने खुद कमांड लाइन उपयोगिता लिख ​​सकते हैं, मैं उच्च स्तर क्विकटाइम COM API के साथ चिपके हुए और सी एपीआई में केवल में जाने पर यदि आप वास्तव में करने के लिए है की सिफारिश करेंगे।

-Nick

25

हाँ ffmpeg निश्चित रूप से एक वीडियो फ़ाइल में अल्फा चैनल का समर्थन करता है। Ffmpeg में सभी कोडेक्स अभी तक अल्फा का समर्थन नहीं करते हैं। एमओवी फ़ाइल में मोशन पीएनजी अल्फा के लिए एक अच्छा संयोजन है।

अल्फा कोशिश के साथ एक वीडियो के लिए अल्फा के साथ/आयात छवियों सांकेतिक शब्दों में बदलना करने के लिए: ffmpeg -i %d.png -vcodec png z.mov

क्विकटाइम कि खेलेंगे।

को डिकोड करने के लिए/अल्फा कोशिश के साथ छवियों को अल्फा के साथ एक वीडियो निर्यात: ffmpeg -i z.mov -f image2 export2\%d.png

ध्यान दें कि मैं उन्हें एक निर्देशिका 'export2' कहा जाता है को निर्यात किया। वहां% d भागों को छोड़ना सुनिश्चित करें।ये आदेश विंडोज सिस्टम पर काम करेंगे। लिनक्स/मैक उपयोगकर्ताओं को उद्धरण चिह्न जोड़ने और सामान्य रूप से कुछ \ के लिए स्वैप करने की आवश्यकता हो सकती है।

2

मैं बात की प्रबल संभावना है कि आप को या दूसरों को एक इंटरैक्टिव फ्लैश टुकड़ा में इस तरह के वीडियो का उपयोग करना चाहते हैं है संभालने हूँ। ऐसा करने पर एक ट्यूटोरियल है जिसमें ffmpeg को पीएनजी से अल्फा चैनल के साथ असम्पीडित एवी में संकलित करना शामिल है।

http://away3dtutorials.blogspot.com/2011/02/ffmpeg-to-compile-jpeg-to-video-with.html

12

मैं जानता हूँ कि इस विषय थोड़ा पुराना है, लेकिन मुझे किसी भी पोस्टिंग कर रहा हूँ। क्विकटाइम एनिमेशन (RLE) या FFVHUFF/HUFFYUV साथ

FFMPEG करेंगे।

  • ffmpeg मैं yoursequence% d.png -vcodec qtrle movie_with_alpha.mov
  • ffmpeg मैं yoursequence% d.png -vcodec ffvhuff movie_with_alpha.avi
  • ffmpeg मैं yoursequence% d.png -vcodec huffyuv movie_with_alpha.avi

आपको पारदर्शिता (अल्फा चैनल) संरक्षित वीडियो फाइलें मिलेंगी।

मैं भी On2-VP6 भिन्नता (नहीं WebM-VP8 अभी तक) सुना है अल्फा संभाल कर सकते हैं, लेकिन मैं हाथ में उनके कोडेक नहीं है।

यह भी काम करता है। - ffmpeg मैं yoursequence% d.png -vcodec png movie_with_alpha.mov

+0

बहुत खराब आरएलई और वाईयूवी बड़ी फाइलें उत्पन्न करते हैं। एफएलवी के लिए वीपी 6 बहुत छोटी फाइलें पैदा करता है। बहुत बुरा कोई मुफ्त vp6a एन्कोडर नहीं है। वास्तव में एकमात्र वीपी 6 एन्कोडर जो मुझे मिल सकता है वह एडोब के मीडिया एन्कोडर में है। – rustyx

+0

आरएलई और वाईयूवी लगभग विशेष रूप से इंटरमीडिएट संपादन योग्य फ़ाइल या ब्रॉडकास्टर की स्रोत फ़ाइल के रूप में उपयोग किया जाता है। मुझे लगता है कि कोई इन्हें संपादित करने के लिए काम कर सकता है, और फिर काम को अंतिम रूप देने और प्रकाशित करने के लिए तैयार होने पर उपलब्ध छोटे प्रारूप (उदा। FLV) में परिवर्तित कर सकता है। – satoc

3

इस सवाल तक पहुंच गया और हताशा में दीवार के खिलाफ उनके सिर पीटने वेब डेवलपर्स के लिए ... यह एक transparent WebM video बनाने के लिए संभव है, लेकिन इस समय आप हो सकता है ffmpeg और स्रोत से आवश्यक पुस्तकालयों को संकलित करने की आवश्यकता है।

मैं एक वेबसाइट में एक गाया ब्लेंडर वीडियो प्रदर्शित लेकिन पारदर्शिता को संरक्षित रखें। पहला कदम ब्लेंडर आउटपुट को व्यक्तिगत पीएनजी फाइलों के रूप में प्रस्तुत करना था। उसके बाद, मैंने उन पीएनजी फ़ाइलों को एक ही वीडियो में बदलने के लिए ffmpeg को सहारा देने की कोशिश करते हुए काफी समय बिताया। बुनियादी आदेश सरल है:

ffmpeg -i input%04d.png output.webm 

यह आदेश लोड फ़ाइल नाम input0000.pnginput9999.png के माध्यम से के साथ सभी PNG का और उन्हें एक वीडियो में बदल जाता है। पारदर्शिता तुरंत खो गई थी। इस बिंदु पर

Incompatible pixel format 'yuva420p' for codec 'flv', auto-selecting format 'yuv420p'

मैं साकार किया गया था मैं खरोंच से ffmpeg पुन: संयोजित करना पड़ सकता है: उत्पादन मैं ffmpeg का एहसास के माध्यम से कंघी काम आते हुए एक गैर पारदर्शी प्रारूप का चयन किया गया था। मैं कुछ अन्य उपकरणों के साथ संघर्ष किया, लेकिन आखिरकार ffmpeg के साथ समाप्त हो गया। नवीनतम स्रोत से libvbx और ffmpeg संकलन के बाद, चीजें एक आकर्षण काम किया।

संबंधित मुद्दे