FFmpeg開發筆記(四十四)畢業設計可做的幾個拉滿顏值的音影片APP

aqi00發表於2024-08-04
一年一度的畢業季就要到了,畢業設計算是大學生畢業前的最後一個大作業,尤其是計算機相關專業的畢業設計,通常要透過程式設計開發一個軟體,比如開發一個圖書館管理系統,開發一個電商APP等等。

一個好的畢業設計可以給作者加分,可以評優,還能獲得程式設計開發的實戰經驗,所以很有必要認真去做畢業設計。那麼就計算機相關專業來說,怎樣算是一個好的畢業設計呢?

以手機APP為例,畢業設計做APP就要結合行業發展趨勢。現在5G技術已經很普及了,很多商用APP都在音影片方面深根細作,有短影片APP比如抖音、快手等等,有聊天APP比如微信、暢聯等等,有播音APP比如酷狗、喜馬拉雅等等,有影片剪輯APP比如剪映等等。那麼畢業設計做個音影片相關APP無疑是個熱門方向,不但自帶高科技,還能拉滿顏值。

適合畢業設計的音影片相關APP有以下三類:

一、包含視訊通話功能的即時通訊APP

即時通訊APP就是聊天APP,包括常見的微信和QQ,聊天形式包括私聊(一對一)和群聊(多對多),聊天內容包括文字和圖片。適用於畢業設計的即時通訊技術包含SocketIO和WebSocket,相關的APP程式設計技術參見《Android Studio開發實戰:從零基礎到App上線(第3版)》第13章的“13.4 即時通訊”,該書第13章同時給出了仿微信聊天專案,即“13.5 實戰專案:仿微信的私聊和群聊”。

當然,僅僅圖文形式的即時通訊不夠高科技,最好加上視訊通話功能才顯得遙遙領先。那麼視訊通話用到了WebRTC技術,WebRTC的APP程式設計參見《Android Studio開發實戰:從零基礎到App上線(第3版)》的“第20章 線上直播”,具體的實戰專案參見該書第20章的“20.3 實戰專案:仿微信的視訊通話”。

對於畢業設計來說,這款即時通訊APP的亮點在於用到了WebRTC技術,並透過WebRTC實現了視訊通話的功能。

二、包含線上直播功能的短影片分享APP

短影片分享APP的使用率很高,不管是錄製短影片還是播放短影片,都用到了音影片相關技術,有關的音影片技術參見《Android Studio開發實戰:從零基礎到App上線(第3版)》的“第14章 多媒體”,具體的實戰專案參見該書第14章的“14.4 實戰專案:仿抖音的短影片分享”。

當然,僅僅錄製短影片或者播放短影片,本身不算太難的技術,最好加上實時直播功能才顯得遙遙領先。那麼直播技術又是一個龐大的知識體系,後端的流媒體伺服器說明參見之前的文章《Linux環境安裝ZLMediaKit實現影片推流》和《Linux環境安裝SRS實現影片直播推流》,流媒體傳輸協議的說明參見之前的文章《利用RTMP協議構建電腦與手機的直播Demo》和《利用SRT協議構建手機APP的直播Demo》,更詳細的直播技術文章可參考《FFmpeg開發筆記全目錄(FFmpeg開發實戰詳解,含直播系統的搭建過程)》。

對於畢業設計來說,這款短影片分享APP的亮點在於運用了直播技術,並透過RTMP/SRT協議實現了影片直播的的功能。

三、包含動畫特效功能的影片剪輯APP

影片剪輯APP常用於配合短影片分享,比如剪映已成為自媒體從業者的必備工具,相關的剪映教程更是大賣。影片剪輯功能以FFmpeg為基礎,詳細的FFmpeg程式設計參見《FFmpeg開發實戰:從零基礎到短影片上線》一書,該書由淺入深講解了音影片的理論基礎與開發實戰,其中第12章的“12.4 實戰專案:仿剪映的影片剪輯”更是透過把FFmpeg整合到APP工程中實現了一款仿剪映的影片剪輯APP。

不要小看這個影片剪輯,因為各大影片剪輯軟體有種種限制,並不總能如人意。比如國外的Adobe Premiere Pro,它僅支援把SRT字幕匯入影片,不支援把ASS字幕匯入影片,也就無法實現卡拉OK的動態歌詞效果。再如國產的剪映,雖然提供了豐富多樣的轉場動畫,但是部分高階轉場動畫需要付費使用(僅面向VIP使用者)。所以如果能夠自己打造一款不受功能限制的影片剪輯軟體,無疑能讓眾人眼前一亮,那麼掌握影片剪輯技術推薦學習《FFmpeg開發實戰:從零基礎到短影片上線》這本書。

對於畢業設計來說,這款影片剪輯APP的亮點在於能夠給影片新增卡拉OK歌詞字幕,並透過轉場技術實現了定製轉場動畫的功能。

相關文章