2009-05-16, 19:30
Thanks much for the feedback, I have made a moderate number of changes to help manage some of the problems that have been noted.
Fixed link for new version is in the parent post and here:
http://www.mediafire.com/file/wvrmmiywlm...er-1.1.zip
First change: all the default config options are now in a separate config file. This was done specifically because the Windows exe hides all the underlying goodies for the program, and I wanted to allow these things to be changed a bit more easily. In my experience, Windows users are not as comfortable with command prompt options. However, they might not be comfortable with a config file either. One thing to note: The config values are not specifically validated, so if you put in really bad sizing (negative or 1x1), or put in crop offsets outside of 100%, you will likely get no thumbnails or really really bad ones.
Crop/padding and aspect handing has been completely rewritten. There is a new padding option that controls how the images are padded or cropped. You can choose none (all images are cropped to aspect), height only (wide images cropped), width only (probably not really useful) and all (also might not be too useful). I've also finally figured out why FFMPEG seemed to botch crops so badly, and crop aspects should be accurate and centered. Because centering might not be what everyone wants, I have added an cropping offset option. This is a percent offset value, so 100% moves the crop all the way to one side of the frame. Values are positive or negative.
I noted occasions where badly encoded files cause FFMPEG to crash or get stuck. I have added handling for these situations to kill FFMPEG if it takes too long to find frames. By default the timeout is 60 seconds, and if it reaches this time, it assumes the whole file is bad and just skips the movie. Because of this change, the Win32 version is now a specific subset of code. This is due to how windows handles processes differently from Linux/Unix. I tried to keep them working together, but because of the way Win32 fork and exec work together (they don't), I had to diverge the code a bit. So, if you choose to run the Perl script version under windows, use the thumber.win32 script in the "src" directory. Everything has been tested on both Windows and Linux.
Some other minor changes:
Rad: You can now select either a default width or height and it will resize the missing dimension based on the aspect ratio from the config. For example, if your config is 1280x720 (16:9) and you just use a -x 960 option, your thumbnail will come out 960x540. If you set BOTH width and height, this becomes your new aspect ratio (it completely overrides the default). Also, since you didn't like letterboxing, you should set the aspect padding to none in the config and it will crop everything for you.
phoenx97: For the image processing ideas... I am still considering the right plan of attack for this. Right now, I am looking at patching XBMC itself to allow use of thumbs on multipart movies in the skins. Right now, that isn't working in XBMC itself.
Hitcher: You were right about the bug with adding the extrathumbs in the "root" scan folder. I've fixed this problem.
paul: Hope I fixed the VTS/VOB parsing. Let me know if it works for you. Note that because of the ListItem stacking issue in XBMC, your thumbs probably will not appear anyway unless you only have one VOB in the folder.
Thanks.
Fixed link for new version is in the parent post and here:
http://www.mediafire.com/file/wvrmmiywlm...er-1.1.zip
First change: all the default config options are now in a separate config file. This was done specifically because the Windows exe hides all the underlying goodies for the program, and I wanted to allow these things to be changed a bit more easily. In my experience, Windows users are not as comfortable with command prompt options. However, they might not be comfortable with a config file either. One thing to note: The config values are not specifically validated, so if you put in really bad sizing (negative or 1x1), or put in crop offsets outside of 100%, you will likely get no thumbnails or really really bad ones.
Crop/padding and aspect handing has been completely rewritten. There is a new padding option that controls how the images are padded or cropped. You can choose none (all images are cropped to aspect), height only (wide images cropped), width only (probably not really useful) and all (also might not be too useful). I've also finally figured out why FFMPEG seemed to botch crops so badly, and crop aspects should be accurate and centered. Because centering might not be what everyone wants, I have added an cropping offset option. This is a percent offset value, so 100% moves the crop all the way to one side of the frame. Values are positive or negative.
I noted occasions where badly encoded files cause FFMPEG to crash or get stuck. I have added handling for these situations to kill FFMPEG if it takes too long to find frames. By default the timeout is 60 seconds, and if it reaches this time, it assumes the whole file is bad and just skips the movie. Because of this change, the Win32 version is now a specific subset of code. This is due to how windows handles processes differently from Linux/Unix. I tried to keep them working together, but because of the way Win32 fork and exec work together (they don't), I had to diverge the code a bit. So, if you choose to run the Perl script version under windows, use the thumber.win32 script in the "src" directory. Everything has been tested on both Windows and Linux.
Some other minor changes:
- I've changed the default image size to 960x540, which is still 16:9. If you want a different aspect/size, you can change this in the config file. All the aspect calculations are based on your desired thumb size and the aspect padding option.
- New movie types add as per request (mp4|divx|xvid|m2ts). These are now kept in the config file.
- Program output is put in a logfile in the program directory. This allows you to easily see where errors occurred.
- You can set the "extrathumbs" directory in the config file.
- FFMPEG included with Windows handles errors much better and does a better job on HD MKV and WMV files.
- VOB multipart file creation was non-existent. I did fix and test this. Right now, this only creates thumbs for VTS_1, no other VTS sections will be processed. It is assumed this is your main movie. Let me know if this needs work.
Rad: You can now select either a default width or height and it will resize the missing dimension based on the aspect ratio from the config. For example, if your config is 1280x720 (16:9) and you just use a -x 960 option, your thumbnail will come out 960x540. If you set BOTH width and height, this becomes your new aspect ratio (it completely overrides the default). Also, since you didn't like letterboxing, you should set the aspect padding to none in the config and it will crop everything for you.
phoenx97: For the image processing ideas... I am still considering the right plan of attack for this. Right now, I am looking at patching XBMC itself to allow use of thumbs on multipart movies in the skins. Right now, that isn't working in XBMC itself.
Hitcher: You were right about the bug with adding the extrathumbs in the "root" scan folder. I've fixed this problem.
paul: Hope I fixed the VTS/VOB parsing. Let me know if it works for you. Note that because of the ListItem stacking issue in XBMC, your thumbs probably will not appear anyway unless you only have one VOB in the folder.
Thanks.