29-01-2004 RELEASED 0.1.2.2dev2
Finally a new development release (NOTE: THIS VERSION WILL NOT WORK WITH VDRCONVERT)

This time the changes focused on postprocessing options like DVD-creation.
There are again too many changes to describe them all (and I can not even remember 
all), but the main improvements are (IMHO):

- Addition of the dvd-menu.pl script, that allows the creation of a DVD directory 
  structure with Menus, user supplied text and backgrounds etc pp. The script can also 
  be used without VDRsync, more info at http://vdrsync.vdr-portal.de/

- Addition of the (very ugly) vdrsync_buffer.pl helper script.
  This script just takes input from STDIN and buffers up to 10 MB, pipes it out to STDOUT,
  or a user supplied FIFO or file. It is used for the 

	on-the-fly conversion of recordings to a DVD-Strcture

  It is ugly, uses perl threads, and my very first attempt to write something threaded.
  If you are a real programmer, please write something better and sent it to me ;-)
  But: it works for me. So now you are able to convert a recording (including cutting)
  straight into a DVD, no temp files, optional requanting is possible (see below). Used
  when you add the option "-use-pipe".

- You can cut your recording according to a marks VDR while processing it with VDRsync

- You can feed input via STDIN to vdrsync (-stdin). Together with the -use-pipe option
  we might get close to a "realtime" conversion, at least to mpeg2 (just imagine a 
  streaming client piping the PS to vdrsync. This, however, does not work yet.

Ok, that are the main things. Other changes:

- it is possible to specify more than one directory on the command line
  when creating a DVD. vdrsync will then create a DVD that contains every directory 
  as a title set. If you specify the -dvd-menu switch, you will even have Menus with 
  summaries etc

- it is possible to shrink the recording(s) to fit to a single DVD by
  adding -fit-to-dvd option. This works also for multiple recordings on the command line

- added the possibility to generate a file that contains the main recording stats.
  This might be very handy for scripting, when you call vdrsync with 
		-script-output=vdrsync_logfile.txt
  You can simple retrieve the name=value pairs from that file.

- Switch to mplex as a default multiplexer. First of all, it accepts FIFOs as input
  (I needed that for the -use-pipe Option). Second, it does not scan the Input before 
  starting, saving quite a bit of time. Third, it should accept Audio-Tracks that change
  format in the middle of the recording. This has not been used yet, but it is something
  to integrate in the future. Moreover, mplex can (must) split the output in smaller files,
  which allows some other fine things (vdrrequant like cutting/shrinking in a single run)
  Probably I forgot half of the changes, but this information should get you started (at least
  you know what to look for...)
  
 Have a look at the Usage Message you get when you start VDRsync without a parameter.
  
Cheers

Peter


29-09-2003 RELEASED 0.1.2.2dev1
ATTENTION: VDRCONVERT WILL NOT WORK WITH THIS VERSION!!!! THE OUTPUT CHANGED A LOT!!!
- Thomas Koch started to clean up parts of VDRsync. Lots of changes with regard
  to VDRsync messages, better shell-command handling, beautifying/minimizing
  output during the VDRsync run, cleaner implementation of additional functions
  like DVD-mastering etc.

- reduced status messages significantly, the old behavior can be restored by
  adding the new -v (or -verbose) option (Thomas Koch).

- Added basename option (Thomas Koch). All files will have the specified parameter
  plus a format specific ending as their output name. If you specify "-basename
  TestBaseName", output will be named like this:
  -TestBaseName.iso for an Iso-Image, when invoked with the -mkiso option
  -TestBaseName/ for the directory of the DVD structure when invoked with the
   master-dvd option
   If no postprocessing option has been specified, the files are name like this
    -TestBaseName.mpg for the mpeg-file when invoked with the -m 2 option
    -TestBaseName.mpv for the video file
    -TestBaseName0.mpa for the first MP2-Audio
    -TestBaseName1.mpa for the second MP2-Audio (and so on)
    -TestBaseName.ac3 for the AC3 audio file

- Added support for recordings without a timestamp at the start of a GOP.
  Due to a lack of testing material I can not tell whether the sync is ok.
  At least VDRsync processes the small test snippets I have....

- Added basic support for video and audio filters, that can be specified on
  the command line. Future versions will have presets, but for now you are left
  with the following information:
  Filters can be specified on the command line with
  -v-filter " FILTER "
  -a-filter " FILTER "
  -ac3-filter " FILTER "
  To "shrink" your Video stream "on-the-fly" during demuxing use
  -v-filter " requant FAKTOR > "
  To convert an audio stream "on-the-fly" to mp3 try
  -a-filter " lame --mp2input "
  Basically, what you enter here ends up in a perl system call like this
  open FH "|-", " $audio_filter $basename.audio"
  Finally, be warned that the file names are a bit strange after
  applying a filter:
  Since I can not predict what format the output of a filter will
  have, video files get the appendix .video, (former) mp2 audio
  streams the appendix .audio, and (former) AC3 streams will end
  on .ac3_audio
  The whole Filter-Business described here is going to change,
  suggestions, hints, working filters welcome :-)

26-09-2003 RELEASED 0.1.2.2
- Fixed a Bug in searching for a sequence header by adding an "s" to
  the regex. Thanks to Dimitri for reporting this one.

- Fixed a Bug in Audio Detection. Thanks to Boergen reporting that one.

- Added  "binmode FH" to every Filehandle, so that VDRsync works with
  Windows. Thanks to Helmut Auer for pointing this out.

- added option -mkiso, a DVD-Iso-Image is created and all other Files are
  deleted.

- applied a Patch from  Thomas Koch that allows the generation of generic
  MPEG2 Files in addtion to DVD-specific MPEG2 Files (tcmplex -m 2)
  (Thanks, Tom)

22-09-2003 RELEASED 0.1.2.1
- Somehow I managed to introduce a serious bug in the last minute,
  the Version 0.1.2.0 produced desynced Videos after a cut.
  The bug is hopefully fixed.

18-09-2003 / 21-09-2003 RELEASED 0.1.2.0
There are so many new features / bug fixes, that I lost a bit
the count on changes.
Highlights:
- vdrsync is roughly 30% faster (at least on my machine). Limiting
  is now network  / disk performance (again on my machine,
  P-IV 2.4 Ghz)

- vdrsync.pl is only a single file now, no more copying of MPEGSTREAM.pm
  to somewhere in @inc or modifying @inc

- included silent audio frames in MP2 and AC3 format (thanks for AC3
  to the ds.jar project). Missing audio is now replaced by silence,
  not by the first audio frame found in the recording. That should
  prevent "noise" at the cutting points.

- Added the "feature" to delete audio streams that can not be multiplexed
  by tcmplex, to prevent the burning of DVDs that stop having sound after
  a few minutes. This caused some other problems, so it was partially
  reverted: If  the audio format changes very soon after the beginning of
  a recording,  the first few seconds are replaced by silence. The same
  happens if the audio format changes at the end of a recording. Useful
  mainly for mono recordings, that are surrounded by stereo.

- Added a control mechanism for the amount of audio in the streams. That
  means, that the actual length of encoded audio is compared to the PTS
  timestamp infos present in the PES headers. There are some AC3 streams
  that contain too many audio frames, and that would lead to a slow drift
  of the audio stream out of sync. This should be corrected.

- The determination of the aspect ration, audio format etc is now done at
  regular intervals in the recording, not only at the beginning. The
  information gathered is analyzed and printed at the end of the run,
  not at the beginning as in the previous version. This should ensure
  that the correct information for the movie is printed, even when the
  format at the beginning is not yet the format of the main movie. The
  correct aspect ratio is also used for the optional dvdauthor run

- new switch -show-time-drift. Information about the difference between
  PTS timestamps and frames found in the stream are printed

- new switch -script-output. At the end of the run a summary about all
  streams is printed in a format that should be easily readable by scripts

- new switch -dump-debug-buffer. If you have a recording that terminates
  itself with an error message, or kills some of the audio streams, this
  switch will cause vdrsync to dump 3 MB of the recording to the file
  debug.buffer. Please mail that file to me, and I can try to find a
  solution - or at least an explanation for the crash.

- New option to switch -m: panteltje. If invoked with the -m panteltje
  switch, vdrsync tries to multiplex the files with tcmplex-panteltje
  instead of tcmplex. This might become the standard in future versions,
  since tcmplex-panteltje is much easier to compile than transcode, and
  tcmplex from transcode changed too often in the past to be easily used.

- New switch -audio-only. Only audio is processed, that's all...
  Useful for radio recordings.

- Handling of PTS overflows. PTS overflows should be detected and handled.
  I don't have many recordings to test, but the few I have worked ;)

- Fixed a bug in Audio analysis, that cou trigger a program stop when
     the Audio stream did not start with a frame but within a frame AND
     by bad luck there were some Bytes in the first broken frame that
     lokked like a frame start

- Fixed a Bug in syncing the start of a recording, that would hopefully have
  no real impact on the syncing. But under certain conditions this could lead
  to a endless loop  (thanks to Torsten/WarEagle).

- Fixed the bevavior of the -audio-only switch. Audio Formate changes are now
  tolerated such a case.
