[MPlayer-users] AVI encoded file playback on other systems

Karl Ewald karl.ewald at ixos.de
Mon Sep 22 21:36:27 CEST 2003


-vcodec divx4 calls a DivX codec for Windows from the win32 codec package
supplementing mplayer. 

Both for technical (better quality, better speed) and religious
(open-source, free, platform-independently developed) point of view, I would
recommend to prefer the lavc (libavcodec) set of codecs developed in the
ffmpeg project and integral part of mplayer.

Also, you can reach people here that are able to fix bugs in lavc. However
the people here won't be able to support commercial DivX codec in depth and
certainly cannot modify it if it turns out to be faulty. They will not be
inclined to waste their time on it at all.

The ffmpeg codec for the DivX-compatible mpeg4 format built into mplayer is
called through "-ovc lavc" with "-lavcopts vcodec=mpeg4" among other
options.
Here are sample arguments I've used before to encode DivX compatible avi
files:
-ovc lavc -lavcopts vcodec=mpeg4:vqmin=5:vqmax=6:vbitrate=700:vhq -oac
mp3lame -lameopts mode=1:vbr=0:br=128:aq=0

I don't use multipass mode, since I need not exactly match a target
filesize, I just let things happen as they do, and retry with different
quality settings in the rare cases where I'm unhappy. YMMV. So please read
about which -lavcopts to use for multipass yourself if necessary.

For details on the options you may want to use, read encoding.html as well
as other documentation files that came with mplayer.

lavc mpeg4 will give you DivX 4 compatible output, msmpeg4 is divx3
compatible and msmpeg4v2 is MP42, playable by builtin windows codec
(however, only step down to the msmpeg versions if installing a more modern
codec on the target systems is not feasible, since the ratio of quality/size
is much worse).

There may be options to the lavc mpeg4 codec that require software other
than DivX4 to play the resulting file successfully, so if you try out
various options that affect which features are being used, you should
probably try it out with the target players you intend to use. On the other
hand, maybe I'm overcautious here.

Also please note that unlike mpeg2, avi files do not have a universally
understood aspect ratio parameter. The mpeg4 video format has an
aspect-ratio field which mencoder can fill in, but it is ignored by other
players (e.g. windows media player). In general you are better off by
scaling your video to assume square pixels, e.g. by scaling PAL 720x576
video source to 720x540 or NTSC 720x480 to 640x480 (these are the closest to
the original without inventing pixels. On the other hand, 540 is not
divisible by 16, which makes it somewhat less efficient to encode, so
720x544 may be a better choice than 720x540, either by expanding with 2
pixels of black each side, or by slightly deviating from the true aspect
ratio, which won't be noticeable.

*sigh* I just realize that I might as well go on about deinterlacing, and
cropping since most video sources contain black or distorted bands on the
edges, but that would lead too far, so I'll leave it at that, and invite you
to read more about the topic and/or just experiment. 
In future questions, please include the mplayer version you're using, since
some command line options depend on it.

Hope this helps,

Karl

-----Original Message-----
From: Raena Lea-Shannon [mailto:raen7 at ihug.com.au]
Sent: Montag, 22. September 2003 15:43
To: mplayer-users at mplayerhq.hu
Subject: [MPlayer-users] AVI encoded file playback on other systems


[Automatic answer: RTFM (read DOCS, FAQ), also read DOCS/bugreports.html]
I have searched the list digest on this topic and learnt that DivX encoded
avi 
shoud playback in MacOSX on videolan and that in M$ the u$er needs DDShow or

a Divx player.

Is this correct?

If so I have stuffed up somewhere with my DivX encoding.

Any advice on this greatly appreciated. Is it more sensible to forget DivX
and 
go to another encoding?

I am encoding AV2 (OpenDML) files from Dvgrab to AV2 in raw driver. The 2
pass 
encoding with divX. Here is my test line:

:~>mencoder -endpos 1500kb -ovc divx4 -divx4opts pass=1 -oac mp3lame 
/home/raena/DV/capture008.avi -o /home/raena/TEMP/test2.avi

:~>mencoder -endpos 1500kb -ovc divx4 -divx4opts pass=2 -oac mp3lame 
/home/raena/DV/capture008.avi -o /home/raena/TEMP/test2.avi

On my XP M$ at work all I got was audio playback in the DVplayer and 
Mediaplayer.

I get a nice file I can play in mplayer but it crashed my friends Mac. This
is 
the crash log from the Mac test:

Command:    Finder
PID:        2128

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_INVALID_ADDRESS (0x0001) at 0x0284e000

Thread 0 Crashed:
 #0   0x8a0329a4 in convertAndAddColorTable
 #1   0x8a02f680 in aviStreamFormat
 #2   0x8a02e374 in processListChunk
 #3   0x8a02e670 in aviHeaderListProc
 #4   0x8a02e374 in processListChunk
 #5   0x8a02d574 in EatAVIDataRef
 #6   0x8a033584 in EatAVIFile
 #7   0x902224f8 in CallComponentFunctionCommon
 #8   0x8a0333f8 in EatAVIComponentDispatch
 #9   0x990c9928 in MovieImportFile
 #10  0x9905c0e0 in newMovieFromFileFromComponent
 #11  0x9905be54 in getNewMovieFromFileUsingImporters
 #12  0x9905b87c in NewMovieFromFile_priv
 #13  0x000b73c8 in 0xb73c8
 #14  0x000b7558 in 0xb7558
 #15  0x000ba9a0 in 0xba9a0
 #16  0x0004fd30 in 0x4fd30
 #17  0x0004fa2c in 0x4fa2c
 #18  0x0004f860 in 0x4f860
 #19  0x0004c404 in 0x4c404
 #20  0x0004ad68 in 0x4ad68
 #21  0x0004f204 in 0x4f204
 #22  0x0004f050 in 0x4f050
 #23  0x95023b14 in LBroadcaster::BroadcastMessage(long, void*)
 #24  0x0004c0cc in 0x4c0cc
 #25  0x00086070 in 0x86070
 #26  0x0004e540 in 0x4e540
 #27  0x0004e350 in 0x4e350
 #28  0x0004e27c in 0x4e27c
 #29  0x0003f6f4 in 0x3f6f4
 #30  0x00023544 in 0x23544
 #31  0x000232d4 in 0x232d4
 #32  0x950298a8 in LEventDispatcher::EventMouseDown(EventRecord const&)
 #33  0x0003f5f0 in 0x3f5f0
 #34  0x00004ad0 in 0x4ad0
 #35  0x0000946c in 0x946c
 #36  0x00028478 in 0x28478
 #37  0x000274fc in 0x274fc
 #38  0x0002737c in 0x2737c

Thread 1:
 #0   0x900425e8 in semaphore_timedwait_signal_trap
 #1   0x9003e814 in _pthread_cond_wait
 #2   0x9022f57c in MPWaitOnQueue
 #3   0x90736fc4 in TNodeSyncTask::SyncTaskProc(void*)
 #4   0x9025d924 in PrivateMPEntryPoint
 #5   0x90020c88 in _pthread_body

PPC Thread State:
  srr0: 0x8a0329a4 srr1: 0x0000d030                vrsave: 0x00000000
   xer: 0x00000000   lr: 0x8a032a18  ctr: 0x90074040   mq: 0x00000000
    r0: 0x8a032a18   r1: 0xbfffe490   r2: 0x0039b010   r3: 0x00000000
    r4: 0xbfffe4d8   r5: 0x00000008   r6: 0x8c750000   r7: 0x00000000
    r8: 0x00000081   r9: 0xa0220a00  r10: 0xbfffe4d0  r11: 0xa0221734
   r12: 0x042913b8  r13: 0x00000000  r14: 0x003b450a  r15: 0x0222ae00
   r16: 0x00000000  r17: 0x0169b57c  r18: 0x00000000  r19: 0x696d0000
   r20: 0x696d7463  r21: 0x000002d0  r22: 0xffffffff  r23: 0x28044448
   r24: 0x0169b9d4  r25: 0x00000000  r26: 0x2f534547  r27: 0x0169b9d8
   r28: 0x00188c76  r29: 0x0284e000  r30: 0x00000000  r31: 0x8a02eb64

-- 
Raena Lea-Shannon

_______________________________________________
RTFM!!!  http://www.MPlayerHQ.hu/DOCS
Search:  http://www.MPlayerHQ.hu/cgi-bin/htsearch
http://mplayerhq.hu/mailman/listinfo/mplayer-users



More information about the MPlayer-users mailing list