JTVD Manual (Version 0.4.3)

Table Of Contents
Introduction

Configuration

HOWTO
  Grabbing From The TV Card
  Encoding Video Files To DVD Compatible MPEG2 Format
  Authoring And Burning The DVD
  Creating A Title Menu
  If Something Goes Wrong
  Known Issues

Introduction

First of all, thanks for trying JTVD :-)

JTVD is a frontend for some popular commandline programs. Currently it is using mencoder to grab from the TV card, transcode for encoding the grabbed or other video files to a DVD compatible MPEG2 program stream while mpeg2enc is used for encoding video, mp2enc, toolame or ffmpeg for encoding audio and mplex for multiplexing. dvdauthor is used for authoring and growisofs to burn the DVD.
Additionally, JTVD uses toolame, mp2enc, png2yuv, mpeg2enc, mplex and spumux for creating the title menu.

Just for information, mencoder comes together with MPlayer while png2yuv, mpeg2enc, mp2enc and mplex come with MJPEG Tools and spumux comes together with DVDAuthor.

It is relatively easy to implement other commandline programs as backend, which could make it possible to use for example mencoder and transcode to grab from the TV card alternatively.

Until now I have not found a way to directly grab to a DVD compatible MPEG2 stream. As soon as I find out or somebody tells me :-), I will implement that in JTVD in the way described above.

The DVD authoring capabilities are pretty basic. From the available "titles", the previously encoded MPEG2 streams, or also other DVD compatible MPEG2 videos elsewhere on the harddrive, one or more can be chosen to be included on the DVD. The chapters for each title can be specified by either typing them in manually or generating them automatically based on very simple rules. A simple title menu with sound can be created in a quite comfortable way. Title Menu for more information.

Please send comments, bug reports and feature requests to me: dode@luniks.net

TOC
Configuration

After you have started JTVD for the first time, please take a moment and make your settings in the "Preferences" dialog.

The preferences are saved in a file called .jtvd.properties in your home directory.

V4L - Video4Linux

Video API: Since version 2.5 the Linux kernel uses v4l2. Please note that the "TV Screen" can only be used with v4l2.
Video Device: This is typically /dev/video0. Often, there is also a symbolic link /dev/video to the actual video device file.Tip: Run xawtv -hwscan to find out the video device.
Test: When this button is invoked, JTVD tries to query the video device using the specified device file.
Audio Device: First, you need to know if your system uses OSS or ALSA. Modern systems use ALSA, as it is in the kernel for quite some time now while OSS is deprecated. To use ALSA, check the ALSA option and specify a hardware id, typically this is hw.0,0. If your system uses OSS, the device is typically /dev/dsp0. There is often a symbolic link /dev/dsp to the actual audio device file. The OSS device file can also be used (option ALSA unchecked) when the system uses ALSA, if it has been compiled with OSS compatibility.
Force Stereo: If your video card reports that it supports only mono, it might not be possible to record in stereo from for example a stereo VCR which is connected to the soundcard instead of the loopback cable from the TV card. Try this option to solve that.
TV Screen Enabled: Allows to enable/disable the "TV Screen" permanentely. If recording hangs, try disabling it.
Larger: This option increases the size and resolution of the "TV Screen". Please note that this also increases the CPU load.

Writer - DVD Writer

Device: If you have a SCSI DVD writer, the device could be for example /dev/scd1, if it is and IDE device, it could be /dev/hdc. Have a look in your /etc/fstab to find out the device.

Workdir - Working Directory

Workdir: Set the direcory here, that JTVD should use to place all video files and temporary files in that are created. This directory and some subdirectories are created automatically. Please always make sure that the filesystem, in which this directory resides, has plenty of free diskspace.
On first startup, JTVD creates the directory "jtvd" in your home directory, which of course can be deleted when you have specified another workdir.

Programs

If all the executables listed can be found in the directories specified in your PATH environment variable, it should normally not necessary to make any special settings here. In case an executable is not in your PATH, please specify the full path to it here, so that JTVD can find it.

Stations

First, please select the Frequency Table for the area you live. Then you can browse the channels (easiest with the arrow keys) until you find a station. Fine-tune it using the "Fine" value if necessary. Type in the name of the station and press "Save". If you have been using xawtv, you can try importing the station from its configuration file using the "Import" function.

Miscellaneous

Look and Feel: Set your favourite Look and Feel
Show Warnings:Tell JTVD if it should warn you about a few issues or not.

TOC
HOWTO
Grabbing From The TV Card

Diskspace
As you probably know, video files can get pretty big. Unfortunately, JTVD currently can't warn you about low diskspace, so please make sure you have plenty of free diskspace available before you start grabbing a long movie. I would say a movie with the usual length of around 100 min. occupies about 2 GB when grabbed with a resolution of 352x576 and VBR quality 2.

Video Source
Choose a title name and input source, and the norm and resolution if necessary. The resolution 352x576 seems to be a good tradeoff between CPU usage, file size and quality. If you want to grab from the TV tuner choose "Television" as input source and the desired station. You can conveniently cycle through the stations by clicking on the TV screen with the left (up) or the right (down) button. It is also possible to select a channel directly, it will override the one of the selected station. If necessary you can fine-tune the station by adjusting the "Fine" value.

Audio Input
To select an audio input it is currently necessary to do that with a mixer application like KAMix. Assuming you have connected your TV card via the loopback cable or a VCR to the "Line In" connector of your soundcard, go to the "Capture" tab, select "Line" as capture source and check the "Activate" option. It may be necessary to adjust the volume in order to avoid distorted sound or too low volume.

Picture Settings
If desired the brightness, contrast, hue and saturation of the picture can be adjusted. Please note that these settings are currently not reflected by the TV screen.

Video Options
Among the video options you can choose between MPEG1, MPEG2 and MPEG4, the aspect ratio and if a noise filter should be used or not. The noise filter nicely cleans up a noisy picture and greatly reduces the bitrate in VBR mode, which in turn greatly reduces the file size. On the other hand, it increases CPU usage.
Additionally you can choose between CBR and VBR (recommended) encoding and specify the bitrate (CBR) or the quality (VBR).
If the picture quality of the station you want to grab from is low, the bitrate can get very high even with the noise filter. In this case it is probably better to use CBR with a reasonable bitrate instead.
The aspect ratio a video player should scale the video to when it plays it can be forced with the option "Aspect". It is stored in the OpenDML AVI header, so I guess video players which don't support OpenDML AVI will ignore it.
If you uncheck the option "OpenDML AVI", no OpenDML index is written to the file.
If encoding of the recorded videos fails (runs forever and needs to be cancelled, resulting video just green), try enabling/disabling the "FMP4" option.

Audio Options
For audio encoding (MP3), you can as well choose between CBR and VBR (recommended) and the bitrate (CBR) or the quality (VBR).

Schedule Recording Tasks
If you want to schedule one or more recording tasks, open the schedule dialog and add one or more tasks to the list. Each task can be individually enabled or disabled, given a station to grab from and a start and stop time. When the start and stop times are changed, the duration is updated automatically.
When you are done configuring the tasks, check the "Active" option and click "Ok" to activate the scheduler. If there are any inconsistencies, like tasks starting in the past or overlapping tasks, an appropriate warning should pop up. Once the schedule has been accepted, the "Schedule..." button shows a red recording symbol and the scheduler is active.
If the scheduler is cancelled by unchecking the "Active" option, any currently ongoing task will run to its end, and can be stopped by pressing the "Stop" button.

By pressing "View" you can play the video that you are grabbing.

Once grabbing has finished, either because a recording task has completed or by pressing "Stop" during grabbing, the grabbed file appears in the "Files" list in the "Encode to Title" tab.

TOC

Encoding Video Files To DVD Compatible MPEG2 Format

With this function you can encode the files that you have grabbed but also other video files that you have on your harddisk to DVD compatible MPEG2 files. These files can then be burned as titles on a DVD.

Useful Options
The most useful settings that can be made are probably to choose between CBR and VBR video encoding and to set the bitrate and quality respectively, as well as the audio format (MP2 or AC3) and bitrate.

Video Resolution
It is also possible to change the resolution what can be useful to "correct" a video which has a resolution that does not meet the DVD specification (720x576, 704x576, 352x576 and 352x288 for PAL/SECAM and 720x480, 704x480, 352x480 and 352x240 for NTSC).
In order to achieve these resolutions without changing the aspect of the movie, parts of the image can be cut off (positive "Clip" values) or black stripes can be added (negative "Clip" values). When a file is selected for encoding, JTVD displays the resulting resolution that the encoded video will have. If the resolution is not valid for DVD Video, an exclamation mark is shown, otherwise the matching video norm (PAL for PAL/SECAM and NTSC) is displayed.
If the aspect ratio is correct and the video should be scaled to another (smaller) resolution, the option "Resolution" can be used.

The aspect ratio of the video (4:3/16:9) can be set as well as the framerate.

Please note that it is not possible to convert from one TV norm to another just by setting the resolution and framerate - audio and video will be completely out of sync.

Trimming
Unwanted parts at the beginning and/or the end of the movie can be cut away with the option "Trim". Encoding will then start at the "Start:" time and stop at the "End:" time. Use the "o" key with mplayer or set "gmplayer" or "xine" as player in the preferences in order to get a time display which allows to find the positions in the video where you want to start or stop encoding.

If encoding of a file fails, you can try to set an input "codec" manually. Not all options listed in the comboboxes might be available, this depends on your transcode installation.
If encoding never finishes and needs to be cancelled, and the resulting video is just green, try changing the "FMP4" option for recording.

I recommend to encode a small part of a file and to verify the result by using the "View" function in the tab "Author and Burn" before encoding a long video.
If you get the error "Multiplexing failed!" it can as well mean that encoding failed or that there's not enough diskspace available for writing the final MPEG2 file. In the latter case you can free some disk space if possible and then retry multiplexing to avoid losing the time spent on encoding. If you choose not to retry the encoded video and audio stream will be cleaned up.

Once encoding has finished, either because it has completely encoded the file or because you have cancelled the encoding process, the file appears in the "Titles" list in the tab "Author and Burn" - and is ready to be burned on a DVD.

TOC

Authoring And Burning The DVD

Check the titles you want to burn on the DVD and bring them in the desired order using the arrow buttons.

Chapters
You can insert chapters by using the "Edit" button or by right-clicking on the title in the list and choosing "Chapters...". This opens a small dialog which allows to insert chapters based on the settings you make. You can also type in chapters directly by double-clicking the cell in the column "Chapters". The first chapter must start at "0". The format can be just the number of seconds, "mm:ss" or "HH:mm:ss". The chapters have to be separated by commas.
Please note that the chapters are currently not validated, this is just another planned feature...

Title Menu
If you want to add a title menu to the DVD please have a look at the section Creating A Title Menu

Burning
Choose the DVD R type you are going to use and check that its capacity is not exceeded. Normally it is not necessary to select the speed, growisofs takes care of that. "Overburn" I have not tried yet. Make sure that both options "Create image" and "Burn image" are checked, insert the DVD (I recommend to use a rewritable for the first time) and press "Author and Burn". JTVD will now run dvdauthor to author the DVD and after that growisofs to burn it.

If you want to only create the DVD image without burning it, check the option "Create image", uncheck "Burn image" and press "Author and Burn". The image will be created and when finished, a dialog box showing the directory where the image has been written to pops up.
If you want to burn an existing Video DVD image, uncheck the option "Create image", check "Burn image" and press "Author and Burn". A dialog will pop up allowing to choose the directory containing the image. The directory is expected to contain a non-empty subdirectory "VIDEO_TS".

TOC

Creating A Title Menu

If you want to add a title menu to the DVD, first make sure that you have selected all the titles you want to include on the DVD by checking the field "Burn" in the list on the "Author and Burn" tab, and that they are in the right order.

On the "Title Menu" tab, first open the "Style" dialog using the "Style..." button and set the video norm and aspect ratio according to the DVD you want to create.

The size of the drawing area can be set by selecting a "Size" from the popup menu which is opened by right-clicking on the drawing area. Note that the size chosen here is independent from the final size of the menu.

Click the button "Add Titles" to add menu buttons for the selected titles to the menu. Now you have the following options to customize the menu:

Adding Text
Text can be added to the background by choosing "Add Text" from the popup menu. The text items can be deleted by choosing "Delete".

Selecting Items
Both text and menu items can be selected by clicking on them, multiple items can be selected by holding down the CTRL key while selecting them.

Moving Items
Selected items can be moved around either by dragging them with the mouse or by using the arrow keys. Multiple selected items are moved simultaneously.

Changing Text
The text of the items can be changed by selecting "Text..." from the popup menu.

Setting Font, Color...
Font family, style, size and color can be set independently for each item using the "Style" dialog. When an item is selected, the state of the dialog is updated to reflect the current settings of the item. If multiple items are selected, always the settings of the item that has been selected first are shown. Changes are applied to all selected items.

Please note that truetype fonts don't seem to be available with Java 1.4.x, but work well with 1.5.x.

Menu Button Effects
The "Style" dialog also allows to change the effects used by the menu buttons for highlighting and selecting. The highlight effect is shown when the mouse is over the menu button, the select effect is shown for a short time after a button has been invoked to play a title. The effects are simulated to get a better idea of how the menu will look like. Currently it is possible to assign two different kinds of effect for each the highlight and the select effect: A rectangular shape enclosing the button text can be shown ("Shape Effect"), or the text color can be changed ("Text Effect"). Additionally it is possible to have an effect do nothing at all ("No Effect"), but please note that at least one effect has to be assigned to either the highlight or the select effect.
The effects allow limited customisation, the line width and the padding of the shape as well as its color can be set for the "Shape Effect", for the "Text Effect" only the color can be set.

Setting the Menu Background
The background of the menu can either be a plain color or an image. Note that the image is stretched to fill the drawing area, so if necessary, you have to adjust the aspect ratio of the image according to the ratio of the menu using your favourite graphics program, for example "The Gimp", before setting it as background of the menu.

The dashed line marks the border that might be cut off by TV screens and video projectors, so it can be a good idea to keep text and menu items away from that border.

Some Small Tips
If you want to achieve text with a shadow effect, just create two text items with different colors, for example black and white, which are otherwise identical, and position them so that they are almost congruent, with a minimal shift.
To move both items simultaneously, select both of them by pressing the CTRL key while clicking and dragging them with the mouse, or using the arrow keys.

Horizontal lines can be drawn with text items containing only underscores and choosing a suitable font so that a continuous line is displayed.

Adding Sound
It is possible to add an audio track to the menu from a WAV file. So if you want to add sound, either rip a title from an audio CD as WAV file or decode an MP3 or OGG file using for example the amazingly fast "mpg123" or "ogg123" decoder, respectively. The WAV file can then be set in the "Audio" dialog. The length of the menu will be exactly as long as the audio title. If you don't want sound, choose the option "Blank Audio" and set the time how long the menu should be. It is possible to pause a menu so a few seconds are long enough.

When you are done with your menu please make sure that all menu buttons are entirely inside the menu and that they don't overlap and double-check that the video norm and aspect ratio selected in the "Style" dialog are correct.

In case you have changed the selection of titles in the list on the "Author and Burn" tab, the menu buttons can be replaced by clicking "Add Titles" again. Please note that this will delete all existing menu buttons and create new ones with default settings.

Now you can either go back to the "Author and Burn" tab and make the final settings for the title menu, or test the menu using the "Test" button. The test will go through all the steps of the menu creation and when it has successfully completed, you have the option to view the video that has been created, but without the menu effects. Please note that the menu creation can take quite some time if you have chosen a longer WAV file or length for blank audio.

If you are done with the menu, go to the "Author and Burn" tab, open the "Title Menu" dialog by clicking on the button with the paper roll symbol and check the "Create Title Menu" checkbox.

Now the following options are available:

  • The menu can loop forever. Choose "Loop" for this option
  • The menu can jump to a title right at its end. Choose "Pause", set the pause to 0 seconds and select the title the menu should jump to from the list.
  • The menu can pause for a number of seconds and then jump to a title
  • The menu can pause forever at its end. This is useful if you have created a short menu with no sound and don't want it to jump to a title at its end. Pausing is better than looping, because if the menu loops, the menu button highlighting is reset to the first button every time it jumps to the beginning, which can be annoying while navigating a menu. Check the option "Infinitely" to pause the menu at it's end.

Now everything should be ready to push the "Author + Burn" button... please consider testing the DVD with a rewritable media first. I really hope JTVD will not waste your DVD's ;-)

TOC

If Something Goes Wrong

If you get an error message or something doesn't work as expected, please check the messages in the "Messages" tab. All output (stdout and stderr) of the commands are available here. Of course you are welcome to contact me if you have found a bug or have a suggestion, I'll gladly try to help!

My email address is: dode@luniks.net

TOC

Known Issues

1. The "TV Screen" says "Java Media Framework not found"

Make sure that you have set the variable JMFHOME to the location where JMF is installed. It can be set as environment variable in your .profile, or in the startup script "jtvd".

2. The "TV Screen" doesn't work

If you have an saa7134 based TV card, this can be the reason. This may be a limitation of the Java Media Framework.

3. Grabbing doesn't start. MEncoder just hangs.

- The "TV Screen" (JMF) blocks the video device. Try to disable the "TV Screen" in the preferences. This may also be related to saa7134 cards, see issue 2.
- Another application blocks the video or audio device.

4. Grabbing fails, MEncoder says: "unable to open '/dev/dsp0': No such file or directory"

Probably you have ALSA without OSS compatibility. In this case, check the option "ALSA" and specify a hardware id as "Audio Device" in the preferences. A typical hardware id is "hw.0,0".

5. Grabbing works, but the recorded video is without sound

Check that the audio capture source is set correctly using your favourite mixer application, for example KAMix.

6. Sound quality is very bad/distorted

The gain/volume of the capture source is too high. Try decreasing it using a mixer application.

7. The TV card supports only mono, and the recorded video is only mono even when grabbing from a stereo source (VCR) connected to the soundcard

MEncoder encodes audio only mono because the TV card does not support stereo. Try the option "Force Stereo" in the preferences.

8. When grabbing from a video tape the framerate is much below 25/29.97 fps and the recorded video is very jerky

This can happen if the quality of the video tape is bad. If you have a bt8X8 based card (bttv driver), try enabling the VCR hack by adding vcr_hack=1 to bttv's options in modules.conf/modprobe.conf/modprobe.conf.local, for example: options bttv vcr_hack=1

9. Encoding fails with the error "Mulitplexing failed"

- Encoding has failed but not returned an error, so multiplexing failed consecutively.
- Lack of diskspace. Try to free some space and choose "Retry" in order not to loose the time spent on encoding.

10. Encoding never stops/continues forever. After pushing "Cancel", it stops, but the resulting video is just green.

Transcode does not recognize the video format. For files, that have been recorded with JTVD (MEncoder), this should normally not happen. However, there is one good reason why this can happen anyway: MEncoder (FFmpeg) switched the FOURCC used for MPEG4 from DIVX to FMP4. In MEncoder, this change seemed to have happened from version 1.0-pre6 to 1.0-pre7. So if you are using a version of Transcode, that does not know yet about FMP4 (0.6.14, 1.0 beta?), you will see this problem.
From version 0.4.2, JTVD offers the option "FMP4" as workaround. If it is unchecked, JTVD forces the FOURCC used by MEncoder for MPEG4 to DIVX, so Transcode can recognize the video format correctly. This can also be useful when playing the recorded videos on Windows, because some players may not know about FMP4 as well and therefore have problems to play such files.
If you want MEncoder to use the FOURCC FMP4 for MPEG4 files, check the option "FMP4".

11. Encoding videos captured from a MiniDV video camera fails.

Try the option "DV Fix", there are good chances that this solves the problem.

12. How can the GUI language and date/time formats be changed?

The language and date/time formats are set according to your system/user profile locale settings. They can be forced by setting the environment variable LANG in the startup script jtvd.

TOC