====== Cut TS sample ======
This page tries to explain how to cut small sample file from .ts or from .m2ts file. These samples are sometimes crucial for fixing AVIdemux bugs and because of this, developers might ask you to provide one.
You can use any binary file cutting tool for the job (this applies to Transport Stream files). In this tutorial we will guide the process with Virtualdubs hex editor (for Windows users) and with dd command (Linux and Mac OS X).
==== Virtualdub (for Windows users) ====
Virtualdub is video editor, but the software also contains build-in hex editor that we are going to use. Process itself is very simple.
* Download and install Virtualdub (you can use .zip version, no need to install)
* Open Virtualdub (VirtualDub.exe)
{{:tutorial:vdub_logo.png|}}
* Open **Tools -> Hex editor...** (which should open a new window, the //VirtualDub Hex Editor//)
{{:tutorial:vdub_toolshex_l.png|}}
* From that VirtualDub Hex Editor window, choose **File -> Open...** and select the .ts or .m2ts file you want to use
{{:tutorial:vdub_fileopen_l.png|}}
* The window should be filled with text (nothing to worry about), and you can then select **Edit -> Extract segment...** which should open //Extract file segment// window
{{:tutorial:vdub_extract_segment_l.png|}}
* From the Extract file segment window, keep the **Address (hex)** as 0 and to the **Length (hex)** field you enter how many bytes you want to have in sample file. E.g. if you want to make sample file with size of 20 megabytes (20 000 000 bytes), then use value **1312D00**. After you have selected the value, press **OK**. New file saving dialog jump to the screen and you use it to select where you want to save file (and give it a filename).
{{:tutorial:vdub_extract_segment2.png|}}
Now that you have created a new sample file, test it out in AVIdemux. If it causes same issues as the original one, then share it to us.
==== dd (for Linux/Mac OS X users) ====
dd is basic tool that comes with Unix-based operating systems. It can be used for many tasks, but in this case we use it to create sample files.
- Open console/terminal and move to the folder where the original file is located (you can use **cd** command to move around file system)
- Input command that cuts sample from file, it is something like dd if=original.ts of=sample.ts bs=20M count=1, where if indicates input file, of indicates output file, bs=20M sets the size of output file, and count says we only write one block. One example below
dd if=recorded_from_DVB_tuner.ts of=sample_for_avidemux.ts bs=20M count=1
If dd complains something like //"dd: bs: illegal numeric value"//, then don't use M, but instead input the value as bytes, e.g.
dd if=recorded_from_DVB_tuner.ts of=sample_for_avidemux.ts bs=20000000 count=1
Now that you have created a new sample file, test it out in AVIdemux. If it causes same issues as the original one, then share it to us.