Hey guys, tried to follow the super confusing doc on this, but no luck yet.
https://developer.apple.com/av-foundation/Incorporating-HDR-video-with-Dolby-Vision-into-your-apps.pdf
I have code that uses AVAssetReader and AVAssetReaderTrackOutput to directly pull frames from a video, but the colors are wrong for HDR dolby videos. Basically what I want is to extract frames from an HDR Dolby video as images and have those images not be the wrong color. Don't care if they are only 8 bit per color instead of 10 and all the all new stuff, just the closest that old fashioned 8 bit per color supports.
I added the statement marked // added for dolby hdr per the above doc, (spread across several lines), no luck, still bad colors.
Any hints of what I am missing?
NSMutableDictionary* dictionary = [[NSMutableDictionary alloc] init];
[dictionary setObject:[NSNumber numberWithInt:kCVPixelFormatType_32BGRA] forKey:(NSString*)kCVPixelBufferPixelFormatTypeKey];
// added for dolby hdr
dictionary[AVVideoColorPropertiesKey] = @{
AVVideoColorPrimariesKey: AVVideoColorPrimaries_ITU_R_709_2,
AVVideoTransferFunctionKey: AVVideoTransferFunction_ITU_R_709_2,
AVVideoYCbCrMatrixKey: AVVideoYCbCrMatrix_ITU_R_709_2
};
AVAssetReaderTrackOutput* asset_reader_output = [[AVAssetReaderTrackOutput alloc] initWithTrack:video_track outputSettings:dictionary];
[asset_reader addOutput:asset_reader_output];
// from here we get sample buffers like this
CMSampleBufferRef buffer2 = [asset_reader_output copyNextSampleBuffer];
// then pixel buffer
CVPixelBufferRef inputPixelBuffer = CMSampleBufferGetImageBuffer(buffer2);
// then a CIImage
CIImage* ciImage = [CIImage imageWithCVPixelBuffer:inputPixelBuffer]; // one vid frame
then we use standard stuff to convert that to a CGImage/UIImage
Post
Replies
Boosts
Views
Activity
any one else having troubles uploading binaries to app store connect today? system status says all o.k.
one of our testers got a new iphone13, hooray! but he cannot download apps in test flight anymore. the spinny thing shows then disappears. any ideas?
i am using the tabular regression method of CreateML. i see where it prints a couple of metrics such as root mean square error on the validation data, but i dont see any way to export the raw fitted numbers (e.g. training prediction), or validation numbers (e.g. validation prediction), or out of sample "testing" numbers (from the testing data set). is this possible in CreateML directly? the reason this is necessary is that you sometimes want to plot actual versus predicted and compute other metrics for regressions.
i pushed a couple of builds up to app store connect on dec5 and they just disappeared. not showing as in-process or anything. anyone else see this happening?
sometimes, for the very same video file, we get an error from this call on iOS
example of fail case path:
/var/mobile/Media/DCIM/102APPLE/IMG_2685.mp4
sometimes it works fine. what?
[[NSFileManager defaultManager] attributesOfItemAtPath:filepath error:&error];
anyone see this before?
is there any recommend way to install a shortcut link in an app to make it easy for the user to get at it? or is maybe just a regular link that opens in a webview the only/best way?
these type of automation shortcuts::
https://support.apple.com/guide/shortcuts/welcome/ios
how is this secure? i have to switch icloud off and on for testing icloud in apps, and everytime i do this, it vacuums up all my photos and puts them on the cloud.
is it possible for other iOS apps to hold onto microphone access when those apps are in the background? we see some cases where our app cannot get mic access (e.g. we can record video but we get no sound) and we think it might be another app such as Telegram "holding onto" the mic, because when we quit all other apps, our app works ok. this seems like an odd failure mode. any hints how to fix it?
previously (last year) I was able to generate provision profiles that matched to the *.maccatalyst.*com.* bundle id pattern. now when i try to generate a new mac provision profile because my prior profile expired, this site generates the profile for the iPad version of the bundle id pattern. e.g. without the .maccatalyst. portion of the bundle id. this is not usable for code signing of the mac app since the bundle id does not match. what is going on with this?
as in the above note, shorter videos, say, less than 1 hour playing time seem to export ok. this is just a time clip operation we are doing not a composition.
but when we put videos longer than an hour and try to clip them to an hour, the export fails part way thru
we can see the .progress property proceeding
then we get the mysterious unknown error code:
An unknown error occurred (-12551)
as noted below in our console output
apple any hints besides unknown? surely your code knows why it failed. why not tell us?!
the "code = " listed below is the .status which shows as 4
waiting for trimmed movie file save 1 progress = 0.692948
2021-03-08 14:55:52.702278-0500 KargoCamera[1598:154227] Export failed: The operation could not be completed code = 4
2021-03-08 14:55:52.702412-0500 KargoCamera[1598:154227] Export recovidea: (null)
2021-03-08 14:55:52.702507-0500 KargoCamera[1598:154227] Export reason: An unknown error occurred (-12551)
trying to fix the seemingly common missing .dSYM file problem.
problem started occurring in xcode11 or so maybe? i have DWARF with dSYM File set in build settings but am not getting a .dSYM file in the archive package to upload to app store connect. any ideas?
We are using AVAssetWriter to write a movie file.
All works fine, but when the app goes into the background
and pauses operations, we would expect the writer to come back to life when you bring the app back into the foreground.
However, it does not, it fails with this error code.
Any hints, workarounds?
Error Domain=AVFoundationErrorDomain Code=-11847 "Operation Interrupted" UserInfo={NSLocalizedRecoverySuggestion=Stop other operations and try again., NSLocalizedDescription=Operation Interrupted, NSUnderlyingError=0x2820356b0 {Error Domain=NSOSStatusErrorDomain Code=-16121 "(null)"}}
hi all, trying to create an imessage extension example based upon the Hello World story board that shows up when you create the extension. if i add a button to the hello world story board, and hook up the button to a method, i dont seem to be getting any tap events on that button. i tried also creating a button manually with [UIButton buttonWithType] and adding a target to it...the buttons show up, but they don't take tap events. i used the UI examiner in xcode, and touch events seem to be enabled on all views in the imsg extension view stack. i do see a strange message in the xcode console which i havent seen before:
[PPT] Error creating the CFMessagePort needed to communicate with PPT.
any ideas?
PS: this is on simulator. i tried on device, same behavior. no touch events.
we used to use code such as this to make sure the keyboard comes up in a desired orientation
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
however, apple has no-op'd setStatusBarOrientation:
it still can be called, but it gives a warning that it no longer does anything as of iOS13
does anyone know the recommended replacement path for this feature?