Ripping 3gp Video with FFMPEG

I admit that I was spoiled to a certain degree by my old Motorola mpx220 smartphone: it would play windows media files, and with the addition of the TCPMP media player, many other formats as well. My new LG phone only plays 3gp video, and I hadn’t ever bothered trying to rip video to that format before.

I rapidly discovered that while the stock version of ffmpeg that I had would handle the video, the AMR audio codecs weren’t built in. So, I went over to my Ubuntu box, and entered:

sudo apt-get source ffmpeg

If you cd down into the libavcodec directory, you can read the code to amr.c, which will tell you how to fetch the code you need. You only really need the amr_float code. Unzip it like they say, and then add --enable-amr_nb to the options that you use when you configure. Then just make as normal. It wasn’t difficult at all.

The commandline you pass ffmpeg will probably look something like:


ffmpeg -i bbq.mpg -s qcif -r 10 -b 56 -ab 16 -ar 8000 -ac 1 bbq.3gp

Here’s the resulting video file, which you could test on your phone. I’m not sure the audio sync is exactly right, but it’s not terrible either.

[tags]Mobile Phone,Mobile Media,Video Encoding, FFMPEG[/tags]