FFmpeg開發筆記(四十九)助您在畢業設計中脫穎而出的幾個流行APP

来源:https://www.cnblogs.com/aqi00/p/18328125
-Advertisement-
Play Games

​對各高校即將畢業的學子來說,畢業設計算是在大學里的最後一個大作業。特別是軟體、電腦、電子等相關專業,畢業設計非常講究實操,往往要求實現一個實用的、可用的、易用的軟體系統或手機APP。 不管是軟體還是APP,都要通過編程來實現。對於編程類的畢業設計,既有圖書館管理系統這樣萬年不變的增刪改查軟體,也 ...


對各高校即將畢業的學子來說,畢業設計算是在大學里的最後一個大作業。特別是軟體、電腦、電子等相關專業,畢業設計非常講究實操,往往要求實現一個實用的、可用的、易用的軟體系統或手機APP。

不管是軟體還是APP,都要通過編程來實現。對於編程類的畢業設計,既有圖書館管理系統這樣萬年不變的增刪改查軟體,也有電子商務APP那樣炫動各種界面特效的美工佳作。那麼就編程類大作業而言,怎樣才算是讓人耳目一新的畢業設計呢?
以手機APP為例,現在APP開發技術很成熟了,若想做一個鶴立雞群的畢業設計APP,就要在代碼中運用最新的開發技術,尤其是和5G時代密切相關的音視頻技術,比如音視頻的基礎框架FFmpeg、火爆一時的RTMP/SRT視頻直播技術、音視頻實時通訊技術WebRTC等等。
對於畢業設計來說,應用了音視頻技術的流行APP主要有以下三類:

一、具備視頻剪輯功能的短視頻分享APP

短視頻分享APP早已成為國內外最流行的APP,不管是國內的抖音,還是國外的TikTok,都向廣大用戶提供了豐富多彩的視聽盛宴。那麼短視頻的創作者正是來自於群眾的自媒體人,他們以一部手機作為創作工具,再把錄製好的視頻各種剪裁編輯,最終輸出上傳製作好的短視頻。
對於普通用戶來說,他們只用到了短視頻APP的觀看功能,那麼實現短視頻的播放功能比較簡單,具體參見《Android Studio開發實戰:從零基礎到App上線(第3版)》的“第14章 多媒體”,該書同時給出了短視頻APP的實戰項目,也就是“14.4 實戰項目:仿抖音的短視頻分享”。
對於自媒體從業者來說,他們還需要短視頻APP的剪輯功能,也就是對視頻文件進行切割、合併、添加字幕、添加背景音樂、添加轉場特效等等編輯操作。這些視頻剪輯技術的具體實現可參考《FFmpeg開發實戰:從零基礎到短視頻上線》這本書,比如該書的第7章給出了添加字幕的實戰項目“7.4  實戰項目:卡拉OK音樂短片”,第9章給出了轉場特效的實戰項目“9.4  實戰項目:翻書轉場動畫”,還有第12章介紹瞭如何給App工程集成FFmpeg,並給出了仿剪映APP的實戰項目如“12.4  實戰項目:仿剪映的視頻剪輯”。
對於畢業設計來說,這款短視頻分享APP的亮點在於集成了音視頻框架FFmpeg,並基於FFmpeg實現了各種視頻剪輯功能。

二、具備直播帶貨功能的電商購物APP

電商購物APP現在是人們日常生活中不可獲取的實用工具,大到傢具電器,小至各種日用品,都能在電商購物APP中解決。不過若想讓丈母娘們痛快掏錢,往往需要賣家真人出鏡,在直播間中口若懸河,或者載歌載舞,充分展示商品的外觀及其效用,方能成功帶貨拉動銷量。
倘若是簡單的APP圖文商品展示,可參考《Android Studio開發實戰:從零基礎到App上線(第3版)》第9章的“9.5 實戰項目:電商首頁”和第6章的“6.6 實戰項目:購物車”,至於與後端伺服器交互部分,則是另一塊WEB開發範疇,其中Java後端編程可學習《好好學Java:從零基礎到項目實戰》一書。
然而直播帶貨功能用到的直播系統相關技術,那可就複雜得多。既包括後端的流媒體伺服器,參見之前的文章《Linux環境安裝ZLMediaKit實現視頻推流》和《Linux環境安裝SRS實現視頻直播推流》;又包括流媒體傳輸協議,參見之前的文章《利用RTMP協議構建電腦與手機的直播Demo》和《利用SRT協議構建手機APP的直播Demo》,更詳細的直播技術文章可參考《FFmpeg開發筆記全目錄(FFmpeg開發實戰詳解,含直播系統的搭建過程)》。
對於畢業設計來說,這款電商購物APP的亮點在於集成了直播相關技術,既運用了傳統RTMP協議的視頻直播,又運用了最新SRT協議的視頻直播。

三、具備視頻通話功能的同城生活APP

同城生活APP基於用戶所在城市開展生活娛樂,涵蓋了同城交友、同城美食、同城出行等方方面面。可是這些同城生活APP通常僅提供對方的電話號碼,簡單的通訊方式畢竟不如直觀的視頻通話那樣令人信任,如果能給這些同城APP添加視頻通話功能,對於提升商家的業績不無裨益。
那麼視頻通話功能的難點在於給雙方手機傳輸音視頻的通話信號,其中可運用時新的WebRTC技術,要知道WebRTC在2021年1月被W3C和IETF發佈為Web實時通信的正式標準。在手機APP中引入WebRTC可參考《Android Studio開發實戰:從零基礎到App上線(第3版)》一書的“20.2  給App集成WebRTC”,具體的實戰項目參見該書第20章的“20.3 實戰項目:仿微信的視頻通話”。如果同城生活APP推出了視頻通話功能,再也不用擔心對方是不是持證上崗了。
對於畢業設計來說,這款同城生活APP的亮點在於集成了WebRTC技術,並通過WebRTC實現了視頻通話的功能。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • CRISP-DM是一個數據挖掘項目規劃的開放標準流程框架模型,主要分為業務理解、數據理解、數據準備、建模、評估、部署六個階段。 ...
  • 寫在前面 今天我們繼續學習 Redis。 Redis 常用數據類型 在 Redis 中,每個存儲的鍵值對中,鍵是 String 類型,值可以是不同的數據類型。Redis 的索引是含頭含尾的。 String 記憶體模型 常用指令 設置值 SET key value: 設置一個 key/value。 MS ...
  • 一開始沒有讓自我介紹,三個項目問了兩個,就是介紹一下項目,技術棧是哪些,整個項目流程是怎麼樣的,然後提出了一些優化問題,主要是資料庫資料庫方面的,還有網路通信,總體難度自我感覺中等偏上,八股幾乎沒問,我把面試過程中基本上問到的所有問題都整理了在下麵了,附上答案,如有問題請指出。 1. 資料庫使用uu ...
  • 通過 T-SQL 語句來添加、刪除或修改鏈接伺服器配置 進行跨資料庫、跨實例或甚至跨資料庫系統的數據集成和查詢 SELECT * FROM sysservers 可以查出當前 SQL Server 實例上配置的所有鏈接伺服器的列表及其相關信息 示例使用 Transact-SQL 創建與其他 SQL ...
  • 近年來,政府將數據要素納入了經濟發展的重要指示性文件當中,數據作為一種新型生產要素,已經成為第五大生產要素。 要實現數據要素的市場效能,真正發揮數據生產要素的作用,離不開數據資產化,而數據資產化自然也離不開數據資產管理這一基礎工作。數據資產管理是釋放數據要素價值、推動數據要素市場發展的重要前提。 全 ...
  • 最近在看Apache DolphineScheduler,發現DolphinScheduler在處理任務時,通過先將任務快速的存儲在資料庫中,然後基於對應的Task,將Task放入隊列中,然後將Task進行快速消費的思路。 這種模型在很多框架中,都有體現。 我們知道在Master模塊時處理任務的核心 ...
  • 寫在前面 今天我們來學習一下 Redis 。Redis 是一個高性能的開源記憶體數據存儲系統,支持多種數據結構,如字元串、列表、集合、有序集合和哈希表。 NoSQL 概述 隨著大數據的興起,數據量的暴增,數據類型的豐富,傳統的關係資料庫在應付動態網站,特別是超大規模和高併發的純動態網站時已經顯得力不從 ...
  • 文 / 興業證券股份有限公司 劉洋 石良生 柳君 李致琪 本文來源於網路,如有侵權,請聯繫刪除 任務調度平臺,扮演著自動執行預設任務的重要角色,是業務開展過程中不可或缺的一環。隨著業務規模的不斷擴展,興業證券每日需要進行數以萬計的任務調度,因此,優化和提升任務調度平臺的性能與穩定性至關重要。本文通過 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 推薦一款基於.NET 8、WPF、Prism.DryIoc、MVVM設計模式、Blazor以及MySQL資料庫構建的企業級工作流系統的WPF客戶端框架-AIStudio.Wpf.AClient 6.0。 項目介紹 框架採用了 Prism 框架來實現 MVVM 模式,不僅簡化了 MVVM 的典型 ...
  • 先看一下效果吧: 我們直接通過改造一下原版的TreeView來實現上面這個效果 我們先創建一個普通的TreeView 代碼很簡單: <TreeView> <TreeViewItem Header="人事部"/> <TreeViewItem Header="技術部"> <TreeViewItem He ...
  • 1. 生成式 AI 簡介 https://imp.i384100.net/LXYmq3 2. Python 語言 https://imp.i384100.net/5gmXXo 3. 統計和 R https://youtu.be/ANMuuq502rE?si=hw9GT6JVzMhRvBbF 4. 數 ...
  • 本文為大家介紹下.NET解壓/壓縮zip文件。雖然解壓縮不是啥核心技術,但壓縮性能以及進度處理還是需要關註下,針對使用較多的zip開源組件驗證,給大家提供個技術選型參考 之前在《.NET WebSocket高併發通信阻塞問題 - 唐宋元明清2188 - 博客園 (cnblogs.com)》講過,團隊 ...
  • 之前寫過兩篇關於Roslyn源生成器生成源代碼的用例,今天使用Roslyn的代碼修複器CodeFixProvider實現一個cs文件頭部註釋的功能, 代碼修複器會同時涉及到CodeFixProvider和DiagnosticAnalyzer, 實現FileHeaderAnalyzer 首先我們知道修 ...
  • 在軟體行業,經常會聽到一句話“文不如表,表不如圖”說明瞭圖形在軟體應用中的重要性。同樣在WPF開發中,為了程式美觀或者業務需要,經常會用到各種個樣的圖形。今天以一些簡單的小例子,簡述WPF開發中幾何圖形(Geometry)相關內容,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 在 C# 中使用 RabbitMQ 通過簡訊發送重置後的密碼到用戶的手機號上,你可以按照以下步驟進行 1.安裝 RabbitMQ 客戶端庫 首先,確保你已經安裝了 RabbitMQ 客戶端庫。你可以通過 NuGet 包管理器來安裝: dotnet add package RabbitMQ.Clien ...
  • 1.下載 Protocol Buffers 編譯器(protoc) 前往 Protocol Buffers GitHub Releases 頁面。在 "Assets" 下找到適合您系統的壓縮文件,通常為 protoc-{version}-win32.zip 或 protoc-{version}-wi ...
  • 簡介 在現代微服務架構中,服務發現(Service Discovery)是一項關鍵功能。它允許微服務動態地找到彼此,而無需依賴硬編碼的地址。以前如果你搜 .NET Service Discovery,大概率會搜到一大堆 Eureka,Consul 等的文章。現在微軟為我們帶來了一個官方的包:Micr ...
  • ZY樹洞 前言 ZY樹洞是一個基於.NET Core開發的簡單的評論系統,主要用於大家分享自己心中的感悟、經驗、心得、想法等。 好了,不賣關子了,這個項目其實是上班無聊的時候寫的,為什麼要寫這個項目呢?因為我單純的想吐槽一下工作中的不滿而已。 項目介紹 項目很簡單,主要功能就是提供一個簡單的評論系統 ...