Linux/MythTV: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
3.815 Bytes hinzugefügt ,  4. April 2010
Zeile 110: Zeile 110:
Nach Aufruf von MythWeb mit einem mobilen Browser kann es sein, dass das Mobile Template ab dann auch bei einem Desktop Browser verwendet wird. Dies kann man zurücksetzen, indem man '''?RESET_TMPL=true''' an die URL anhängt.
Nach Aufruf von MythWeb mit einem mobilen Browser kann es sein, dass das Mobile Template ab dann auch bei einem Desktop Browser verwendet wird. Dies kann man zurücksetzen, indem man '''?RESET_TMPL=true''' an die URL anhängt.


===Patches für 0.21===
===Patches===


====Bob 2x Deinterlacing funktioniert nicht, weil die Frequenz nicht ganz stimmt====
====Bob 2x Deinterlacing funktioniert nicht, weil die Frequenz nicht ganz stimmt====
Zeile 146: Zeile 146:
Bei DVB senden einige Sender (PRO7, SAT1, Kabel1, DMAX, DSF, ...) falsche und dauernd wechselnde Kennungen bzgl. Progressive/Interlaced. Das führt dazu, dass MythTV nicht flüssig abspielt. Man muss dann immer wieder (die Einstellung wird nicht gemerkt) nach Play im OSD den Video Scan auf Interlaced stellen statt automatische Erkennung.
Bei DVB senden einige Sender (PRO7, SAT1, Kabel1, DMAX, DSF, ...) falsche und dauernd wechselnde Kennungen bzgl. Progressive/Interlaced. Das führt dazu, dass MythTV nicht flüssig abspielt. Man muss dann immer wieder (die Einstellung wird nicht gemerkt) nach Play im OSD den Video Scan auf Interlaced stellen statt automatische Erkennung.


'''Patch, der den Video Scan fest auf Interlaced stellt''':
'''Patch, der den Video Scan fest auf Interlaced stellt (MythTV 0.21)''':
  Index: mythtv/libs/libmythtv/NuppelVideoPlayer.cpp
  Index: mythtv/libs/libmythtv/NuppelVideoPlayer.cpp
  ===================================================================
  ===================================================================
Zeile 186: Zeile 186:
       m_can_double      = false;
       m_can_double      = false;
       m_scan_tracker    = 2;
       m_scan_tracker    = 2;
'''Patch, der den Video Scan fest auf Interlaced stellt (MythTV 0.22)''':
--- mythtv/libs/libmythtv/NuppelVideoPlayer.cpp.bak    2010-03-22 14:03:04.717767488 +0100                                                                   
+++ mythtv/libs/libmythtv/NuppelVideoPlayer.cpp 2010-03-22 14:29:05.593567418 +0100                                                                           
@@ -182,7 +182,7 @@                                                           
        video_disp_dim(0,0), video_dim(0,0),                                   
        video_frame_rate(29.97f), video_aspect(4.0f / 3.0f),                   
        forced_video_aspect(-1),                                               
-      m_scan(kScan_Interlaced),    m_scan_locked(false),                     
+      m_scan(kScan_Interlaced),    m_scan_locked(true),                     
        m_scan_tracker(0),            m_scan_initialized(false),               
        keyframedist(30),
        // Prebuffering (RingBuffer) control
@@ -1065,7 +1065,7 @@
          return;
      SetScanType((m_scan_tracker > min_count) ? kScan_Interlaced : kScan_Progressive);
-    m_scan_locked  = false;
+    m_scan_locked  = true;
  }
  void NuppelVideoPlayer::SetScanType(FrameScanType scan)
@@ -1081,6 +1081,7 @@
          return;
      m_scan_locked = (scan != kScan_Detect);
+    m_scan_locked  = true;
      m_scan_initialized = true;
      m_frame_interval = frame_interval;
@@ -1179,7 +1180,7 @@
      SetScanType(detectInterlace(scan, m_scan, video_frame_rate,
                                  video_disp_dim.height()));
-    m_scan_locked  = false;
+    m_scan_locked  = true;
      m_scan_tracker = (m_scan == kScan_Interlaced) ? 2 : 0;
  }
@@ -2997,7 +2998,7 @@
      // And initialoze m_scan_tracker to 2 which will immediately switch to
      // progressive if the first frame is progressive in AutoDeint().
      m_scan            = kScan_Interlaced;
-    m_scan_locked      = false;
+    m_scan_locked      = true;
      m_double_framerate = false;
      m_can_double      = false;
      m_scan_tracker    = 2;


====MP2-Ton statt AC3-Ton bevorzugen====
====MP2-Ton statt AC3-Ton bevorzugen====
Bei DVB ist der AC3-Ton leiser, als der MP2-Ton. Man muss dann immer wieder (die Einstellung wird nicht gemerkt) nach Play im OSD den Ton auf MP2 umstellen.
Bei DVB ist der AC3-Ton leiser, als der MP2-Ton. Man muss dann immer wieder (die Einstellung wird nicht gemerkt) nach Play im OSD den Ton auf MP2 umstellen.


'''Patch, der dafür sorgt, dass MP2-Ton bevorzugt wird (außerdem werden mehr Infos in die Console ausgegeben)''':
'''Patch, der dafür sorgt, dass MP2-Ton bevorzugt wird, außerdem werden mehr Infos in die Console ausgegeben (MythTV 0.21)''':
  Index: mythtv/libs/libmythtv/avformatdecoder.cpp
  Index: mythtv/libs/libmythtv/avformatdecoder.cpp
  ===================================================================
  ===================================================================
Zeile 229: Zeile 279:
  -                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_AC3);
  -                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_AC3);
  +                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_MP3);
  +                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_MP3);
              if (selTrack < 0)
                  selTrack = filter_max_ch(ic, atracks, flang);
'''Patch, der dafür sorgt, dass MP2-Ton bevorzugt wird, außerdem werden mehr Infos in die Console ausgegeben (MythTV 0.22)''':
--- mythtv/libs/libmythtv/avformatdecoder.cpp.orig      2009-10-14 22:33:10.000000000 +0200                                                                   
+++ mythtv/libs/libmythtv/avformatdecoder.cpp  2010-03-30 22:56:28.016756358 +0200
@@ -3096,7 +3096,7 @@
      if ((ctrack >= 0) && (ctrack < (int)numStreams))
          return ctrack; // audio already selected
-#if 0
+
      // enable this to print streams
      for (uint i = 0; i < atracks.size(); i++)
      {
@@ -3113,7 +3113,7 @@
                        do_ac3_passthru || do_dts_passthru);
          VERBOSE(VB_AUDIO, LOC + " * " + item.toString());
      }
-#endif
+
      int selTrack = (1 == numStreams) ? 0 : -1;
      int wlang    = wtrack.language;
@@ -3167,7 +3167,7 @@
                  selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_DTS);
              if (selTrack < 0)
-                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_AC3);
+                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_MP2);
              if (selTrack < 0)
                  selTrack = filter_max_ch(ic, atracks, flang);
@@ -3182,7 +3182,7 @@
                  selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_DTS);
              if (selTrack < 0)
-                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_AC3);
+                selTrack = filter_max_ch(ic, atracks, flang, CODEC_ID_MP2);
   
   
               if (selTrack < 0)
               if (selTrack < 0)
                   selTrack = filter_max_ch(ic, atracks, flang);
                   selTrack = filter_max_ch(ic, atracks, flang);
1.075

Bearbeitungen

Navigationsmenü