Rockbox Development > Starting Development and Compiling
huge mpegplayer speedup
gnif:
Woah, no need to get upset mate... I am only trying to help, that was un-nessary.
--- Quote ---Again: Post a patch.
--- End quote ---
Ok, no probs, but as said above... its the single and only line that is commented out. Will post it anyway.
--- Quote ---Essentially, "put up or shut up." People have tried reproducing what you say you've done, and cannot do it.
--- End quote ---
there is one person that has reproduced it
--- Quote ---Both of those ideas are silly
--- End quote ---
Well, if a memory address got screwed up its possible its writing to the framebuffer directly... but since I have only just started working with the rockbox source... and still learning the hardware, I realise this could be completly wrong.
--- Quote ---How would one "accidentally" do such a thing as using the video decoder?
--- End quote ---
Again, I am not sure... since nobody knows how the video decoder works... who knows, it might be watching a certain area of memory for a valid mpeg type stream... not very likely i know, and a pretty dumb way of doing things, but again, who really knows?
gnif:
Requested Diff:
--- Code: ------ mpegplayer.c 2007-04-10 11:49:24.000000000 +1000
+++ mpegplayer.c.old 2007-04-10 11:49:18.000000000 +1000
@@ -924,3 +924,3 @@ static void video_thread(void)
} else {
- //vo_draw_frame(info->display_fbuf->buf);
+ vo_draw_frame(info->display_fbuf->buf);
skipcount = 0;
--- End code ---
Llorean:
You have the person who wrote the mpegplayer plugin saying he tried what you said you did, and it didn't work.
You have one person who claimed to do something impossible (make use of RoLo, which shouldn't be functioning, to swap Rockbox.gigabeat, which wouldn't affect mpegplayer performance since any changes to code in the mpegplayer folder wouldn't change the .gigabeat file) and have the same effect. Not a reliable source compared to the person who wrote the plugin you're playing with. He also would be on entirely different hardware that doesn't have a video decoder chip. Which rules out that possibility if he was reproducing it.
I'm not upset. I'm just incredibly skeptical. My assumption is that you've done something wrong, but since you aren't showing us evidence of this behaviour, and the only person who's "confirmed" it couldn't possibly have done what he's claimed to do (even if RoLo worked, he'd be using the same mpegplayer binary, and thus performance would not change between the two builds), you can see how I might be doubtful.
So, as I said, show us something that we can actually test, rather than making wild statements that are likely to get less technically knowledgeable forum members excited over something that seems very suspicious to me.
(And you'll note, I said post a build that exhibits this behaviour along with the patch)
Basically, unless something is rendering directly to the framebuffer, and happens to be rendering in the framebuffer format for some strange reason, neither of your explanations really make any sense.
I also note the diff is just of two files, the old and the new (which you got backwards). There are no other changes to any other aspect of your source, and you're 100% certain your overwriting the full Rockbox build when you extract?
gnif:
--- Quote ---make use of RoLo, which shouldn't be functioning, to swap Rockbox.gigabeat
--- End quote ---
Haha, didnt notice that... yeah, wouldnt have made a difference at all.
--- Quote ---My assumption is that you've done something wrong
--- End quote ---
Thats why I am asking the question.... I am not sure of my code, and I am not saying that what I have done is correct.
--- Quote ---and happens to be rendering in the framebuffer format
--- End quote ---
Thats what makes me question the theory of rendering directly to the framebuffer.
Whoops about the diff... a bit tired. I am absolutly 100% certain I am replacing the entire rockbox source since I removed the directory first before extrating (also removed the build directory).
fixed diff
--- Code: ------ mpegplayer.c.old   2007-04-10 11:49:18.000000000 +1000
+++ mpegplayer.c     2007-04-10 11:49:24.000000000 +1000
@@ -924,3 +924,3 @@ static void video_thread(void)
        } else {
- Â Â Â Â Â Â Â Â Â Â vo_draw_frame(info->display_fbuf->buf);
+ Â Â Â Â Â Â Â Â Â Â //vo_draw_frame(info->display_fbuf->buf);
          skipcount = 0;
--- End code ---
I will upload a build, and source to my server... will post when its there
gnif:
modified source:
http://www.spacevs.com/~gnif/rockbox-bleeding_mpegplayer_mod.tar.gz (11MB)
entire build directory (including rockbox.zip):
http://www.spacevs.com/~gnif/rockbox_ipod5g.tar.gz (8MB)
If there is any more info needed, let me know.
As I said, I dont understand what is going on... I have spent hours on this before posting to this forum, and only as a last resort. I am waiting for someone to say "you dumbass, you forgot this, there is nothing wrong" ;).
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version