------------------------------------------------------------------------------
VCapStream Ver.1.02

Webcam video capture and streaming tool

                             Copyright(C) 2026- GUSUKU All Rights Reserved
------------------------------------------------------------------------------
                                               Last updated date : 2026/02/05

[Overview]
  This software provides the following features:

1) Capture and display images from a web camera connected to a PC.
2) Save the captured video and audio to a file.
3) Play the saved video file.
4) Transfer live images captured from a webcam to this app running on another PC.
5) Receive and display live images transferred from this app running on another PC.

[Operating environment]

    Windows 10AWindows11

[Tools used]
  This software uses the following NuGet packages to implement functions for 
  capturing and playing camera images, capturing and playing audio, and saving
  and playing video files.

1) Accord.Video.DirectShow 	by: Accord.NET
	Used for capturing images from a camera, obtaining camera information, 
	and setting camera settings.

2) Accord.Video.FFMPEG 		by: Accord.NET
	Used for saving and playing video files.

3) NAudio 				by: Mark Heath & Contributors
	Used for audio input from a microphone, audio output to speakers, 
	and saving and playing audio files.

4)FFmpeg
	If installed, it will be used as an external program.
	Used to combine audio (wav) and video (mp4) files when saving a video,
	and to separate audio files from video files when playing a video.

[File structure]

    When you unzip the archive, the following files will be generated:

    setup.exe					setup program
	VCapStream_Setup.msi		installer

[Install]
	After extracting the archive, run setup.exe and follow the on-screen 
	instructions to install.
	Since the software uses .NET Framework 4.7.2, an internet connection is
	required.
	This does not apply if .NET Framework 4.7.2 is already installed.

	FFmpeg is not included in the installer.
	To install FFmpeg, open a command prompt as administrator and run the 
	following command:

		winget install --id=Gyan.FFmpeg -e

	You must be connected to the Internet when running the above command.

[Uninstall]
	Open the Control Panel and select "Uninstall a Program" if you are viewing
	by Category, or "Programs and Features" if you are viewing by Large Icons 
	or Small Icons.
	Select "VCapStream" from the "Uninstall or change a program" list and
	uninstall it.

[How to use]
	Select VCapStream from the All menu in the Start menu and launch it.
	If you cannot find VCapStream in the Start menu, it is in a group called 
	gusuku.org, so launch VCapStream in gusuku.org.

[Screen Description]

  [File] Menu

    [Connect]
	  Selecting this will open the Connect dialog.

	  In the Connect dialog, select the connection target from the following 
	  two types.

	1) 	Checking the checkbox in the Camera group will connect to a camera that
		can be connected to DirectShow, such as a webcam connected to your PC.
		Checking the Use Audio Input Device checkbox will allow you to select 
		a microphone if available, and recordings will be saved with audio.
		When the server function is enabled, microphone audio can also be 
		transferred.

	2)	Checking the checkbox in the Server group will connect to VCapStream, 
		which is running as a server on another PC.
		In this case, images from the camera connected to VCapStream on the 
		other PC will be received and displayed.

	[Disconnect]
	  Disconnect from the currently connected camera or server.

    [Open Video File]
	  Opens a saved video file for playback.

	[Close Video File]
	  Closes an open video file.

    [Exit Application]
      Exit the program.

  [View] Menu

    [Mirror]
      Reverses the image horizontally.

    [Flip Up/Down]
      Flips the image upside down.

    [Fit Window to Image]
	  Resize the window to fit the image size.

    [Video Property]
      Displays the properties dialog for the connected camera.

  [Tool] Menu

    [Capture Start]
	  Starts capturing images from the camera/server.

    [Capture Stop]
      Stops image capture from the camera/server.

    [Server Start]
      Start the image streaming server.

    [Server Stop]
      Stop the image streaming server.

    [Video Play]
      Starts playing the opened video file.

    [Video Pause]
      Stops playing an open video file.

    [Video Rewind]
      Returns the playback position to the beginning of the opened video file.

    [Options]
      Displays the options settings dialog.
      In the options settings dialog, you can set the following items:

	  [File] Group
        1.Video Save Dir.
		  Set the folder where you want to save the captured video files.

        2.Video Filename
		  Set the file name when saving the captured video file.
		  The date and time will be added to the end of the file name you set.

		3.Audio File
		  If FFmpeg is installed, you can specify whether to combine the audio
		  file into the video file.

        4.Max Record Frames
		  Set a value other than 0 to limit the number of recording frames.
		  Setting it to 0 will record without any restrictions.

        5.Snapshot Save Dir.
		  Set the directory where snapshot images are saved.
		  Saves the image when you press the snapshot button.

        6.Snapshot Filename
		  Set the file name for saving the snapshot image.
		  The date and time will be added to the end of the file name you set.

	  [Server Setting] Group
        1.Listen TCP Port
          Specify the server's listening port number.

	  [Sound] Group
        1.Sound device
          Select the audio output device.

    [Video Setting]
      Opens the Video Options dialog.
      In the Video Option dialog, set the following items:

	  [Video] Group
        1.Frame Size
          Sets the size of the image captured by the camera.

        2.Video Filename
          Set the frame rate for video captured by the camera.

  [Configuration files] VCapStream.ini

	A configuration file named VCapStream.ini will be automatically generated.

	The VCapStream.ini file will be saved in the folder where the application 
	is installed, but if the application is installed in a system-protected 
	folder such as "C:\Program Files" or "C:\Program Files (x86)", the 
	application cannot write to it, so VCapStream.ini will be saved in the 
	application settings folder.
	In most cases, it is created in the folder indicated by the following path:

	EC:\ProgramData\GUSUKU\VCapStream

    The items in VCapStream.ini are explained below.

    [SETTING]          				Settings section
	CONNECT_TYPE=0					Destination 0=Camera 1=Server 
	CAMERA_NAME=Logi C615 WebCam	Name of the last connected camera
	FRAME_WIDTH=640					Frame size (width)
	FRAME_HEIGHT=480				Frame size (vertical)
	FRAME_RATE=15					Frame rate
	AUDIO_INPUT_ENABLE=True			Microphone input availability(True=yes, False=no) 
	AUDIO_INPUT_NAME=Microphone (Logi C270 HD WebCam)	Microphone device name 
	AUDIO_SAMPLE_RATE=16000			Audio sampling rate 
	SERVER_NAME=192.168.1.10		Hostname/IP address of the last connected server
	SERVER_PORT=8080				TCP port number of the last connected server
	VIDEO_DIR=D:\Data\Video			Path to the folder where the video files are saved
	VIDEO_FILE_NAME=capture			Video file save file name
	REC_FRAME_COUNT=0				Number of frames to save
	SNAPSHOT_DIR=D:\Data\Snapshot	Path to the snapshot storage folder
	SNAPSHOT_FILE_NAME=snapshot		Snapshot save file name
	LISTEN_PORT=8080				TCP port number to listen on when the server is running
	AUDIO_OUTPUT_NAME=Speaker (USB Speaker)			Audio output (speaker) device name

[Update history]
    Ver.1.00  2026/01/12
	* Initial Release

    Ver.1.01  2026/01/31
	* Added a checksum to the transferred data.
		(mainly to prevent noise during audio transfer)
	* If FFmpeg is installed, it will launch ffmpeg as an external program
	  to combine the audio and video and save them into a single file.
	* Fixed a bug where audio from the server could not be saved to the
	  video file.
	* Added audio input sample rate setting.
	* Added streaming header items (image size, audio sample rate, etc.).

    Ver.1.02 build 0001 2026/02/01
	* Changed the way to check whether FFmpeg is executable
	* Updated the Help file
		(added installation instructions, data file explanations, 
		 and stream data explanations)

	Ver.1.02 build 0003 2026/02/05
	* Fixed an issue where the image display area on the initial screen was 
	  incorrectly sized in some environments.
	* Fixed the sound button to be disabled if the stream does not contain
	  audio.
	* Changed the window size to adjust when connecting to a server.

[Acknowledgments]
	We would like to thank the following people who provided us with the NuGet 
	packages used in this program.

	* Accord.Video.DirectShow Created by: Accord.NET
		Used for capturing images from the camera, obtaining camera information,
		camera settings, etc.

	* Accord.Video.FFMPEG Created by: Accord.NET
		Used for saving and playing video files.

	* NAudio Created by: Mark Heath & Contributors
		Used for audio input from the microphone, audio output to speakers, and
		for saving and playing audio files.

	Thank you for providing these useful libraries.

	If FFmpeg is installed, this program will combine audio and video when 
	saving a video file to create a video file with audio (mp4).
	FFmpeg is used as an external program.
	We would like to thank the developers of FFmpeg.

[Terms of use]

Terms of use
     There are no special conditions. Please use freely.
     However, unless we are to be used for that crime or harm to others.

Distribution
     Redistribution in the state that has not been edited or modifications 
     (source code) is free.

Editing and Modification (for source code)
	You are free to modify and change the source code, but if you redistribute
	modified versions, you must include documentation clearly stating the
	changes in the distribution.
	This does not apply if you use part of the source code of this software in
	other software.

Disclaimer
	The author assumes no responsibility for any damage or injury resulting 
	from the use of this software.
	The author assumes no obligation to fix or upgrade the software, even if
	bugs are discovered.

Bugs and requests
     For bugs and requests, please email.
     However, this does not necessarily mean a guaranteed bug fixes, is 
     reflected in the demand.

Copyright Information
	The copyright of this software is held by the author, GUSUKU.
	This software is protected by Japanese Copyright Act and international
	treaties.
	Use within the scope of the Terms of Use is permitted, but please note 
	that use or distribution in violation of the Terms of Use will constitute
	copyright infringement.

Copyright information for used packages
	This software uses the following NuGet packages.
	Copyright information for each package is listed in the license information
	for each package.

	* Accord.NET-Framework
		(Accord, Accord.Video, Accord.Video.DirectShow, Accord.Video.FFMPEG)
		The license information for this package is available in 
		Accord.NET-Framework-license.txt.

	* NAudio
		The license information for this package is available in 
		NAudio-license.txt.

[Contact]
     GUSUKU
     root@gusuku.org

[Website]
    https://www.gusuku.org/

[Software website]
    https://www.gusuku.org/software

------------------------------------------------------------------------------
