Hallo,
ich versuche den TV-Out des VIA Epia M6000 mit dem Plugin softmpeg zu nutzen. Als Basis nutze ich ctVDR5 (2.6er Kernel), da bleibt aber immer weniger von übrig. Ich bin wie folgt vorgegangen:
Download und make von linux-viafb von directfb.org. Beim Einbinden in den Kernel gibt es noch Probleme. Als Umgehungslösung nutze ich
insmod `pwd`/linux/drivers/video/cle266/viafb.ko refresh=50 mode=720x576 TVon=1 TVoverscan=1 bpp=32
Installation von "DirectFB-0.9.25.1".
Installation von DFB++-0.9.25, FusionSound-0.9.25, und ffmpeg
Installation von libsoftmpeg:
Erster Versuch:
Ich erhalte ein Fernsehbild aber kein Ton und diese Ausgaben:
DirectFB/Config: Parsing config file '/etc/directfbrc'.
---------------------- DirectFB v0.9.25 ---------------------
(c) 2000-2002 convergence integrated media GmbH
(c) 2002-2004 convergence GmbH
-----------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2006-06-27 18:09)
(*) Direct/Memcpy: Using SSE optimized memcpy()
(*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 10644)...
(*) Direct/Thread: Running 'PS/2 Input' (INPUT, 10645)...
(!!!) *** UNIMPLEMENTED [fusion_reactor_set_lock] *** [reactor.c:853]
(*) DirectFB/Input: IMPS/2 Mouse 1.0 (Convergence GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 10646)...
(*) DirectFB/Input: AT Translated Set 2 keyboard (1) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 10647)...
(*) DirectFB/Input: cx88 IR (TerraTec Cinergy 1400 (2) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 10648)...
(*) DirectFB/Input: PC Speaker (3) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 10649)...
(*) DirectFB/Input: PS/2 Generic Mouse (4) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Keyboard Input' (INPUT, 10650)...
(*) DirectFB/Input: Keyboard 0.9 (convergence integrated media GmbH)
(*) DirectFB/Genefx: MMX detected and enabled
(*) DirectFB/Graphics: VIA/S3G CLE266/UniChrome 0.4 (-)
(*) DirectFB/Core/WM: Default 0.2 (Convergence GmbH)
warning: no PCR PID given, assuming PCR PID == vpid == 0x0201.
{-} [10627: 0.000] SoftMPEG/init/setting up DirectFB: layer_id:1 window_id:-1
{-} [10627: 0.002] SoftMPEG/init/using layer configuration for video output via DirectFB
(*) Direct/Interface: Using 'default' implementation of 'IFusionSound'.
(*) Direct/Thread: Running 'Sound Mixer' (CRITICAL, 10653)...
{-} [10627: 0.223] SoftMPEG/softmpeg_decoder_set_pids/softmpeg_decoder_set_pids(): vpid:0x 201, apid:0x 202, pcrpid:0x 201
{-} [10627: 0.224] SoftMPEG/feed_thread/feed_thread started
{-} [10627: 0.227] SoftMPEG/reconfigure/changing audio configuration: buffer_size:64000, sample_rate:48000, channels:2
{-} [10627: 2.175] SoftMPEG/resize/changing layer configuration, w:544, h:576
{!} [10627: 2.651] SoftMPEG - WARNING in audio_playout at audio.c:251: falling below low mark (3305/3333)
{!} [10627: 3.213] SoftMPEG - WARNING in audio_playout at audio.c:251: falling below low mark (3275/3333)
{!} [10627: 7.275] SoftMPEG - WARNING in audio_playout at audio.c:251: falling below low mark (3282/3333)
Alles anzeigen
Das Bild ist übrigens schwarz/weiß, aber das wird wohl am Kabel bzw. S-Video/Composite liegen.
Dann habe ich den VDR 1.4.0 und das Plugin neu übersetzt. Beim make plugins gab es Probleme, weil APIVERSION nicht genutzt wurde. Ich habe bei SKY abgeguckt und das Makefile editiert.
Vergesse ich nun den über /etc/init.d/vdr gestarteten VDR zu stoppen erhalte ich ein OSD mit der Meldung "Kanal nicht Verfügbar". Ich erhalte das folgende Protokoll:
[softmpeg] initializing Plugin
[softmpeg] cSoftMPEG
---------------------- DirectFB v0.9.25 ---------------------
(c) 2000-2002 convergence integrated media GmbH
(c) 2002-2004 convergence GmbH
-----------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2006-06-27 18:09)
(*) Direct/Memcpy: Using MMXEXT optimized memcpy()
(*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 4840)...
(*) Direct/Thread: Running 'PS/2 Input' (INPUT, 4841)...
(!!!) *** UNIMPLEMENTED [fusion_reactor_set_lock] *** [reactor.c:853]
(*) DirectFB/Input: IMPS/2 Mouse 1.0 (Convergence GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4842)...
(*) DirectFB/Input: AT Translated Set 2 keyboard (1) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4843)...
(*) DirectFB/Input: cx88 IR (TerraTec Cinergy 1400 (2) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4844)...
(*) DirectFB/Input: PC Speaker (3) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4845)...
(*) DirectFB/Input: PS/2 Generic Mouse (4) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Keyboard Input' (INPUT, 4846)...
(*) DirectFB/Input: Keyboard 0.9 (convergence integrated media GmbH)
(*) DirectFB/Genefx: MMX detected and enabled
(*) DirectFB/Graphics: VIA/S3G CLE266/UniChrome 0.4 (-)
(*) DirectFB/Core/WM: Default 0.2 (Convergence GmbH)
could not find suitable videolayer - using window on primary layer
{-} [ 4834: 0.000] SoftMPEG/init/setting up DirectFB: layer_id:0 window_id:1
{-} [ 4834: 0.000] SoftMPEG/init/unsupported pixelformat for the destination surface, no hw acceleration available.{!} [ 4834: 0.000] S
oftMPEG - ERROR in video_decoder_create at video.c:105: initialization of video output device failed.
{!} [ 4834: 0.000] SoftMPEG - ERROR in softmpeg_decoder_create at softmpeg.c:213: ocreating video decoder instance failed
[softmpeg] MakePrimaryDevice
[softmpeg] CreateOsd
[softmpeg] cSoftOsd OSD @ 54 x 504
[softmpeg] CanHandleAreas, areas:1
[softmpeg] SetAreas, areas:1
Alles anzeigen
Habe ich den VDR vorher gestoppt, flackert der Fernseher kurz auf und ich erhalte das folgende Protokoll:
[softmpeg] initializing Plugin
[softmpeg] cSoftMPEG
---------------------- DirectFB v0.9.25 ---------------------
(c) 2000-2002 convergence integrated media GmbH
(c) 2002-2004 convergence GmbH
-----------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2006-06-27 18:09)
(*) Direct/Memcpy: Using MMXEXT optimized memcpy()
(*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 4906)...
(*) Direct/Thread: Running 'PS/2 Input' (INPUT, 4907)...
(!!!) *** UNIMPLEMENTED [fusion_reactor_set_lock] *** [reactor.c:853]
(*) DirectFB/Input: IMPS/2 Mouse 1.0 (Convergence GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4908)...
(*) DirectFB/Input: AT Translated Set 2 keyboard (1) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4909)...
(*) DirectFB/Input: cx88 IR (TerraTec Cinergy 1400 (2) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4910)...
(*) DirectFB/Input: PC Speaker (3) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Linux Input' (INPUT, 4911)...
(*) DirectFB/Input: PS/2 Generic Mouse (4) 0.1 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'Keyboard Input' (INPUT, 4912)...
(*) DirectFB/Input: Keyboard 0.9 (convergence integrated media GmbH)
(*) DirectFB/Genefx: MMX detected and enabled
(*) DirectFB/Graphics: VIA/S3G CLE266/UniChrome 0.4 (-)
(*) DirectFB/Core/WM: Default 0.2 (Convergence GmbH)
could not find suitable videolayer - using window on primary layer
{-} [ 4896: 0.000] SoftMPEG/init/setting up DirectFB: layer_id:0 window_id:1
{-} [ 4896: 0.000] SoftMPEG/init/unsupported pixelformat for the destination surface, no hw acceleration available.{!} [ 4896: 0.000] S
oftMPEG - ERROR in video_decoder_create at video.c:105: initialization of video output device failed.
{!} [ 4896: 0.000] SoftMPEG - ERROR in softmpeg_decoder_create at softmpeg.c:213: ocreating video decoder instance failed
[softmpeg] MakePrimaryDevice
[softmpeg] CanReplay()
[softmpeg] CanReplay()
[softmpeg] SetPlayMode()
setting Playmode to 1
[softmpeg] CreateOsd
[softmpeg] cSoftOsd OSD @ 54 x 344
[softmpeg] CanHandleAreas, areas:1
[softmpeg] SetAreas, areas:1
[softmpeg] SetAreas, area 0: t:54, l:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
.
.
.
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
(!) [ 4915: 0.000] --> Caught signal 11 (at 0xc, invalid address) <--
[softmpeg] Flush: wnd:0, le:54, top:344, w:624, h:187
(!) [ 4896: 0.026] --> Caught signal 11 (at 0x4, invalid address) <--
Getötet
Alles anzeigen
Und das habe ich noch im syslog gefunden:
Jun 28 21:28:20 media vdr: [19824] video directory scanner thread started (pid=19823, tid=19824)
Jun 28 21:28:20 media vdr: [19824] video directory scanner thread ended (pid=19823, tid=19824)
Jun 28 21:28:20 media vdr: [19825] video directory scanner thread started (pid=19823, tid=19825)
Jun 28 21:28:20 media vdr: [19825] video directory scanner thread ended (pid=19823, tid=19825)
Jun 28 21:28:21 media vdr: [19823] found 1 video device
Jun 28 21:28:21 media vdr: [19823] initializing plugin: softmpeg (0.0.1): A software emulated MPEG2 device
Jun 28 21:28:21 media vdr: [19827] tuner on device 1 thread started (pid=19823, tid=19827)
Jun 28 21:28:21 media vdr: [19828] section handler thread started (pid=19823, tid=19828)
Jun 28 21:28:21 media vdr: [19823] setting primary device to 2
Jun 28 21:28:21 media vdr: [19823] SVDRP listening on port 2001
Jun 28 21:28:21 media vdr: [19823] loading /video/themes/sttng-default.theme
Jun 28 21:28:21 media vdr: [19823] starting plugin: softmpeg
Jun 28 21:28:21 media vdr: [19823] loading /video/themes/sttng-default.theme
Jun 28 21:28:21 media vdr: [19823] remote control KBD - keys known
Jun 28 21:28:21 media vdr: [19823] switching to channel 1
Jun 28 21:28:21 media vdr: [19838] KBD remote control thread started (pid=19823, tid=19838)
Jun 28 21:28:21 media kernel: cx88[0]/2: queue is empty - first active
Jun 28 21:28:21 media kernel: cx88[0]/2: cx8802_start_dma w: 0, h: 0, f: 2
Jun 28 21:28:21 media kernel: cx88[0]/2: setting the interrupt mask
Jun 28 21:28:21 media kernel: cx88[0]/2: [cb66a2e0/0] cx8802_buf_queue - first active
Jun 28 21:28:21 media vdr: [19840] transfer thread started (pid=19823, tid=19840)
Jun 28 21:28:21 media vdr: [19841] receiver on device 1 thread started (pid=19823, tid=19841)
Jun 28 21:28:21 media vdr: [19842] TS buffer on device 1 thread started (pid=19823, tid=19842)
Jun 28 21:28:23 media kernel: cx88[0]/2: cx8802_restart_queue
Jun 28 21:28:23 media kernel: cx88[0]/2: cx8802_restart_queue: queue is empty
Alles anzeigen
Leider habe ich überhaupt keine Idee wo ich nun ansetzen soll.
Danke
Bernd