إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

سكربت للتحكم ببرنامج guvcview

تقليص
X
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • [طلب] سكربت للتحكم ببرنامج guvcview

    السلام عليكم و رحمة الله و بركاته
    لدي محل صغير أقوم بمراقبتة عن طريق كاميرا ويب و برنامج guvcview،
    المشكلة في تكرار انقطاع الكهرباء مما يتسبب في عطب ملفات الفيديو وتعطيل التنقل السريع.
    فكرت أنه إذا أمكنني جعل البرنامج يسجل مقاطع قصيرة فإن ذلك سيخفف من المشكلة،
    فمثلا لو وجد سكربت يجعل برنامج guvcview يقوم بتسجيل فيديو لمدة 10 دقائق ثم إيقاف التسجيل لمدة 5 ثوان ، ثم يستأنف التسجيل ل 10 دقائق أخرى ثم يتوقف و هكذا... .
    بما أنني مجرد مستخدم عادي لا أجيد كتابة السكربتات أرجو ممن يحسن ذلك و يجد متسعا من وقته أن يتكرم علينا بكتابته و جزاه الله خيرا.
    التوزيعة المستخدمة linux lite 4.0

    و إن وجد برنامج بديل يحوي هذه الخيارات فدلوني عليه، شرط أن يكون يدعم التسجيل بصيغة webm لأن سعة التخزين عندي محدودة نوعا ما.

    بارك الله فيكم

  • #2
    اذا مجرد تسجيل فيديو في برامج كثيرة تعمل من سطر الاوامر مثل mplayer , vlc , ffmpeg

    تسجيل فيديو بستخدام ffmpeg لمدة 15 دقيقة
    كود:
    #!/bin/bash
    VideoDevices=/dev/video0
    
    
    fuser $VideoDevices -k
    
    
    [[ -d $HOME/Video_Recording ]] || mkdir -p $HOME/Video_Recording #a  مسار تسجيل الفيديو العام
    
    
    RecordingTime="00:15:00" #a مدة تسجيل الفيديو 15 دقيقة
    counter=0
    
    
    while [ true ]
    do 
       RecordingFolder=$(date +"%m_%d_%Y")
       [[ -d $HOME/Video_Recording/$RecordingFolder ]] || mkdir -p $HOME/Video_Recording/$RecordingFolder #a مسار تسجيل الفيديو حسب اليوم
    
    
       FileName=$(date +$counter"_%S-%H-%M") #a اسم ملف الفيديو 
    
    
       ffmpeg -f v4l2 \
              -framerate 90 \
              -video_size 640x480 \
              -i $VideoDevices \
              -t $RecordingTime $HOME/Video_Recording/$RecordingFolder/$FileName.mp4
    
    
       sleep 1
       counter=$((counter+1))
    done
    تسجيل فيديو بستخدام cvlc مع تحديد timeout لمدة 15 دقيقة

    كود:
    #!/bin/bash
    VideoDevices=/dev/video0
    
    
    fuser $VideoDevices -k
    
    
    [[ -d $HOME/Video_Recording ]] || mkdir -p $HOME/Video_Recording #a  مسار تسجيل الفيديو العام
    
    
    RecordingTime="15m" #a مدة تسجيل الفيديو 15 دقيقة
    counter=0
    
    
    while [ true ]
    do 
       RecordingFolder=$(date +"%m_%d_%Y")
       [[ -d $HOME/Video_Recording/$RecordingFolder ]] || mkdir -p $HOME/Video_Recording/$RecordingFolder #a مسار تسجيل الفيديو حسب اليوم
    
    
       FileName=$(date +$counter"_%S-%H-%M") #a اسم ملف الفيديو 
    
    
       timeout $RecordingTime cvlc  v4l2:///$VideoDevices:width=640:height=480\
        --sout="#transcode{vcodec=theo,vb=2000,fps=20,scale=1.0,acodec=vorb,ab=90,channels=1,samplerate=44100}:standard{access=file,mux=ogg,dst=$HOME/Video_Recording/$RecordingFolder/$FileName.ogg}"
    
    
       sleep 1
       counter=$((counter+1))
    done
    وَالرُّجْزَ فَاهْجُرْ

    تعليق


    • #3
      بارك الله فيك أخي أحمد
      سأجرب و أوافيك بالنتيجة إن شاء الله.

      تعليق


      • #4
        حبي! اشتري جهاز ups كبير و جهاز dvr .. هيك الناس بتعمل. و بيظل شغال 24 ساعة.
        مدير التواصل الحي.ماجستير معلوماتية من استراليا.تحتاج مساعدة اضافية؟ ادخل اعلاه التواصل الحي.بيت شِعْر: العدل قبل الحب احيانا فلا تظلمي= سئمت الحب احيانا أﻻّ تعدلي.تطبيقاتي على متجر الاندرويد كلمة البحث: superlinux.

        تعليق

        يعمل...
        X