記事が元の記事である場合は、転載
時に元の記事の出典を示してください。専門家を探すか、Red Fatty(Red Imitation)のブログ投稿を自分で調べてください:開発技術コレクション(Qt実用技術、Raspberry Pi、3Dを含む) 、OpenCV、OpenGL、ffmpeg、OSG、マイクロコントローラー、ソフトウェアとハードウェアの組み合わせなど)継続的に更新されるミドル...(ポータルをクリック)
FFmpegおよびSDL開発コラム(ポータルをクリック)
前:「FFmpeg開発ノート(10):ubuntuでのffmpegのクロスコンパイルとHiSilicon HI35xxプラットフォームへの移植」
次:お楽しみに...
序文
前回の記事では、ffmpegのHiSiliconバージョンをクロスコンパイルし、クロスコンパイルされたqt ffmpegプレーヤーを使用してHiSiliconで再生しました。このフィルムは、ffmpeg環境をHiSiliconサンプル環境に追加します。
HiSiliconサンプルにffmpegライブラリを導入する
ステップ1:以前にクロスコンパイルされたインストールファイルを表示する
ステップ2:コンパイルされたパラメーターファイルを開き、ヘッダーファイルとライブラリファイルを追加します
##### add by yangjiong 2022-03-12 start
INC_FLAGS += -I/home/yang/work/ffmpeg-hi3559av100/include
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libavcodec.a
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libavdevice.a
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libavfilter.a
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libavformat.a
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libavutil.a
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libswresample.a
MPI_LIBS += /home/yang/work/ffmpeg-hi3559av100/lib/libswscale.a
##### add by yangjiong 2022-03-12 stop
以下に示すように:
ステップ3:vencの別のサンプルにffmpegテストを追加する
(HiSiliconのサンプルサブディレクトリでは、フォルダに含めることができるメイン機能は1つだけです。つまり、サブフォルダ内のすべてのヘッダーファイルとソースファイルがアプリケーションとして共同でコンパイルされます。)
元の.cを変更します。サフィックス.bakについて、次にacファイルを再作成します。
ステップ4:ボード上でターゲットアプリケーションを実行します
(注:最初にライブラリを実行環境に追加する必要があります。最も簡単な方法は、前のライブラリを直接コピーするか、ライブラリをHiSiliconシステムの/ libファイルディレクトリに配置するか、パスをカスタマイズして、実行時に最初に追加するスクリプト。パスしてからアプリケーションを実行します。さまざまな方法があります。すべての道路がローマに通じています)。
HI3559AV100で実行した結果は次のとおりです。
デモソースコード
#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif /* End of #ifdef __cplusplus */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <pthread.h>
#include <signal.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
#include <netinet/in.h>
#include<arpa/inet.h>
#include <sys/types.h>
#include "sample_comm.h"
// ffmepg
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavdevice/avdevice.h>
#include <libavformat/version.h>
#include <libavutil/time.h>
#include <libavutil/mathematics.h>
#define LOG printf("%s:%d\n", __FILE__, __LINE__);
int main(int argc, char *argv[])
{
printf("%s\n", avcodec_configuration());
return 0;
}
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */
前:「FFmpeg開発ノート(10):ubuntuでのffmpegのクロスコンパイルとHiSilicon HI35xxプラットフォームへの移植」
次:お楽しみに...
記事が元の記事である場合は、再版するときに元の記事の出典を示してください
。この記事のブログアドレス:https ://blog.csdn.net/qq21497936/article/details/123446550