Skip to Content
QuickTime for Java: A Developer's Notebook
book

QuickTime for Java: A Developer's Notebook

by Chris Adamson
January 2005
Intermediate to advanced
256 pages
6h 34m
English
O'Reilly Media, Inc.
Content preview from QuickTime for Java: A Developer's Notebook

Opening and Closing the QuickTime Session

All QTJ applications are responsible for managing the QuickTime “session.” The call to QTSession.open( ) gives QuickTime an opportunity to initialize itself, and it must be made before any other QTJ call, or you’ll get an exception. Similarly, you must call QTSession.close( ) when you’re done with QuickTime to give it a chance to clean up.

In general, this means you might want to call QTSession.open( ) as early as possible and QTSession.close( ) as late as possible. The former is easy enough to do: just put it in your application’s entry point or even in a static initializer so that it precedes main( ). On the other hand, ensuring that you call QTSession.close( ) gracefully is trickier, because your user could quit your application with a menu item you provide, a Ctrl-C, a Cmd-Q (on Mac), or (heaven forbid) a kill -9 your-pid from the command line. Ideally, you’d like to have a fighting chance of properly closing QuickTime in as many cases as possible.

How do I do that?

One way to close QuickTime late is to put QTSession.close() in a Java shutdown hook, which will get called as the JVM goes away. There are no guarantees, but it’s better than nothing.

Note

You can also run this example with the provided ant run-ch01-qtversioncheck task.

You can use the class in Example 1-4 as a general-purpose session handler for QTJ. It is presented here so that none of the other examples in the book will need to explicitly handle opening or closing the QTSession ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Open Source Software Superstream Series: Java

Open Source Software Superstream Series: Java

Kelsey Hightower, Ixchel Ruiz, Stuart Marks, Nicolai Parlog, Holly Cummins, Trisha Gee, Venkat Subramaniam, Marc R. Hoffmann, Brian Goetz
Java EE 8 Cookbook

Java EE 8 Cookbook

Edson Yanaga, Elder Moraes
What's New in Java 7

What's New in Java 7

Madhusudhan Konda

Publisher Resources

ISBN: 0596008228Catalog PageErrata