1. 程式人生 > >mac下使用FFmpeg+SDL的播放器編譯和執行

mac下使用FFmpeg+SDL的播放器編譯和執行

本文參考簡書:http://www.jianshu.com/p/b7a698259314

原始碼:http://blog.csdn.net/leixiaohua1020/article/details/38868499

按照簡書步驟XCode建立工程

xy_img1.jpgxy_img1.jpg

語言我選擇的是C++

從http://blog.csdn.net/leixiaohua1020/article/details/38868499拷貝程式碼到自己專案的main.cpp檔案中

和原文中提到的錯誤一直,提示找不到標頭檔案

1.解決標頭檔案錯誤

這裡需要安裝ffmpeg+SDL

使用homebrew工具

開啟終端:brew install ffmpeg

brew install sdl2

安裝成功後,在project-target-build setting-搜尋search path

為Header Search Paths新增/usr/local/include

2.解決靜態庫錯誤

按照1.0的思路打算直接修改Library Search Paths新增/usr/local/lib,發現xcode並不能識別

所以進入到/usr/local/lib目錄把

libavcodec

libavfilter

libavformat

libavutil

libswscale

libSDL2-2

拷貝到專案程式碼中(注意要拷貝原始檔,而不是替身檔案)

xy_img2.jpgxy_img2.jpg


在build phases中新增上述.dylib檔案發現編譯成功

執行結果卻不盡人意:控制檯提示錯誤資訊


檢視main.cpp原始碼發現是找不到目標視訊檔案

修改char filepath[]="bigbuckbunny_480x272.h265";為視訊檔案絕對路徑;

xy_img3.jpgxy_img3.jpg

再次執行

大功告成

相關推薦

mac使用FFmpeg+SDL播放編譯執行

本文參考簡書:http://www.jianshu.com/p/b7a698259314 原始碼:http://blog.csdn.net/leixiaohua1020/article/details/38868499 按照簡書步驟XCode建立工程 xy_img1.jpg

Android-macffmpeg從0開始編譯

0. 題外話 基於ffmpeg4.1版本.(好吧,最後我改成3.3.8版本了) 這次編譯真的是慘痛的經歷.先是經歷了linux空間不足,然後是編譯報錯 /bin/sh: ranlib/usr/local/lib/libavdevice.a: No such file or directo

如何在Windows使用Linux系統來編譯執行程式?

很多開發人員都有這樣的疑問:自己平時是在Windows下面辦公的,而自己編寫的程式的執行環境又是Linux的,如何從Windows切換到Linux呢?是不是要專門到Linux機器上去編寫程式碼呢?實際上

window如何使用文本編輯(如記事本)創建、編譯執行Java程序

得到 輸入 ava 執行 world! ext tex 目錄 源代碼 window下如何使用文本編輯器(如記事本)創建Java源代碼文件,並編譯執行 第一步:在一個英文目錄下創建一個 .text 文件 第二步:編寫代碼 第三步:保存文件 選擇 文件>另

mac 安裝python虛擬環境 virtualenv 虛擬環境管理 virtualenvwrapper

轉自:http://blog.csdn.net/xianliangforshuyuan/article/details/70041012 有時候我們在開發中需要使用python2或者python3,所以我們需要建立一個虛擬的環境進行將兩個版本隔離出來,這裡我們

linux音樂播放wavmp3

if(rc<0){perror("\nsnd_pcm_hw_params_set_rate_near:");exit(1);}rc = snd_pcm_hw_params(handle, params);if(rc<0){perror("\nsnd_pcm_hw_params: ");exit(1

mac os x 五款播放評測

1. QuickTime:OS X自帶播放器,同時也可用建立螢幕錄製手勢操作:①三指拖動畫面:調整視窗位置②三指拖動播放控制條:調整播放控制條位置③雙指左右移動:調節播放速度全屏方式:在新桌面全屏(四指滑動可切換桌面)外觀:無邊框介面。播放控制條位於螢幕底端,自動隱藏,不支援半透明化,可移動。優勢:①支援F7

SDLFFMPEG 音樂播放開發(2)——混播多個音訊

第一篇總體提了一下SDL,完全沒有提到FFMPEG。我的思路是,在說解碼之前,你起碼要知道怎麼使用解碼後的檔案。 相信大家如果看了網上的一些教程,應該已經能夠播放出PCM檔案。今天我來談談如何播放多個PCM檔案。 這回先上程式碼 #define MAX_MUSIC_DA

Mac搭建Apache服務

出了 這一 con exists inux host 終端 應該 用戶名 Apache作為最流行的Web服務器端軟件之一,它的優點與地位不言而喻。下面介紹下在Mac下搭建Apache服務器的步驟: (1)”前往” –>”個人”“ (2)在你的個人目錄下新建一個文件夾

ffmpeg +sdl 播放視頻

lse troy bit yuv420 clu edi ces 全部 some 1 #include <iostream> 2 #include <SDL.h> 3 #include <stdio.h> 4 #inclu

Linux環境c程序的編譯執行

環境變量 動態 main.c tor direct 環境 沒有 stdlib.h share 1 單個文件的編譯和執行創建main.c文件,內容如下: #include <stdio.h> #include <stdlib.h> int main

mac安裝tesserocr包的流程錯誤(Failed building wheel for tesserocr)

按以下是步驟順序安裝: brew install imagemagick brew install tesseract 在命令列輸入tesseract即可驗證是否成功安裝tesseract pip3 install tesserocr 如果最後一步出現Failed buildin

Linux環境c程式的編譯執行

1 單個檔案的編譯和執行建立main.c檔案,內容如下: #include <stdio.h> #include <stdlib.h> int main(void){ printf("Hello world!\n"); return 0; };   編譯:

9.基於FFMPEG+SDL2播放視訊(解碼執行播放執行緒分開)

參考資料: 1.雷博部落格 2. An ffmpeg and SDL Tutorial 繼續FFMPEG學習之路。。。 文章目錄 1 綜述 2 程式碼1(基礎程式碼) 3 程式碼2(播放執行緒和解碼執行緒分開) 3.1 幾個結構體

windows命令列編譯執行c/c++

我看了半天,也沒找到window命令列下編寫程式,說明這個不可取。 那我們只有利用已有檔案來編譯與運行了。 假設我在E盤裡有個.cpp檔案,我改如何編譯和執行她尼? 第一步:我可以直接到該目錄的檔案管理器視窗位址列執行命令:cmd,這樣就可以直接到達所需檔案的目錄。如下圖   &nbs

Linux環境如何編譯執行c程式

1 單個檔案的編譯和執行 建立main.c檔案,內容如下:  編譯: 執行: 2 多個檔案的編譯和執行建立sum.c檔案,內容如下: 建立main.c檔案,內容如下:   編譯:    生成可執行檔案,檔名為main: 執行程式:

Linux環境如何編譯執行c程序

文件的 ron 當前 cto directory 變量 沒有 執行文件 nbsp 1 單個文件的編譯和執行 創建main.c文件,內容如下: 編譯: 執行: 2 多個文件的編譯和執行創建sum.c文件,內容如下: 創建main.c文件,內容如下: 編譯:

ffmpeg簡易播放的實現-最簡版

實驗平臺:openSUSE Leap 42.3 ffmpeg版本:4.1 SDL版本:2.0.9 基於ffmpeg 4.1實現簡易視訊播放器,主要分為讀取視訊檔案解碼和呼叫SDL顯示兩大部分。具體流程可參考程式碼註釋。程式碼實現主要參考如下兩篇文章: 最簡單的基於FFMPEG+SDL的視訊播放器ver2(採

ffmpeg簡易播放的實現-完善版

實驗平臺:openSUSE Leap 42.3 FFmpeg版本:4.1 SDL版本:2.0.9 基於FFmpeg和SDL實現的簡易視訊播放器,主要分為讀取視訊檔案解碼和呼叫SDL顯示兩大部分。詳細流程可參考程式碼註釋。 本篇實驗筆記主要參考如下兩篇文章: [1]. 最簡單的基於FFMPEG+SDL的視訊播

ffmpeg簡易播放的實現-音訊播放

基於FFmpeg和SDL實現的簡易視訊播放器,主要分為讀取視訊檔案解碼和呼叫SDL顯示兩大部分。詳細流程可參考程式碼註釋。 本篇實驗筆記主要參考如下兩篇文章: [1]. 最簡單的基於FFMPEG+SDL的視訊播放器ver2(採用SDL2.0) [2]. An ffmpeg and SDL Tutorial