• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Intel Compute Stick + USB tuner = recording fail?

Ken g6

Programming Moderator, Elite Member
Moderator
I have a USB TV tuner that I use for recording TV. A Hauppauge WinTV-HVR-950. (Not 950Q.) On normal desktop and laptop computers it works very well - at least as well as can be expected in my location. I've recorded hundreds of hours of video with it, and it's still working on my laptop.

I normally use the stick on my old Pentium-M laptop with Puppy Linux, but that's getting very old so I decided to get an Intel Compute Stick to try to replace it. I got the Linux version for $70 on sale on Black Friday, but I've been putting off setting it up. I finally got it set up last weekend, worked out the bugs in my 400-line Bash script so it was recording something, and set it to record the Oscars.

It got about 6 minutes of that multi-hour event before it stopped. And I can't figure out why it stopped. I tried a couple more recordings; none lasted their full duration and both stopped after less than an hour. The script is a complicated wrapper for two simple steps: run azap to set the channel, and run dd to record the input. I'm not seeing how that could have failed in software when it did record something.

So I'm wondering, do you think the Intel Compute Stick is just not able to power the USB device properly? I don't think I own a powered USB hub to test that theory. Any other brilliant ideas?
 
It could be some type of error during dd. Did you try using the options "conv=noerr,sync"? A bus or other io hiccup might be occurring which dd detects as a read error and exits.
 
I should have posted the dd line, at least:

Code:
dd if=/dev/dvb/adapter${DVB_DEVICE_NUM}/dvr${DVB_DEVICE_NUM} of=${FILE_NAME} bs=2M conv=noerror,fdatasync

Is that basically the same? I did see a few errors - which is also undesirable - but they didn't seem to correlate with the recording stopping.

CPU throttling maybe?
I hope not. A Pentium-M laptop with 1 core can do it, but an Atom with 4 cores can't? 😕
 
Linux drivers on an atom powered pc stick, I wouldn't know where to start. Clearly something does not work as it should.
 
I should have posted the dd line, at least:

Code:
dd if=/dev/dvb/adapter${DVB_DEVICE_NUM}/dvr${DVB_DEVICE_NUM} of=${FILE_NAME} bs=2M conv=noerror,fdatasync

Is that basically the same? I did see a few errors - which is also undesirable - but they didn't seem to correlate with the recording stopping.


I hope not. A Pentium-M laptop with 1 core can do it, but an Atom with 4 cores can't? 😕

Yeah your options for dd are essentially the same options as the one I posted. Dd is single threaded (anything of this nature is single threaded reading from a single device data line). You might want to try changing the block size around to see if there is something more optimal (I suspect optimal would align with the USB driver buffer size, so you might need to do a little digging to find what that value is for that piece of hardware).

That all being said, I don't know why it would fail without some kind of message...
 
It would seem that you need to rule out USB power as a problem before killing yourself with other solutions. Find a powered USB hub.
 
Back
Top