FFmpeg3.0のQSV(H264)を拡張してみる

(FFmpeg4.0に対応した記事はこちら

FFmpeg3.0からQSVまわりが少し変更になったようなので別記事に。
(FFmpeg3.1~FFmpeg3.4でも動作を確認しました。)

使いまわし多数ですがw

今回からソースはGitで取得した前提。
ZIPファイル等でダウンロードする場合はディレクトリ名が異なるので置き換えてください。

Windows版のビルド(拡張なし)

以前と同じくmfx_dispatchがあれば良いようです。

必要なツールの準備 (MSYS + MinGW + GCC)

今回もXhmikosR’s氏のを使わせていただきました。
(MSYS_MinGW-w64_GCC_530_x86-x64_Full.7z 2016-01-09版)

msys – XhmikosR’s Builds

展開して「MSYS」内の「msys.bat」を実行。以降CLIでの操作。
(「home」以下にユーザー名のディレクトリが作成されるので、ファイルはWindows側でそこに展開)
続きを読む


FFmpeg2.8のQSV(H264)を拡張してみる

(FFmpeg3.0に対応した記事はこちら

少し前のgit版から正常に動作するようになっていたQSVのH264エンコードがStable版2.8でも動作するようになり、以前の記事のような処理は不要になりました。

Windows版のビルド(拡張なし)

Windowsでのビルド仕方は前回とほぼ同じで、mfx_dispatchさえあれば良いようです。
前回の使用した拙作のパッチも必要ありません。

必要なツールの準備 (MSYS + MinGW + GCC)

今回も XhmikosR’s さんのところのをそのまま使わせていただきました。
(使用したバージョンは MSYS_MinGW-w64_GCC_520_x86-x64_Full.7z 2015-09-10版)

msys – XhmikosR’s Builds

「MSYS」をCドライブのルートに展開して、「msys.bat」を実行。以降CLIでの操作。
(「home」以下にユーザー名のディレクトリが作成されるので、ファイルはWindows側でそこに展開)
続きを読む


QSV対応Windows版FFmpeg2.7をビルドしてみる

(FFmpeg2.8以降に対応した記事はこちら

自前でQSV対応のWindows版FFmpegをビルドして遊んだ時の備忘録。

はじめにことわっておきますが、今回初めてdiffを使ってパッチを作成したような素人のお遊びですので温かい目で見てあげてください。

公式スナップショットを試す

FFmpegのコミット履歴を眺めていたら3月下旬頃に「libmfx-based H.264 encoder」の文字を発見。早速スナップショットをビルドして、「-codecs」を見ると確かに「encoders: h264_qsv 」となっていた。

これでFFmpegもQSVのエンコードに対応かと思ったのだが実際に使用してみると問題が発覚。

エンコード中に次のメッセージが大量発生し、出来上がった動画は再生されるもののシークすると映像が真っ黒になる。

Non-monotonous DTS in output stream 0:0; previous: XX, current: 0; changing to XX. This may result in incorrect timestamps in the output file.

原因などわかる筈もなく、私のような素人はリリース版で対応になるまで待った方が良さげか・・・・
続きを読む


BackWPup の SugarSync バックアップで SSL エラー

珍しくBackWPupの失敗通知メールが来ていたのでログをみてみた。

エラー: SugarSync API: cUrl Error: Unknown SSL protocol error in connection to api.sugarsync.com:443

SSLまわりでエラーが発生している模様。

今の時期SSL絡みということは、おそらく脆弱性POODLEの対応が原因かと。

SSL 3.0 の脆弱性「POODLE 」とは?

SugarSyncのサイトを確認してみるとやはりSSL3.0が遮断されているようだ。

【重要】SSL3.0の脆弱性に対する対応について

ちょっとググってみるとWordpressのフォーラムに対策が書いてあった。

https://wordpress.org/support/topic/sugarsync-api-curl-error-unknown-ssl-protocol-error
続きを読む


c# XML-RPCでWordPressにファイルをアップロードする

WordPress に投稿するにあたってもう一つ押さえておきたいのがファイルのアップロード。
記事内で画像を表示させるような使い方は普通にするだろうし。

インターフェイス定義

前回作成したインターフェイス(IWordPress)に wp.uploadFileを追加。

    public interface IWordpress : IXmlRpcProxy
    {
        [XmlRpcMethod("wp.newPost")]
        string newPost(int blog_id, string username, string password, WpContent content);

        [XmlRpcMethod("wp.getTerms")]
        WpTerm[] getTerms(int blog_id, string username, string password, string taxonomy);

        [XmlRpcMethod("wp.uploadFile")]
        WpUploadFileResult uploadFile(int blog_id, string username, string password, WpUploadFileData data);
    }

プログID、ユーザー名、パスワードは今までのメソッドと同じ。
アップロードファイルに関する「引数」および「戻り値」はそれぞれ専用の構造体で定義する。
続きを読む


スポンサーリンク