[mythtv-users] analog side of hvr-1600 and hvr-2250

Michael T. Dean mtdean at thirdcontact.com
Tue Dec 3 01:41:26 UTC 2013


On 11/26/2013 08:58 PM, R. G. Newbury wrote:
> On 11/26/2013 06:18 PM, Doug Lytle wrote:
>> fordy ydrof wrote:
>>> Is anyone here successful at using the analog inputs on the hvr-1600
>>> and hvr-2250?
>>
>
> The modules for the HVR-2250 card work properly only when loaded in 
> the correct stack order. Unfortunately, due to some weird set of 
> conditions, that does not happen. I had some recordings where the 
> sound is very 'muddy' and muffled. I have not had that since I started 
> forcing the correct load order: that is, *I* do it, by a script.
> One weird bit is that you have to 'unstack' the modules in the correct 
> (wrong) order.
>
> Here is the chunk of script from my rc.local file which gets called at 
> the end of bootup.
>
> # These steps are required to install the modules in the correct order
> modprobe -r tda18271
> modprobe -r s5h1411
> modprobe -r saa7164
> modprobe -r s5h1411
> modprobe -r tda18271
> modprobe -r s5h1411
> echo "  Ignore FATAL error messages above if next lines are empty"
> lsmod | grep tad18271
> lsmod | grep s5h1411
> lsmod | grep saa7164
> echo "  No output means modules were properly unloaded"
> modprobe  tda18271
> modprobe  s5h1411
> modprobe  saa7164
> echo "  Modules re-loaded in proper order"
>
> The *ANALOG* module is the saa7164 and must be last.
> THEN and only THEN, you can restart myth.
>
> So the script kills any existing myth programs, and restarts the service:
>
> result=`ps -ae | grep mythbackend`
> out=`echo $result | awk '{ print $4}'`
>
> if [ "$out" = "mythbackend" ] ; then
>     killall mythbackend
>     killall mythlogserver
>     killall mythcommflag
>     killall mythfrontend
>     rm -f /run/mythtv/backend.pid
>     echo "Killed existing processes"
> #    echo "Now ready to start mythbackend, with 
> /lib/systemd/system/mythbackend.service;"
> fi
>
> #/usr/bin/systemctl status mysqld.service
> /usr/bin/systemctl start mythbackend.service
> /usr/bin/systemctl status mythbackend.service

FWIW, this is the type of problem udev was made for.  It allows you to 
tell the system the proper order to load modules, so that you don't have 
to let the system load them in random order, then have a script remove 
them, then load them in the proper order.

For example, this is the /etc/modprobe.d/usb_host_controller_order.conf 
file I have that ensures the EHCI modules are always loaded before the 
OHCI or UHCI modules:

install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe 
--ignore-install ohci_hcd $CMDLINE_OPTS
install uhci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe 
--ignore-install uhci_hcd $CMDLINE_OPTS

Mike


More information about the mythtv-users mailing list