Tuesday, April 17, 2007

homemade DVDs in a dodge caravan

Last year we bought a dodge caravan with an in-house dvd entertainment system. Great! The kid loves the wiggles and if we can make a long trip manageable, all the better. However, it seems that all my homemade movies just wouldn't play....loss of A/V sync, choppy video, it'd take 5 minutes to read the disc, most of the time it'd just fail.

I'd done some reading that implied that I needed to use DVD+R media and set the booktype to ROM so that the player would think it was a pressed DVD. So, I tried that, but the player said there was no disc.

A bit more googling led me to a groups post that said something about menus.....none of the DVDs I create have menus....it's just easier without. So, I recreated a DVD with menus, and whaddya know? It worked. Odd that the mere presence of menus affect the ability of the player to decode video and keep sync.

UPDATE 2008-01-19: seems that the stupid player doesn't like DVD+R discs....stick with quality DVD-R!

Monday, April 9, 2007

freebsd printing with CUPS and a Samsung ML-2010

When I was running ubuntu last year I vaguely remember using my Samsung ML-2010 printer without too much fuss.....I think I found something in the excellent ubuntu forums that suggested using the ML-4500 driver....and it worked. Didn't always print nicely, but it pretty much worked out of the box.

So, yesterday I needed to print something....searching for FreeBSD+ML-2010 yielded little to no results, and nothing useful. In fact the top hit in google groups was a post by a guy I went to university with - but nobody responded to him. So, I embarked on my own journey. CUPS was already installed. I didn't really bother trying LPD cause I thought it'd be neat to print from any computer in the house via this box.

dmesg showed that I had /dev/ulpt0 - perfect. I started up CUPS, used my browser to view the web interface at port 631, and ran through the setup wizard to add my printer. But nothing samsung listed? So, I search the web for what to do next....turns out I need a PPD file for my printer.....samsung's website has one for linux....so I tried that.....completed the work in the web interface, print a test page.....and it complains. Missing some kind of filter? I guess I needed more than the PPD file.

So, keep searching.....splix a third party samsung driver.....but there's no freebsd port in /usr/ports :( As it turns out, there is one in CVS as well as several postings in the news group about creating the port files. After following the instructions in the PR report 111034
I had the port files.....but the Makefile had issues.....missing operator on line 34......there were spaces where there should have been tabs....copy paste error on my part. Forgot Makefiles were so damned picky about tabs.

So, I built the port, installed it....re-created the printer using the CUPS web interface. Print a test page and I get "Unsupported format 'application/postscript'!". Odd. Let me try from the command line......

/usr/local/bin/lp -dditdy-printer ubuntu and debian that claim this error was due to a missing file on those distributions with CUPS 1.2.3 - the file pstoraster.convs. Well, this file ain't on my system....."locate pstoraster" led me to /usr/ports/print/cups-pstoraster. Hmm....a seperate port.....wonder why something that seems so fundamental wouldn't be installed....? Well, I installed it, restarted CUPS tried the test page and no unsupported format complaint.

But the job sat in the queue. PR-99460 solved that issue: in printers.conf change deviceURI from usb:/dev/ulpt0 to file:/dev/ulpt0. CUPS won't be able to query the device but printing should work.....so I ran a test page after restarting cups and it appears to have completed (I did the test remotely, will have to wait until I'm home to see if it worked!).

Ugh....that was long and painful!


UPDATE:

I got home to find pages printed with errors listed on them. I can't remember the specific error, but suffice it to say that I'd used splix-1.0.1, and they'd recently released splix-1.0.1-1 specifically to workaround a firmware bug in the ML-2010. However, building this new splix might be an issue.....to start the tarball is half the size of the previous rev.

I did a diff on the two versions, and there were a few files changed as well as rastertospl is missing in the latest? I tried to build 1.0.1-1, but it complains about missing some tool ppdpo? Apparently that's part of the cupsddk, which I couldn't build either. OK, dig deeper.

A closer look at the diff shows that only one relevant file changed.....src/spl2.cpp had a two line change.....so I copied the file over to the 1.0.1 folder, repackaged the tarball, put it in /usr/ports/distfiles and tweaked the port's distinfo file to have matching MD5 and SHA256 signiatures and matching file size. Rebuilt and installed, printed a test page and it worked!

Tuesday, April 3, 2007

MOre FreeBSD upgrade woes - large FAT32 partitions

After the upgrade to FreeBSD 6.2 I could no longer mount my 250G FAT32 partition? mount_msdosfs was complaining that the partition was too large. Turns out there's a kernel configuration options MSDOSFS_LARGE that needs to replace the standard MSDOSFS option in the GENERIC kernel. I guess PC-BSD had it enabled in the GENERIC kernel. So, I rebuilt the kernel....kinda wanted to stick with the GENERIC kernel since I don't want to add anything more to the plate of things I have to remember to maintain, but in the end I guess it's for the better since I was able to disable a whack of stuff in the kernel and ideally it will run quicker/smoother.

Monday, April 2, 2007

CD/DVD burners lost after FreeBSD upgrade

So, after an upgrade to 6.2 k3b no longer detects my DVD/CD burners? After upgrading all my ports and packages (and breaking a few in the mean time), it turns out that atapicam wasn't loaded....must have been in the GENERIC kernel for PC-BSD. Whatever. Adding atapicam_load="YES" to my /boot/loader.conf should fix that.

Intel E7221/i915/i810 video on FreeBSD

My PC-BSD 1.3 installation was based upon FreeBSD 6.1. My Dell SC420 has Intel E7221 on-board video which is based upon the i915 which uses the i810 driver. However, dmesg told me that it was using the isa-vga driver. Things were sluggish....after a while, switching windows would take a few seconds. my Xorg log said that /dev/agpgart wasn't found? Sure enough, nothing. After much searching, it seemed my best be would be to upgrade my kernel and source as the latest i810 driver had made some significant improvements.

So, I upgraded to 6.2 - unfortunately this didn't help. I found several posts that said to hack vga_pci.c to always create an agp device. But vga_pci.c doesn't even seem to be in the source anymore?