RV30/40 – status

Just for curious people who really want to know what’s happening in rv30/40 decoder for libavcodec implementation.

I have implemented all main parts of decoder including loop filters, but some of the finer details are missing like parameters that should be passed to loop filters or motion vector prediction. This results into jerky picture in case of B-frames present (and they are often present) and dirty tails after moving objects. See for yourself.

Screenshot of decoder performance

Some example of my rv40 decoder work

Currently the work on this decoder is stalled. In order to fix bugs I have to verify decoded data against reference decoder and that’s not easy. It takes a whole night to get the needed debug data for 70 frames from 320×240 video on my ThinkPad 390. And it takes a lot of space too considering I have about a hundred megabytes of free disk space there.

I want to obtain a small (I don’t have enough space to fit standard desktop), low-power (less than 20-30 Wt power consumption, power blackouts are quite common here) x86-based computer. I know they exist in many variations, but it’s next to impossible to buy one here.

Well, I will finish both encoders. Eventually. Especially if I have enough content to test it with – most files I’ve met (including samples.mplayerhq.hu) are either Japanese TV recordings (anime often bears Chinese subtitles) or Simpsons with crappy translation into Russian (for example, “you rock” was translated as it if was “you are a rock”). Oh, there are also some movie trailers but I fear the need to watch them won’t motivate even Mike.

If you are curious why I chose that shot. I believe it features the character main MPlayer server is named after.

8 Responses to “RV30/40 – status”

  1. If you relax your requirements for x86-arch, there is obvious choise – good old PowerPC-based Mac Mini.

  2. Would an Asus Eee PC fit the bill? And how hard would it be to smuggle into your part of the globe?

  3. Kostya says:

    That’s an interesting question. When my PowerPc-based MacMini was delivered, it was declared as external CD drive. Our custom house is a main stop point on the way of delivering anything.

  4. Next idea: rather than physical hardware (and the international snafus that would involve), do you think it would do you any good to have an SSH login to a much faster x86_32 machine? I think that could be arranged. Run things from a screen session and it won’t matter if your own machine loses power or connection.

  5. Kostya says:

    Thought about it too. It’s a bit slow-reacting and hard to deal with big files (like debug output which easily produces megabytes for single frame). Tried it at work once.

    I think I will have dealt with it to the middle of May at any rate.

  6. compn says:

    well if you figure out which pc you want, i’m sure we can put a request up on ffmpeg.org for some donation for you 🙂

    lots of users would like to help out ffmpeg team by donating something…

  7. compn says:

    btw what about hiding a good pc in an Nintendo case? could claim NES with 10 games on customs form 🙂

  8. dima says:

    If there is a donation possibility, I’ll spent 50 USD for your machine. Your work for community benefit is awesome.