[Nexus One Android Development] big_adventure:
This is because the Desire camera writes over the kernel - you are no longer running Ivan's kernel when you flash the Desire cam over the top of it.

Paul is straight-up when he says do not flash the Desire cam over anything other than the "target" roms. Here are the combos that I've tested (if you don't do it in order, you won't have the kernel you think you do):

CM 5.0.5.1 or CM 5.0.5.3 + Desire cam + DIET kernel (any) or Intersect kernel or CM stock kernel = cam works perfectly.

CM 5.0.5.1 or CM 5.0.5.3 + Desire cam + OC/UV kernel from Kmobs - video works, cam works but crashes after shot - shot still saves and is accessible in gallery.

CM 5.0.6-test2 + Desire cam + stock kernel or Kmobs or DIET - cam F/Cs on startup - every time. I've cleared caches, data, everything I can think of. I've reinstalled it a few times. I just can't get it running on CM 5.0.6-test2.

Logcat:

I/ActivityManager( 111): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10
200000 cmp=com.android.camera/.Camera bnds=[113,371][242,482] }
I/ActivityManager( 111): Start proc com.android.camera for activity com.android.camera/.Camera: pid=1648 uid=10116 gids={1006, 3003
, 1015}
I/WindowManager( 111): Setting rotation to 0, animFlags=0
W/WindowManager( 111): Rebuild removed 14 windows but added 13
I/ActivityManager( 111): Config changed: { scale=1.0 imsi=208/1 loc=fr_FR touch=3 keys=1/1/2 nav=3/1 orien=1 layout=34}
V/RenderScript_jni( 184): surfaceChanged
V/RenderScript( 184): setSurface 480 800 0x7d4fd8
I/dalvikvm( 1648): Could not find method android.app.KeyguardManager.keyguardIsShowing, referenced from method com.android.camera.HT
CCamera.onResume
W/dalvikvm( 1648): VFY: unable to resolve virtual method 23: Landroid/app/KeyguardManager;.keyguardIsShowing ()Z
D/dalvikvm( 1648): VFY: replacing opcode 0x6e at 0x00e5
D/dalvikvm( 1648): Making a copy of Lcom/android/camera/HTCCamera;.onResume code (622 bytes)
W/HTCCamera( 1648): onCreate()
D/dalvikvm( 1648): GC freed 1346 objects / 101976 bytes in 50ms
I/dalvikvm( 1648): Could not find method android.hardware.Camera.open, referenced from method com.android.camera.CameraThread.start_
preview
W/dalvikvm( 1648): VFY: unable to resolve static method 238: Landroid/hardware/Camera;.open (Ljava/lang/String;)Landroid/hardware/Ca
mera;
D/dalvikvm( 1648): VFY: replacing opcode 0x71 at 0x0078
D/dalvikvm( 1648): Making a copy of Lcom/android/camera/CameraThread;.start_preview code (1131 bytes)
I/dalvikvm( 1648): Could not find method android.hardware.Camera.open, referenced from method com.android.camera.CameraThread.start_
preview
W/dalvikvm( 1648): VFY: unable to resolve static method 238: Landroid/hardware/Camera;.open (Ljava/lang/String;)Landroid/hardware/Ca
mera;
D/dalvikvm( 1648): VFY: replacing opcode 0x71 at 0x0148
E/IntentManager( 1648): intent = null!!
W/HTCCamera( 1648): onStart() - start
W/HTCCamera( 1648): onStart() - end
W/HTCCamera( 1648): onResume() - start
D/dalvikvm( 1648): DexOpt: couldn't find static field
W/dalvikvm( 1648): VFY: unable to resolve static field 36 (PHONE_CONTENT_URI) in Landroid/provider/MediaStore$Images$Media;
D/dalvikvm( 1648): VFY: replacing opcode 0x62 at 0x0f73
D/dalvikvm( 1648): Making a copy of Lcom/android/camera/CameraThread$MainHandler;.handleMessage code (9055 bytes)
I/dalvikvm( 1648): Could not find method com.htc.util.media.ImageUtil.loadBitmap, referenced from method com.android.camera.CameraTh
read$MainHandler.handleMessage
W/dalvikvm( 1648): VFY: unable to resolve static method 2868: Lcom/htc/util/media/ImageUtil;.loadBitmap (Ljava/lang/String;II)Landro
id/graphics/Bitmap;
D/dalvikvm( 1648): VFY: replacing opcode 0x71 at 0x0fd2
W/HTCCamera( 1648): Initial Display Orientation is portrait
W/HTCCamera( 1648): mIsInitOrientation = true, mIsWaitOrientation = false
W/HTCCamera( 1648): OnResume - reset UI, immediately set mMainLayout invisible
W/########## HtcSettingsReceiver ##########( 1648): 2010-04-15 10:00:45 769(ms) onReceive-start
W/HTCCamera( 1648): Block Capture UI - onResume(), and unblock after start preview
W/HTCCamera( 1648): onResume() - mFocusingState = NO_FOCUSING
W/HTCCamera( 1648): keyguard is not shown !!!!!
W/HTCCamera( 1648): onResume() - end
W/HTCCamera( 1648): $$$$$$$$$$$$$$$$$$$$$$$$$$$$$ surfaceCreated $$$$$$$$$$$$$$$$$$$$$$$$$$$android.view.SurfaceView$2@45c4c318
W/HTCCamera( 1648): $$$$$$$$$$$$$$$$$$$$$$$$$$$$$ surfaceCreated $$$$$$$$$$$$$$$$$$$$$$$$$$$ start preview
E/CameraThread( 1648): open the Camera in start_camera_preview
W/dalvikvm( 1648): threadid=15: thread exiting with uncaught exception (group=0x4001b188)
E/AndroidRuntime( 1648): Uncaught handler: thread Thread-8 exiting due to uncaught exception
E/AndroidRuntime( 1648): java.lang.NoSuchMethodError: android.hardware.Camera.open
E/AndroidRuntime( 1648): at com.android.camera.CameraThread.start_preview(CameraThread.java:1168)
E/AndroidRuntime( 1648): at com.android.camera.CameraThread$MainHandler.handleMessage(CameraThread.java:288)
E/AndroidRuntime( 1648): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 1648): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 1648): at com.android.camera.CameraThread.run(CameraThread.java:1674)
I/Process ( 111): Sending signal. PID: 1648 SIG: 3
I/dalvikvm( 1648): threadid=7: reacting to signal 3
I/dalvikvm( 1648): Wrote stack trace to '/data/anr/traces.txt'
W/HTCCamera( 1648): $$$$$$$$$$$$$$$$$$$$$$$$$$$$$ surfaceChanged $$$$$$$$$$$$$$$$$$$$$$$$$$$ w=480 h=800
I/ActivityManager( 111): Displayed activity com.android.camera/.Camera: 718 ms (total 718 ms)
W/HTCCamera( 1648): initScreenMode() - initiate screen mode from capture mode
I/WindowManager( 111): Setting rotation to 1, animFlags=0
I/DumpStateReceiver( 111): Added state dump to 1 crashes
I/ActivityManager( 111): Config changed: { scale=1.0 imsi=208/1 loc=fr_FR touch=3 keys=1/1/2 nav=3/1 orien=2 layout=34}
W/HTCCamera( 1648): initScreenMode() - request landscape mode
W/HTCCamera( 1648): %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% onConfigurationChanged LANDSCAPE
W/HTCCamera( 1648): Orientation landscape - mIsInitOrientation = false
W/HTCCamera( 1648): $$$$$$$$$$$$$$$$$$$$$$$$$$$$$ surfaceChanged $$$$$$$$$$$$$$$$$$$$$$$$$$$ w=800 h=480
W/IInputConnectionWrapper( 184): showStatusIcon on inactive InputConnection
V/RenderScript_jni( 184): surfaceDestroyed
V/RenderScript( 184): setSurface 0 0 0x0
D/ViewFlipper( 184): updateRunning() mVisible=false, mStarted=true, mUserPresent=true, mRunning=false
I/wpa_supplicant( 663): CTRL-EVENT-SCAN-RESULTS Ready
D/dalvikvm( 111): GC freed 8111 objects / 530456 bytes in 104ms
I/Process ( 1648): Sending signal. PID: 1648 SIG: 9
I/WindowManager( 111): WIN DEATH: Window{4610a3b0 SurfaceView paused=false}
I/WindowManager( 111): WIN DEATH: Window{460c4030 com.android.camera/com.android.camera.Camera paused=false}
I/ActivityManager( 111): Process com.android.camera (pid 1648) has died.
I/WindowManager( 111): Setting rotation to 3, animFlags=0
D/ViewFlipper( 184): updateRunning() mVisible=false, mStarted=true, mUserPresent=true, mRunning=false
I/UsageStats( 111): Unexpected resume of com.android.launcher2 while already resumed in com.android.camera
V/RenderScript_jni( 184): surfaceCreated
V/RenderScript_jni( 184): surfaceChanged
V/RenderScript( 184): setSurface 800 480 0x10504a0
D/ViewFlipper( 184): updateRunning() mVisible=true, mStarted=true, mUserPresent=true, mRunning=true
V/RenderScript_jni( 184): surfaceChanged
V/RenderScript( 184): setSurface 800 442 0x10504a0
W/InputManagerService( 111): Got RemoteException sending setActive(false) notification to pid 1648 uid 10116
D/dalvikvm( 111): GC freed 1414 objects / 62320 bytes in 100ms

If anyone has had any success running the Desire cam with CM 5.0.6, I'd love to hear about it - it looks to be missing some important stuff.

FYI, I never tried CM 5.0.6 with just the Desire mod installed and no extra kerneling...

EDIT :

I just installed CM 5.0.6 test3, then desire cam, then the no-AVS DIET kernel, and the Desire cam works flawlessly. Go figure. I tried it with clean and "dirty" installs of 5.0.6test2, plus multiple kernels (DIET AVS and no-AVS, IntersectRaven, CM5.0.6 t2 stock, Desire cam stock) and never got it working, even after restoring known-good backups and retrying the upgrade from 5.0.5.1 and 5.0.5.3. I just upgraded from a non-working 5.0.6 t2 to t3, didn't even clear the caches, flashed the Desire cam while still in recovery, rebooted to bootloader and flashed the zImage from the non-AVS 1.08 DIET, booted the phone and everything is happy. Seriously?