| | #321 (permalink) | |
| MP Donator ![]() Join Date: Dec 2006 Location: Graz Age: 43
Posts: 241
Thanks: 45
Thanked 21 Times in 13 Posts
Country: | Quote:
| |
| | |
| | #322 (permalink) |
| Portal Member Join Date: Jul 2008
Posts: 71
Thanks: 2
Thanked 2 Times in 2 Posts
| thank you for your reply slurm, very usefull link also. Tried the powerdvd+ffdshow, and yes, there is an improvement. But still not lip synch. Gonna try reclock later on. hope that it helps. since switching off EVR aint an option for me. With EVR most things go a lot smoother, also in MP things go smoother (or at least it look like it does). Since it seems there is already a lot on this forum about this issue, and it doesnt really have to do anything with this topic. I'll report back later if i found a solution. kthx again |
| | |
| | #323 (permalink) |
| Portal Member Join Date: Sep 2008 Location: Zagreb
Posts: 87
Thanks: 21
Thanked 2 Times in 2 Posts
Country: | ok, i had problems with lipsync and DD and DTS files as many have on 24hz playback. I was experimenting yesterday with everything and somehow I fixed it!! First I used reclock to force media playback to 25fps on 50hz refresh rate and av sync is great, but reclock drops ac3 frames and it's annoying.. Then, I disabled reclock, put ffdshow as the h.264 codec (I have h.264 set to disabled and raw to all so that the coreavc kicks in - I had to mannualy unregister MPV codec!) and ac3 filter for audio codec and default directsound device as audio renderer (I have spdif optical cable to my receiver which handles decoding). ac3 filter is set to use spdif, passtrough all audio - DD, DTS and MPEG, but what seems was causing trouble was JITTER CORRECTION! After disabling it everything was in sync! PERFECT PLAYBACK on all movies and series I had trouble before! So maybe someone can see if it help him/her and report back ![]() I'm happy happy happy, perfect lipsync 5.1 audio finally ![]() Of course, without refresrate changer, this would be very difficult, thank you! |
| | |
| | #324 (permalink) | ||
| Portal Member Join Date: Feb 2008 Location: Brugge
Posts: 248
Thanks: 24
Thanked 1 Time in 1 Post
Country: | Quote:
Interesting, but I don't understand, what X.264 videocodec do you use atm: CoreAVC or FFDSHOW ? You also use the AC3 filter as audio codec? Did you install AC3 filter seperately? Quote:
__________________ HTPC: AMD 780G / X2-2350 / 2GB DDR2 / PANNY TH-37PX80 / CCC 9.11 / VISTA UL 32bit My HTPC Build: http://users.telenet.be/chs/HTPC%20Build/ Last edited by Justchill; 2008-12-16 at 09:12.. Reason: Automerged Doublepost | ||
| | |
| | #325 (permalink) |
| Portal Member Join Date: Sep 2008 Location: Zagreb
Posts: 87
Thanks: 21
Thanked 2 Times in 2 Posts
Country: | I am using coreAVC trough FFDSHOW because I want ffdshow for subtitle support. I hate vobsub and can't zoom in and ffdshow works great. I installed ac3filter separately and use it for passtrough of ac3 audio, yes. |
| | |
| | #327 (permalink) |
| Portal Member Join Date: Feb 2006
Posts: 12
Thanks: 0
Thanked 1 Time in 1 Post
| I have written some code that uses windows API to change refresh rate. in my thread http://forum.team-mediaportal.com/pl...changer-39790/ you can get the source code. My suggestion is to build a plugin that does not use any thirdparty products to change refresh rate. here is the c# class: using System; using System.Runtime.InteropServices; //http://groups.google.se/group/microsoft.public.dotnet.framework.drawing/browse_thread/thread/2898363a6bc22f30/22e9e76998ccf819?hl=sv&lnk=st&q=refresh+rate+win32+api+c%23#22e9e76998ccf819 namespace Monitor { public sealed class Win32 { public const int CCHDEVICENAME = 32; public const int CCHFORMNAME = 32; [Flags] public enum DISPLAY_DEVICE_StateFlags : uint { None = 0x00000000, DISPLAY_DEVICE_ATTACHED_TO_DESKTOP = 0x00000001, DISPLAY_DEVICE_MULTI_DRIVER = 0x00000002, DISPLAY_DEVICE_PRIMARY_DEVICE = 0x00000004, DISPLAY_DEVICE_MIRRORING_DRIVER = 0x00000008, DISPLAY_DEVICE_VGA_COMPATIBLE = 0x00000010, DISPLAY_DEVICE_REMOVABLE = 0x00000020, DISPLAY_DEVICE_MODESPRUNED = 0x08000000, DISPLAY_DEVICE_REMOTE = 0x04000000, DISPLAY_DEVICE_DISCONNECT = 0x02000000 } [Flags] public enum DEVMODE_Fields : uint { None = 0x00000000, DM_POSITION = 0x00000020, DM_BITSPERPEL = 0x00040000, DM_PELSWIDTH = 0x00080000, DM_PELSHEIGHT = 0x00100000, DM_DISPLAYFLAGS = 0x00200000, DM_DISPLAYFREQUENCY = 0x00400000 } [Flags] public enum ChangeDisplaySettings_Flags : uint { None = 0x00000000, CDS_UPDATEREGISTRY = 0x00000001, CDS_TEST = 0x00000002, CDS_FULLSCREEN = 0x00000004, CDS_GLOBAL = 0x00000008, CDS_SET_PRIMARY = 0x00000010, CDS_VIDEOPARAMETERS = 0x00000020, CDS_RESET = 0x40000000, CDS_NORESET = 0x10000000 } public enum ChangeDisplaySettings_Result : int { DISP_CHANGE_SUCCESSFUL = 0, DISP_CHANGE_RESTART = 1, DISP_CHANGE_FAILED = -1, DISP_CHANGE_BADMODE = -2, DISP_CHANGE_NOTUPDATED = -3, DISP_CHANGE_BADFLAGS = -4, DISP_CHANGE_BADPARAM = -5, DISP_CHANGE_BADDUALVIEW = -6 } public enum EnumDisplaySettings_EnumMode : uint { ENUM_CURRENT_SETTINGS = uint.MaxValue, ENUM_REGISTRY_SETTINGS = uint.MaxValue - 1 } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] public class DISPLAY_DEVICE { public uint cb = (uint)Marshal.SizeOf(typeof(DISPLAY_DEVICE)); [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)] public string DeviceName = ""; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string DeviceString = ""; public DISPLAY_DEVICE_StateFlags StateFlags = 0; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string DeviceID = ""; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string DeviceKey = ""; } [StructLayout(LayoutKind.Sequential)] public struct POINTL { public POINTL(int x, int y) { this.x = x; this.y = y; } public int x; public int y; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] public class DEVMODE_Display { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = CCHDEVICENAME)] public string dmDeviceName = null; public ushort dmSpecVersion = 0; public ushort dmDriverVersion = 0; public ushort dmSize = (ushort)Marshal.SizeOf(typeof(DEVMODE_Display)); public ushort dmDriverExtra = 0; public DEVMODE_Fields dmFields = DEVMODE_Fields.None; public POINTL dmPosition = new POINTL(); public uint dmDisplayOrientation = 0; public uint dmDisplayFixedOutput = 0; public short dmColor = 0; public short dmDuplex = 0; public short dmYResolution = 0; public short dmTTOption = 0; public short dmCollate = 0; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = CCHFORMNAME)] public string dmFormName = null; public ushort dmLogPixels = 0; public uint dmBitsPerPel = 0; public uint dmPelsWidth = 0; public uint dmPelsHeight = 0; public uint dmDisplayFlags = 0; public uint dmDisplayFrequency = 0; public uint dmICMMethod = 0; public uint dmICMIntent = 0; public uint dmMediaType = 0; public uint dmDitherType = 0; public uint dmReserved1 = 0; public uint dmReserved2 = 0; public uint dmPanningWidth = 0; public uint dmPanningHeight = 0; } [DllImport("user32.dll", CharSet = CharSet.Unicode)] public extern static int EnumDisplayDevices([In] string lpDevice, [In] uint iDevNum, [In][Out] DISPLAY_DEVICE lpDisplayDevice, [In] uint dwFlags); [DllImport("user32.dll", CharSet = CharSet.Unicode)] public extern static int EnumDisplaySettingsEx([In] string lpszDeviceName, [In] EnumDisplaySettings_EnumMode iModeNum, [In][Out] DEVMODE_Display lpDevMode, [In] uint dwFlags); [DllImport("user32.dll", CharSet = CharSet.Unicode)] public extern static ChangeDisplaySettings_Result ChangeDisplaySettingsEx([In] string lpszDeviceName, [In] DEVMODE_Display lpDevMode, [In] IntPtr hwnd, [In] ChangeDisplaySettings_Flags dwFlags, [In] IntPtr lParam); public static void CycleRefreshRate(uint monitorIndex, uint refreshRate) { Monitor.Win32.DISPLAY_DEVICE displayDevice = new Monitor.Win32.DISPLAY_DEVICE(); int result = Monitor.Win32.EnumDisplayDevices(null, monitorIndex, displayDevice, 0); if (result != 0) { Monitor.Win32.DEVMODE_Display devMode = new Monitor.Win32.DEVMODE_Display(); devMode.dmFields = Monitor.Win32.DEVMODE_Fields.DM_DISPLAYFREQUENCY; devMode.dmDisplayFrequency = refreshRate; Monitor.Win32.ChangeDisplaySettings_Result r = Monitor.Win32.ChangeDisplaySettingsEx(displayDevice.DeviceName, devMode, IntPtr.Zero, Monitor.Win32.ChangeDisplaySettings_Flags.None, IntPtr.Zero); } } } } |
| | |
| These User Thank You: |
| | #328 (permalink) |
| Portal Member | @dannyboy I use the automatic refresh rate changer to also change resolution, i suspect using your solution that i would no longer be able to do that? The reason i require the resolution change is that my LCD does not support all refresh rates at all resolutions so i have to switch around to get a working hz and res combination. I'm sure that i'm not alone in this requirement, although i may well be in a minority. |
| | |
| | #329 (permalink) |
| Portal Member | I'm using two profiles in ATI Catalyst Center to switch between my Plasma and my Projector as my primary and only screen, using macroed keypresses mapped to my iMon Remote. The plasma is native 1024*768 (doesn't look good in skins...) and the projector is 1280*720. I wonder if I somehow would be able to use this AutoRefreshrateChanger now that I also have to have two different profiles depending if I'm watching the telly or the projje? |
| | |
| | #330 (permalink) |
| MP Donator ![]() Join Date: Feb 2005 Location: Kincardineshire
Posts: 145
Thanks: 6
Thanked 1 Time in 1 Post
Country: | @dannyb0y, I like the idea, but my concern would be as follows. I use the soundcard onboard my ATI graphics card and feed the combined video plus audio signal to my LCD TV using an HDMI cable. It is possible to switch the video refresh rate with various tools but then the sound disappears, apparently because the card itself doesn't check the video refresh rate when including the audio packets. ATI's CCC utility is required to switch refresh rates in this case, as it seems to 'tell' the card what refresh rate should be used to insert the audio packets. |
| | |
![]() |
| Bookmarks |
| Tags |
| automatic, changer, refreshrate |
| Thread Tools | |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| A very simple Refreshrate changer | dannyb0y | MediaPortal Plugins | 9 | 2008-06-24 13:56 |
| 2 problems (refreshrate, hibernate with rc) | robhawk | General Support | 0 | 2008-05-28 11:44 |
| Skin/Theme changer | Autoper | Improvement Suggestions | 0 | 2005-02-19 03:51 |