# sort manually by id in a list as python can't retrieve a dictionnary
# in the created order :-(
channels_ids_sorted = channels.keys()
channels_ids_sorted.sort()
# build list for dialog command
channels_dialog = ''
for channel_id in channels_ids_sorted:
channels_dialog = channels_dialog + channel_id + ' ' + channels[channel_id]['name'] + ' '
# get channel from user
cmd_line = 'dialog --stdout --menu "Choisissez la chaine : " 20 50 10 ' + channels_dialog
cmd_line_status,cmd_line_output = commands.getstatusoutput(cmd_line)
if (cmd_line_status == -1) or (cmd_line_output == ''):
sys.exit(1)
channel_name = channels[cmd_line_output]['name']
channel_channel = channels[cmd_line_output]['channel']
print 'Réglage du tuner sur ' + channel_name + '...'
# get devices
# todo : autodetect
video_dev = '/dev/video1'
audio_dev = '/dev/video24'
[^] # Garde la, ça marche !
Posté par zx81 . En réponse au message Besoin d aide / carte hauppauge pvr 350. Évalué à 1.
As-tu mis tous les fichiers qu'il faut sous /lib/firmware ?
Moi, j'ai:
# ll /lib/firmware/
total 824
-rwxr--r-- 1 zzz zzz 262144 mai 26 2006 v4l-cx2341x-dec.fw
-rwxr--r-- 1 zzz zzz 376836 fév 17 2007 v4l-cx2341x-enc.fw
-rwxr--r-- 1 zzz zzz 155648 mai 26 2006 v4l-cx2341x-init.mpg
-rwxr--r-- 1 zzz zzz 16382 mai 26 2006 v4l-cx25840.fw
-rwxr--r-- 1 zzz zzz 8192 oct 6 2006 v4l-pvrusb2-24xxx-01.fw
-rwxr--r-- 1 zzz zzz 8192 jui 1 2006 v4l-pvrusb2-29xxx-01.fw
Que dis "dmesg" au sujet de la carte (il y a pas mal de lignes au chargement du module) ?
La mauvaise nouvelle, c'est que les softs classiques ne marchent pas car cette carte n'exporte pas d'interface de type "v4l".
A défaut, j'ai fait un petit script pour choisir la chaine :
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# tv player
# v1.0
import commands
import sys
# no space in channel name
channels = {
'01': {'name': 'Tf1', 'channel': '62'},
'02': {'name': 'France2/Nordheim', 'channel': '56'},
'03': {'name': 'France2/Strasbourg', 'channel': '23'},
'04': {'name': 'France2/Sarrebourg', 'channel': '53'},
'05': {'name': 'France3/Nordheim', 'channel': '43'},
'06': {'name': 'France3/Strasbourg', 'channel': '25'},
'07': {'name': 'France3/Lorraine', 'channel': '50'},
'08': {'name': 'Canal+', 'channel': 'K10'},
'09': {'name': 'France5/Arte', 'channel': '64'},
'10': {'name': 'M6', 'channel': '35'}
}
# sort manually by id in a list as python can't retrieve a dictionnary
# in the created order :-(
channels_ids_sorted = channels.keys()
channels_ids_sorted.sort()
# build list for dialog command
channels_dialog = ''
for channel_id in channels_ids_sorted:
channels_dialog = channels_dialog + channel_id + ' ' + channels[channel_id]['name'] + ' '
# get channel from user
cmd_line = 'dialog --stdout --menu "Choisissez la chaine : " 20 50 10 ' + channels_dialog
cmd_line_status,cmd_line_output = commands.getstatusoutput(cmd_line)
if (cmd_line_status == -1) or (cmd_line_output == ''):
sys.exit(1)
channel_name = channels[cmd_line_output]['name']
channel_channel = channels[cmd_line_output]['channel']
print 'Réglage du tuner sur ' + channel_name + '...'
# get devices
# todo : autodetect
video_dev = '/dev/video1'
audio_dev = '/dev/video24'
# init tuner card
cmd_line = '\
v4l2-ctl \
--device=' + video_dev + ' \
--set-fmt-sliced-vbi=teletext \
--set-input=0 \
--set-standard=secam-l \
--set-tuner=stereo \
--set-fmt-video=width=576,height=625 \
--verbose'
cmd_line_status,cmd_line_output = commands.getstatusoutput(cmd_line)
cmd_line = '\
ivtv-tune \
--device=' + video_dev + ' \
--freqtable=france \
--channel=' + channel_channel
cmd_line_status,cmd_line_output = commands.getstatusoutput(cmd_line)
# play stream
cmd_line = 'mplayer ' + video_dev
print cmd_line
cmd_line_status,cmd_line_output = commands.getstatusoutput(cmd_line)
# exit normally
sys.exit(0)