Folder Splitter 0.9b10
This version fixes several issues including a possible StackOverflow.
Long Time No See :-)
Sorry for the lack of updates in the last year. QT Sync and Folder Splitter are projects which...
Merry Christmas and a Happy New Year !
Table of Contents
1. What is "QT Sync"?
What can you do with "QT Sync"?
2.1 Open a Movie
Choose "Open" from the file Menu (Apple-O) or drag & drop the movie file to the application's icon.
2.2 Normal Mode
The Movie opens in original size in a new window. The size can be changed via the "Size" menu.
- space bar - starts/pauses the movie.
- arrow keys (up/down) - adjust the volume.
- arrow keys (left/right) - go a frame forwards/backwards
- SHIFT + arrow keys (left/right) - play forwards/backwards
- ALT + arrow keys (left/right) - go to the start/end of the movie
- SHIFT + ALT + arrow keys (left/right) - fast forward/rewind ("shuttle"). In the Preferences window the speed is adjustable (from 2x to 9x normal speed).
Pressing SHIFT + ALT + arrow key a second time switches to 10x speed.
Use "File --> Info" to get more information about the movie.
The most important window for "syncing" is:
The Controller Window
To the right is the control for the offset display.
You can choose between:
- "msec" (milliseconds = 1/1000 second),
- "TimeScale unit" (the internal time unit of Quicktime).
Your choice has influence on all following inputs. Any existing offsets will be converted accordingly.
In the middle of the window you will find the "Track Selector".
In the upper row are buttons for "arming" the individual tracks. (In the screenshot above the first Audio track is "armed".)
(Note: A track has to be armed before you can shift/sync it.)
Among them is the offset display of the individual track. The displayed value always represents the track offset to the beginning of the entire movie!
In the screenshot above the first audio track has an offset of 2.5. (means: It begins 2.5 frames later than the rest of the movie.)
You can enter offset values directly into these display fields.
Note: Only POSITIVES VALUES are possible.
(see "FAQ: How do I set a negative offset?")
In the lowest row is the display of the length (Duration) of the individual track. They are also shown in either Frames, msec or TimeScale units.
Total and Relative:
"Total" shows the absolute length of a track. i.e.: Including an Offset.
"Relative" shows only the changes, which have been made. i.e.: An offset change does not cause change of the relative length. ("Relative" values are substantially more intuitive than "total")
On the left are two 2-arrow-switches.
The upper one works with the Offsets:
Click the "up"-arrow to increase the offset of the armed track(s). This track will then begin later.
Click the "down" arrow to decrease the offset. The track will begin earlier.
The lower one changes the duration (and therefore the playback speed):
Click the "up"-arrow to extend the length of the armed track(s). This track will then end later, because it is played slower.
Click the "down" arrow to shorten the length. The track will end earlier, because it is played faster.
The value, which will be added or subtracted (the "stepwidth") can be adjusted in a contextual menu. CTRL-click the arrows to see that contextual menu. The adjusted value applies to both switches.
2.3 The Full-Screen Mode
Choose "Size --> Full Screen Mode" (Apple-F) to watch the movie in full screen.
The controller window will get smaller and change to a darker color.
Use Apple-G to hide it completely.
When the controller window is hidden the following shortcuts are available:
0 (zero): rewinds the movie by 5 seconds. (This value can be changed in the preferences.)
SHIFT + 0 : rewinds the movie by 30 seconds.
ALT + 0 : forwards the movie by 5 seconds.
SHIFT + ALT + 0 : forwards the movie by 30 seconds.
Note: Depending on your Keyboard settings, SHIFT + 0 and SHIFT + ALT + 0 will only work with the "0" key of the Numeric Block of your keyboard.
TAB: the next track will be "armed". (The name of the track will be shown in the upper-right corner of the screen for 2 seconds.)
1: lowers the offset of the "armed" track (= click on the down-arrow in the controller window)
2: shows the offsets of all tracks.
3: increases the offset of the "armed" track (same as click on the up-arrow upward in the controller window)
4: Choose between Frames, msec or TimeScale units (same as the popup-menu in the Controller Window.)
5: changes the "stepwidth" (= same as contextual menu of the arrows. The new stepwidth is shown for 2 seconds.)
7: shortens the length of the armed track.
8: shows the length of all tracks.
9: extends the length of the armed track.
T: Toggle between "Show elapsed movie time" / "Show movie time left" / "off". The Time information will be shown in the upper right corner.
In the help menu you can find a summary of all these shortcuts.
The "Size Menu" shortcuts work also in Full Screen Mode.
For leaving the Full screen mode press the ESCAPE key.
2.4 Changing the Ratio
Sometimes it is necessary to adjust the aspect ratio (= width divided by height) of the movie. Particularly dv and some MPEG2-Formate work with distorted pictures. In order to change aspect ratio, select the function "Change Ratio" from the "View" menu.
"Current Size" indicates the current height, width and the current aspect ratio (Ratio) of the movie.
In the line "New Size" new values for width and height can be entered. The new aspect ratio is shown immediately.
The value for width or height can be "locked" (as shown in the screenshot above). Now it is possible to enter a new ratio or to choose common ratio values from the popup menu.
The Button "Original Size" restores the values, which the movie had, when it was opened.
The changes of the size and aspect ratio can also be saved.
2.5 Cropping the Movie
To crop a movie, use Edit --> Crop Movie....
In the dialog window you can enter pixel values or use one of the presets.
If you select the button "Show Preview", you will get a preview of the result in a seperate window.
Movies with text tracks can not be cropped.
Edit --> Uncrop Movie undoes any previously applied croppings.
As always the result can be saved and as always no media data (=the original file) is actually changed.
2.6 Importing / Removing Tracks
To import a track from another movie file (e.g. another soundtrack or a QuickTime text track) to the currently opened movie, choose "Edit --> Import Track..."
A pop-up menu will ask you for the file which contains the track you want to import. This can be a movie file (.mov, .avi, .mpg), but also a sound file (.mp3, .aif, ...) Next choose the track and click "Import".
Note: Importing of video tracks is currently disabled. (QT Sync doesn't support movies with more than one video track yet.)
To remove a track from the currently opened movie, choose "Edit --> Remove Track..." and choose the track you want to remove in the upcoming dialog window.
Only the reference to the track is removed. NO DATA will be deleted.
Note: There is no UNDO for importing or removing a track. So save your work frequently.
2.7 Changing the Movie Playback Speed
Choose "Edit --> Change Movie Playback Speed..." to change the playback speed of the movie.
The upcoming window shows the total number of frames, the actual speed and the resulting duration. A different playback speed can be selected in a pop-up menu or by entering new values.
NOTE: This function is not precise enough for professional use.
2.8 TimeCode / Feet+Frames / Static Text Inserter
QT Sync can insert a TimeCode Counter, a Feet+Frame Counter, a Frame Counter and/or a Static Text into the movie.
Use the function "Tools --> Time Code Inserter" to create such a counter.
The first pop-up menu decides about the kind of counter. Choose between:
- TimeCode (23,976fps, 24fps, 25fps, 29.97fps Drop and Non-Drop, 30 fps Drop and Non-Drop)
- Feet+Frames (35mm/4 perf, 16mm)
- Static Text (useful for Version numbers, Copyright notices, etc.)
- Frame Numbers
"Insert at current Movie Position:"
The chosen TimeCode / Feet+Frame values will appear at the current position of the movie.
The frame rate of the counter can also be decided here. (It is recommended to use the movie's frame rate.)
"Insert at Start of Movie:" The given TimeCode will appear at the start of the movie (not the actual movie position.)
The "Style" options decide about the look of the counter. Choose the font, size, color and style.
Use the option "Transparent Box" to make the counter's background box transparent.
The next options determine the "Position" of the counter. Enter values for the horizontal and vertical position or choose from the presets.
The button "Show Preview" opens a preview of the counter in a seperate window.
Note: The TimeCode / Feet+Frames / Static Text track will be created in a seperate file, which has the suffix _TC, _FF or _ST and is located in the folder of the original movie file. This file has to be present (along with the reference movie (_QT) and the original movie file) to playback the movie.
This does not apply, when the movie is saved as a "self-contained" movie or is exported to another movie file.
2.9 Combining Movies
To combine two or more movies choose "Tools --> Combine Movies..."
The Combine Movies Assistant will guide you through the process of combining up to ten movies. You can save the new movie as a reference movie or a self-contained movie.
This function is useful if you want to combine several parts of a movie. (e.g. the movie has been seperated into several files) You can only combine movies with the same movie and track characteristics. (If the movie you opened is a movie with a FotoJPEG-VideoTrack and an IMA-Audiotrack, you can only append a movie, which has also a FotoJPEG-VideoTrack and an IMA-AudioTrack.)
Combining of movies with different characteristics is theoretically possible, but results mostly in movie files with playback problems.
To save a QuickTime "Reference Movie" choose "File --> Save As..." (Apple-S)
The file size of this reference movie will be between 100 KB and a few MB (depending on the length of the movie), because only the controller data (which is now in-sync) will be saved. The original movie file remains unchanged, but is needed for playback. (The Reference Movie is "refering" to the original file.)
The menu option "File --> Save As Self Contained Movie" (Apple-Shift-S) creates a QuickTime "Self-Contained" movie. It contains both the new controller data and the original video and sound data and is just as large as the original movie file. The saving can take several minutes (depending on the length of the movie).
Note: Video and Audio will not be re-encoded.
The option "File --> Export" (Apple-E) can be used to export the movie into another format. Video and Audio are re-encoded. All changes are rendered into the new file. If a TimeCode has been inserted, it will be "burned" into the picture.
QT Sync supports the Export to all QuickTime-compatible Formats (even third-party codecs, e.g. DivX, 3ivx, ...)
Depending on the size of the movie, this may take up to several hours.
Use "QT Sync --> Preferences" (Apple-,) to open the Preferences page.
Hover the mouse over the text to get additional help (Tooltips).
- "New Movie opens in: Normal Mode / Full Screen Mode / Full Screen with hidden Controller Window"
When a new movie is opened, QT Sync will automatically use the chosen Mode.
if selected, the new movie will start playing automatically.
- "Auto-Arm the first Track"
If selected, the first track of the movie will be armed automtically. (This is identical to clicking the Track Name in the Controller Window or using TAB in Full Screen Mode)
Does only work for movies with two or more tracks.
- "When saving a movie"
To avoid confusion between the different possibilities to save a movie, it is recommended to use unique suffixes for every possibility.
For example, QT Sync will add a "_QT" to every reference movie. ("Nice Film.mov" will be saved as "Nice Film_QT.mov")
You can create your own suffixes (or prefixes) or switch it off.
- "Save Dialogs show"
Choose, what directory is displayed, when a Save Dialog is opened.
"Last Directory" shows the directory you last saved to (default Apple/Finder behaviour).
"Directory of the opened Movie" shows the directory of the currently opened movie (This was the default QT Sync behavior until v0.2.7)
- "Check for Updates automatically"
If checked, QT Sync will connect to the Internet (www.qtsync.com) and search for a new version automatically.
- "Default Stepwidth" / "Set this stepwidth..."
This stepwidth will be set automatically every time a new movie is opened / at startup only.
- "Shuttle Speed"
This setting determines the speed of the shuttling. Higher number means faster shuttling.
- "Shortcut 0"
Determines how many seconds the movie will jump back, when the "0" is pressed. (in Full Screen Mode with hidden Controller Mode only)
- "Shortcuts 1,3,7 and 9"
If selected, pressing the keys 1,3,7 or 9 while in Full Screen Mode with hidden Controller Window will show a small window in the upper right corner of the screen. This window shows the new offset / duration values.
- "Offset/Duration Display Opaqueness"
The opaqueness of said window can be changed here.
No options available (yet.)
Press RESET to set all preferences values to their default value. (Same as deleting the QT Sync Preferences file in your Preferences folder.)
3. Some Theory and Background Information
3.1 Structure of a Movie File
Basically there are three types: Audio files, video files and containers. An audio file contains sound; a video file contains moving pictures. In order to bring both together, you need some kind of "container". This container makes sure that sound and video are played in sync.
AVI and MOV are the most common container formats. But the kind of container says nothing about its contents. Obviously a movie file must have at least one video and one audio track. Other possibilities are Text tracks (for subtitles), Chapter tracks, Graphics, HTML elements, ...
The .mpeg and .vob Format are exceptions. These are not containers (although they contain more than one track), but so-called "Streams". The data cannot be as easily changed or exchanged as in containers, because the tracks are "muxed" (Little portions of each data track are sent sequentially). .mpg's and .vob's are therefore suitable for media with long access times like VideoCDs and DVDs.
3.2 Audio and Video Data
The audio and video tracks inside the container can use a lot of different formats. Sound Files usually use .MP3, .AC3, .WAV, .AIF, .ima, .μ-law, ...
The variety of video formats is even bigger. Newer formats are DivX, 3ivX and Xvid (all based on MPEG-4). Other common formats are Sorenson, Cinepak and MPEG2 (.m2v) and its older brother MPEG1 (.mpeg). (This list is far from being complete.)
Whether or not all of these formats can be played, depends not on the playback program, but on the presence of the appropriate codecs. The QuickTime technology comes with a lot of built-in codecs, but there are several third-party codecs which have to be installed seperately.
3.3 Synchronizing the Playback
Video and Audio have different time units. Video is measured in frames per second and (digital) audio is defined by its sample rate. Usual values are, for example 29.97 fps for video and 48000 Hertz for audio tracks. QuickTime uses its own scale (usually 600 units/sec) to synchronize the different time scales and ensure a synchronous playback.
All other container formats work similarly.
Question: "I'm using Airfoil to send the audio to speakers attached to my Airport Express. How can I compensate for the audio delay ?"
Answer: "The audio delay of Airfoil is about 2,4 seconds (depending on network connection speed, etc.). With QT Sync you can compensate for this delay very easily:
Set the Offset of the VIDEO-Track to 2400 msec. If the movie is still out of sync you can change the offset (as usual) while watching the movie in Full Screen Mode."
Question: "Why can't I sync .mpg's ?"
Answer: ".mov's and .avi's contain separate tracks for video and audio.
But .mpg's have only one track, which carries both the video and audio information. It is impossible for QT Sync to access these single data streams inside an .mpg movie.
But it is possible to split up the .mpg (or every other muxed format) into seperate data files. You can do this with e.g. the application MPEG Streamclip (Link can be found on the QT Sync Resources Page). The seperated data files can now be imported and synced."
Question: "I'd like to work with MPEG 2 Video files (.m2v). Is this possible ?"
Answer: "QT Sync uses QuickTime to do all the playback. If the QuickTime Player can play it, then QT Sync can play it and vice versa.
If you want to have MPEG 2 capabilities, you have to install the MPEG 2 Playback Component for QuickTime (available in the Apple Store). Unfortunately this plug-in can only playback .m2v files - no encoding to .m2v is possible."
Question: "I've opened an .avi which definitely has two tracks and QT Sync only shows me one track in the Controller Window."
Answer: "Please check the movie file in QuickTime Player. If QuickTime Player can play both tracks properly, please send me a bug report.
But it is more likely, that you don't have the proper codec installed. (QT Sync doesn't show the track, if it can't find a codec to playback the track.)
Please visit the QT Sync Resources Page to download the most common third-party codecs."
Question: "What is an offset?"
Answer: "An offset always describes a disalignment between two tracks. If one says: "The offset between video and sound is 3 Frames", it means: "One of these tracks is 3 frames earlier than the other one."
The offsets shown in QT Sync always describe the disalignment between the respective track and the beginning of the entire movie (= all other tracks)."
Question: "Why can't I type in negative offsets?"
Answer: "A negative offset would mean: The beginning of the track is BEFORE the beginning of the movie. This is not possible (at least with Quicktime)."
Question: "How do I get a negative offset?"
Answer: "It's simple. An offset is always relative. If I want "Track 1" to play earlier, then one could also say, I want "Track 2" to play later.
(Remember: The displayed offset values always refers to the respective track in relation to the actual beginning of movie.)
We have 3 tracks: Video, Audio1, Audio2
I want the video to play 3 frames earlier than the audio tracks.
I could say:
Video -3 / Audio1 0 / Audio2 0or
Video 0 / Audio1 +3 / Audio2 +3
In both cases the video plays 3 frames earlier than the audio.
QT Sync does this automatically. If you click on the arrows and the respective offset would become negative, then instead all OTHER tracks will be shifted in the positive direction. However this does not work when typing in the offset manually. Therefore only positive values are permitted then."
Question: "Hmm... I am clicking the up-arrow and the offset value should be increasing, right? But the values are all getting smaller."
Answer: "QT Sync has another built-in adjustment: At least one track (it doesn't matter which one) must always be at "zero". (Otherwise there would be a gap at the beginning of the movie.)
QT Sync therefore automatically puts all tracks back to zero. Of course WITHOUT changing the relative position of the tracks among themselves.
Another example: Again 3 tracks: Video, Audio1, Audio2
The current offset is:
Video 10 sek / Audio1 12 sek / Audio2 13 sek(The first 10 seconds of the movie are now completely empty, because all tracks start later.)
QT Sync changes this to:
Video 0 sek / Audio1 2 sek / Audio2 3 sekThe relative position of the tracks among themselves remains the same, but the movie starts now immediately.
By this automatic adjustment it is possible that the offset values become smaller, although the offset of a track (here in the example the offset of the video track) is increased."
This program is "Freeware".
It may be copied at will, as long as all files contained remain unchanged and complete.
In the case of publication on CD-Rom, etc. the author kindly asks for a notice.
All other rights of the author reserved.
Because the program and/or documents are licensed free of charge, there is no warranty for the programs, to the extent permitted by applicable law. Except when otherwise stated in writing the copyright holders and/or other parties provide the program "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. Should the program prove defective, you assume the cost of all necessary servicing, repair or correction. In no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who may modify and/or redistribute the program or document as permitted above, be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program or document (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if such holder or other party has been advised of the possibility of such damages.
QuickTime, Mac and Mac OS are trademarks of Apple Computer, Inc.
QT Sync uses some functions from QTPlugin - written by Dr. Riccardo Favilla
QT Sync uses some functions from MBS PlugIn - written by Christian Schmitz
QT Sync 0.3.1 - last changed: 3. Jun 2007