簡體   English   中英

android中的FFmpeg命令以編程方式

[英]FFmpeg command in android programmatically

我們是否可以在Android中以編程方式使用ffmpeg命令,例如(screenrecord,屏幕截圖)。

例如ffmpeg -r 24 -f rawvideo -pix_fmt rgb565le -s 320x480 -i / dev / graphics / fb0 -vcodec libx264 /sdcard/videokit/screen.mp4

您可以編譯FFmpeg(最新更新后命名為AVConv),並針對移動CPU(例如arm6 / arm7)進行優化。 幾年來,我們在Android平台上做到了。 是的,它沒有硬件加速-這意味着較低的FPS。 但是它仍然有用。 要使用硬件加速編碼,目前只有一種方法-Android SDK(OS 4.1.2及更高版本)中的Java API。

1)使用Android NDK將FFMpeg編譯為共享庫。 您可以嘗試以下方法: https : //github.com/guardianproject/android-ffmpeg

或我自己的構建腳本(我認為現在有點過時了): https : //dl.dropboxusercontent.com/u/76581728/build_android_r7.sh

建議您使用最新的Android NDK。

2)要應用此控制台選項,您必須將此選項傳遞給本機代碼中的FFMpeg AVDictionary結構。 很簡單 您必須鎖定ffmpeg.c源文件,還可以使用Netbeans IDE內的斷點分析ffmpeg桌面版的工作方式(非常有用)。

av_opt_set(oc-> priv_data,“ f”,“ rawvideo”,0);

3)由於Android的安全性,我認為您在使用非root用戶的設備訪問/ dev / graphics / fb0時會遇到麻煩。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM