दिलचस्प पोस्ट
परिपत्र ताला रहित बफर मैं Django ModelForm में फ़ील्ड कैसे कर सकता हूँ? अगर यह पहले से लोड नहीं हुआ है तो मैं jQuery लोड कैसे कर सकता हूं? क्या यह पता लगाने का एक बेहतर तरीका है कि क्या स्थानीय जीआईटी शाखा मौजूद है? प्रतिस्थापन के बिना नमूने के लिए एल्गोरिथ्म? सी में एक पूर्णांक की लंबाई ढूँढना PostgreSQL में कई-से-कई रिश्तों को कैसे कार्यान्वित करें? जावास्क्रिप्ट Regex: कैसे एक नियमित अभिव्यक्ति के अंदर एक चर डाल करने के लिए? पांड्या: डेटाफ्रेम के उपनिर्देशक: प्रतियां बनाम विचार क्या एक्स्टेल को यूटीएफ -8 सीएसवी फ़ाइलों को स्वचालित रूप से पहचानने के लिए मजबूर करना संभव है? एंड्रॉइड: सरणी से प्रोग्रामर स्पिनर बनाएं JQuery का उपयोग कर समानांतर एसिंक्रोनस अजाक्स अनुरोध दूसरे सरणी के भीतर एक सरणी खोजें एकता में गतिशील कीवर्ड / .NET 4.6 सुविधा का उपयोग करें MySQL – एक ही संरचना लेकिन विभिन्न डेटा के साथ कई तालिकाओं से डेटा का चयन करना

पायथन में एक वीडियो की अवधि कैसे प्राप्त करें?

मुझे पायथन में वीडियो अवधि प्राप्त करने की आवश्यकता है एमपी 3 , फ्लैश वीडियो, एवीआई , और एमओवी … मुझे मिलने वाले वीडियो प्रारूपों की जरूरत है … मेरे पास एक साझा होस्टिंग समाधान है, इसलिए मेरे पास कोई एफएफएमपीईजी समर्थन नहीं है।

Solutions Collecting From Web of "पायथन में एक वीडियो की अवधि कैसे प्राप्त करें?"

संभवत: आपको बाहरी प्रोग्राम को खोलने की आवश्यकता होगी ffprobe आपको उस जानकारी प्रदान कर सकता है:

 import subprocess def getLength(filename): result = subprocess.Popen(["ffprobe", filename], stdout = subprocess.PIPE, stderr = subprocess.STDOUT) return [x for x in result.stdout.readlines() if "Duration" in x] 

चीजों को थोड़ा आसान बनाने के लिए, निम्नलिखित कोड JSON को आउटपुट डालते हैं।

आप इसे probe(filename) का उपयोग कर, या duration(filename) का उपयोग करके duration(filename) प्राप्त कर सकते हैं:

 json_info = probe(filename) secondes_dot_ = duration(filename) # float number of seconds 

यह Ubuntu 14.04 पर काम करता है, जहां पाठ्यक्रम स्थापित ffprobe यह कोड गति या सुंदर उद्देश्यों के लिए अनुकूलित नहीं है लेकिन यह मेरी मशीन पर काम करता है, आशा करता है कि यह मदद करता है।

 # # Command line use of 'ffprobe': # # ffprobe -loglevel quiet -print_format json \ # -show_format -show_streams \ # video-file-name.mp4 # # man ffprobe # for more information about ffprobe # import subprocess32 as sp import json def probe(vid_file_path): ''' Give a json from ffprobe command line @vid_file_path : The absolute (full) path of the video file, string. ''' if type(vid_file_path) != str: raise Exception('Gvie ffprobe a full file path of the video') return command = ["ffprobe", "-loglevel", "quiet", "-print_format", "json", "-show_format", "-show_streams", vid_file_path ] pipe = sp.Popen(command, stdout=sp.PIPE, stderr=sp.STDOUT) out, err = pipe.communicate() return json.loads(out) def duration(vid_file_path): ''' Video's duration in seconds, return a float number ''' _json = probe(vid_file_path) if 'format' in _json: if 'duration' in _json['format']: return float(_json['format']['duration']) if 'streams' in _json: # commonly stream 0 is the video for s in _json['streams']: if 'duration' in s: return float(s['duration']) # if everything didn't happen, # we got here because no single 'return' in the above happen. raise Exception('I found no duration') #return None if __name__ == "__main__": video_file_path = "/tmp/tt1.mp4" duration(video_file_path) # 10.008 

जैसा कि यहां बताया गया https://www.reddit.com/r/moviepy/comments/2bsnrq/is_it_possible_to_get_the_length_of_a_video/

आप moviepy मॉड्यूल का उपयोग कर सकते हैं

 from moviepy.editor import VideoFileClip clip = VideoFileClip("my_video.mp4") print( clip.duration ) 

इस नई अजगर पुस्तकालय को खोजें: https://github.com/sbraz/pymediainfo

अवधि प्राप्त करने के लिए:

 from pymediainfo import MediaInfo media_info = MediaInfo.parse('my_video_file.mov') #duration in milliseconds duration_in_ms = media_info.tracks[0].duration 

उपरोक्त कोड को वैध mp4 फ़ाइल और कार्य के खिलाफ परीक्षण किया गया है, लेकिन आपको अधिक जांच करना चाहिए क्योंकि यह मीडियाइन्फो के आउटपुट पर भारी निर्भर है।

खुले सीएमडी और स्थापित करें mutgen.mp4 इस कमान से अजगर-एम पिप इंस्टॉल उत्परिवर्तन

तो वीडियो अवधि और इसका आकार प्राप्त करने के लिए इस कोड का उपयोग करें:

 import os from mutagen.mp4 import MP4 audio = MP4("filePath") print(audio.info.length) print(os.path.getsize("filePath"))