# image animation

A web and image-format technique for displaying a sequence of image frames as animation.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Enhancing Myntra App performance: Transitioning from GIFs to Videos

DevFeed: [Enhancing Myntra App performance: Transitioning from GIFs to Videos](<https://devfeed.tech/articles/enhancing-myntra-app-performance-transitioning-from-gifs-to-videos-20135.md>)

Original publisher: [Read original article](<https://medium.com/myntra-engineering/enhancing-myntra-app-performance-transitioning-from-gifs-to-videos-2aa275a29c34?source=rss----7484818e9f88---4>)

Author: Kartik Sharma

Published: 2025-08-30T07:00:01Z

Content type: article

Language: en

Sources: [Myntra](<https://devfeed.tech/sources/myntra.md>)

Topics: [App](<https://devfeed.tech/topics/app.md>), [image animation](<https://devfeed.tech/topics/image-animation.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [Playback](<https://devfeed.tech/topics/playback.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [app](<https://devfeed.tech/tags/app.md>), [gif](<https://devfeed.tech/tags/gif.md>), [h-264](<https://devfeed.tech/tags/h-264.md>), [ios](<https://devfeed.tech/tags/ios.md>), [mobile-app-performance](<https://devfeed.tech/tags/mobile-app-performance.md>), [performance](<https://devfeed.tech/tags/performance.md>), [videos](<https://devfeed.tech/tags/videos.md>)

### AI overview

Myntra describes transitioning animated content in its Android and iOS apps from GIFs to video formats. The article attributes the change to GIFs' high memory usage, lower visual quality, large file sizes, and resulting performance and loading concerns, while comparing alternatives including WebP, APNG, and H.264/HLS video.

### Source excerpt

Introduction In the fast-paced world of e-commerce, every millisecond and every pixel counts. At Myntra, where visual content drives discovery and engagement, we embarked on a critical mission: to revolutionise how animations are delivered in our Android and iOS apps. This journey led us to transition from the ubiquitous GIF format to more efficient video formats, unlocking significant performance gains and a superior user experience. Background on GIFs The Graphics Interchange Format (GIF) has been a widely-used format for looping animations since its introduction in 1987. Its simplicity and broad compatibility made it a go-to choice in mobile apps. However, despite its ubiquity, GIFs come with several drawbacks that can negatively impact app performance and user experience. Challenges with GIFs in Myntra App At Myntra, we used GIFs extensively for animations in our home and brand page's widgets. Our existing Image components provided easy GIF playback. However, GIFs came with some serious drawbacks in native mobile environments: High Memory Usage: GIFs often lead to Out of Memory (OOM) errors, especially on low-end devices. Low Quality: Limited frame rates and poor bitmap quality degraded the visual experience. Large File Sizes: GIF assets were large, increasing network load and loading times. To mitigate these issues temporarily, we implemented several workarounds. These included optimising GIF assets and imposing restrictions on the file size of GIFs during the ingestion process. However, these were interim solutions and the move to an alternate was necessary for a more permanent and effective fix. Exploring Alternatives Before settling on a solution, we explored several alternatives to GIFs: WebP: This format offers better compression and quality than GIFs. It has broad web support and is native on Android, but is only supported natively on iOS versions 14 and above. APNG (Animated PNG): APNG provides excellent image quality and strong web browser support. Howe

## Haskell: Game Programming with GIF Streams

DevFeed: [Haskell: Game Programming with GIF Streams](<https://devfeed.tech/articles/haskell-game-programming-with-gif-streams-30819.md>)

Original publisher: [Read original article](<https://hookrace.net/blog/haskell-game-programming-with-gif-streams/>)

Published: 2023-09-06T22:00:00Z

Content type: tutorial

Language: en

Sources: [Dennis Felsing](<https://devfeed.tech/sources/dennis-felsing.md>)

Topics: [Haskell](<https://devfeed.tech/topics/haskell.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>), [image animation](<https://devfeed.tech/topics/image-animation.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [browser](<https://devfeed.tech/tags/browser.md>), [gif](<https://devfeed.tech/tags/gif.md>), [haskell](<https://devfeed.tech/tags/haskell.md>), [http](<https://devfeed.tech/tags/http.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

A tutorial for implementing the Snake game in Haskell using the gifstream framework. The game generates animated GIF frames through an HTTP server, displays them in a browser, and accepts WASD input from the terminal.

### Source excerpt

Note: This is translated from the German original, which was used as a homework for the Programming Paradigms course at Karlsruhe Institute of Technology a long long time ago when I was co-holding the practical courses. Snake is a computer game in which a snake has to be moved through a playing field. Eating food increases the snake's length. When the snake collides with a wall or itself the game ends. In this homework you will implement Snake in Haskell. For this you will require the framework from the gifstream repository. The output of the game happens in an animated GIF stream, which you can watch in your browser. 64 colors are supported, which can be respresented as Int tuples of (0,0,0) up to (3,3,3). type RGB = (Int,Int,Int) A single frame of a GIF is defined as a list of rows, wherein each row is a list of RGB values. type Frame = [[RGB]] The framework provides a \texttt{server} function, which runs an HTTP server on the supplied port. The server sends each client a new frame of the GIF animation at the set interval. In the passed logic function new frames will be generated dynamically. server :: PortNumber -> Int -> Logic -> IO () The Snake.hs file contains the basis for writing the Snake game. Compile the game and run it (You'll need to install the network and random Haskell packages too): $ ghc -O3 -threaded Snake.hs [1 of 2] Compiling GifStream ( GifStream.hs, GifStream.o ) [2 of 2] Compiling Main ( Snake.hs, Snake.o ) Linking Snake ... $ ./Snake Listening on http://127.0.0.1:5002/ Open the supplied address in a browser. By pressing the WASD keys in the terminal you can influence the GIF in your browser. Other participants in your network can watch the GIF stream as well, by using your network IP address instead of 127.0.0.1. Furthermore it is possible to record the GIF stream and watch it later: wget -O game.gif http://127.0.0.1:5002/ The most important function in Snake.hs is logic: logic wait getInput sendFrame = initialState >>= go where go (State ol

## I link therefore I am

DevFeed: [I link therefore I am](<https://devfeed.tech/articles/i-link-therefore-i-am-1776.md>)

Original publisher: [Read original article](<https://signal.org/blog/i-link-therefore-i-am/>)

Published: 2019-02-06T00:00:00Z

Content type: release

Language: en

Sources: [Signal Blog](<https://devfeed.tech/sources/signal-blog.md>)

Topics: [releases](<https://devfeed.tech/topics/releases.md>), [image animation](<https://devfeed.tech/topics/image-animation.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [feature](<https://devfeed.tech/tags/feature.md>), [ios](<https://devfeed.tech/tags/ios.md>), [links](<https://devfeed.tech/tags/links.md>), [privacy](<https://devfeed.tech/tags/privacy.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

Signal is rolling out optional link previews for Android, Desktop, and iOS. The feature uses a privacy-enhancing proxy, direct TLS to previewed HTTPS sites, and overlapping range requests to limit exposure of URLs, IP addresses, and preview-image sizes.

### Source excerpt

The latest releases of Signal for Android, Desktop, and iOS are rolling out now with the ability to send optional link previews. This feature is built on the same foundation that has powered Signal's animated GIF search for more than two years and that we have since expanded with additional privacy enhancements. We're launching link previews with initial support for Imgur, Instagram, Reddit, and YouTube. These are four of the most popular sites on the Internet and their heavy focus on visual content makes them a perfect fit for this feature. We don't believe that privacy is about austerity, and now Signal users can see what's behind the URL while sharing this content with their friends. Read more...

## Expanding Signal GIF search

DevFeed: [Expanding Signal GIF search](<https://devfeed.tech/articles/expanding-signal-gif-search-1823.md>)

Original publisher: [Read original article](<https://signal.org/blog/signal-and-giphy-update/>)

Published: 2017-11-01T00:00:00Z

Content type: article

Language: en

Sources: [Signal Blog](<https://devfeed.tech/sources/signal-blog.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [image animation](<https://devfeed.tech/topics/image-animation.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [API](<https://devfeed.tech/topics/api.md>), [Network](<https://devfeed.tech/topics/network.md>), [Encryption](<https://devfeed.tech/topics/encryption.md>), [Virtual Private Network](<https://devfeed.tech/topics/vpn.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [api](<https://devfeed.tech/tags/api.md>), [experimental](<https://devfeed.tech/tags/experimental.md>), [ios](<https://devfeed.tech/tags/ios.md>), [network](<https://devfeed.tech/tags/network.md>), [padding](<https://devfeed.tech/tags/padding.md>), [privacy](<https://devfeed.tech/tags/privacy.md>), [tls](<https://devfeed.tech/tags/tls.md>), [updates](<https://devfeed.tech/tags/updates.md>), [vpn](<https://devfeed.tech/tags/vpn.md>)

### AI overview

Signal's iOS beta adds in-app browsing and search for popular animated GIFs, extending an earlier Android feature. The article explains how Signal proxies GIPHY requests while using end-to-end TLS to hide search contents from Signal and the requester's identity from GIPHY, and discusses padding as a defense against traffic analysis.

### Source excerpt

Today's Signal beta for iOS includes support for animated GIF search. Signal iOS has long supported sending and receiving GIFs, but today's beta adds support for browsing and searching popular GIFs from within Signal. We previously announced experimental support for animated GIF search in Signal Android, which we're now bringing to iOS, along with some privacy updates to the process. Read more...

## Animated Gif Support

DevFeed: [Animated Gif Support](<https://devfeed.tech/articles/animated-gif-support-19194.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/animated-gif-support/>)

Author: Shai Almog

Published: 2017-08-07T00:00:00Z

Content type: article

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [image animation](<https://devfeed.tech/topics/image-animation.md>), [Library](<https://devfeed.tech/topics/library.md>), [Usability](<https://devfeed.tech/topics/usability.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [battery](<https://devfeed.tech/tags/battery.md>), [blog](<https://devfeed.tech/tags/blog.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [display](<https://devfeed.tech/tags/display.md>), [gif](<https://devfeed.tech/tags/gif.md>), [image](<https://devfeed.tech/tags/image.md>), [library](<https://devfeed.tech/tags/library.md>), [memory](<https://devfeed.tech/tags/memory.md>), [post](<https://devfeed.tech/tags/post.md>), [usability](<https://devfeed.tech/tags/usability.md>)

### AI overview

This blog post announces animated GIF support in Codename One through a new cn1lib, explaining that GIFs can be used as plug-in images in places such as labels and background styles. It notes resource, memory, and battery costs, and describes limitations including incompatibility with native map markers.

### Source excerpt

So you know how you write a blog post just before you go on vacation, press publish and never check that it actually got published... Funny thing, that's exactly what I did and the blog post mentioning that I was on "vacation" for a couple of weeks never got published. Anyway, other people have been busy while I was "away" but I got a couple of things done too including animated gif support.