小编gil*_*lby的帖子

杰克逊 - 在序列化时忽略Map超类

我有一些扩展的模型类LinkedHashMap<String, Object>:它们定义了包含Map的get和put方法的getter和setter.我正在尝试使用Jackson(使用RESTEasy)序列化这些类的实例,但杰克逊拒绝关注我的getter注释@JsonProperty.相反,它只是序列化支持映射的键值对.我尝试使用@JsonAutoDetect禁用所有方法和字段的自动检测,但这并没有改变任何东西.有没有办法阻止杰克逊自动序列化地图,还是我必须创建不扩展的新模型类LinkedHashMap<String, Object>

serialization json map resteasy jackson

5
推荐指数
2
解决办法
3103
查看次数

使用AV Foundation有效使用Core Image

我正在编写一个iOS应用程序,将过滤器应用于现有视频文件,并将结果输出到新视频文件.最初,我尝试使用Brad Larson的漂亮框架GPUImage.虽然我能够毫不费力地输出过滤后的视频文件,但输出并不完美:视频长度适当,但有些帧丢失,其他帧重复(有关详细信息,请参阅问题1501).我计划了解有关OpenGL ES的更多信息,以便我可以更好地调查丢弃/跳过的帧问题.但是,与此同时,我正在探索渲染视频文件的其他选项.

我已经熟悉Core Image了,所以我决定在另一种视频过滤解决方案中利用它.在传递给的块中AVAssetWriterInput requestMediaDataWhenReadyOnQueue:usingBlock:,我过滤并输出输入视频文件的每一帧,如下所示:

CMSampleBufferRef sampleBuffer = [self.assetReaderVideoOutput copyNextSampleBuffer];
if (sampleBuffer != NULL)
{
    CMTime presentationTimeStamp = CMSampleBufferGetOutputPresentationTimeStamp(sampleBuffer);

    CVPixelBufferRef inputPixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer);
    CIImage* frame = [CIImage imageWithCVPixelBuffer:inputPixelBuffer];
    // a CIFilter created outside the "isReadyForMoreMediaData" loop
    [screenBlend setValue:frame forKey:kCIInputImageKey];

    CVPixelBufferRef outputPixelBuffer;
    CVReturn result = CVPixelBufferPoolCreatePixelBuffer(NULL, assetWriterInputPixelBufferAdaptor.pixelBufferPool, &outputPixelBuffer);

    // verify that everything's gonna be ok
    NSAssert(result == kCVReturnSuccess, @"CVPixelBufferPoolCreatePixelBuffer failed with error code");
    NSAssert(CVPixelBufferGetPixelFormatType(outputPixelBuffer) == kCVPixelFormatType_32BGRA, @"Wrong pixel format");

    [self.coreImageContext render:screenBlend.outputImage toCVPixelBuffer:outputPixelBuffer];
    BOOL success …
Run Code Online (Sandbox Code Playgroud)

video opengl-es video-processing core-image ios

5
推荐指数
0
解决办法
774
查看次数