Virtual VCR Change Log
- Added Help Context to the Capture Stats Dialog.
- Added 1 second delay before starting preview or capture when
the app first starts to help people with slow tuner cards.
- If the Video AMP is set to auto for Brightness, Contrast,
Hue and Saturation do not alter them.
- Save stats - free space and video compression number format
- Use the GetModuleFileName() to get the current exe name, this
is used to get the version number.
- Help Context in the Settings Dialog is now available, thanks
goes to L. D. James for this.
- Save Capture Stats, this is under the file menu, it will save
the capture stats when the capture is stopped to a text file
with the same name as the captured AVI file and in the same
directory but with .txt appended to the file name.
- Can now scan for TV channels and set custom mapping and station
names. Also added the Page UP and Page DOWN keyboard shortcuts
to change channel up and down.
- Changed the way the help context works, it now shows a popup
that looks a little different than the standard context help
popup. It also allows new line (<-) characters to be used.
- Added support for MEDIASUBTYPE_IYUV and MEDIASUBTYPE_IF09
video pixel formats.
- Load All Tuner Settings when loading from a profile file,
the only thing that is not loaded not is the Window position
- Fix the Item ID for the Help Context file to work correctly,
removed duplicate entries.
- Fixed a crash in settings dialog if you do not have an audio
card or video capture card available in your system.
- Fixed a crash with Audio Level Set-up if you did not have
an audio card installed or available in your system.
- Keyboard Shortcut to open Settings Dialog, pressing 'C' will
- Keyboard shortcut to hide the toolbar and status bar 'H' will
toggle the toolbar and status bar on and off.
- Add "Always on Top" option, use keyboard shortcut
'T' or under the View settings tab.
- Turn off screen saver while capturing
- Loading a profile does not stop preview until you select the
file and click ok.
- Altered the way the preview graph is build when using the
colour histogram, revert back to old way of doing it. Only use
a dedicated Render for the Histogram output.
- Always resize the app window even if not using the Smart Tee
- Added a version function to all the filters, the filer version
info is now available on the ABOUT tab of the Settings Dialog.
- Added VideoProcAmp_Sharpness and VideoProcAmp_Gamma to the
set and get Video Amp Settings function.
- Revamp of the Colour Histogram Filter, it now does YUY2 and
RGB, it only analyses the luminance channel of the YUV format
so in YUY2 format it is very fast.
- Changed the way Audio scope and Colour Histogram filters are
used, you can now select to have these filters included in the
preview graph in the VIEW settings TAB. They will be displayed
in preview mode only.
- Added a toolbar and removed the menu.
- Added a status bar text item to show the current capture resolution
and colour format, this resolution comes from the smart tee
so it takes into account any cropping etc that had been done
to the video stream in the pre filtering process.
- Added a message to the return if an instance is already running
and you start up another instance of Virtual VCR.
- When a Capture Graph build or Preview Graph build fails now
the Graph is completely destroyed and rebuilt from the ground
up, this should help when you get errors adding compression
codecs etc that fail and stop the File Writer from being added.
- Audio Scope was causing lock-ups when a capture was started
and stopped with "Show audio scope when previewing"
- Window position was incrementing causing the window to be
created 8 pixels further down the screen each time it was loaded.
- A few spelling fixes.
- The current Video crop filter can only do planner formats,
this means YUY2 RGB etc, formats like YV12 YUV9 etc can not
be processed at the moment with this filter.
- The colour histogram filter only does RGB24 or YUY2 colour
formats at the moment.
- Stop building the preview graph multiple time before stating
it, also do not start the preview graph before we have all the
filter in place and the options set.
- Do not stop the preview before showing the settings dialog,
but stop the preview and then restart it again when you close
the settings dialog.
- Add more logging, use "virtualvcr.exe -logging"
to turn logging on.
- Redesign of the Audio Resample filter from the ground up,
should be much more accurate and give better quality output
- Add Full screen mode, the "F" key will toggle the
full screen mode on and off.
- Revamp the way the audio and video format is set, it no longer
relies on a persistent IAMStreamsConfig interface now, it queries
the graph each time it needs it.
- Alter the way Key input is done, now get the key value from
the actual message data instead of using GetKeyState().
- Don't switch focus to the stats window when dragging the
- Make Channel spin control change channels in real time on
the Tuner Tab of the setting dialog.
- Added an Audio Input selection and volume/pan control dialog
for setting up the audio input and adjusting the input volume
and balance. The new dialog is available under "Input Settings"
button on the Audio TAB of the settings dialog.
- The audio mixer input settings are now stored in the profile
file and default settings when saved and reloaded ,these include
the volume and what input was selected.
- Added checking so you can not select a master stream for the
AVI when using the resample audio option.
- Do not act on messages from the FilterGraph to the application
when not capturing.
- Add some logging capabilities, start with -logging to turn
on logging of actions to actionLog.txt file.
- Rename a lot of the classes to conform with some sort of standard.
- Only allow one instance of the application to run at any one
- Added an actual % resample value to the capture stats, this
value show what the audio has actually been resampled to.
- Fixed a bug when using audio resample, if you captured stopped
and then captured again the Audio resample filter would not
be activated. Thus the second capture would not have audio resampling
- Added a nuke all unconnected filters function.
- If there are no video amp settings in the INI file do not
try to set them to any default values just leave them alone.
- Revamp the AV Sync options, they are easier to understand
now, also added a resample audio to option for when you know
how much you need to alter the audio stream to match the video
- Audio bug where capturing without re sampling would fail with
a "Could not render audio stream" error.
- The app now has a windows installer, it uses the free version
- Fixed a bug when capturing compressed audio without re-sampling
the audio, the audio would not be compressed.
- Added a lot of code to test for error conditions, this will
help people with cards and drivers that do not have the full
WDM tuner interface etc.
- Added Audio compression capability, this is still very new
and it may not work in all situation so give it a try and see
how you go, I tested it with the MPEG Layer-3 codec (Not the
built in Microsoft one).
- Added output file name override command line option.
e.g. -output "<file name>"
- Added store functions for the VideoAmp, this saves and reloads
the Video Amp colour settings. (Brightness, Hue, Contrast, Saturation
and Colour Enabled)
- Fixed a bug with saving the tuner settings in the profile
- Added -runfor "time in sec" command line option,
this will set the time stop condition and enable the use time
limit option. It will override any settings in the configuration
- Added Mono to the Audio Resample Filter, the only limitation
on this filter now is the audio has to be 16 Bit.
- Changed the way the input select works, now sets this last
in the list of things to set.
- Added an Audio Scope to help with setting up the audio levels.
- Added an option to allow Audio delay, you can use + or - values
to delay for advance the audio stream.
- Changed Layout of the Settings and Options tabs.
- Audio Block align setting was net set correctly when audio
settings were changed, this would cause anything other then
16 Bit stereo to not play back correctly.
- TV Tuner TAB added to the Setup Dialog.
- TV Tuner Mode is now stored (PAL-B, NTSC etc).
- The FlowMeter now uses Sample time stamps to calculate the
rate of video and audio streams for AV sync, there is a bug
with the precision counters with some motherboards and this
was causing problem with the Resample option. Thanks to Moitah
for bringing this to my attention. This new approach should
- Stats dialog is now more compact.
- Log AV diff settings to "AVdiff.txt" option added,
this helps with AV sync bug finding.
- Device Selection, if you had more video devices then audio
devices the app would crash.
- If no TV audio device was found the TV Audio button on the
Audio TAB would crash the app.
- Use Smart Tee for Preview option
- Implemented a new User interface system, this one is easier
to maintain than the menu driven one and easier to use. The
main difference is all the settings are now in a properties
sheet presented in a TAB selection dialog.
- Added "Add Compatibility Index" as an option under
the File Tab.
- All installed Video filters with at least one input pin and
at least one output pin are scanned and added to the list of
available filters for pre filtering, if you have the CPU power
why not use it :-)
- Lots of code clean up, removed a lot of old UI code that is
no longer used, removed a lot of legacy stuff relating to device
adding removing, I figure that if you add a new device you can
close the app and open it again to scan for new devices.
- Fixed a few small bugs with "Stats Docking" now
should work on XP.
- Added a new dropped frame interface to the FlowMeter filter,
this can now monitor the media samples that are passing through
the video stream and detect late or missing frames. For the
time being there are 2 dropped frame counters on the Capture
Stats page, Dropped is the normal counter supplied by the capture
driver and Dropped2 is the new dropped frame counter implemented
in the FlowMeter filter.
- In addition to the new dropped frame interface you can now
get a list of the dropped frames from a capture by selecting
the "Show Dropped Frames" from the Capture menu, this
will display what frames were dropped in the last capture.
- The FlowMeter filter now takes into account dropped frames
when working out the Frame rate of a video stream, this is important,
if you have lots of dropped frames it would effect your frame
rate and thus mess up the rate control and audio resample system.
This new approach should make the AV sync option work better
when you have dropped frames.
- Added the SyncUsingStreamOffset setting under the capture
menu, this should help people with large latency audio cards
or video capture cards. There is a heap of docs on the Microsoft
site about this and live streams:
- Fixed a problem when moving the main window, its z order would
be set to BOTTOM instead of TOP.
- Added a disk space free gauge on the status dialog.
- Revamped the AV sync process, the feedback loop was prone
to errors so it now uses a set ratio based on the video to audio
- Added a Quit on stop option under the stop conditions dialog,
this will close the app when the time stop condition is reached.
Thanks to Daniel Ellison for the code changes and development
- Fixed a problem with returning focus to the main window, it
will now only do it when the stats window is active.
- Only show the main window after the all devices have been
- Dock Stats locks the position of the Capture Stats window
relative to the main window, when you move the main window the
stats window moves as well.
- Focus is now returned back to the main window after the stats
dialog is moved.
- -profile "<location><filename>" can
now be used on the command line and in a timed
capture using Task Manager, this will load the profile
settings in the file specified.
i.e VirtualVCR.exe -profile "c:\virtualvcr\capture01.vcr"
To create the profile file use the "Save Profile"
option under the File menu.
- Fixed a few little bug with the profile files.
- Added a system to help sync audio and video while capturing.
This allows you to resample the audio to match the Video stream.
This is still experimental but give it a try and see how it
goes. If it fixes your capture sync problems let me know. For
more information CLICK
- Added a show capture stats on stop settings, this will pop
up the capture stats dialog when the capture stops. This allows
you to do a timed capture and then force the stats to be shown
when the capture ends.
- At the moment only my filters will load, it turns out that
there are a lot of directshow filters out there that do stupid
thinks when loaded, Virtual VCR would try to load all the installed
DirectShow filters and search for valid filters to use. It now
just loads my filters, I hope to have this fixed so you can
add external filters to the load list in the Base INI file.
- Bug Fix: The filter list is now reset when a new profile is
loaded, this fixes a problem that when you loaded a profile
with a filter already loaded it would double load the filter
and cause errors.
- Audio settings are now stored in the profile and stored as
default when saved.
- The correct version information is now shown in the about
box, including build number.
- Improved turning off the Preview after you start a capture,
this now just stops data flowing through the preview pin of
the Smart Tee. Once you turn Preview off you can not turn it
back on again.
- Improved channel changing, you can now select channel 0 to
9999 using the Keypad followed by <enter>
- Default Device selection and storing has been revamped, this
will now not re-init the graph when the an already selected
source device is selected again.
- DirectShow transform filter search for Pre filters has been
revamped, it will not search all filters installed and only
include filters with one input pin and one output pin. If you
have a lot of DirectShow filters installed this may take 3 to
7 seconds depending on your PC.
- Want Preview and the capture file settings now saved and loaded
from the profile files.
- Removed Page UP/Down keys from channel changing system, now
use Keypad to select the channel you want.
10 <enter> - Will select channel 10
3 <enter> - Will select channel 3
- Add Key command to show Capture Stats Dialog key [S] will
toggle the stats.
- Switch focus back to the main window when you show the Capture
- Add key command to start preview key [P] will toggle the preview.
- Store Tuner country and input type details in the session
information INI file.
- Add capture profile saving, you can now save your current
settings as the default settings or save them to a .VCR file
so you can load them later. The app no longer saves your settings
on close, you need to select "Store Default" from
the file menu to store your current settings as the default.
- Added loader screen.
- App title now reflects file name if you have date/time stamp
- Streamline the capture stats window, made it smaller.
- Fixed some spelling and dialog box titles.
- Allow stop condition to be changed while capturing.
- You can now turn preview off and back on again while capturing,
but only if preview was originally on when you started the capture.
- Added channel changing to the app, "Page Down" (change
down) "Page Up" (change up), this will only work if
you have a Tuner filter installed for your capture card, some
capture cards do not have TV tuners built in.
- Can use a command line option when starting to start on a
particular channel, use -channel "Number"
i.e. virtualvcr.exe -channel "10"
This can be used with -capture to start a capture on a particular
i.e. virtualvcr.exe -capture -channel "10"
- The stop time condition is now an H:M:S entry field, this
makes it easier to enter a valid stop time condition.
- Disable Pre Filters Set-up when capturing.
- Do a window resize when preview starts and when capture starts.
- Add a date/time stamp option when settings the capture file
name, this option inserts a date/time stamp into the file name
when a capture starts, this allows you to capture and not overwrite
the previous capture file.
- You can now use frame rates down to the .001 resolution.
- Colour Format can now be set in the Custom Video Settings.
- Fixed a problem with the VideoCrop filter when capturing uncompressed
- Added a video crop filter, this allows you to crop the edges
from the captured video before saving it.
- Now saves the filter list, if the filter is one of mine i.e.
the Video Crop Filter, the internal state is saved as well.
This way the filter will have the same settings as the last
time you used it in this app.
- Removed the Histogram settings under View as you can add the
histogram filter using the pre filter settings now.
- Changed the app icon
- Stop the preview graph before you edit the pre filters list
as some filters can not have their properties changed while
- Fixed a rounding bug in the stats display. Also audio is a
running total now instead of a 5 sec snapshot.
- Do the last update to the stats window after you stop the
capture not before.
- When first run select the first Video Capture and Audio Capture
device as the defaults.
- Set Window size is now done on the output of the Smart Tee
instead of the Video Capture filter, this is so the window is
the same size as the output video taking into account any video
resizing due to any filters added to the capture graph by using
the Pre Filtering Setup.
- You can now use "Pre Filtering" When capturing.
You can add a number of DirectShow filters to the capture in
a filter chain, the filters are added in order and inserted
into the FilterGraph before the smart Tee filter so the filtered
video stream is shown in the preview as well. The list is not
saved when the application closed, you will have to manually
add the filters again. Saving will be added in the next release.
- Base Priority is now changed to HIGH when a capture starts
and back to NORMAL when a capture is stopped.
- Capture Stats window now has a close control, the "Toggle
Stats" menu item under Window has been changed to "Show
Stats" and the toggle functionality has been removed.
- Flow meter was placed in wrong location in filter when capturing
with no video compressor.
- Various other small bug fixes.
- App window will remember where it was when closed and open
to that location again.
- Capture Stats dialog will remember open closed state and location
when app closed and return to previous state when app opened
- Capture will not start if you have less than 10 Meg free on
your hard drive, this also takes into account any free space
stop conditions you have set as well. You will get an error
box telling you that you do not have enough space.
- You can now preview with histogram turned on, this will give
you a colour histogram graph overlayed on the preview window.
You can use this to set up your video capture card brightness/contract
- Rearranged the menus to better group functions and tasks.
- Now using the FlowMeter DirectShow filter to monitor data
throughput in the capture graph, this gives better results for
compression ratio, bytes sec, video bytes, audio bytes as well
as giving a more accurate time left value.
- Removed preview pin configuration as this application does
not use it, it uses a smart tea filter to split off the preview
stream. More on the Smart Tea filter can see seen at the following
- Numerous small Bug fixes including
- menu problem when no sound device was selected
- divide by zero error when capturing
- Various others that I do not remember