opensubscriber
   Find in this group all groups
 
Unknown more information…

d : discrecording@lists.apple.com 20 November 2005 • 7:44PM -0500

Trouble acquiring media reservation
by Fabio

REPLY TO AUTHOR
 
REPLY TO GROUP




Hi!

I have a layout wich is a NSArray containing two DRTracks, both with  
a custom data producer.
If I burn that layout using the standard UI, the burn will succeed.  
But if I use my custom UI, it will fail. It says it fails writing on  
the media.

I'm not sure of why it fails, but what I can notice is that when I  
use the standard UI, the DRBurn object has this property set to  
TRUE : "DRHasMediaReservation". When I use my custom UI, the DRBurn  
object hasn't got this property. Could this be the reason why it fails ?


Here is my code:



-(void)performBurn:(id)layout
{
DRBurnProgressPanel *bpp = [DRBurnProgressPanel progressPanel];
DRDevice *device=[[devicesPopup selectedItem] representedObject];

[device acquireMediaReservation];
if (![device acquireExclusiveAccess])
NSLog(@"AAAAARGGGGGGG !!!!! ******");
DRBurn *burn= [DRBurn burnForDevice:device];

NSMutableDictionary *props=[[[burn properties] mutableCopy]  
autorelease];
if ([boxSimulate state]==NSOnState)
{
[props setObject:[NSNumber numberWithBool:YES]  
forKey:DRBurnTestingKey];
}
if ([speedPopup indexOfSelectedItem])
{
//DRBurnRequestedSpeedKey -- DRDeviceBurnSpeedMax
[props setObject:[[speedPopup selectedItem] representedObject]  
forKey:DRBurnRequestedSpeedKey];
}
if ([boxErase state]==NSOnState && [boxErase isEnabled])
{
[props setObject:[NSNumber numberWithBool:YES]  
forKey:DRBurnOverwriteDiscKey];
}
[props setObject:[NSNumber numberWithBool:NO]  
forKey:DRBurnVerifyDiscKey];
[props setObject:[NSNumber numberWithBool:([boxLeaveOpen isEnabled]  
&& [boxLeaveOpen state]==NSOnState)] forKey:DRBurnAppendableKey];

[burn setProperties:props];
NSLog(@"BURN PROPS: \n%@", [props description]);

[bpp setVerboseProgressStatus:YES];
[[DRNotificationCenter currentRunLoopCenter] addObserver:self  
selector:@selector(burnProgress:)  
name:DRBurnStatusChangedNotification object:burn];
[bpp beginProgressSheetForBurn:burn layout:layout modalForWindow:
[delegate window]];
}


*** Burn properties with custom UI:
{DRBurnAppendableKey = 1; DRBurnVerifyDiscKey = 0;  }

*** With standard UI:
{
     DRBurnAppendableKey = 1;
     DRBurnCompletionActionKey = DRBurnCompletionActionEject;
     DRBurnOverwriteDiscKey = 1;
     DRBurnRequestedSpeedKey = 65535;
     DRBurnTestingKey = 0;
     DRBurnUserSelectedSpeedKey = 65535;
     DRBurnVerifyDiscKey = 0;
     DRHasMediaReservation = 1;
}
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Discrecording mailing list      (Discrecording@list...)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/discrecording/subscriber%40opensubscriber.com

This email sent to subscriber@open...

Bookmark with:

Delicious   Digg   reddit   Facebook   StumbleUpon

Related Messages

opensubscriber is not affiliated with the authors of this message nor responsible for its content.