Sunday, May 30, 2010

How To Treat Eyebrow Waxing Burns

Beetle alarm

Just now I received encouraging you mail that my desktop nova

packages in the official Debian archive

were accepted. This means that they should also find its way into the next version of Ubuntu. :)

project I already built packages for Ubuntu and later for Debian. These were not "officially" on the distribution, but had to be manually downloaded. Ubuntu users could also incorporate

my PPA, but this is still a small intermediate step. Then I found a bug in the Debian bug tracker, which incited to package my project for Debian. I immediately assumed this task themselves. While it was not easy in the process hineinzufinden, but I finally managed to have a competent and Mentor found which made me aware of mistakes and gave me instructions. Thank you in this regard Laszlo Boszormenyi

, who sponsored my packages. ;)

I must say that I have learned a lot and I can build with the advice clearly better packages than before. This is of course also benefit packages in the Ubuntu PPA. If I find any good free future software that is not yet in the Debian repository, I will definitely try to create more packages.

Debian is no longer the only distribution where

desktop nova is included. In the AUR (Arch User Repository) of Arch Linux, it is thanks alessandro_ufms

also mentioned for some time

.

Saturday, May 29, 2010

How To Remove Webcam From Usb Port

nova desktop 0.8 is now officially in the Package collection

All code and terminal blocks in the blog and on the homepage präformatiert using \u0026lt;pre> blocks are shown. However, these destroy the layout quite simply, if the horizontal width of the text is too big. The text is most easily displayed and then overlays the other content or is even completely out of the page. This is of course not desired. But a break is usually not the optimal solution, significantly affected because just at the source code of automatic word wrap the importance (for copying \u0026lt;pre> the content of the blocks are not copied it, but on the page but it looks funny.) Some time ago I have so little on CSS code rotated to automatically scroll bars are offered and the . height of the block is limited in size:

pre {/ /

"normal" formatting

 color: # 444   ;    background-color: # f5f5f5   ;    border: 1px       solid # 666  ; Margin   :    1em;    padding: 0.5em   ;  / /  scrollbars  &  Groessenbeschraenkung    overflow: auto   ;  max-height  :    500px;}  This works reasonably well already, but refused all WebKit-browser horizontal scroll bars to display. Instead, the text within the \u0026lt;pre> blocks was simply wrapped, although I did not want just that. The solution to the problem is with the CSS 3 property called "word-wrap" . Simple:   post   pre   {/ /  "normal" formatting  
 color: # 444   ;    background-color: # f5f5f5   ;  border  :   1px solid      # 666;    margin: 1em   ;    padding: 0.5em   ;  / /  scrollbars  &  Groessenbeschraenkung  overflow  :   auto ;  max-height  :   500px ;  word-wrap:  normal ; }   Even if the value is "normal" actually suggests that this setting is also standard, this seems to WebKit not to vote at least . By default, WebKit seems to be "word-wrap: break-word" to work for präformatiertem text.   The disadvantage of this entire method is that the text is simply cut off (as in "overflow: hidden") if no scroll bars can be offered. This is for example in systems with touch screen like the iPhone the case. However, it is with these devices well hardly see through the complete source code and do it first is better than nothing;)     

Sunday, May 23, 2010

Championship Belt Online

WebKit with "abnormal" \u0026lt;pre> blocks

The

dirlisting.py script

I need almost daily. However, I came up with the old version very quickly to its limits. In time it became more and more difficult to install improvements, since the source code was too messy easily. own bottom. Here is a list of all features:

all Python versions 2.5 and 2.x series are officially supported. (However, it can also work with older versions.)

Full Unicode support. The output code is clean and valid and has also indentation, so that a post-processing by humans or script simple.

The content of this page was separated from CSS and Javascript. It is possible for CSS and Javascript directly into the HTML page, or specify an external source. (The script can be optional of course just print the CSS and JavaScript code so that it can be stored in separate files.)

    The Javascript component was greatly improved. The generated page, however, can also use without active Javascript.
  • The title is changed.
  • You can specify a file into which the script writes the output. Furthermore, attempts to exclude from the output file is the file listing.
  • support for Unix-like operating systems and Windows.
  • An example page for the output of the script is the download page
  • all my current projects
  • . The output of the script was, however, in this case piped through a small sed script. The difference from the normal output of the script is minimal (mainly replaced the "git" directory completely).
  • Over time, certainly include further improvements, depending on what I need now.

Sunday, May 16, 2010

What Causes Mottled Hands

dirlisting.py 0.2 - neat and now ...

accumulated in recent days, the new versions around the "DVR-recover" project. By now the version is 0.4 currently. The changes, however, keep within bounds, the patches fall from relatively small. However, some improvements have been opened:

Version 0.3:

The settings file will now be charged no more, if the parameter was specified "sample_settings. (The file should be created only with the parameters, a previous opening pointless.) To avoid misunderstandings, were replaced some terminology and standardized.

    The help message is now more information on the bracket. They can not be taken in the settings file, otherwise errors to occur.
    • Version 0.4:
    • The parameter "test_settings" now is not the list of input files as Completely. The output from Python brackets and "unescapten Strings were confusing. Instead, each input file in a separate line is "file-hdd" to spend it. This is also the syntax of the settings file.
    • Before the lengthy process of the scan is started, is now trying to create Chunklisten file. This prevents an error message after the completion of the process, if the file can not be written. It is extremely unfortunate if the script fails after four hours of work on such a simple mistake and all results are lost.
  • As always all the information to the script on my to find
    • homepage.
    • But what next? I think I will develop the project is still active for some time. The next goal is to switch to a Sqlite3 database. This makes it possible for the on-demand data
    can be queried and the list will not be held in memory. It is also possible that records are kept on the progress of collective action. It would then be possible that you can interrupt the process can continue without loss and later convicted. By Sqlite3 database and the transaction model, it is also atomic
, an inconsistency of the data is prevented. I also have the overviews of the code a few logic errors discovered. These do not seem serious, since even some users were able to save about 60% of their data. A better rate is unthinkable in my eyes. Later, the user guide be simplified. All settings are in the database, the settings file will be abolished. Before the first usage, the script prompts you interactively for the required settings. Well, then I'll see how the interest in the project developed and eventually the project will rest in peace.

Thursday, May 13, 2010

How To Adjust Propane Flame

DVR-recover 0.4 - What's Next?

The script worked to rescue the images of disk digital video recorder in itself is quite good. However, the disk image had to necessarily present in a single file. The script was with multiple files that represent the hard drive fragmented into separate parts, do nothing. But with version 0.2 of DVR-recover part of the problem of the past. The script handles multiple files now works as a single large file. This enables the hard disk image into pieces such as 4 GiB to share. was also reported that the script also works with Panasonic DMR-EH57

More about DVR's to recover the project page

.

Sunday, May 9, 2010

Replacing Toilet Seat On K-3386

DVR-recover 0.2

gave it this Easter Year to the usual "surprise" was a quite unexpected. My uncle brought a defective hard disk recorder. After a rather short diagnosis, it was clear that the appliance could be fixed, unfortunately not so simple. The DVD drive is broken, so it's impossible to get the data from the device down. This seems to be a "fad" (DMR-EH56 Panasonic) to be attached to the device, since many users complain of a rapid death of the drive. In our particular case, the engine went from the drive no longer reliable, so that the DVD was not even turned on properly. Unfortunately, can not exchange the unit because it no ordinary DVD drive PATA port, but a kind custom made. The drive itself has no controller logic, which is located away everything on the board the rest of the recorder. At this point, can wangle so much.

Theoretically, the device is still operational, but you get just the shots simply do not get off of the device. This is somewhat unfavorable. However, in the recorder still incorporated a standard PATA hard disk on which all recordings are stored neatly (but it takes much to * g *). So the plate was just plugged in to a USB HDD controller, and lo and behold, the plate was detected. However, the contents were not detected, which is not surprising, since the panel had no partition table. Panasonic also seems to use a known file system. Previous models have used old file system from the number-ext. Nevertheless, I succeeded in many (or all, I do not know, because it was not my recorder) to completely copy pictures from your hard disk. How exactly proceeded follows: (Note, it is treated and the technical background who will not know that, but would like to know just how he can possibly save the images with the script I developed, which should continue to read below. : D) First, I examined the hard disk in a hex editor. According to a found string was the board assembly with a file system of the name "MEIHDFS. Google provides for this search phrase no less than three results! So this is a dead end, because in order to analyze the file system itself and to "decipher" by reverse engineering I miss a) the know-how, b) the period of several decades, and most importantly c) something the freaky;).

is Funnily enough, the file system is relatively low on the hard drive. Before that you will not find much. The majority are all zeros, which probably should not have a larger purpose. In between then again something else. Presumably, these are the firmware for the device. In Internet forums can be found repeatedly that the devices do not work with a brand new identical hard disk, probably because it lacks precisely this firmware there. But well, in principle, I do not care.

The next step for me was that I used the hex editor to the search pattern "00 00 01 BA (hex) sought. Each header of an MPEG program stream that is starting with exactly this "sync byte". Luckily I found one. Apparently, the recorder saves the recordings as directly as MPEG stream in a proprietary file system-yourself. It was noticeable that all the "sync byte" were at a distance of exactly 2048 bytes. Accordingly, the works So file system with a block size of 2048 bytes (I can not guarantee that this is always the case with the unit but it is definitely the case). So, one approach is not available. Now it's down to business:) now so you could read the MPEG packets, but how do you know when a film begins and ends? After all, the data is fragmented on the hard disk, so not written continuously. The drive writes at the exact spot of the disk where he has just the place. A film must thus not necessarily in a row, and continuously stored in the correct order.

precisely for this task I wrote a Python script that the different parts of the images seen, sorted, recognize parts of the same shots and automatically dumped to output in files.

The script reads the hard drive (or a copy of this) in blocks (block size, the above-mentioned 2048 bytes, but is configurable) and see if the block is an MPEG-Chunk. The required specifications can be found well described in the English Wikipedia

. First, the correct occurrence of the "sync byte" and then checked that the "marker bits". If these "tests" have been passed, it is therefore an MPEG-Chunk. That will immediately make the existing 33-bit from the System Clock Reference to "read. Where have now two consecutive MPEG-chunks too large a deviation in the "system clock" value, you are probably not connected, at this point begins a new part of a recording. But what is a great value? Since the "System Clock" 90 000 times per second "tick", I have a difference of 90,000 ticks used as a border. In my tests this worked wonderfully.

Now you can so any cuts on your hard drive to locate. But the complete recording would have still put together by hand. Also, no optimal solution. The script is still just able to do! For this purpose, it compares the "System Clock Reference "at the end of a part with the beginning of another. If these are close to each other (difference

Now everything is together and the pictures just have to be read out and named. The whole process takes several hours to script, that script works most of the time but completely autonomous.

problem is only advertising . If that was previously cut out and the recorder advertising fragments has already been overwritten, the camera is not recognized as a whole. Since hand labor is required. Also you can find before and after many recordings still advertising. Both problems can, however, relatively simple video editing programs such as Avidemux resolve.

But how to use the script now?

< 90.000 Ticks) gehören beide zur gleichen Aufnahme und müssen nur „zusammengeklebt“ werden. (Ein Glück, dass das MPEG-Format relativ einfach aufgebaut ist *g*)

First: If you think that the hard disk image is important: Creating a backup. I assume no warranty.

Downloade extract and the script (or copy from the Git repo pick) and Shell Open:

$ cd / path / to / script $ python DVR usage recover.py

This should reduce the usage-information display. Creating configuration file: $ python

DVR recover.py sample_settings

configuration file editing (See Usage The most important settings are:. "hdd-filename", "chunk-filename" and "export-dir")
 
chunk list to create: (!. Takes a while I am here only a very small part of the HDD have read) If the process is not complete, any data collected will be lost! The script stores the information until the very end!

$ python DVR recover.py create [46.8%] 471420/1006929 blocks (15713.9 bl / s; 30.7 MiB / s): 6 chunks [93.5%] 941768/1006929 blocks (15678.2 bl / s 6.30 MiB / s ): 6 chunks Finished. Read 1006929 1006929 of blocks. Found 7 chunks. Took 64.08 seconds. Average speed was 15714.0 blocks / s (30.7 MiB / s).

's Chunk info:
 
$ python DVR recover.py show

Sort chunks:

$ python DVR recover.py sort
 
chunk info again View:

$ python DVR recover.py show --+--------------+---- ----------+--------------+--------------+--------- ---- chunk: start # 0 Chunk: chunk size 391 379: 615 548 42.22s (14579.92 blocks / s; 28.48 MiB / s). [...]
 
That was just a brief introduction. I hope it was somewhat understandable.

Simply announce to questions. Would be good if I am told that the script works or not (and what hard drive recorder models, it works).
 
More Script:

 
site

 
Download

 
Have fun!