FC2ブログ

頭と尻尾はくれてやる!

パソコンおやじのiPhoneアプリ・サイト作成・運営日記


FFmpegのライブラリをmacOSアプリで使う

macOSアプリからFFmpegを使い複数の動画ファイルをクロップする
↑ここでmacOSからFFmpegを使うというのをやってみたが、どうもmacOSやiOSアプリにFFmpegのライブラリを持ってきて使う、という方法もあるらしい。
組み込むってことはFFmpegのライブラリを使う動画編集アプリなんかが作れるかも?と思いmacOSアプリで試してみた。

FFmpegのバージョンが3.2.2で古かったのでまずは最新の4.1へアップデートしておいた。

macでffmpegをビルドして、アプリ内でffmpegを使う(static libraryとして) - Qiita
↑こちらのページを参考にXcodeからライブラリを参照できるようにパス設定などを行なった。

FFmpegチュートリアル1: キャプチャする - Qiita
macOSアプリ(Objective-C)のプロジェクトで↑こちらのページを参考にし(現時点でdeprecatedがいっぱい)、次のようなコードを書いた。
#import "libavformat/avformat.h"

{
    AVFormatContext *formatContext = avformat_alloc_context();
    
    NSString *filePath = [NSString stringWithFormat:@"%@/sampleVideo.mov",DesktopFolder];
    const char *url = [filePath cStringUsingEncoding:NSASCIIStringEncoding];

    if (avformat_open_input(&formatContext, url, nil, nil) != 0) {
        NSLog(@“Failed to open file");
        return;
    }

    AVDictionary *avdic;
    if(avformat_find_stream_info(formatContext , &avdic) < 0) {
        NSLog(@“Not found info");
        return; 
    }

    av_dump_format(formatContext, 0, url, 0);
}
↑デスクトップに置いてるファイルの情報を表示するってだけなんだけど、、、

動画ファイル情報の出力結果

↑なにやら表示された(一部を表示)。一応動いているっぽい。

さらに参考ページを見つつ書き進めていたのだが、、、いや、ちょっと待て。多機能なFFmpegだから細かいことまでできるんだろうけど、それらのAPIを使いこなすのは大変だ。勉強するつもりならAVFoundationでもええやん。
FFmpegをiOSなりmacOSに組み込んだアプリをリリースする場合のライセンスもややこしそうだし。

まあそんなわけで、これ以上はアプリにFFmpegのライブラリを組み込むという考えはやめておくことにしよう。
数年後にまたライブラリで、、、と考えるかもしれないが、その時はこれを見てやめておくように、数年後の俺!

<< iPhone背面のデュアルカメラで同時に写真を得る  TopPage  macOSのNSScrollView上のマウスカーソルの位置を得る >>

コメント


管理者にだけ表示を許可する
 

トラックバック

トラックバックURL
http://ringsbell.blog117.fc2.com/tb.php/1242-c8a8c353




Copyright ©頭と尻尾はくれてやる!. Powered by FC2 Blog. Template by eriraha.

FC2Ad