Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: VDR developer version 1.3.13



Am Sonntag, 17. Oktober 2004 16:27 schrieb Klaus Schmidinger:
> VDR developer version 1.3.13 is now available at
>
>     ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.3.13.tar.bz2
>
> *** NOTE THAT THE WARNINGS REGARDING THE USE OF VPS CONTROLLED
> *** TIMERS FROM PREVIOUS RELEASE NOTES STILL APPLY!
>
> Well, it's been a long time without a new developer version.
> First I have spent several weekends trying to get VDR to run on
> kernel 2.6 with the dvb-kernel driver, and then I was hunting
> buffer overflows for several weekends. So the main focus in this
> new release is overall stability when doing several parallel
> recordings. This now works a lot better than before:-)
>
> There are still several things that have been postetd on the VDR ML
> which I haven't been able to attend to, yet. These will be considered
> in future versions. I hope to be able to release new versions more
> often now ;-)
>
> The changes since version 1.3.12:
>
> - Fixed checking for the presence of NPTL (thanks to Jouni Karvo).
> - Making sure section filters are only set if the device actually has a
> lock (thanks to Andreas Share for pointing this out).
> - Fixed a possible NULL pointer assignment in cMenuText::SetText() (thanks
> to Marco Schlüssler).
> - Fixed a crash in case the last line in channels.conf is a group separator
> and that group is selected in the channel display (thanks to Dick
> Streefland). - Added cRingBufferLinear::Read() to read directly from a file
> handle into the ring buffer.
> - Using timeouts in ring buffers to avoid 'usleep()'.
> - Clearing the 'Transfer Mode' ring buffer after clearing the device to
> avoid an "almost full" ring buffer.
> - Removed locking from cRingBufferLinear for better performance under high
> load. - Using a cRingBufferLinear in cRemux to avoid unnecessary copying of
> data. - Using a cRingBufferLinear in cTSBuffer and filling it in a separate
> thread to avoid buffer overflows. Plugins using cTSBuffer will need to
> remove the call to the now obsolete Read() function (see
> cDvbDevice::GetTSPacket() for the new usage of cTSBuffer).
> - cRemux::Process() has been split into Put(), Get() and Del() to allow for
> a better decoupling of the remuxing and disk writing process. Plugins using
> cRemux will need to be modified accordingly.
> - The actual disk writing in recordings is now done in a separate thread to
>   improve the overall throughput.
> - Changed cRemux so that it returns the maximum available amount of data
> with each call, not just 2048 byte.
> - Added a visual display of all cRingBufferLinear buffers for debugging. To
>   activate it, define DEBUGRINGBUFFERS in ringbuffer.h.
> - Instead of cCondVar now using the new cCondWait (which also avoids a
> possible "near miss" condition; thanks to Sascha Volkenandt for pointing
> out this one). cCondVar is still present for plugins that use it (and VDR
> itself also still uses it in cRemote).
> - The cRingBuffer now does EnableGet()/EnablePut() only if the buffer is
> more than one third full or empty, respectively. This dramatically improves
> recording performance and reduces system load (thanks to Marco Schlüßler
> for doing some testing regarding buffer performance and giving me some
> hints that finally led to finding out that this was the basic problem
> causing buffer overflows). - Improved Transfer Mode (thanks to Marco
> Schlüßler for suggestions and testing). - Fixed a possible crash with
> inconsistent SI data (thanks to Marcel Wiesweg). - Fixed showing the replay
> mode if the OSD is currently in use (thanks to Kimmo Tykkala for pointing
> out this problem).
> - cOsdProvider::NewOsd() now always returns a valid pointer, even if the
> OSD is currently in use (it will then return a dummy cOsd object and write
> a message to the log file).
> - Added Estonian language texts (thanks to Arthur Konovalov).
> - Fixed 'newplugin' and libsi/Makefile to use the compiler defined in
> $(CXX) for generating file dependencies (thanks to Andreas Brachold).
> - Moved the initialization of aPid1 and aPid2 to the beginning of
> cDvbDevice::cDvbDevice() to have them set in case a patch references them
> (thanks to Wayne Keer for pointing this out).
> - Completed the Russian OSD texts (thanks to Vyacheslav Dikonov).
> - Avoiding unnecessary section filter start/stops (thanks to Marco
> Schlüßler). - Made the "Channel not available!" message and mtInfo instead
> of mtError (suggested by Wayne Keer).
> - Made volume control more linear (thanks to Emil Naepflein and Udo
> Richter). - Now skipping code table info in SI data (suggested by Milos
> Kapoun). - Added missing Czech characters to fontosd-iso8859-2.c (thanks to
> Milos Kapoun). - Fixed a crash in the time search mechanism (reported by
> Reinhard Nissl). - If one PID can't be added, the whole
> cDevice::AttachReceiver() will now fail and all PIDs added so far will be
> deleted (thanks to Marco Schlüßler for pointing out this one).
> - Now only saving channels.conf after a modification made by the user
> (avoids lots of disk access due to automatic channel updates). Automatic
> channel modifications will be saved every 10 minutes if no recording is
> currently active.
> - Removed the 'Log' parameter from the cChannel::Set... functions. Instead
>   checking if the channel has a non-zero number.
> - Updated 'channels.conf.terr' for Hannover (thanks to Sven Kreiensen).
>
> Have fun!
>
> Klaus

Hi,

just downloaded, but it doesn't compile, compile aborts with:
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include audio.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include channels.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include ci.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include config.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include cutter.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include device.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include diseqc.c
g++ -g -O2 -Wall -Woverloaded-virtual -c -DREMOTE_KBD -DREMOTE_KBD 
-D_GNU_SOURCE -DVIDEODIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" 
-I../DVB/include dvbdevice.c
In file included from dvbdevice.c:24:
../DVB/include/linux/dvb/video.h:105: error: parse error before `*' token
dvbdevice.c: In member function `virtual void cDvbDevice::StillPicture(const
   uchar*, int)':
dvbdevice.c:1048: error: invalid conversion from `char*' to `char'
dvbdevice.c:1054: error: invalid conversion from `char*' to `char'
make: *** [dvbdevice.o] Error 1

cu
gerald





Home | Main Index | Thread Index