void VideoOMX::interlaceSwitch4Demux() {
return;
Demuxer *demux=Demuxer::getInstance();
- if ( (outputinterlaced && !demux->getInterlaced())
- || (!outputinterlaced && demux->getInterlaced())) {
- if (hdmi && (demux->getHorizontalSize()>720 || demux->getInterlaced() )) { // only switch if hdmi and HD or interlaced SD material
- Log::getInstance()->log("Video", Log::NOTICE, "switch interlacing %d",demux->getInterlaced());
-
- //OMX_Deinit();
- int set_interlaced=0;
- if (demux->getHorizontalSize()>720 && demux->getInterlaced()) {
- set_interlaced=1;
- }
+
+ if (hdmi) { // only switch if hdmi and HD or interlaced SD material
+
+
+ //OMX_Deinit();
+ int set_interlaced=0;
+ if (demux->getHorizontalSize()>720 && demux->getInterlaced()) {
+ set_interlaced=1;
+ }
+ Log::getInstance()->log("Video", Log::NOTICE, "switch interlacing %d %d %d",demux->getInterlaced(),outputinterlaced,set_interlaced);
+ if (outputinterlaced!=set_interlaced) {
selectVideoMode(set_interlaced);
- //OMX_Init();
Osd::getInstance()->shutdown();
Osd::getInstance()->restore();
Osd::getInstance()->init((void*)"");
BoxStack::getInstance()->redrawAllBoxes();
initted=1;
-
}
+ //OMX_Init();
+
}
+
+
}