Joe Marler
Forum Replies Created
-
[Steve Connor] “That’s a deeper system problem, surely? I do this sort of fast selects all the time with no issues?
“I agree, that is awfully simple to cause a crash. Oliver, does it happen on more than one system, or mainly just one?
-
With mine, I also add additional snapshot saves as I go. I prune those to keep the number reasonable but there could be maybe 15 or 20 before I delete some. The snapshots obviously add some stress because you can see it saying “loading…” However this is nothing extraordinary — it’s simply using the product as it was designed. I always have background rendering off.
It is difficult to say what specific factors contribute to the overall instability, since it has consistently happened across many machines, many versions of macOS and FCPX. With 10.4 there is an obvious issue with multiple color correction steps crashing it, and the call stack is very consistent. This specific issue isn’t for certain an FCPX issue, it could be a Metal library API or something else. But it usually manifests as FCPX itself hanging or crashing.
In previous versions the overall pattern is roughly similar — as the timeline gets more complex with more edit steps, and especially in the color grading phase where I’m adding hundreds of primary and secondary corrections, crashes and hangs become more common. My perception is having the scopes up makes it more likely but that could be coincidence — they are usually up when I’m doing color work. At the outset it might crash or hang every other day. As work progresses, it increases to once per day, then twice per day, then every few hours.
It’s not the platform, as it happens on multiple machines, multiple configurations, multiple RAID systems, multiple macOS versions, multiple FCPX versions. It’s not camera-specific media or a specific project because it happens on various projects and media from different cameras. In my particular case the source media is usually 4k H264 8-bit 4:2:0 100 mbps from a variety of cameras.
-
[Scott Witthaus] “When you say “pushing the software”, exactly what do you mean? Can you send a screen grab? I rarely have crashes with X on any of the three systems I work on, but I make a concerted efforts, no matter what software or project, to keep a clean and efficient a timeline as I can.”
I can’t post the timeline, but I can give some numbers. It’s 22 min long, all 4K H264, proxies built (but crashes happen whether proxies are used or not). Clips in timeline = 473, about 1/2 of them multicam, only three audio lanes: music, dialog, nat sound. Only one 3rd party effect which is currently disabled. The timeline isn’t that thick and mainly has a primary storyline with one or two layers of connected clips.
It was originally built from a very large library of 8,500 clips, 20 terabytes, 220 hr of H264 4k. It was extracted to a separate managed library of about 1.5 TB by copying the project. That runs on a Thunderbolt SSD array. So the current library size isn’t that big.
In general the instability seems loosely related to number of edit steps. IOW the assembly edit of the same material was fairly stable. During the late edit phase and finishing phase as more edit steps accrue, it gradually became more unstable.
I’ve observed this general pattern on many different large FCPX projects, on multiple machines, multiple macOS versions. So it’s not like trashing prefs, deleting render files, resetting SMC or re-installing macOS or FCPX will help — those have been done many times already, across multiple machines.
On this project in 10.4 there is an especially marked tendency to crash when applying multiple color correction steps. These are just built-in effects such as color wheels, color mask, shape mask, hue curves, etc. The call stack is usually as I posted above.
-
[Oliver Peters] “Why is that that when you are really pushing an app hard, the ProApps software like Final Cut Pro X crashes more often than any other post software? And worse than just crashing, it totally messes up the machine so that you can’t simply force quit, but have to do a hard restart..”
I completely agree. When I push FCPX really hard with a big complex timeline, I sometimes have four crashes per day. I have three iMacs and a 10-core iMac Pro, it happens on all of them. It’s not a new issue, it’s always been like that. It’s not failure to trash prefs or insufficient disk space or an oddball plugin. My current timeline has one 3rd party plugin on one clip and it’s disabled.
In my case the most frequent application-layer crashes happen when using multiple 10.4 color correction effects. The call stack (for this particular case) is below. While this seems new to 10.4, it’s just one current manifestation. FCPX has been like this since I first used it in 10.0.9.
But as you said there are also app crashes which either destabilize macOS or something in macOS has become deranged and causes the FCPX crash. In those cases a clean shutdown is impossible, even using terminal. Then I have to run First Aid on all my drives which takes a while. Some of this may not be the fault of FCPX, it could be macOS issues.
I used Premiere on Windows a lot on CS5 and CS6, and it also crashed a lot when pushed hard but Windows almost never hung or crashed.
This is where I disagree with some commonly-advocated requests for new FCPX features. While it would be nice to have color coded video lanes or a scrolling timeline, what I want is consistent, reliable stability and performance under high load and a variety of codecs.
Instead of glitzy UI features, I would rather they fix relink, make proxy management work better, or add a library database verifier. They need to rearchitect the plugin system so one CPU-intensive plugin doesn’t hog the UI for the entire app. If they are going to address UI feature issues, why not fix things which are confusing to users, such as the inconsistent requirement to open and blade multicams for some effects but not others.
I appreciate what Apple has accomplished with FCPX. The product managers are apparently trying to focus on performance and stability and they are being cautious about adding features — that is good. But more work is needed in this area.
Common FCPX 10.4 crash during color correction (2017 top-spec iMac 27, macOS 10.13.4, 4k H264 4:2:0 8-bit media):
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x00007fff73a5cb6e __pthread_kill + 10
1 libsystem_pthread.dylib 0x00007fff73c27080 pthread_kill + 333
2 libsystem_c.dylib 0x00007fff739b81ae abort + 127
3 libGPUSupportMercury.dylib 0x00007fff645b40f1 gpusGenerateCrashLog + 168
4 com.apple.AMDRadeonX4000GLDriver 0x0000000106fbaf2b gpusKillClientExt + 9
5 libGPUSupportMercury.dylib 0x00007fff645b54d6 gpusSubmitDataBuffers + 184
6 com.apple.AMDRadeonX4000GLDriver 0x0000000106f92332 glrATI_Hwl_SubmitPacketsWithToken + 154
7 com.apple.QuartzCore 0x00007fff56985a2c CAOpenGLLayerDraw(CAOpenGLLayer*, double, CVTimeStamp const*, unsigned int) + 1985
8 com.apple.QuartzCore 0x00007fff56985073 -[CAOpenGLLayer _display] + 565
9 com.apple.QuartzCore 0x00007fff56925973 CA::Layer::display_if_needed(CA::Transaction*) + 633
10 com.apple.QuartzCore 0x00007fff56925431 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 35
11 com.apple.QuartzCore 0x00007fff56924434 CA::Context::commit_transaction(CA::Transaction*) + 326
12 com.apple.QuartzCore 0x00007fff56923fe1 CA::Transaction::commit() + 487
13 com.apple.AppKit 0x00007fff49488a72 __65+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayRefresh]_block_invoke + 283
14 com.apple.CoreFoundation 0x00007fff4b614467 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
15 com.apple.CoreFoundation 0x00007fff4b61438f __CFRunLoopDoObservers + 527
16 com.apple.CoreFoundation 0x00007fff4b5f6908 __CFRunLoopRun + 1240
17 com.apple.CoreFoundation 0x00007fff4b5f61a3 CFRunLoopRunSpecific + 483
18 com.apple.HIToolbox 0x00007fff4a8ded96 RunCurrentEventLoopInMode + 286
19 com.apple.HIToolbox 0x00007fff4a8dea0f ReceiveNextEventCommon + 366
20 com.apple.HIToolbox 0x00007fff4a8de884 _BlockUntilNextEventMatchingListInModeWithFilter + 64
21 com.apple.AppKit 0x00007fff48b91a73 _DPSNextEvent + 2085
22 com.apple.AppKit 0x00007fff49327e34 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044
23 com.apple.AppKit 0x00007fff48b86885 -[NSApplication run] + 764
24 com.apple.LunaKit 0x0000000103298e2d LKApplicationMain + 365
25 com.apple.FinalCut 0x0000000100ae3c35 main + 533
26 libdyld.dylib 0x00007fff7390c015 start + 1 -
[Craig Seeman] “Wouldn’t it be more useful to keep the iOS interface, making it a real artist’s tool (again I’m thinking of a Wacom tablet type computer) rather then the same “old” Macbook computer interaction with just an Apple designed chip?
“Apple is probably tired of the limitations on Mac development imposed by Intel. E.g, Xeon still doesn’t have Quick Sync, laptop CPUs burn a lot of power per unit of performance, aren’t always available to meet Apple’s schedule, etc.
However — there is a lot more involved here than potentially switching Macs to an Apple-designed CPU.
The iOS and Mac UIs PLUS the development framework PLUS the app hosting must all be considered in a plan to move forward.
The Mac CPU change (if it happens) is just one element of this. In theory it could lay the groundwork for running iOS apps on Mac, or a future common development framework for both iOS and Mac apps.
Previous attempts to scale a single UI from phones to desktops didn’t work well, e.g, Microsoft’s Metro. In theory a more complex “Universal App” approach might work better, but that’s yet to be demonstrated in a complex app.
In unified UIs, desktops tend to lose function. Google has tried multiple times to force fit their “Material Design” standards (optimized for mobile) on the Chrome browser for desktop users. It results in things like the Bookmark Manager being dumbed down, large fonts, large line spacing, loss of resize ability in certain dialogs, etc.
Going the other direction, nobody has yet demonstrated how a touch-oriented tablet UI could host a complex professional app like Photoshop, FCPX, etc. The current desktop menu/windowed design paradigm contains hundreds/thousands of UI elements which have no corresponding mobile UI equivalent. E.g, when Adobe ports Premiere to macOS, those are both based on a menu/windows paradigm. It’s unclear if that kind of app could ever be ported with full functionality to a current mobile OS.
So several things are needed: a future evolved version of iOS which can host more complex apps (inc’l new UI paradigms), macOS which can support iOS apps, and development frameworks which allow a convergence of mobile and desktop software development. Whether this will be the rumored “Marzipan” or something beyond this, I don’t know: https://www.moveoapps.com/blog/apples-marzipan-decoding-effects-on-app-developers/
From the standpoint of code generation, we tend to view the upcoming CPU change (if it happens) like past ones, e.g, the 68k-to-PowerPC or PowerPC-to-x86 transitions. In those cases the software development and deployment framework was based on a statically compiled and linked binary executable which was specific to a processor instruction architecture.
If the Mac ARM transition happens, it’s unclear it will happen the same way. If Apple moves toward a managed code model using Just-In-Time or install-time code generation (similar to Microsoft’s .NET common language runtime), it would somewhat decouple them from binary dependence on a processor instruction set. OTOH if those methods eat the performance gains offered by profiler-guided static compilation, going to ARM may not help so much.
-
[Tim Wilson] “Apple has the best-growing computer business in the industry, but it creates the optical illusion of shrinking, only because the rest of Apple is growing so much faster.”
Correct — while Mac revenue is small relative to iPhone revenue, it is very large in absolute terms. If Apple’s Mac division was a separate company it would be bigger in terms of annual revenue than Time Warner, Facebook, or McDonald’s. Apple’s Mac revenue is not that much smaller than Oracle’s total revenue.
-
Stabilization, tracking, optical flow smoothing, and auditions do not work in multicam clips. You have to open the clip and blade the timeline at the begin/end points of the multicam, apply the effect there, then hop back to the multicam and observe the effect.
At least the current version of FCPX now preserves the playhead position when jumping from the MC clip into the parent clip. Before 10.3 you had to write down or remember the timecode then enter it manually to find the corresponding playhead position between the MC clip and parent clip.
-
An audio pop is common when cutting audio and the levels are mis-matched on either side of the cut. The typical solution is add a small fade to either side.
In FCPX 10.3 and later this can be done with a single keystroke for a batch of clips. The duration of the audio fade is adjusted in FCPX preferences>Editing>Default Fade Duration.
The menu to apply them is Modify>Adjust Volume>Apply Fades.
By default there is no shortcut key assigned but you can easily do this as shown in MacBreak Studio #387:
https://www.youtube.com/watch?v=c-NQeBleOWo
Some contents or functionalities here are not available due to your cookie preferences!This happens because the functionality/content marked as “Google Youtube” uses cookies that you choosed to keep disabled. In order to view this content or use this functionality, please enable cookies: click here to open your cookie preferences.
-
[Mark Smith] “I’ve been doing digital forensics until my eyes bleed looking for some camera original files. I found a back up version of the project library minus the media, now looking for the camera originals however X doesn’t seem to keep track of where they came from, or does it and I just can’t find the right place?”
For libraries using external or “non managed” media, the library contains a symbolic link (or symlink) for each external media file. To see these and where they point, open the library in Finder by right click>Show Package Contents. Then navigate to the event name, then original media folder, and within that are the symlinks. For each one you can right-click and select “Get Info”, and it will show the original file path.
I think the latest version of Library File Manager will read the library and export a CSV file of each media file path: https://www.arcticwhiteness.com/finalcutlibrarymanager/
-
[Roger Sherman] ” I’m organizing a feature documentary by keywords and events. I’d like to be able to search events by names but it seems FCPX does not do that”
The Browser search field will search for clip name, file name, camera name (if entered as metadata), notes field, favorite name (if you renamed the favorite in list mode), or marker name.
It will not search for event name, folder name, or keyword name.
The FCPX database is planned around using relatively few events, not so many that you’d need to search for the event names. They will normally just fit on the library sidebar. In general you don’t need a large number of events to organize footage, and in fact you could theoretically put everything in one event and use keywords for organization.
Up until the advent of library-wide smart collections you couldn’t even search across all events, so the event imposed a “fence” in the search scope. Now you can create a library-wide smart collection that searches across all events but this might be a little slower for a huge library.
When creating the library smart collection, if you press the plus button then select “keywords”, you’ll see a scrollable list of all keywords in the library in alphabetical order. If you can’t remember a keyword or what event it’s in, this is a good way to find it.
The “filter HUD” allows you to perform an intersection search (ie logical AND) on various keywords. Press plus button, select keywords, select “Include all”, click “uncheck all”, then select a few keywords that share clips and it will show only those clips that exist in all selected keywords. E.g, if you have a keyword collection for “happy” and a keyword for site name, and a keyword for children, it will show you only the ranges of happy children filmed at a particular site.
If you enter the keyword name in the list view notes field, that will be searchable. This can be done once for each batch of keyworded clips. E.g, in list view click on keyword name, do CTRL+A to select them all, then in the Info Inspector at upper right, enter that keyword name. Thereafter those clips can be searched by that name.
Simon Ubsdell described how to use library smart collections as the centerpiece of a search system in “One Smart Collection to Rule Them All”:
https://www.youtube.com/watch?time_continue=36&v=sjuCfJFhdo0