« ううう、Xcodeの嫌な予感 | トップページ | MacPeople誌の変身 »

自然なエラー文が解決の引き金に

 予想通りというかobjective-Cネタを書き出してからアクセスが目に見えて減ってきました。 まぁ、そうでしょうねぇ。 あまねく話題を扱っているこのblogにしてはあまりに専門的で、多分つまらないと自分でも思いますけど、自分への備忘もかねているので、あと一つ、お許しを。

 三日間のドツボから抜け出すときに見つけたNSLogがありまして、順を追って説明しますと...
 
 アルバムに保存した静止画から動画を作るクラスファイルは著者である泉氏が用意されていまして、そこで使われているのが「writeImagesAsMovie」という汎用ファンクション(と呼んでいいのかな?)です。
 恐らくこれに最初から組み込まれているエラー検知用のNSLog(コンソールログ)が、

    if (![adaptor appendPixelBuffer:buffer withPresentationTime:frameTime])
    {
    NSLog(@"Failed to append buffer. [image : %@]", image);
    }
 ところがこれだと、今回の私のミスでは、
     Failed to append buffer. [image : xxxxx]
 としか出力されません。    初心者にしてみれば、ここで言う「追加できないbuffer」が、appendPixelBuffer:bufferなのか、そもそものadaptorなのか、もしかしてインスタンスがない?とか訳が分からないのです。 あるいは書き込み権限なのかと思っても、どうやってそれをコントロールするのかもわからない。    ところが、検索していると、このNSLogの次に、
     NSLog(@"The error is %@", [_videoWriter error]);
 と入力しているのを見つけました。    試してみると、これならエラーメッセージが、
     The error is Error Domain=NSURLErrorDomain Code=-3000 "Cannot create file" UserInfo=xxxxx {NSLocalizedDescription=Cannot create file, NSUnderlyingError=xxxxxx "The operation couldn’t be completed.
 と、増えて、どうやら最終の動画ファイルが書き込めないと推測することができます。  泉氏作成のMovieCreator.mが間違っている可能性はゼロなので、とすると私が入力したAsagaoViewController.mの、しかもファイル書き込みあたりがおかしいのでは?となり、「//動画の出力先を設定する」のところで先のスペルミスを見つけた、という顛末です。
 ("_videoWriter"の部分は適宜書き換え)

   なにせ自然な英語からは程遠い言語ですので、エラーメッセージがせめてこれだけ自然なら心強い、ってなもんです。 あなありがたや...

|

« ううう、Xcodeの嫌な予感 | トップページ | MacPeople誌の変身 »

iOS と Xcode」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




« ううう、Xcodeの嫌な予感 | トップページ | MacPeople誌の変身 »