<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          我用python做了個錄屏軟件

          共 920字,需瀏覽 2分鐘

           ·

          2021-06-14 21:48

          最近碰到了很多錄屏的需求,剪了好多視頻。一直苦于網(wǎng)絡(luò)上的錄屏軟件如“愛拍”、“愛剪輯”等,沒充會員就有水印,限制分辨率等。而window10自帶的錄屏軟件又只能錄“一個軟件”。




          身為白嫖黨的我,怎么可以忍受充錢呢!!!所以我決定自己寫一個錄屏軟件,用到的庫為:

          • PyQt5 制作GUI頁面

          • QThread 多線程

          • Pillow  獲取屏幕

          • Pyaudio 獲取錄音數(shù)據(jù)

          • Pynput 獲取鼠標(biāo)位置

          • Opencv 寫入視頻

          • Wave 寫入音頻



          #Q1 加載頁面

          首先是加載頁面,這里使用了PyQt5中的QSplashScreen,用來在啟動軟件的時候給出進度提示,而不需要干等。



          #Q2 主頁面

          接著是主界面,用到了PyQt5中的QWidget,然后只有4個按鈕,是不是非常簡潔?從左到右功能分別是:

          • 開始錄制

          • 結(jié)束錄制

          • 是否錄音

          • 選擇保存目錄



          #Q3 錄屏選中框

          接著是錄屏選中框了,它的主體就是 那4個小三角形,別看它很簡單,它的實現(xiàn)代碼可是占了全部的30%,涉及到了以下知識:

          • 窗口去邊框

          • 鼠標(biāo)事件重寫(按下、釋放、移動)

          • 畫布

          • 窗口縮放

          • 窗口移動

          • 鼠標(biāo)圖標(biāo)設(shè)置

          • 窗口透明





          #Q4 錄制結(jié)果保存

          接下來就是錄制結(jié)果了,按照按鈕的功能來錄制,錄制結(jié)束后,右上角會有提示框:


          點擊提示框即可呼出視頻保存目錄下的資源管理器,如果是錄屏+錄音的話會同時保存.mp4文件以及.wav文件。如果沒有選擇錄音的話只會保存視頻文件。



          #Q5 剪輯

          最后一步當(dāng)然是剪輯了,我用的比較多的達芬奇,把視頻和音頻都拉進資源管理器就可以愉快的剪輯啦!


          不過目前還有一個bug,就是我發(fā)現(xiàn)錄制后的 視頻和音頻文件不等長,即使用了線程同步也是一樣 又是一個新坑。不過做完這個我的目的也已經(jīng)達到了,就是學(xué)習(xí)PyQt5(沒錯,這才是我的目的)!喜歡的記得關(guān)注一下噢。說不定后續(xù)我優(yōu)化一下又開源了呢


          瀏覽 60
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  丁香久久婷婷 | 韵味少妇AV | 国产 在线 无码 福利 | 九九九在线视频观看 | 你懂的91 |