mirror of https://github.com/mpv-player/mpv
v3.0
Features: - hopefully finally works out-of-the-box after ./modules (report if not) - nice Display Identifier, as in Windows (big "1" and "2" letters on heads :) TODO: - autodetect if fbset, matroxset, con2fb are installed git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@10238 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
cc1edea30e
commit
fe5e2c052b
195
TVout/matroxtv
195
TVout/matroxtv
|
@ -1,14 +1,15 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#
|
#
|
||||||
# Gabucino - no warranty, this script can BOOM your TV and/or monitor, or else.
|
# Gabucino - no warranty, this script can BOOM your TV and/or monitor, or else.
|
||||||
# v2.5
|
# v3.0
|
||||||
# This script has been tested and configured on a Matrox G400DH, a PAL TV,
|
# This script has been tested and configured on a Matrox G400DH, a PAL TV,
|
||||||
# a 14" analog and a 15" digital monitor.
|
# a 14" analog and a 15" digital monitor.
|
||||||
#
|
#
|
||||||
# INSTALLATION:
|
# INSTALLATION:
|
||||||
# 1. READ MPLAYER'S TVOUT DOCUMENTATION!
|
# 1. READ MPLAYER'S TVOUT DOCUMENTATION!
|
||||||
# 2. Edit 'defaultmode', 'TVdefaultmode', and 'SetTVstandard' functions
|
# 2. Choose proper mode at 'defaultmode', 'TVdefaultmode',
|
||||||
# below to fit your needs.
|
# and 'SetTVstandard' functions to fit your needs.
|
||||||
|
# You normally shouldn't touch anything else.
|
||||||
# 3. Remove 'exit 1' safety check.
|
# 3. Remove 'exit 1' safety check.
|
||||||
#
|
#
|
||||||
|
|
||||||
|
@ -31,20 +32,20 @@ function TVdefaultmode {
|
||||||
##
|
##
|
||||||
|
|
||||||
# 640x512 80Hz 32bpp
|
# 640x512 80Hz 32bpp
|
||||||
fbset -a -depth 32 -left 60 -right 0 -upper 70 -lower 39 -hslen 76 -vslen 4 -xres 640 -yres 512 -bcast true -laced false
|
fbset -fb $1 -a -depth 32 -left 60 -right 0 -upper 70 -lower 39 -hslen 76 -vslen 4 -xres 640 -yres 512 -bcast true -laced false
|
||||||
# 640x528 83Hz 32bpp
|
# 640x528 83Hz 32bpp
|
||||||
# fbset -a -depth 32 -left 40 -right 0 -upper 63 -lower 29 -hslen 56 -vslen 4 -xres 640 -yres 528 -vxres 640 -vyres 528 -laced false -bcast true
|
# fbset -fb $1 -a -depth 32 -left 40 -right 0 -upper 63 -lower 29 -hslen 56 -vslen 4 -xres 640 -yres 528 -vxres 640 -vyres 528 -laced false -bcast true
|
||||||
# 720x576 78Hz 32bpp
|
# 720x576 78Hz 32bpp
|
||||||
# fbset -a -depth 32 -left 54 -right -36 -upper 55 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
# fbset -fb $1 -a -depth 32 -left 54 -right -36 -upper 55 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
||||||
|
|
||||||
##
|
##
|
||||||
## NTSC modes
|
## NTSC modes
|
||||||
##
|
##
|
||||||
|
|
||||||
# 640x240 non-interlaced 32bpp
|
# 640x240 non-interlaced 32bpp
|
||||||
# fbset -a -depth 32 -xres 640 -yres 240 -vxres 640 -vyres 240 -pixclock 79443 -left 72 -right 40 -upper 15 -lower 5 -hslen 48 -vslen 3 -laced false
|
# fbset -fb $1 -a -depth 32 -xres 640 -yres 240 -vxres 640 -vyres 240 -pixclock 79443 -left 72 -right 40 -upper 15 -lower 5 -hslen 48 -vslen 3 -laced false
|
||||||
# 640x480 interlaced 32bpp
|
# 640x480 interlaced 32bpp
|
||||||
# fbset -a -depth 32 -xres 640 -yres 480 -vxres 640 -vyres 480 -pixclock 79443 -left 72 -right 40 -upper 30 -lower 10 -hslen 48 -vslen 5 -laced true
|
# fbset -fb $1 -a -depth 32 -xres 640 -yres 480 -vxres 640 -vyres 480 -pixclock 79443 -left 72 -right 40 -upper 30 -lower 10 -hslen 48 -vslen 5 -laced true
|
||||||
}
|
}
|
||||||
|
|
||||||
function SetTVstandard {
|
function SetTVstandard {
|
||||||
|
@ -68,16 +69,11 @@ function mappingreset {
|
||||||
|
|
||||||
function warn {
|
function warn {
|
||||||
clear
|
clear
|
||||||
echo "Display routing is about to come! Due to certain limitations"
|
echo "tty2 will be automatically transferred to fb1 using the con2fb utility."
|
||||||
echo "(kernel? driver?), you MUST switch ttys a few times for"
|
|
||||||
echo "these changes to take effect!!!!! After pressing a key now."
|
|
||||||
echo
|
echo
|
||||||
echo "I.e.: press alt-f1, alt-f2, alt-f3, then back to alt-f1"
|
|
||||||
echo
|
echo
|
||||||
echo "NOTE: you won't automatically get consoles on the new display."
|
echo "A big \"1\" letter will be displayed on tty1 after the change."
|
||||||
echo " To achieve that, use the con2fb utility:"
|
echo "A big \"2\" letter will be displayed on tty2 after the change."
|
||||||
echo " $ con2fb /dev/fb1 /dev/tty1"
|
|
||||||
echo " (and don't forget to change ttys a few times...)"
|
|
||||||
echo
|
echo
|
||||||
echo
|
echo
|
||||||
echo "If you read this, PRESS ANY KEY TO CONTINUE"
|
echo "If you read this, PRESS ANY KEY TO CONTINUE"
|
||||||
|
@ -85,16 +81,72 @@ function warn {
|
||||||
}
|
}
|
||||||
|
|
||||||
function warn2 {
|
function warn2 {
|
||||||
|
id1 > /dev/tty1 &
|
||||||
|
id2 > /dev/tty2 &
|
||||||
|
}
|
||||||
|
|
||||||
|
function id1 {
|
||||||
|
sleep 1
|
||||||
clear
|
clear
|
||||||
echo
|
echo
|
||||||
echo
|
echo
|
||||||
echo
|
echo
|
||||||
echo
|
echo
|
||||||
echo Routing done!
|
|
||||||
echo Change consoles!
|
|
||||||
echo
|
echo
|
||||||
echo Then PRESS ANY KEY TO RETURN to menu
|
echo
|
||||||
read
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo " ****"
|
||||||
|
echo " *****"
|
||||||
|
echo " ******"
|
||||||
|
echo " *******"
|
||||||
|
echo " ***"
|
||||||
|
echo " ***"
|
||||||
|
echo " ***"
|
||||||
|
echo " ***"
|
||||||
|
echo " ***"
|
||||||
|
echo " *****"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo " FAST console"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo " Press ALT-F1 to change here"
|
||||||
|
}
|
||||||
|
|
||||||
|
function id2 {
|
||||||
|
sleep 1
|
||||||
|
clear
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo " *****"
|
||||||
|
echo " ** **"
|
||||||
|
echo " * **"
|
||||||
|
echo " **"
|
||||||
|
echo " **"
|
||||||
|
echo " **"
|
||||||
|
echo " **"
|
||||||
|
echo " **"
|
||||||
|
echo " ** **"
|
||||||
|
echo " *******"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo " SLOW console"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo " Press ALT-F2 to change here"
|
||||||
}
|
}
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
@ -109,31 +161,36 @@ clear
|
||||||
|
|
||||||
echo " [ 0 ] Clear & blank screen"
|
echo " [ 0 ] Clear & blank screen"
|
||||||
echo " [ 1 ] Monitor only"
|
echo " [ 1 ] Monitor only"
|
||||||
echo " /---> Monitor"
|
|
||||||
echo " [ 2 ] Cloning - CRTC1"
|
|
||||||
echo " \\---> TV"
|
|
||||||
echo
|
echo
|
||||||
echo " /---> Monitor1"
|
echo " [ 2 ] Cloning - CRTC1 -> Monitor"
|
||||||
echo " [ 3 ] Cloning - CRTC1"
|
echo " CRTC2 -> TV"
|
||||||
echo " \\---> Monitor2"
|
|
||||||
echo
|
echo
|
||||||
echo " CRTC1 ---> Monitor1"
|
echo " [ 3 ] Cloning - CRTC1 -> Monitor1"
|
||||||
echo " [ 4 ] DualHead -"
|
echo " CRTC2 -> Monitor2"
|
||||||
echo " CRTC2 ---> Monitor2"
|
|
||||||
echo
|
echo
|
||||||
echo " CRTC1 ---> Monitor2"
|
echo " [ 4 ] DualHead - CRTC1 -> Monitor1"
|
||||||
echo " [ 5 ] DualHead - SWAP!"
|
echo " CRTC2 -> Monitor2"
|
||||||
echo " CRTC2 ---> Monitor1"
|
echo
|
||||||
|
echo " [ 5 ] DualHead - CRTC1 -> Monitor2 (SWAP!)"
|
||||||
|
echo " CRTC2 -> Monitor1"
|
||||||
|
echo
|
||||||
|
echo " [ 6 ] DualHead - CRTC1 -> Monitor1"
|
||||||
|
echo " CRTC2 -> TV"
|
||||||
|
echo
|
||||||
|
echo " [ 7 ] DualHead - CRTC1 -> TV (SWAP!)"
|
||||||
|
echo " CRTC2 -> Monitor1"
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
|
||||||
echo -- TV MODES
|
echo "-- TV MODES on /dev/fb0 -- TV MODES on /dev/fb1"
|
||||||
echo
|
echo
|
||||||
echo " [ A ] 640x512 PAL"
|
echo " [ a ] 640x512 PAL [ A ] 640x512 PAL"
|
||||||
echo " [ S ] 640x528 PAL"
|
echo " [ s ] 640x528 PAL [ S ] 640x528 PAL"
|
||||||
echo " [ D ] 720x576 PAL"
|
echo " [ d ] 720x576 PAL [ D ] 720x576 PAL"
|
||||||
echo " [ F ] 640x240 NTSC"
|
echo " [ f ] 640x240 NTSC [ F ] 640x240 NTSC"
|
||||||
echo " [ G ] 640x480 NTSC, Interlaced"
|
echo " [ g ] 640x480 NTSC, interlaced [ G ] 640x480 NTSCl"
|
||||||
|
echo
|
||||||
|
echo " (Warning, fb0 and fb1 tend to change RANDOMLY with these mode changers..)"
|
||||||
|
|
||||||
read ABC
|
read ABC
|
||||||
|
|
||||||
|
@ -155,7 +212,7 @@ case "$ABC" in
|
||||||
mappingreset
|
mappingreset
|
||||||
matroxset -f /dev/fb0 -m 3
|
matroxset -f /dev/fb0 -m 3
|
||||||
SetTVstandard
|
SetTVstandard
|
||||||
TVdefaultmode
|
TVdefaultmode /dev/fb0
|
||||||
;;
|
;;
|
||||||
|
|
||||||
3)
|
3)
|
||||||
|
@ -179,30 +236,78 @@ case "$ABC" in
|
||||||
warn2
|
warn2
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
6)
|
||||||
|
warn
|
||||||
|
mappingreset
|
||||||
|
con2fb /dev/fb1 /dev/tty2
|
||||||
|
matroxset -f /dev/fb0 -m 1
|
||||||
|
matroxset -f /dev/fb1 -m 2
|
||||||
|
SetTVstandard
|
||||||
|
TVdefaultmode /dev/fb1
|
||||||
|
warn2
|
||||||
|
;;
|
||||||
|
|
||||||
|
7)
|
||||||
|
warn
|
||||||
|
mappingreset
|
||||||
|
con2fb /dev/fb1 /dev/tty2
|
||||||
|
matroxset -f /dev/fb0 -m 2
|
||||||
|
matroxset -f /dev/fb1 -m 1
|
||||||
|
SetTVstandard
|
||||||
|
TVdefaultmode /dev/fb0
|
||||||
|
warn2
|
||||||
|
;;
|
||||||
|
|
||||||
a)
|
a)
|
||||||
# 640x512 80Hz 32bpp
|
# 640x512 80Hz 32bpp
|
||||||
fbset -a -depth 32 -left 60 -right 0 -upper 70 -lower 39 -hslen 76 -vslen 4 -xres 640 -yres 512 -bcast true -laced false
|
fbset -depth 32 -left 60 -right 0 -upper 70 -lower 39 -hslen 76 -vslen 4 -xres 640 -yres 512 -bcast true -laced false
|
||||||
|
;;
|
||||||
|
|
||||||
|
A)
|
||||||
|
# 640x512 80Hz 32bpp
|
||||||
|
fbset -fb /dev/fb1 -depth 32 -left 60 -right 0 -upper 70 -lower 39 -hslen 76 -vslen 4 -xres 640 -yres 512 -bcast true -laced false
|
||||||
;;
|
;;
|
||||||
|
|
||||||
s)
|
s)
|
||||||
# 640x528 83Hz 32bpp
|
# 640x528 83Hz 32bpp
|
||||||
fbset -a -depth 32 -left 40 -right 0 -upper 63 -lower 29 -hslen 56 -vslen 4 -xres 640 -yres 528 -vxres 640 -vyres 528 -laced false -bcast true
|
fbset -depth 32 -left 40 -right 0 -upper 63 -lower 29 -hslen 56 -vslen 4 -xres 640 -yres 528 -vxres 640 -vyres 528 -laced false -bcast true
|
||||||
|
;;
|
||||||
|
|
||||||
|
S)
|
||||||
|
# 640x528 83Hz 32bpp
|
||||||
|
fbset -fb /dev/fb1 -depth 32 -left 40 -right 0 -upper 63 -lower 29 -hslen 56 -vslen 4 -xres 640 -yres 528 -vxres 640 -vyres 528 -laced false -bcast true
|
||||||
;;
|
;;
|
||||||
|
|
||||||
d)
|
d)
|
||||||
# 720x576 78Hz 32bpp
|
# 720x576 78Hz 32bpp
|
||||||
# fbset -a -depth 32 -left 54 -right -36 -upper 55 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
# fbset -depth 32 -left 54 -right -36 -upper 55 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
||||||
fbset -a -depth 32 -right -36 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
fbset -depth 32 -right -36 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
||||||
|
;;
|
||||||
|
|
||||||
|
D)
|
||||||
|
# 720x576 78Hz 32bpp
|
||||||
|
# fbset -fb /dev/fb1 -depth 32 -left 54 -right -36 -upper 55 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
||||||
|
fbset -fb /dev/fb1 -depth 32 -right -36 -lower -6 -hslen 46 -vslen 4 -xres 720 -yres 576 -vxres 720 -vyres 576 -laced false -bcast true
|
||||||
;;
|
;;
|
||||||
|
|
||||||
f)
|
f)
|
||||||
# 640x240 non-interlaced 32bpp
|
# 640x240 non-interlaced 32bpp
|
||||||
fbset -a -depth 32 -xres 640 -yres 240 -vxres 640 -vyres 240 -pixclock 79443 -left 72 -right 40 -upper 15 -lower 5 -hslen 48 -vslen 3 -laced false
|
fbset -depth 32 -xres 640 -yres 240 -vxres 640 -vyres 240 -pixclock 79443 -left 72 -right 40 -upper 15 -lower 5 -hslen 48 -vslen 3 -laced false
|
||||||
|
;;
|
||||||
|
|
||||||
|
F)
|
||||||
|
# 640x240 non-interlaced 32bpp
|
||||||
|
fbset -fb /dev/fb1 -depth 32 -xres 640 -yres 240 -vxres 640 -vyres 240 -pixclock 79443 -left 72 -right 40 -upper 15 -lower 5 -hslen 48 -vslen 3 -laced false
|
||||||
;;
|
;;
|
||||||
|
|
||||||
g)
|
g)
|
||||||
# 640x480 interlaced 32bpp
|
# 640x480 interlaced 32bpp
|
||||||
fbset -a -depth 32 -xres 640 -yres 480 -vxres 640 -vyres 480 -pixclock 79443 -left 72 -right 40 -upper 30 -lower 10 -hslen 48 -vslen 5 -laced true
|
fbset -depth 32 -xres 640 -yres 480 -vxres 640 -vyres 480 -pixclock 79443 -left 72 -right 40 -upper 30 -lower 10 -hslen 48 -vslen 5 -laced true
|
||||||
|
;;
|
||||||
|
|
||||||
|
G)
|
||||||
|
# 640x480 interlaced 32bpp
|
||||||
|
fbset -fb /dev/fb1 -depth 32 -xres 640 -yres 480 -vxres 640 -vyres 480 -pixclock 79443 -left 72 -right 40 -upper 30 -lower 10 -hslen 48 -vslen 5 -laced true
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue