Log in

View Full Version : Archos JBMM playing XviD?


Sastraxi
8th August 2003, 00:20
Hi all,

Yesterday I received my Archos Jukebox Multimedia 20gb edition in the mail... and boy was I impressed. I had taped ~30 episodes of Seinfeld for viewing wherever I went, however even at the latest firmware version (1.3.1 at time of writing), the movies don't work. I can hear the audio fine (96kbps mono Mp3), but the video gets an error "Cannot play video data! Please check", with nothing after the "check". Here are the encoding parameters:

XViD @ 475 kBits/s

Motion Search Precision: 6 - Ultra High
Quantization type: H.263
FourCC used: XVID
VHQ mode: 0 - Off

Maximum I-frame interval: 300
Minimum I-frame interval: 1

[X] Enable lumi masking
[ ] Enable greyscale
[ ] Enable interlacing
[X] Use chroma motion
[ ] Quarterpel
[ ] Global Motion Compensation

Maximum B-frames: -1 (-1 indicates not to use B-frames)
B-frame quantizer ratio (%): 150
B-frame quanizer offset: 100
B-frame threshold: 0
[X] DX50 B-VOP compatibility
[ ] Packed Bitstream
[ ] Print debug info on each frame

Also, if it helps, I've used the default optimizations (detected) for my processor, which is an Athlon XP 2000+:
[X] MMX
[X] Integer SSE
[X] SSE
[ ] SSE2
[X] 3DNow!
[X] 3DNow! 2

I hope someone here knows why these videos don't work. However, when put through the Archos MP4SP program (which is for all intents and purposes a front-end to virtualdub), the video works wonderfully (however it looks awful as it's a 2nd encoding >_<).

If noone knows the answer to this, could someone then instead point me to a MPEG-4 stream comparer or analyser? So I could see the difference between the settings of said movies...

(First post :))

symonjfox
8th August 2003, 10:54
The settings should be ok, it's Simple Profile, so it shouldn't give any problem.

Have you tried to change the fourCC to DIVX?
If this won't work, try to pack everything into MPEG4 container.

I saw their homepage and they talk about MPEG4 as codec but they aren't very precise about settings and compatibility.

Sastraxi
8th August 2003, 17:22
I've tried DIVX, DX50, XVID, basically everything. Also, their program packs everything into an AVI container, so I believe this is the only thing it'll play. I'll try the MP4 container though, for good measure.

I've emailed them about the issue, hopefully I'll get a reply I can share with you guys! :)

Sastraxi
10th August 2003, 04:46
Well, I've had a bit more progress. Using common sense and a page found at virtualdub.org, I've deciphered what they do from the avs file vdub reads from:

VirtualDub.Open("D:\\movies\\jukebox\\The Bizarro Jerry.avi",0,0);
VirtualDub.audio.SetSource(1);
VirtualDub.audio.SetMode(1);
VirtualDub.audio.SetInterleave(1,500,1,0,0);
VirtualDub.audio.SetClipMode(1,1);
VirtualDub.audio.SetConversion(0,0,0,0,0);
VirtualDub.audio.SetVolume();
VirtualDub.audio.SetCompression(85,11025,1,0,2500,1,12,"AQACAAAABAECAHEF");
VirtualDub.video.SetDepth(24,24);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetFrameRate(0,1);
VirtualDub.video.SetIVTC(0,0,-1,0);
VirtualDub.video.SetRange(0,0);
VirtualDub.video.SetCompression(0x78766964,0,10000,0);
VirtualDub.video.filters.Clear();
VirtualDub.video.filters.Add("Resize");
VirtualDub.video.filters.instance[0].Config(320,240,2);
VirtualDub.video.filters.Add("null transform");
VirtualDub.video.filters.instance[1].SetClipping(0,0,0,0);
VirtualDub.subset.Delete();
VirtualDub.SaveAVI("D:\\movies\\jukebox\\test.avi");
VirtualDub.Close();

To this:

Open *file*, autodetected, no options
-----------
Set the audio source to that of the input file
Set the mode to Full Processing mode (audio)
Enable audio interleave, buffering 500ms, interleaving every frame, no offset
Set audio to be displaced when the video gives out, and set it to be clipped if there is no more video
Don't convert the audio stream at all
Disable volume amplification
????
-----------
Set the depth of the output, as 24-bit
Set the mode to Full Processing mode (video)
Set the framerate decimation factor to process all frames (removes nothing)
Turn off inverse telecline (IVTC)
Set the range from start to infinity (the end)
Set the compression to the DivX codec, 10000 (maximum) quality
Clear the filters
Add a resizing filter
Resize to 320x240, bicubically
Add a null transform filter
Set the filter to not clip anything (0,0,0,0)
-----------
Make sure the whole input range is processed
Save the AVI file at *path*
Close Virtualdub

Now, I've even used the DivX codec, on a movie that has no sound, and it STILL doesn't work in the player. Yet with the same options, an AVI made with this AVS does. I can't, for the life of me, figure out what's going on. Any virtualdub gurus around here? Or should I ask in a different forum?

By the way, the no-sound bit is okay. I've encoded that same movie with no sound with this thing, and it plays fine on the JBMM.

Sastraxi
10th August 2003, 23:39
Never mind, it doesn't seem to like the XviD codec. Just a normal fast recompress with DivX 5.05 works a treat, although I wish they would support what they say they do :( They haven't even emailed me back yet, hmmph.

PowerMacG4
12th August 2003, 06:45
Use AviC and change both the FourCC description code and the 'used codec' code to "DIVX". This tool is included with Koepi's builds. Safe settings for the box thing (assuming it doesn't support advanced simple profile):

VHQ4
H.263 Quant
Trellis (shouldn't use this yet)
Chroma ME
B-frames 0 (not -1)
lumi-masking (this isn't needed)

and if that doesn't work, try limiting the 'Max bitrate' field in the XviD encoder settings to a lower value, such as 3000 or 4000.

Sastraxi
12th August 2003, 16:33
Ahh!! My B-Frames were -1! It would probably work if I had put them to 0.... but I did reencode all of my movies anyway -- no big deal. But I'll try these settings for fresh encodes. Thanks a lot! :)