The COWON iAudio 7

 in
A Flash-drive, mini-portable media player that plays nice with Linux.
Video Encoding Tutorial

I know video encoding is a bit of a pain for some of you, but the pay-off is in the quality of the video on a player this small and portable. You may want to watch video on a player this small on a camping trip or commuting on a crowded train or plane. For me, it beats lugging around a laptop just to watch a video. I get most of my videos by recording off a cable box at home using Freevo or by downloading a video podcast using Rhythmbox (yes, Rhythmbox can catch video podcasts, it just can't play them).

Encoding is a two-step process that begins by using Avidemux. Avidemux is great for converting most videos codecs, and it works very well for what we're doing here too. The second step involves taking the finished video conversion to Xvid AVI using Avidemux and reprocessing it, using a tool called i7remux 0.1. This is necessary, because the iAudio 7 will play only videos made with I frames; b frames are removed by Avidemux. i7remux is a free, open-source converter made just for the iAudio 7 (see Resources for the download link).

Compiling and installation after extracting from a zip file are easy. Simply open a terminal, and type ./configure, make, then sudo make install. i7remux rearranges the internal structure of a given AVI file and rebuilds the indices. Once i7remux does this, and it does it much faster than the first encoding using Avidemux, the video is ready to be loaded into the player. It doesn't take as much time as it may seem, a one-hour show takes about 30 minutes to encode using these two processes.

First, in Avidemux, open the video file you want to encode. If it's a TV show recorded with a capture card, it will be an MPEG-2 file. Avidemux runs an indexing for the video before it's loaded for the next step. Many video podcasts, however, are m4v files and h264 codec. Avidemux will pop up a dialog box that says it has detected h264 and will use another mode to bypass B frame referencing. You don't need to use this alternate mode that loses frame accuracy, because you will be getting rid of the B frames later anyway, so choose Cancel to keep the frame accuracy.

Next, choose Xvid4 for conversion, select the Configure box, and on the Main tab, choose single pass bit rate, and change the default bit rate to 384 (Figure 2).

Figure 2. Setting the Bit Rate

Next, choose the Motion & Misc tab, and uncheck all the boxes. Change the I frame interval to min 2, max 66 (the maximum interleaving time), and reduce the default amount of B frames to 0 (Figure 3).

Figure 3. Motion & Misc Settings

Then, under the Quantization tab, reduce the B frame quantizer to 1 for both min and max (the lowest setting). Then, click OK, and go to the Filters box (Figure 4).

Figure 4. Quantization Settings

Choose MPlayer Resize, and program 4:3 for source and destination, and program width 160, height 120, and click OK. Do not click Apply. For some reason, Apply doesn't seem to function; I think it's a bug in Avidemux. Also, if you have a video recorded in 16:9 ratio, simply change the source setting to 16:9, and program a width of 160 and a height of 90. That way, the images will not be distorted (Figure 5).

Figure 5. MPlayer Resize

Next, choose Resample FPS, enter 15.000000, and choose no linear blend (Figure 6).

Figure 6. Resample FPS

For audio, choose Lame for MP3 encoding, and click Configure. The default settings should be 128kbps CBR 2 channel stereo, and if they are, don't change them. Then, under Filters, choose Resample, and set it to 44100Hz. Finally, save your project to whatever folder you want, and be sure to give it a name ending with .avi. Click OK, and Avidemux now will convert your video to xvid4. When it's done, close Avidemux, and move on to the next step.

Figure 7. Avidemux Encoding

Now, you're ready to use i7remux to finish encoding your video. This is a command-line program, so open a terminal and simply type i7remux (no need for sudo), then copy and paste the name of your video from the video created by Avidemux. Next, copy and paste again, only this time change the filename of the video by adding a random letter or number to it, then press Enter. If you don't add a letter or number, it won't let you encode. i7remux then creates the video you will load to the player when it's done; this should take about 10–20 seconds. i7remux sends it to the same folder to which Avidemux sent your video.

Figure 8. File Copying

Next, plug in the player to any USB port, and click and drag the video you created with i7remux to the Movie folder in the player. When you navigate to Videos in the player's main menu, you should see your video. Simply highlight it, and touch the play button. You might hear only audio for a few seconds before the video shows up in the screen. If this bothers you, pause the video and start it again.

______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Cowon iAudio7 partition table

Anonymous's picture

Hello guys, I have had this player almost two years. I am noticing that cannot delete files from the drive resulting in running out of disk space. The symptoms when using windows 7 and Slackware Linux 13.0.

I remember way back when this drive was only 3 months old some expert from here suggested I do fsck on the drive then format. I did this in windows. Now in Linux I get the following when look at fdisk list.

Note the Cowon is /dev/sdd

Disk /dev/sdd: 16.5 GB, 16542334976 bytes
64 heads, 32 sectors/track, 15776 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Disk identifier: 0x69737369

This doesn't look like a partition table
Probably you selected the wrong device.

Device Boot Start End Blocks Id System
/dev/sdd1 ? 912975 995343 84344761 69 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sdd2 ? 830821 1743849 934940732+ 73 Unknown
Partition 2 does not end on cylinder boundary.
/dev/sdd3 ? 2 2 0 74 Unknown
Partition 3 does not end on cylinder boundary.
/dev/sdd4 1409025 1409050 26207+ 0 Empty
Partition 4 does not end on cylinder boundary.

Partition table entries are not in disk order

patch for bug in i7remux leading to buffer overflow

Carl Heinrichs's picture

I downloaded and compiled i7remux 0.1 on Ubuntu Intrepid Ibex successfully with the package 'build-essential' installed. But when running i7remux I got the following error:
*** buffer overflow detected ***: ./i7remux terminated
When I fiddled around with i7remux for the first time in January 2009 I couldn't find a solution on the web. But today I could find a patch for the bug:

diff i7remux-0.1/AviFile.cc i7remux-0.1.mine/AviFile.cc
685c685
< char id[4];
---
> char id[5];

The patch can easily applied manually by editing on character in one file of the source code. After another 'make', it's running straight through. Pretty soon I'll try it on Ubuntu Jaunty and Karmic.

Warning: ogg support broken

fresta's picture

Just a word of warning: ogg support is seriously broken on the IAudio 7 player. Most importantly, there is a really annoying noise in the treble when playing some ogg files with bass tones around 100 kHz, see this post at cowonamerica.com. For me it spoils the listening experience completely for about every fourth ogg file in my collection.

Cowon has been aware of it for almost two years now, and done nothing. It's actually a very simple bug and has been fixed on the D2 I think, though several other models from Cowon still suffer from it.

Also, ogg tags parsing is broken in music mode so it is not possible to browse ogg files by artist, album or genre etc. You have to use folder mode.

The IAudio7 definitely has one of the best hardware on the market, the engineers at Cowon has done a good job there. Pity that it should be spoiled by incompetent software programming and lousy support.

vorbis distortion issue fixed

pellgarlic's picture

hi, i just wanted to share some new info with anyone who already owns, or is thinking about getting an iaudio 7 - there is a new firmware release - 1.18 (go here: http://www.cowonglobal.com/ to get it) - which fixes this particular problem (the vorbis distortion). it was a significant problem for me (as my music collection is predominantly in ogg-vorbis format), but i didnt find out until after i had purchased the player. to be honest, i couldn't find another player which ticked all the boxes for me that the i7 does, so i was pretty peeved, and loathe to start the hunt for an alternative, so i emailed cowon support (as many other people have probably done too) and got a few replies, the last one being a few days ago, saying they were releasing a fix :) i have now downloaded it and tested it, and can confirm that it has resolved the vorbis-distortion-caused-by-low-frequency problem. may i say, on a personal note... "woo-hoo!"

this seems to be my player.

Anonymous's picture

this seems to be my player. there is one feature that i cannot find a in depth documentation over. id like to record dj-sets via line-in and am wondering if there is anything such as a visual meter? i need to see if the signal is to quiet or clipping ...

thanks tim from kt

Synching, Filenames

Amanda's picture

I'm struggling with colons in filenames in a lot of my podcasts. Is there a smart workaround?

And, has anyone sorted out a smart way to automate synching? I'm just lazy on that front.

Finally, I'm kind of getting the hang of navigation through trial and error but has anyone seen a better how-to on using the iAudio 7 interface to find and listen to tracks?

Thanks!

Playlist limitations

JD's picture

Great article, and based on it, I asked "Santa" for one. She obliged, and after just over a week, I agree with you that this is one fantastic device.

But, there's one thing seriously missing: per-folder playlists. Is there any way to make them? The problem is, many CDs are built in a specific order (song sequences, classical pieces with multiple parts, etc). The DPL is REALLY LAME for this - I don't want to rip my CDs, build a playlist for use on my computer, and then have to manually walk through every single one of the pieces, again, and one-by-one, to add them to the DPL playlist. And THEN have to step through the DPL for the "album" I want to play.

Is there any way to build and use better playlists? Mind you, I'm not giving up the fantastic FLAC quality (kills MP3 in it's tracks, especially for harpsichord, organ, and violin) or this device, and I'll suffer through DPL if I really, really have to, but anybody bright enough to build a unit this nice must surely know how to build a per-folder playlist too? And make them loadable along with the FLAC files? PLEASE?

tip for smooth video playback

-=terry=-'s picture

If when you start to play the video you get some stuttering just press pause/play and it should play smooth since now on.

Avidemux

-=terry=-'s picture

The new Avidemux 2.4.3 has a little different interface than the one you use. Here are the same steps you took in Avidemux. Thxs much for this great article, after reading it I end up buying an iAudio7 and I love it.

Within Avidemux:

VIDEO/COPY/MPEG-4 ASP (Xvdid4)

CONFIGURE

Main:
Encoding mode: Constant Bitrate
Target Bitrate: 384
Al the rest unchecked

Motion:
Unchecked all the boxes
GOP Size
Min: 2
Max: 66
Max B Frames: 1

Quantitzation:
Trellis Quantization Unchecked
Quantitation Matrix: may not matter?

FILTERS

Mplayer Resizing:
Source A:R : 4:3
Destination A/R: 4:3
Width: 160
Heigth: 120
Bilinear
OK
Note: if the source is 16:9 ratio then change the
Source A/R: 16.9
Destination A/R: 4:3
Width: 160
Height: 90
In this way the images are not distorted.

Resample fps:
New frame rate: 15
Check Blend

AUDIO/MP3 (LAME)

CONFIGURE
Chennel Mode: Stereo
Bitrate mode: CBR
Quality: 2
Bitrate: 128
Disable reservoir: unchecked

FILTERS
Check Resampling and set it to 44100

FILE/SAVE/VIDEO
be sure add the .avi as extension

command line script

pug2694328's picture

GREAT article and a really nifty little player. I was looking for just this thing for my bike commute and just received my iAudio 7 today. A few comment/questions:

-- It looks like I can only create one FM tuner wake/record item. If I want to record Car Talk on Saturdays from 9-10 am and a different show m-f from 1-130pm, I will have to reset the scheduler once a week to toggle between the two schedules. Am I not getting it or is the FM recording scheduler really this limited? Maybe I'm better off using something on my server to capture the shows? Is there any recommended programs for auto getting new .mp3 files when I plug the usb into my home linux box (I'm using ubuntu with gnome). That could be handy for importing podcasts too I suppose.

-- Your tutorial on converting video to the required format is most welcome, but requires several GUI tools and clickity clicking. Does anyone know of command line tools that can be used to script conversion of files for the iAudio 7?

Thanks!

answers & command line script

tvphil's picture

Sorry it took awhile to respond. To answer your first question, yes (unfortunately), its scheduled FM radio record function is that limited. Its nice they have it, but it looks like it was a development engineer's after-thought as in "we have an alarm function, lets script it to record FM radio too!".It is what it is.At least you can schedule one event for either one time or recurring, but that's it. I use Ubuntu on 4 different computers, 2 32 bit versions, 2 64 bit versions. There are several good podcatchers for Ubuntu, but my favorite is the Ubuntu default player/podcatcher Rhythmbox. As I said in the article, it also catches video podcasts, it just won't play them. With video podcasts, after it downloads them, it will say "failed", because it only recognizes audio file extensions. In fact it doesn't fail catching a video podcast, they will show up in your designated folder. It's just a false warning.

Finally, here's a couple of command line examples for encoding without using Avidemux. However, you still need to follow these with i7 remux, here they are:

FFmpeg:
$ ffmpeg -i -f avi -g 1 -b 256k -r 12 -s 160x120 -vtag XVID \
-vcodec libxvid -ab 128k -ar 44100 -ac 2 -acodec libmp3lame

MEncoder:
$ mencoder -ofps 12 -vf scale=160:120 -ovc xvid -xvidencopts \
bitrate=384:max_bframes=0:max_key_interval=1 \
-oac mp3lame -lameopts cbr -of avi -o

If you use this script to

Anonymous's picture

If you use this script to transcode a VOB file, you may encounter audio-video sync problems. To solve this, add "-async 2" on the ffmpeg line.

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix