Technotes


QuickTime for Windows Q&As



Technote QT 515May 1993



Revised by: Developer Support Center September 1993
Written by: Developer Support Center May 1993

This Technical Note contains a collection of archived Q&As relating to a specific topic--questions sent the Developer Support Center (DSC) along with answers from the DSC engineers. Current Q&A's can be found on the Macintosh Technical Q&A's web site.


QuickTime for Windows requires controller to play movie

Date Written: 11/25/92

Last reviewed: 7/9/93

Is it possible to play QuickTime for Windows movies without any movie controllers? We play movies with a hidden movie controller. Macintosh programmers have informed me that the Macintosh QuickTime doesn't require movie controllers.

___

The Windows implementation of QuickTime requires that a movie controller be associated with a movie in order to control it, even in the case when the controller is invisible. In the same line, the movie and its controller need to have the same parent window. This may change in future releases but this is the way QuickTime for Windows works now.

Creating QuickTime movies to play on a PC

Date Written: 2/25/93

Last reviewed: 4/26/93

I'm trying to create a QuickTime movie on my Macintosh and play it on a PC using the standard QuickTime Play that came with QuickTime for Windows. I get the message "Movie X contains a data reference. Data references aren't supported by the current version of QuickTime for Windows," even after flattening the file and removing file dependencies. What do I have to do to eliminate these data references and build movies that I can play on the PC?

___

This problem occurs when Macintosh QuickTime 1.0 or its utilities are used to create the movies. The solution is to edit (or create) the QTW.INI file to include the following lines:

[Override]

DREF = no

This should force QuickTime for Windows to look in the file for the data. A better solution is to update your Macintosh software to the latest QuickTime extension and related utilities.

Edit QTW.INI file for special configurations

Date Written: 12/14/92

Last reviewed: 7/2/93

The demo programs on the final QuickTime for Windows CD won't run without locking up, because the QTInitialize function doesn't return. Any ideas?

___

The final QuickTime for Windows exhibits the behavior you describe when the display board is configured in a way that QuickTime for Windows doesn't recognize. XGA and SuperVGA are modes that could cause this problem. To check whether this is the problem, edit the QTW.INI file to include the following:

[Video]
Optimize = Driver

The default is Hardware. This could be causing the problem you describe.

Conditions for playing Macintosh movies on Windows

Date Written: 11/6/92

Last reviewed: 4/26/93

Is there anything different between Windows movies and Macintosh movies? How can we get Macintosh movies to play on Windows?

___

There's no difference between Macintosh and Windows movies. The conditions that need to be met to get Macintosh movies to play on Windows are:

* The movie must be self-contained.

* The movie must be in a single-fork file.

No limitations apply other than these. We've successfully converted movies using Movie Converter in the QuickTime Developer Toolkit. One other thing to remember is that QuickTime for Windows doesn't support text track movies. See the QuickTime for Windows Developer Notes for details about how to convert movies from Macintosh to Windows.

QuickTime for Windows 1.0 error code 0x8002

Date Written: 12/14/92

Last Reviewed: 6/14/93

What does an error return code of 0x8002 signify? I didn't find it documented. We occasionally get this return value from MCControllerInfo.

___

Error code 0x8002 means a badComponentSelector. As far as QuickTime for Windows is concerned, the controller you're passing to MCGetControllerInfo isn't good. You may be passing nil or a controller handle that has already been disposed of.

Trapping mouse clicks in QuickTime for Windows

Date Written: 11/12/92

Last Reviewed: 3/1/93

I realize that the function MCIsPlayerMessage traps all Window messages before the big switch statement. How do I trap the user's double click or single click in the movie window? How can I tell the coordinate of the single mouse click in the movie window in my application? How can I disable the double click effect (play movie)?

___

The interface doesn't provide an easy solution to your problem. There are different ways to do this depending on what you're trying to accomplish. The first one involves setting a filter proc for the controller to monitor changes of state in the movie. In this case you'd still need to make sure the mouse clicked on the movie and not in the play button which causes the same action.

The second option gives you more control but goes against all laws of coding decency since it implies splitting the processing of the message in such a way that you get the opportunity first to do what you want with mouse clicks as so on deferring to second place the controller and its own processing.

QuickTime for Windows system requirements

Date Written: 11/12/92

Last Reviewed: 1/13/93

What is QuickTime for Windows and what hardware do you need to run it?

___

QuickTime for Windows makes QuickTime a cross-platform technology that you can use in both the Macintosh and the Microsoft Windows programs that you're developing. With it, you can create multimedia programs on the Macintosh and be able to add the playback of QuickTime movies to any PC application running Microsoft Windows 3.1.

The minimum hardware configuration required for QuickTime for Windows is the following:

* A personal computer with an 80386SX or greater CPU

* A CPU speed of 20 MHz or higher

* 4 MB of conventional and extended memory

* A hard disk with at least 4 MB free for the basic QuickTime for Windows software

* A graphics adapter and mouse (or other pointing device) supported by Microsoft Windows

Optional hardware:

* A CD-ROM drive supported by Microsoft Windows (if installing from a CD)

* A sound card supported by Microsoft Windows

* Additional free disk space if you want to keep movies and pictures on your hard disk

The software requirement for running QuickTime for Windows is Microsoft Windows 3.1. To write QuickTime for Windows programs, you must have (in addition to the QuickTime for Windows Developer's Kit) a development package such as Borland C++ 3.1 or Microsoft C/C++ 7.0.

The sample QuickTime for Windows executables may be played under Windows 3.1 immediately following QuickTime for Windows installation and configuration, without C or C++ being present.

QTW requires movie and controller to be in same window

Date Written: 11/3/92

Last Reviewed: 3/1/93

The current implementation of QuickTime for Windows prevents having a movie in one window and a controller in another. Both pieces are expected to share the same parent window. One way to get around this is to do the following:

1. Create a window in which you set up a movie and an invisible controller.

2. Create another window in which you set up the same movie attached to a visible controller, with the controller bounds set to be exactly equal to the controller rect so that the movie doesn't show at all.

3. Set an action filter proc for the second controller so that you know which actions take place because of user actions. See MCSetActionFilter.

4. Propagate the necessary actions to the first (invisible) filter to make the visible movie react to the controller action. See MCDoAction.

This requires a lot of redundancy, but it's a way to get the effect you want.




Technotes
Previous Technote | Contents | Next Technote