Thursday, March 15, 2007

JVC Everio and making a DVD

Last year when I was looking to buy a camcorder I discovered that there was basically three kinds on the market - miniDV, dvd, and hard disk. I didn't want to have to spend hours on end transcoding video from a miniDV cam as well as having to deal with adding a firewire card, etc. Nor did I want to have to waste a lot of money buying the dvd-ram media that a dvd camcorder would require. For me it's all about making the most of my time. So I bought a JVC Everio GZ-MG20 hard disk camcorder. The everio records video in mpeg2 format and audio in ac3. Perfect - already in dvd ready format. As well, the fact that the transfer mechanism is USB and the hard disk shows up as a mass drive, makes it even simpler.

Now - when the hard disk almost filled up I decided it was time to make some dvds. So, I installed the windows software that came with the unit - power producer I think. I fed it the whack of files....created some menus, and expected it to simply author a dvd structure for me. But instead it started transcoding the video - it was going to take several hours?!?! But the whole point of recording in mpeg2 is so that it wouldn't be necessary to transcode.

So, I searched high and low and tried several dvd authoring packages - but all insisted on transcoding. Until I found TMPGEng DVD Author from Pegasys software. It let me create a few menus and create a dvd structure and it only took as long as the vob structure took to write to disk.

I have two issues with this software: first, it only runs on windows.....now that my desktop is BSD.....the second issue is that I would have liked for the chapter names of each of the videos to be set to the filename automatically, or at least an option to specify.....I run a script over the video files that renames them to the date that they were created....for this purpose. TMPGEnc automatically names each chapter as chapter 1, chapter 2, etc. Manually renaming 100 files is tedious at best, so I have settled for letting it name them this way. I also keep raw archives of the videos on dvd and my server, so the filenames/dates will be preserved there.

There were a couple of other nice options it provided - there is the ability to create a DVD without menus, as well as having the first action (when inserted into a dvd player) to play all tracks sequentially (when using menus).

So, in the end, for windows, TMPGEnc DVD Author seems to be the best solution for authoring DVDs. The reason for this post is as a precursor to some posts I hope to make regarding my trials and tribulations of authoring DVDs on BSD/Linux.

Tuesday, March 13, 2007

splitting and joining avi files

I captured some old home videos from VHS on to my computer using my Adaptec Gamebridge 1400 (not recommended, will hopefully post about it later). I'd converted them to MPEG4 using mencoder and ffmpeg.

I had a file that ran too long....needed to chop off part. I loaded the file into vlc, figured out the time at which I needed to stop (1:35:32) and used "avisplit":

avisplit -i movie.avi -t 01:35:32.00

I also had a couple of files that needed to be one so I merged them using "avimerge":

avimerge -o outfile.avi -i infile1.avi infile2.avi

Note, the -i and files need to come last!

Both avisplit and avimerge appear to be part of the "transcode" package.

Wednesday, March 7, 2007

ssmtp on freebsd

I've been using FreeBSD off and on since version 3.x was considered leading edge. I never cared much for keeping close tabs on the logs and overall operation.....I'd update when I had the chance, have a look at the logs, see what's been happening. I found sendmail filling my logs to be quite annoying - I didn't want to be emailed cron output. So, I disabled sendmail in rc.conf.

However, I have little spare time and so having an email in my inbox each morning with a summary would now be useful. So I re-enabled sendmail, but as it turns out, as is with many ISPs nowadays, outgoing connections to port 25 are disallowed - so having my server send the email directly (to my gmail account) wasn't gonna happen. So, looks like the default sendmail configuration wasn't going to work. A bit of googling told me that sendmail configuration was gonna be rough. So....I looked for an alternative. Enter ssmtp.

ssmtp is a simple MTA sendmail replacement that I found while looking at the FreeBSD handbook. It provides simple configuration for sending outgoing mail only - which is all I want to do. This gentoo how-to was also quite helpful (as many gentoo postings are).

I made copy of the sample ssmtp.conf file in /usr/local/etc/ssmtp/ and added the following:

root=email_addr_to_send_root_emails_to
mailhub=isp_smtp_server
rewriteDomain=domain_emails_should_appear_from
hostname=computer_hostname
AuthUser=isp_email_login_id
AuthPass=isp_email_password


As I said, my ISP won't allow connections to port 25, so I have to use their smtp server, thus the need to provide authentication credentials.

Test with:

echo "testing mail service from my host" | mail root

And a few minutes later I see an email from my host.

Tuesday, March 6, 2007

rtorrent & dtach

My search for a new torrent client has come to a close with the winner being rtorrent.
It provides an ncurses interfaces and encryption! Perfect. No more having to deal with a resource hungry GUI. Unfortunately the port for rtorrent didn't include a default rc file or create on upon first run. So, I downloaded the rc file from the website, tweaked it to my liking and off we go.

During my search I stumbled upon people suggesting the use of "GNU screen" to be able to allow rtorrent to run in the background, yet be able to attach and detach from the application at will and from remote locations. Cool.

However, I also saw a lot of posts about GNU screen being bloated, slow and awkward to use - and most suggested dtach instead: a fork of GNU screen that has been trimmed down.

So after installing rtorrent and dtach and reading the man pages I gave it a go:

dtach -A /tmp/rtorrent.dtach rtorrent

The program starts....I add a torrent file (the backspace key)....and sure enough it runs like a charm. ctrl-\ and I've detached. dtach -a /tmp/rtorrent.dtach and I'm attached again.

dtach will definitely come in handy when remotely installing ports/packages or building something that will take longer than I can keep a remote session open. Sure a build can be done in the background, but portupgrade requires an attached terminal because it may ask questions of the user.

utorrent & *nix

So, I'd been using uTorrent for quite some time - excellent program! Extremely small footprint, efficient and well designed. Other than some of the sysinternals tools, I haven't seen a windoze program that is within the same class. My only beef with uTorrent is that it's not open source.

So, I recently switched away from windoze on my desktop....was on ubuntu for a while, but in the end I'm a FreeBSD kinda guy and thought I'd give PC-BSD a try. I really like it.

So, what to do for a torrent client? Azureus is a pig. I need encryption 'cause my ISP is throttling. Ktorrent? Didn't work to well....even with encryption enabled, my DL/UL rates were significantly worse than with uTorrent.

So, as it turns out, uTorrent runs on top of wine! Okay, so now my speeds are back up....but.....wine is taking up 40% of my CPU usage at all times! So much for a really efficient torrent client.

Next?