Kodi Community Forum
[OFFICIAL] MPlayer.dll development branch feedback. - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93)
+--- Thread: [OFFICIAL] MPlayer.dll development branch feedback. (/showthread.php?tid=23969)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19


- wizboy11 - 2007-04-04

How come GCC 3.4.4 (and 3.4.2) will compile this but for every other version I get an "error2" on something?

Just curious.


- elupus - 2007-04-04

wizboy11:
no idea really. could you give me the exact error?

hibaby:
depends on what rmvb issue. if current win32 mplayer can't handle them, no.. if it can then maybe.


- wizboy11 - 2007-04-04

elupus Wrote:wizboy11:
no idea really. could you give me the exact error?

hibaby:
depends on what rmvb issue. if current win32 mplayer can't handle them, no.. if it can then maybe.

Sure, I took a picture for ya.
This is with version 4.0.4 but the same applies to 4.3.0 too.
Image


720p and other stuffs - biasiman - 2007-04-05

dear all, first of all in pag 1 is written

"Make sure you put the mplayer.conf file in too otherwise you won't be able to use the new codecs"

it means codecs.conf doesn't it?

Then I'm playing some 720p materials with different results: BBC Planet Heart series is around 2.1 GB for 48 mins and plays with difficulties but other stuffs like trailers of movie (720p xvid 5.1 as well) plays very well even in complex scenes. So it is only matter to keep an acceptable bit rate. Is there any tools or suggested settings for nero to recode video material in a format suitable for 720p playing?

thanx


- elupus - 2007-04-08

wizboy11:
fixed that compilation issue.

word:
could you give me the url to a wmv9 online stream that plays choppy in this version of mplayer and not in our old version?


- vanadium - 2007-04-09

I'm not sure about choppiness overall, but this is an example of one that goes out of sync fairly quickly using the new dll, but not the old:

mms://video.rfn.ru/rtr-planeta

In fact, on the old dll, it was far more choppy. Now it just can't seem to keep up.

It's still awesome to have so many other streams working now, though. It's just this sync issue that persists at this point.


- wizboy11 - 2007-04-09

I'm getting another error.
Image

Is this bad?? Like is it me or my compiler or should everyone be getting an error like mine?
I really don't know much on the coding side of things :p


- elupus - 2007-04-09

that one is fixed too. I bet there will be more Smile


- wizboy11 - 2007-04-09

elupus Wrote:that one is fixed too. I bet there will be more Smile

Image


- finas - 2007-04-09

Elupus: what do you use ( and what version )to compile the .dll ?

aren't there flags on the compiler that can be set to optimize the performance of the code?
I heard that compiling with intel c++ would give significant performance advantages.


- elupus - 2007-04-14

yea it would give some perf advantages. but mplayer can't be compiled with it. we use all optmizations that are available to the xbox cpu.


- gronne - 2007-04-15

Btw, we haven't heard much lately of any progress, are you still working actively on it anymore? I think it's really sad Betaboy didn't give you a go on Core, but i hope you're still interested and see potentials in continuing this work.. Thanks for the amazing progress so far!!!


- plugh - 2007-04-15

elupus -

I don't know how significantly you've modded the sources from the 2.0.1 base, and I don't have the time to set up svn in order to get access the new ones to find out.

I made some fairly straightforward changes to the 2.0.1 mplayer.c to fix and enhance the already present "-benchmark" stuff. You and others might find this useful. If I were to supply you with a diff, do you think you could incorporate it into the current branch? Actually, here's the diff...
Code:
--- /e/orig/mplayer/mplayer.c    Tue Nov  7 15:39:59 2006
+++ ./mplayer.c    Sat Nov 18 01:06:05 2006
@@ -231,6 +231,9 @@
static int total_frame_cnt=0;
static int drop_frame_cnt=0; // total number of dropped frames
int benchmark=0;
+int first_dropped=0;
+int last_dropped=0;
+int num_dropped=0;

// options:
        int auto_quality=0;
@@ -1184,6 +1187,7 @@
     total_frame_cnt=0;
     drop_frame_cnt=0; // total number of dropped frames
     benchmark=0;
+    first_dropped=last_dropped=num_dropped=0;
     auto_quality=0;
     output_quality=0;

@@ -2673,9 +2677,10 @@
}
#endif

-total_time_usage_start=GetTimer();
+total_time_usage_start=GetTimerMS();
audio_time_usage=0; video_time_usage=0; vout_time_usage=0;
total_frame_cnt=0; drop_frame_cnt=0; // fix for multifile fps benchmark
+first_dropped=last_dropped=num_dropped=0;
play_n_frames=play_n_frames_mf;

if(play_n_frames==0){
@@ -2823,7 +2828,7 @@
       float newpts = (GetTimerMS() - ffrw_starttime)*ffrw_speed / 1000.0f + ffrw_startpts;    

       //Check if we are still way of the correct frame
-      if( ( v_pts - newpts > 0.5 ) ) drop_frame = 1;
+      if( ( v_pts - newpts > 0.5 ) ) drop_frame = frame_dropping;
   }
#endif

@@ -2838,6 +2843,16 @@
     //------------------------ frame decoded. --------------------

     mp_dbg(MSGT_AVSYNC,MSGL_DBG2,"*** ftime=%5.3f ***\n",frame_time);
+    //logging each drop *while* dropping exacerbates the problem,
+    //so keep track of the number and range and output it 'later'
+    if(drop_frame) {
+        last_dropped=total_frame_cnt;
+        if(!num_dropped++)first_dropped=total_frame_cnt;
+    } else if(num_dropped && total_frame_cnt>last_dropped+24) {
+    if(benchmark)mp_msg(MSGT_CPLAYER,MSGL_INFO,"BENCHMARKd: dropped %d of %d from %d thru %d\n",
+            num_dropped,last_dropped-first_dropped+1,first_dropped,last_dropped);
+    first_dropped=last_dropped=num_dropped=0;
+    }

     if(sh_video->vf_inited<0){
    mp_msg(MSGT_CPLAYER,MSGL_FATAL,MSGTR_NotInitializeVOPorVO);
@@ -4870,11 +4885,13 @@


if(benchmark){
+  if(num_dropped)mp_msg(MSGT_CPLAYER,MSGL_INFO,"BENCHMARKd: dropped %d of %d from %d thru %d\n",
+            num_dropped,last_dropped-first_dropped+1,first_dropped,last_dropped);
   double tot=video_time_usage+vout_time_usage+audio_time_usage;
   double total_time_usage;
-  total_time_usage_start=GetTimer()-total_time_usage_start;
-  total_time_usage = (float)total_time_usage_start*0.000001;
-  mp_msg(MSGT_CPLAYER,MSGL_INFO,"\nBENCHMARKs: VC:%8.3fs VO:%8.3fs A:%8.3fs Sys:%8.3fs = %8.3fs\n",
+  total_time_usage_start=GetTimerMS()-total_time_usage_start;
+  total_time_usage = (float)total_time_usage_start*0.001;
+  mp_msg(MSGT_CPLAYER,MSGL_INFO,"BENCHMARKs: VC:%8.3fs VO:%8.3fs A:%8.3fs Sys:%8.3fs = %8.3fs\n",
     video_time_usage,vout_time_usage,audio_time_usage,
     total_time_usage-tot,total_time_usage);
   if(total_time_usage>0.0)
@@ -4892,7 +4909,6 @@
    100*drop_frame_cnt/total_frame_cnt,
    total_frame_cnt,
    (total_time_usage>0.5)?(total_frame_cnt/total_time_usage):0);
-  
}
It fixes a timer rollover, some formatting, and adds additional logging of dropped frame ranges when activated (so problem areas of clips can be located). Only deficiency is that it is using a frame counter rather than actual frame number, so if you skip around in the file the frame numbers become meaningless. But since you/people are trying to push the box, getting some meaningful cpu data might be of interest...


- plugh - 2007-04-15

Blast it - looks like the web interface ate the last couple lines of the diff. Comparing my diff with the above, it is missing two additional lines of a single blank following the '}' ie
<blank>}
<blank>
<blank>


- elupus - 2007-04-15

i'm still working on it. thou not as actively. i'm plannning on making it our standard player quite soon.

not sure I want to apply that patch, will think about it. this is wrong btw
- if( ( v_pts - newpts > 0.5 ) ) drop_frame = 1;
+ if( ( v_pts - newpts > 0.5 ) ) drop_frame = frame_dropping;

it should drop nomatter if you enabled framedropping or not. it's there to keep ff/rw "happier"