Log in

View Full Version : Another new lossless codec!


System25
12th April 2006, 19:12
It seems that everybody develops new lossless codec so I have developped the mine.

Like uses (as part of the algorithm) LZO compression (and I like LZO very much) I have named it "LZOcodec".

I have attached it.

So download it, test it, and say to me if your like it.

Greetings.

Now I have put it in the net:
http://usuarios.lycos.es/lzocodec/

Greetings.

dragongodz
13th April 2006, 02:52
you are better off putting the file on a free file hosting site so people can get and test it rather than on the forum direct.

for a list of some sites read this thread
http://forum.doom9.org/showthread.php?t=96362

Backwoods
13th April 2006, 19:44
Have you done any comparisons with other lossless codecs yet?

System25
14th April 2006, 13:08
Yeah! it looks like to be a little better than CamStudio and faster.

But it appears to compress less than MSU.

My codec appears to be the faster one but not the more compressed. But I suppose that depends on the video that you compress.

And MSU codec looks like if it does not put any KEY FRAME inside the video. I put one every 64 frames.

If you want more comparisions do it yourself an let my know.

Greetings.

tekNerd
14th April 2006, 13:49
I can't see it in CamStudio, but then again I didn't restart the system! Lil'bit later 'cause now I'm in the middle of something!
Peace out!

System25
15th April 2006, 12:53
I don't understand what are you saying.

But I have not tryed it with CamStudio. I do not use that program. I have tried it with VirtualDub and with a program that converts flash movies into avi files.

Greetings

siddharthagandhi
15th April 2006, 13:57
Its a lossless codec, not necessarily a screen capture codec.

ReinerSchweinlin
18th April 2006, 00:44
what colour spaces are usable? VDMOD says, only RGB24 is supported. "fast recompress" therefore doesnt´work, "normal recompresss" does.
On my 2gHz Ahtlon XP (Thorton), for 500frames video-footage in RGB 24 its about:

lzo: 16 fps 101 MB
huffyuv 24rgb best: 50fps, 40 MB
lagaryth 1.3.8: 23fps, 85 MB
ffv1 rgb32: 19fps, 75 MB
msu 0.5.8: 0,000001 fps.. aborted
msu 0,6: 1fps, aborted, estimated filesize after 200frames: 70 MB

System25
21st April 2006, 22:28
I have made a new version (Yes I have too much free time).
* Added a new compression scheme with gzip and Range Coder.
* Added compatibility with CamStudio.

And I have spend one day making test and comparisions with MSU and CamStudio verifying one thing that I've already known. MSU is the best followed by LZOCodec and CamStudio for videos with low colour frames and LZOCodec is the best for real video thanks to the new compression scheme.

You can look to the comparative chart and download the new version from the same web: http://usuarios.lycos.es/lzocodec/

Greetings

ReinerSchweinlin
21st April 2006, 23:15
zhanx. I´ll give it a try.
Still, some more information would be nice :)

foxyshadis
22nd April 2006, 00:15
Have you compared it to ZMBV at all? It's a bit slow, but almost as good as MSU.

mod
22nd April 2006, 00:24
I captured a few material, it seems I'm not able to decode it properly, doesn't matter the encoding settings in the codec and in VDub.

http://img97.imageshack.us/img97/2162/prova00zp5qm.th.gif (http://img97.imageshack.us/img97/2162/prova00zp5qm.gif) http://img97.imageshack.us/img97/4260/prova00vd9tc.th.gif (http://img97.imageshack.us/img97/4260/prova00vd9tc.gif)

I checked FFDShow decoders, seems ok, any idea?

System25
22nd April 2006, 15:37
Do you know what type of decoding is? I mean, video is decoded to YUY2, RGB24 or RGB32.
And how have you captured the video?
I have tested it only capturing with virtual dub, capturing a little video with CamStudio and converting another video with virtual dub. And viewing it with virtual dub and windows media player.

Is possible that if you capture in YUY2 (from a tv capture card i.e.) it does not work properly because I have not tested it yet (sorry).

And for foxyshadis, no I have not tested ZMBV at all. There are lots of lossless codecs (LZOCodec is only one more) and I can not make test with all.
Feel free of testing it yourself and let me know the results.

Greetings

mod
23rd April 2006, 09:38
Is possible that if you capture in YUY2 (from a tv capture card i.e.) it does not work properly because I have not tested it yet (sorry).

Yes, it's YUY2. Keep the work, I'll wait! :)

System25
25th April 2006, 20:00
Dear friend Manzo,

I have created a new version of LZOCodec that according with VirtualDub 1.6.14 can manage:
* RGB32
* RGB24
* RGB16 (555) New!
* RGB16 (565) New!
* YUY2 New!
* UYVY New!

I hope this solves your problem.
http://usuarios.lycos.es/lzocodec/LZOCodec_v0_2.zip

If this not solves your problem please say to me what program (program, version and configuration) do you use for capturing and what tv capture card.

Greetings and thank you for testing!

ReinerSchweinlin
26th April 2006, 00:28
Thanx for the nice work. So it seems, that LZO doesn´t colour convert? I tried to trick VD by feeding several different sources in order to get lzo to use different colour-spaces. Could u implement some sort of conversion-option, so it would be possible to use filtering in DV and still save in yuy2 or even yu12?

Quick results, all are 1000 frames, RGB, from a CG-Movie
lzo 0.1a: 120 MB
lzo 0.2: 120 MB
MSU 0.6: 166 MB
lagaryth 1.3.8: 185 MB
LJPEG: 257 MB

Quite nice :)

mod
26th April 2006, 00:33
It works like a charm now, thanks

enc: VDub 1.7.0 build 24488, YUY2
dec: ZoomPlayer via FFDshow (kills my XP2700+ @ 640x480 ;) )

In the next days I'll do some more testing :)

System25
26th April 2006, 09:56
Thanx for the nice work. So it seems, that LZO doesn´t colour convert? I tried to trick VD by feeding several different sources in order to get lzo to use different colour-spaces. Could u implement some sort of conversion-option, so it would be possible to use filtering in DV and still save in yuy2 or even yu12?

Quick results, all are 1000 frames, RGB, from a CG-Movie
lzo 0.1a: 120 MB
lzo 0.2: 120 MB
MSU 0.6: 166 MB
lagaryth 1.3.8: 185 MB
LJPEG: 257 MB

Quite nice :)

My english is not so good to understand you properly.
If you are saying that you have use the codec in a video and you can not see it properly. Tell me what program (and version of the program) have you used and the different configuration options. With this I will try to reproduce the failure and fix it.

If you are taking about output video, I mean:
[Video] --> (encode) --> [LZOCodec Video] --> (decode) --> [YUY2 video]

I have not tryed yet output video because I have no idea of how to try it with VirtualDub.

In any case tell me what are you exactly doing and I will try to solve the problem.

johnsonlam
26th April 2006, 15:02
Hello Friends here,

Thanks to System25 develop this codec.

Did anyone compare the new codec with HuffYUV or MSU Loseless codec? So System25 can improve it even more!

System25
1st May 2006, 19:30
And now the v0.3. With 2 more colourspaces:
* YV16
* YV12 (NOT recommended)

And all the colourspaces can be for input video or for output video.

Now please test it and send me error reportings.

NOTE: All the colourspaces test have been made with VirtualDub.

Greetings

foxyshadis
1st May 2006, 20:15
johnsonlam: check post #8

johnsonlam
2nd May 2006, 08:24
johnsonlam: check post #8

Thanks. I missed the previous post.

Not bad, looking forward to more improvement.

johnsonlam
2nd May 2006, 08:28
And now the v0.3. With 2 more colourspaces:
* YV16
* YV12 (NOT recommended)

And all the colourspaces can be for input video or for output video.

Now please test it and send me error reportings.

NOTE: All the colourspaces test have been made with VirtualDub.


:goodpost:

Thank you very much !!

Deathbliss
13th July 2006, 20:30
When you compress a file using this, after using a program like CamStudio, the mouse cursor tracking is bad - just as bad if not worse that MSU. Be nice if you fixed that!
- Deathbliss

System25
14th July 2006, 09:37
This codec (as every codec in the world) compresses each frame that you pass to it.

Mouse tracking depends on the program that you not and do not depend on the codec.

Probably the program that you use drops frames when it can compress in real time.

So you will need a faster codec (I'm working to speed up the codec but it seems that I can't improve it) or a faster computer.

If you think about screen capture with another codec at 30 fps and then convert it with virtual dub:
* First, be sure of virtual dub settings in order to not convert a 30 ftps video in a 25 ftps video.
* In LZOCodec decompression is slower than compression so you will probably can't see it in real time.

My advice is to review the settings of camstudio or the program that you use.

Greetings

Deathbliss
14th July 2006, 10:04
I don't think it's the program (I'm using CamStudio), because I don't have any trouble at all with xvid, wmv9, and even the CamStudio lossless. It's just with MSU and your codec that the mouse cursor isn't tracked well. I don't know if it's dropped frames or what. I can record a test video for you showing the settings for the video if that'll help you at all.

Good work on the codec - I really did like it but it just wouldn't work for my needs :(
- Deathbliss

check
14th July 2006, 13:04
Assaid in the above post, "decompression is slower than compression so you will probably can't see it in real time"

System25
12th October 2006, 20:51
Hey Hey! It's me again!
I've developed a new version -----> LZOCodec v0.4

This new version has a new algorithm that can compress a little bit more. And after a big effort it can compress a little bit faster too (in most of cases).

So, the new version, a pair a questions added to FAQ and a new comparative chart in the old webpage:

http://usuarios.lycos.es/LZOCodec/

Get fun!

Chainmax
13th October 2006, 01:04
I'd love to see how it compares to Lagarith. I'd do it myself, but I have two DVD project on the queue and only ~4.7GB of HDD space left :(.

johnsonlam
13th October 2006, 06:45
Hey Hey! It's me again!
I've developed a new version -----> LZOCodec v0.4

This new version has a new algorithm that can compress a little bit more. And after a big effort it can compress a little bit faster too (in most of cases).


Glad to see you're back with a new version.
Really thanks for your work!

Loseless codec is not easy, you're so brave to take the challenge ;)

Do you think multi-thread or dualcore CPU can improve the performance?

foxyshadis
23rd October 2006, 08:30
For some reason using FFV1 would crash encoding my psx videos, but this works fine, so awesome. =p But I think YV12 output should be removed, because opening it in avisynth by default asks for yv12, and the codec crashes the program. Only by setting pixel_type to YUY2 in avisource will it work.

Fast recompress of LZO->LZO also doesn't seem to work too well. It always comes up with extremely tiny files that crash.

System25
23rd October 2006, 12:56
johnsonlam: Dual core CPU will not improve much performance.

foxyshadis: The internal data representation of LZOCodec (for the second compression step) is YUY2 so introducing data in YV12 does not save much space and has a cost of time.

But I've seen that people are not really interested in YUY2 video because most of then uses the codec with videos encoded previously with YV12 so I will stop the development of LZOCodec and I will start a new one based in YV12.

Nowadays I have very little spare time. But I hope that in a near future you will have news about this new codec.

Greetings.

foxyshadis
23rd October 2006, 18:42
I understand, but would it be possible to release a version that simply disables YV12 output? YV12 output is what's crashing it, not input or output to RGB, which work fine. (The format of the data doesn't bother me as long as it works fast and small, which LZO is.)

System25
24th October 2006, 07:24
Yes, it is posible. I will see if I can take some free time to do it or to repair it.

Thanks for your interest

System25
24th October 2006, 21:38
Well foxyshadis. I've been testing the codec with virtualdub and it only crashes when I put a LZOcodec video as input, a LZOcodec video as output and YV12 as colourspace and RTPPM as final compression algorithm.

* YV12 input seems to work fine.
* YV12 output seems to work fine.
* And the problem was RTPPM, because of a shared memory between input and output stages in the codec.

Now the codec uses 2 different object (one for coding and one for decoding) so this problem is fixed.

Download it once more from the webpage http://usuarios.lycos.es/lzocodec, try it and tell me if the problem is fixed.

If the problem is yet there... could you please make to me a zip file with your avisynth version, a video wich crashes, the avisynth script and a little document explaining step by step what you make, and uppload this file to a webserver or megaupload?

Greetings

foxyshadis
24th October 2006, 23:31
It still seems to crash in avisynth. Weird, I wonder if it has to do with alignment. Here's a sample video (http://foxyshadis.slightlydark.com/random/STR2311_cut.avi). Avisynth is either stable 2.56 (http://prdownloads.sourceforge.net/avisynth2/Avisynth_256.exe?download) or unstable 2.57 (http://bengal.missouri.edu/~kes25c/Avisynth_091006.exe) (tested both, same result).

Procedure is load avisynth into virtualdub, first frame shows fine. Seek to second frame, or any other frame, crash (consisting of disappearing, some kind of SEH problem between XP SP2 and Avisynth, I'll dig in and test a debug avisynth if you'd like).

All this in a big zip: Click me! (http://foxyshadis.slightlydark.com/random/Concerto.zip)

However, LZO->LZO works great now, thank you for that.

henryho_hk
25th October 2006, 06:40
System25, what's wrong with YV12?

Edit: Now I know what you mean. BTW, will you add field-based compression mode?

System25
1st November 2006, 12:44
Hello again foxyshadis,

Download it once more from the webpage http://usuarios.lycos.es/lzocodec, try it and tell me if the problem is fixed.

The problem was that the second step of compression is supposed to give less bytes than the original image. This is allways true for YUY2 images but is not true for YV12 images.

Thank you very very very very very very very very very MUCH for your help foxyshadis. If I see you I will kiss you as a reward ;)

And henryho_hk, there was a problem wich makes a YV12 LZOCodec compressed video not to show as YV12. But you can display it as YUY2 or RGB with an older version (the new version wich I have uploaded today is supposed to work perfectly).

Greetings.

foxyshadis
1st November 2006, 19:55
So far it seems to work fine, no problems. Awesome job! Also: :p

Lemonadez
3rd November 2006, 11:04
So what program can we use this script? Just Virtual Dub?

Does Virtual Dub support AVI to Real media?

Cuz it said on "README" we can use it on RealVideo but dont know which program to use it.