Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Hardware & Software > Software players
Register FAQ Calendar Today's Posts Search

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 2nd June 2009, 15:22   #8141  |  Link
tetsuo55
MPC-HC Project Manager
 
Join Date: Mar 2007
Posts: 2,317
Quote:
Originally Posted by cca View Post
Unfortunately I do not how to cut matroska files, nor what a media info log is. I don't produce videos, only play them. I assume it cannot be too hard, but I got no clue atm.
You can find mediainfo here:
http://forum.doom9.org/showthread.ph...931#post678931

Cutting and uploading samples can be found here:
http://mpc-hc.wiki.sourceforge.net/T...ing+guidelines
tetsuo55 is offline  
Old 2nd June 2009, 15:30   #8142  |  Link
tetsuo55
MPC-HC Project Manager
 
Join Date: Mar 2007
Posts: 2,317
Quote:
Originally Posted by konsulat View Post
I added this bug to the tracker

http://sourceforge.net/tracker/?func...61&atid=854651

Thanks for fixing it. Now all my HD videos with 16 Reframes play without freezing.
With SD video encodes (less than 1280x720) and 16 Reframes DXVA is not active. But there is one rare occasion when SD videos with 16 Reframes use DXVA and video freezes - linked files.
When I start the main file and it is encoded with 10 Reframes for example MPC-HC uses DXVA. Linked file is encoded with 16 Reframes and when MPC-HC plays it at some frame video freezes. If I play the linked file separately, MPC-HC won't freeze because it doesn't use DXVA. It's the same as the bug above but if it's needed to add another bug to the tracker I'll do it.
Can you upload a sample? I don't have any linked files.
tetsuo55 is offline  
Old 2nd June 2009, 15:57   #8143  |  Link
cca
Anime Otaku
 
Join Date: Oct 2002
Location: Somewhere in Cyberspace...
Posts: 437
Ok, I hope I did it right:

Media info log:

Code:
General
[57E6D6CF].mkv
Format                           : Matroska
File size                        : 342 MiB
Duration                         : 23mn 0s
Overall bit rate                 : 2 081 Kbps
Encoded date                     : UTC 2009-06-02 00:06:18
Writing application              : mkvmerge v2.1.0 ('Another Place To Fall') built on Aug 26 2007 15:16:15
Writing library                  : libebml v0.7.7 + libmatroska v0.8.1
Cover                            : Yes

Video
ID                               : 1
Format                           : AVC
Format/Info                      : Advanced Video Codec
Format profile                   : High@L5.1
Format settings, CABAC           : Yes
Format settings, ReFrames        : 9 frames
Muxing mode                      : Container profile=Unknown@5.1
Codec ID                         : V_MPEG4/ISO/AVC
Duration                         : 22mn 58s
Bit rate                         : 1 910 Kbps
Nominal bit rate                 : 1 964 Kbps
Width                            : 1 280 pixels
Height                           : 720 pixels
Display aspect ratio             : 16/9
Frame rate                       : 23.976 fps
Resolution                       : 24 bits
Colorimetry                      : 4:2:0
Scan type                        : Progressive
Bits/(Pixel*Frame)               : 0.086
Stream size                      : 314 MiB (92%)
Title                            : Video (H.264)
Writing library                  : x264 core 67 r1153M 7b6ce6a
Encoding settings                : cabac=1 / ref=9 / deblock=1:-2:-1 / analyse=0x3:0x133 / me=umh / subme=8 / psy_rd=1.0:0.0 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-2 / threads=6 / nr=0 / decimate=0 / mbaff=0 / bframes=6 / b_pyramid=1 / b_adapt=2 / b_bias=0 / direct=3 / wpredb=1 / keyint=300 / keyint_min=30 / scenecut=40 / rc=2pass / bitrate=1964 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:0.60

Audio
ID                               : 2
Format                           : Vorbis
Format settings, Floor           : 1
Codec ID                         : A_VORBIS
Duration                         : 23mn 0s
Bit rate mode                    : Constant
Bit rate                         : 128 Kbps
Channel(s)                       : 2 channels
Sampling rate                    : 48.0 KHz
Stream size                      : 21.1 MiB (6%)
Title                            : Japanese Audio (2ch LC-AAC)
Writing library                  : Lancer b5  (UTC 2006-11-10)
Language                         : Japanese

Text
ID                               : 3
Format                           : ASS
Codec ID                         : S_TEXT/ASS
Codec ID/Info                    : Advanced Sub Station Alpha
Title                            : ASS
Language                         : English

Menu
00:00:00.000                     : :OP
00:01:10.028                     : :Part A
00:10:57.990                     : :Part B
00:21:50.015                     : :ED
00:22:49.950                     : :Preview
Sample can be found here: http://sharebee.com/22ef33f4
__________________
AMD FX8350 on Gigabyte GA-970A-D3 / 8192 MB DDR3-1600 SDRAM / AMD R9 285 with Catalyst 1.5.9.1/ Asus Xonar D2X / Windows 10 pro 64bit

Last edited by cca; 2nd June 2009 at 16:09.
cca is offline  
Old 2nd June 2009, 16:13   #8144  |  Link
tetsuo55
MPC-HC Project Manager
 
Join Date: Mar 2007
Posts: 2,317
Could you try remuxing the file with the newest build of mkvmerge found here:
http://forum.doom9.org/showthread.ph...74#post1291874

(just load the mkv, change the output name and click the remux button)
tetsuo55 is offline  
Old 2nd June 2009, 16:16   #8145  |  Link
cca
Anime Otaku
 
Join Date: Oct 2002
Location: Somewhere in Cyberspace...
Posts: 437
I can try but not immediately, currently I 'm working, I'll tell you the result in about 3 hours.
__________________
AMD FX8350 on Gigabyte GA-970A-D3 / 8192 MB DDR3-1600 SDRAM / AMD R9 285 with Catalyst 1.5.9.1/ Asus Xonar D2X / Windows 10 pro 64bit
cca is offline  
Old 2nd June 2009, 16:24   #8146  |  Link
konsulat
Registered User
 
Join Date: May 2009
Posts: 4
Quote:
Originally Posted by tetsuo55 View Post
Can you upload a sample? I don't have any linked files.
Yes. Here is the main file (first 1 minute of it)

http://sharebee.com/b7036b25

Here is the linked one

http://sharebee.com/5fa3325d

Linked file is called immediately from the main file and it starts playing first.
konsulat is offline  
Old 2nd June 2009, 16:30   #8147  |  Link
allak
Registered User
 
Join Date: Feb 2009
Posts: 47
Quote:
Originally Posted by tetsuo55 View Post
-Internal MKV splitter should read mpeg2 streams without the need for an explicit decleration of the CodecPrivate value(which the latest svn build of mkvmerge now always writes).
Could one of the developers test the following patch ?

It's a million to one chance, but it could possibly work ....

Code:
--- MatroskaSplitter.cpp.svn    2009-06-02 17:19:08.885292800 +0200
+++ MatroskaSplitter.cpp.allak  2009-06-02 17:23:57.152780800 +0200
@@ -299,13 +299,36 @@
                                }
                                else if(CodecID == "V_MPEG2")
                                {
+                                       // The CodecPrivate Matroska field shoud contain a copy of the first MPEG2 Sequence header
                                        BYTE* seqhdr = pTE->CodecPrivate.GetData();
                                        DWORD len = pTE->CodecPrivate.GetCount();
                                        int w = pTE->v.PixelWidth;
                                        int h = pTE->v.PixelHeight;

-                                       if(MakeMPEG2MediaType(mt, seqhdr, len, w, h))
-                                               mts.Add(mt);
+                                       bool flag = MakeMPEG2MediaType(mt, seqhdr, len, w, h);
+
+                                       if (! flag)
+                                       {
+                                               // Here we try a workaround if the seqhdr is missing or malformed
+                                               mt.majortype = MEDIATYPE_Video;
+                                               mt.subtype = MEDIASUBTYPE_MPEG2_VIDEO;
+                                               mt.formattype = FORMAT_MPEG2Video;
+
+                                               MPEG2VIDEOINFO* vih = (MPEG2VIDEOINFO*)mt.AllocFormatBuffer(sizeof(MPEG2VIDEOINFO));
+                                               memset(mt.Format(), 0, mt.FormatLength());
+                                               vih->hdr.bmiHeader.biSize = sizeof(vih->hdr.bmiHeader);
+                                               vih->hdr.bmiHeader.biWidth = w;
+                                               vih->hdr.bmiHeader.biHeight = h;
+
+                                               // We do not have any information, so we leave this blank
+                                               // We do hope that this case is handled gracefully downstream
+                                               // As far as I can tell, at least that those values are always
+                                               // checked for sanity
+                                               vih->dwSequenceHeader = NULL;
+                                               vih->cbSequenceHeader = 0;
+                                       }
+
+                                       mts.Add(mt);
                                }
                                else if(CodecID == "V_THEORA")
                                {
allak is offline  
Old 2nd June 2009, 16:34   #8148  |  Link
tetsuo55
MPC-HC Project Manager
 
Join Date: Mar 2007
Posts: 2,317
Quote:
Originally Posted by allak View Post
Could one of the developers test the following patch ?

It's a million to one chance, but it could possibly work ....

Code:
--- MatroskaSplitter.cpp.svn    2009-06-02 17:19:08.885292800 +0200
+++ MatroskaSplitter.cpp.allak  2009-06-02 17:23:57.152780800 +0200
@@ -299,13 +299,36 @@
                                }
                                else if(CodecID == "V_MPEG2")
                                {
+                                       // The CodecPrivate Matroska field shoud contain a copy of the first MPEG2 Sequence header
                                        BYTE* seqhdr = pTE->CodecPrivate.GetData();
                                        DWORD len = pTE->CodecPrivate.GetCount();
                                        int w = pTE->v.PixelWidth;
                                        int h = pTE->v.PixelHeight;

-                                       if(MakeMPEG2MediaType(mt, seqhdr, len, w, h))
-                                               mts.Add(mt);
+                                       bool flag = MakeMPEG2MediaType(mt, seqhdr, len, w, h);
+
+                                       if (! flag)
+                                       {
+                                               // Here we try a workaround if the seqhdr is missing or malformed
+                                               mt.majortype = MEDIATYPE_Video;
+                                               mt.subtype = MEDIASUBTYPE_MPEG2_VIDEO;
+                                               mt.formattype = FORMAT_MPEG2Video;
+
+                                               MPEG2VIDEOINFO* vih = (MPEG2VIDEOINFO*)mt.AllocFormatBuffer(sizeof(MPEG2VIDEOINFO));
+                                               memset(mt.Format(), 0, mt.FormatLength());
+                                               vih->hdr.bmiHeader.biSize = sizeof(vih->hdr.bmiHeader);
+                                               vih->hdr.bmiHeader.biWidth = w;
+                                               vih->hdr.bmiHeader.biHeight = h;
+
+                                               // We do not have any information, so we leave this blank
+                                               // We do hope that this case is handled gracefully downstream
+                                               // As far as I can tell, at least that those values are always
+                                               // checked for sanity
+                                               vih->dwSequenceHeader = NULL;
+                                               vih->cbSequenceHeader = 0;
+                                       }
+
+                                       mts.Add(mt);
                                }
                                else if(CodecID == "V_THEORA")
                                {
Thanks a lot, i hope Casimir or any of the other dev's accept it and add it to SVN
tetsuo55 is offline  
Old 2nd June 2009, 16:42   #8149  |  Link
allak
Registered User
 
Join Date: Feb 2009
Posts: 47
BTW, it would be much better to do as suggested by Mosu, i.e., try to get the first sequence header from the MPEG2 stream and use it here.

But that would mean that we should put in the Matroska splitter the knowledge to parse an MPEG2 stream, which is non obvious to me and in any case would be clearly overkill.
allak is offline  
Old 2nd June 2009, 16:48   #8150  |  Link
Snowknight26
Registered User
 
Join Date: Aug 2007
Posts: 1,430
I can confirm the playback stuttering with DXVA enabled for H.264 videos.

Here's my infamous Tiesto Blu-ray sample: http://stfcc.org/misc/00000.cut.m2ts

The crackling audio upon seek is still there by the way.
Snowknight26 is offline  
Old 2nd June 2009, 18:39   #8151  |  Link
konsulat
Registered User
 
Join Date: May 2009
Posts: 4
I want to report another bug when playing linked files.

When linked file is called by the main file video becomes broken on some occasions. Like this:

http://img151.imageshack.us/my.php?i...senki01dvd.png

It stays broken as long as linked file is playing. When the main file starts playing agian video becomes normal. First I thought it should be haali bug. But when i'm using ffdshow (both ffmpeg and libavcodec) or coreavc (with x86 version of MPC-HC) it plays without issues.

Main file (first 4 minutes of it):
http://sharebee.com/91c1a2ea

Linked file:
http://sharebee.com/09e647f1

Linked file is called at 1:54. This sample is SD video encode with 16 Reframes for both main and linked files. MPC-HC cannot use DXVA. I have another HD encode (1080p) with 9 Reframes for both linked and main files. MPC-HC uses DXVA and there is the same issue. If i use internal ffmpeg video becomes broken when playing linked file. If i use ffdshow or coreavc it plays normally.
konsulat is offline  
Old 2nd June 2009, 19:16   #8152  |  Link
cca
Anime Otaku
 
Join Date: Oct 2002
Location: Somewhere in Cyberspace...
Posts: 437
Quote:
Originally Posted by tetsuo55 View Post
Could you try remuxing the file with the newest build of mkvmerge found here:
http://forum.doom9.org/showthread.ph...74#post1291874

(just load the mkv, change the output name and click the remux button)
OK, just tried this, no difference in the playback, still stutters.
__________________
AMD FX8350 on Gigabyte GA-970A-D3 / 8192 MB DDR3-1600 SDRAM / AMD R9 285 with Catalyst 1.5.9.1/ Asus Xonar D2X / Windows 10 pro 64bit
cca is offline  
Old 2nd June 2009, 19:31   #8153  |  Link
tetsuo55
MPC-HC Project Manager
 
Join Date: Mar 2007
Posts: 2,317
Quote:
Originally Posted by Aleksoid1978 View Post
I make test version - http://aleksoid.tosei.ru/mplayerc_1143_test.7z - work AR, fast move/switch between monitors, window and fullscreen mode.
Okay i tested this on my multi-monitor system

I could move between the 2 windows without any crashes, but the screen did hang often(for a few seconds) and redrawing was slow.

Still the no crashes part is the most important for me.

Secondly switching from windowed to fullscreen mode using F11 works fine, but sometimes when i doubleclick the titlebar to change between fullscreen-windowed and 100%zoom-windowed mplayerc will still crash.


------------

@Everyone:
There appears to be a regression in the DXVA decoder, we will have to wait for Casimir to login and check those samples.

Last edited by tetsuo55; 2nd June 2009 at 21:27.
tetsuo55 is offline  
Old 2nd June 2009, 19:36   #8154  |  Link
gngn
the hedgehog
 
gngn's Avatar
 
Join Date: Apr 2008
Posts: 163
Quote:
Originally Posted by cca View Post
OK, just tried this, no difference in the playback, still stutters.
on XP and rev1141 the sample you provided presents stuttering, older frames are repeated during playback, and then video freezes arround 00:15 .
__________________
Athlonx2@2,9Ghz,2G DDRAM2@800Mhz,WinXPSP3 x86,GF8600GTS-256M,Nvidiadrivers 295.73
latest MPC-HC (MVS2010 SP1, GCC 4.7.1)
VMR9renderless+VMR9MixerMode+YUVMixing,VSync+AccurateVSync,all GPUflushes on
gngn is offline  
Old 2nd June 2009, 21:25   #8155  |  Link
rack04
Registered User
 
Join Date: Mar 2006
Posts: 1,538
Can anyone explain this large sync offset? It goes as high as -2298ms.

Windows XP SP3
Nvidia Quadro NVS 135M
EVR Custom Pres
MPC-HC svn 1137
Optimal render settings



Sample
rack04 is offline  
Old 2nd June 2009, 21:28   #8156  |  Link
konsulat
Registered User
 
Join Date: May 2009
Posts: 4
Another bug. Here is the sample:

http://sharebee.com/64d25812

I use ffmpeg internal decoder. I start with window mode. It plays nicely. When I switch to full screen mode video becomes broken (thick green line at the bottom and other video artifacts). Switching back to window mode, video stays broken. No problem with DXVA, ffdshow or coreavc.
Also there is a linked opening here:

http://www.megaupload.com/?d=R8W8V9PT

When I use ffmpeg internal decoder, same issues appear. There is no problem if I play opening separately using DXVA. If I play the main file using DXVA (it calls the opening first), there is very high GPU utilization with all resizers. Video stutters.
konsulat is offline  
Old 2nd June 2009, 22:20   #8157  |  Link
mark0077
Registered User
 
Join Date: Apr 2008
Posts: 1,106
Guys, just trying to sort out my list of bugs, and making note of the final 1 or 2 bugs and feature requests I want to make.

Does anyone know if mpc-hc is expected to add files to the playlist when multiple files are opened. If this isn't the current behaviour would anyone object to me adding this as a feature request. I would have expected opening a list of say 6 tv show episodes, to play each in order one after another.
mark0077 is offline  
Old 2nd June 2009, 22:27   #8158  |  Link
Beliyaal
Registered User
 
Join Date: Dec 2008
Posts: 251
I have submitted a fix for a hang when you move between monitors, but I'm not sure what aspect ratio changes you are talking about when moving between monitors. Do we have a bug for this with sample and which renderer/settings?
__________________
MPC-HC with EVR Custom patches
Beliyaal is offline  
Old 2nd June 2009, 22:39   #8159  |  Link
tetsuo55
MPC-HC Project Manager
 
Join Date: Mar 2007
Posts: 2,317
Quote:
Originally Posted by Beliyaal View Post
I have submitted a fix for a hang when you move between monitors, but I'm not sure what aspect ratio changes you are talking about when moving between monitors. Do we have a bug for this with sample and which renderer/settings?
I'm sure that fix will add nicely to the work aleksoid has done (but not yet submitted).

That specific AR bug can be found here:
https://sourceforge.net/tracker/?fun...61&atid=854651

However the original submitter did not post a sample.
He does mention that it only occurs with the .avi container and that h264 files are affected more often than other video formats.
tetsuo55 is offline  
Old 2nd June 2009, 23:57   #8160  |  Link
Casshern
Registered User
 
Join Date: Apr 2007
Posts: 220
DXVA decoder completely broken starting from 1141

To Casimir and Aleksoid:

Starting with 1141 the internal DXVA decoder is completely broken. All h264 and vc-1 BD m2ts i tried show only every second frame and jump between frames. 1137 works perfectly. I have Wait For GPU Flush enabled and it shows insane amounts of wait for gpu times.

System: XP SP3, ATI 2600 Pro AGP, VMR9 rl, VSYNC all off, Wait for GPU & Flush before Vsync enabled.

Same error with Wait for GPU and Flush before Vsync disabled.

Using the Cyberlink DXVA H264 decoder works. So it must be the changes to the internal MPC DXVA decoder.
Quote:
Originally Posted by Aleksoid1978 View Post
I make test version - http://aleksoid.tosei.ru/mplayerc_1143_test.7z - work AR, fast move/switch between monitors, window and fullscreen mode.
Casshern is offline  
Closed Thread

Tags
dxva, h264, home cinema, media player classic, mpc-hc


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 14:55.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.