You are here: Home » Topic » gzip support

gzip support

This topic contains 3 replies, has 2 voices, and was last updated by  rpedde 11 years, 2 months ago.

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #445

    Denis
    Participant

    Hi

    Is it possible to support gzip compression? The list iTunes gets from daapd is several mb in size and it is highly compressable data.

    My uplink is only 192kbit in size which is enough for most of my songs but the first connection is very very slow. Compression would help alot and I know that iTunes supports it. I wrote iSuck three years ago if someone remembers it! ๐Ÿ˜‰

    Denis

    #5557

    rpedde
    Participant

    @denis wrote:

    Hi

    Is it possible to support gzip compression? The list iTunes gets from daapd is several mb in size and it is highly compressable data.

    My uplink is only 192kbit in size which is enough for most of my songs but the first connection is very very slow. Compression would help alot and I know that iTunes supports it. I wrote iSuck three years ago if someone remembers it! ๐Ÿ˜‰

    Denis

    Yeah, it does support it, the only issue I have with it is that it is really slow. It requires 3 passes through the db to be able to send compressed stuff, although that tradeoff might be worth it for a low speed connection.

    I’ll take a look at it again and see how bad it looks.

    — Ron

    #5558

    Denis
    Participant

    Hi

    I made changes to mt-daapd to support gzip again. It saves between 75% and 85%. Right now it always uses GZIP when the client asks for it. Maybe you can add the check for the config. Also I could only test it with iTunes. I don’t know if I did break anything else.

    http://denisx.dyndns.org/mt-daapd-gzip.patch

    Denis

    PS: the patch is based on dispatch.c revision 1328

    #5559

    rpedde
    Participant

    @denis wrote:

    Hi

    I made changes to mt-daapd to support gzip again. It saves between 75% and 85%. Right now it always uses GZIP when the client asks for it. Maybe you can add the check for the config. Also I could only test it with iTunes. I don’t know if I did break anything else.

    http://denisx.dyndns.org/mt-daapd-gzip.patch

    Denis

    PS: the patch is based on dispatch.c revision 1328

    I didn’t look at it too closely, but that looks like it’s compressed in-memory, is that right?

    I’ll point people to this, but I won’t commit it unless it does it on-the-fly… I want stuff that will run on linkstation and slug, and other low-memory devices.

    I was thinking to make a pass just tossing the output to get the length, then making another full pass doing the actual compression.

    It’s probably much slower, but it means that it can scale to arbitrarily large libraries.

    — Ron

Viewing 4 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic.