On Jul 21, 2005, at 12:21 PM, Elliotte Harold wrote:
Here's what I've got so far:
1. Open a movie file
2. Edit it: e.g. by cutting out a piece
3. Try to save it into the original file using Movie.convertToFile.
I then get this exception.
quicktime.std.StdQTException[QTJava:6.1.2g],-47=fBsyErr,QT.vers:7018000
at quicktime.std.StdQTException.checkError(StdQTException.java:38)
at quicktime.std.movies.Movie.convertToFile(Movie.java:2250)
at quicktime.std.movies.Movie.convertToFile(Movie.java:2203)
at com.elharo.quicktime.SaveAsAction.saveMovieIntoFile(Unknown Source)
at com.elharo.quicktime.SaveAction.actionPerformed(SaveAction.java:47)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:
1819)
at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Abstract
Button.java:1872)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.j
ava:420)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:321)
at apple.laf.ScreenMenuItem.actionPerformed(ScreenMenuItem.java:104)
at java.awt.MenuItem.processActionEvent(MenuItem.java:589)
at java.awt.MenuItem.processEvent(MenuItem.java:548)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:285)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:273)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:458)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThre
ad.java:234)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread
.java:184)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:178)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:170)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
A little googling shows the problem is an "attempt to delete an open
file". I can believe that QuickTime doesn't load everything into
memory and relies on disk backing. If so, how should I implement a
regular save function for a changed file? i.e. not Save As into a
different file but simply updating an existing file? Is there a set of
flags I need to pass to convertToFile or a different method I should
call?