AMV Encoders - A/V Sync Test
- Quu
- Joined: Tue Dec 26, 2000 1:20 pm
- Location: Atlanta, GA
- Contact:
Re: AMV Encoders - A/V Sync Test
testing with Running Man.... H.264 720p@60 mp4 file
Dev Machine (i7-920/12G Ram/GTX 285(VP2)/Vista 64)
VLC 1.1.3/1.2.0
Software decoding 5 dropped frames
GPU Accel - horribly broken, unplayable
MPlayer (SVN) (intel version)
R:\test\tools\MPlayer>mplayer -vo direct3d -framedrop -benchmark ..\..\samples\amv\Nostromo_-_Running_Man_720p@60_H.264.mp4
MPlayer Sherpya-MT-SVN-r31878-4.2.5 (C) 2000-2010 MPlayer Team
7 dropped Frames
MPlayer UAU (6 month old version, since nobody has given me better, same command line, no -vo since it defaults to direct3d)
10 dropped frames
Gaming Machine
AMD Phenom II X4 965 Black Edition Deneb 3.4GHz/8 gig ram, ATI 5850 (UVD 2.2)/windows 7 64
VLc software - dropped lots of frames > 50
VLC hardware accel, droped 30 frames, but very playable... no blocks
MPlayer SVN (amd version this time)
zero frames dropped
MPlayer-uau
dropped 3 frames
playback target
Acer Revo 3610 VP3
utter failure all around
need to try linux and vdpau to see if it helps
Dev Machine (i7-920/12G Ram/GTX 285(VP2)/Vista 64)
VLC 1.1.3/1.2.0
Software decoding 5 dropped frames
GPU Accel - horribly broken, unplayable
MPlayer (SVN) (intel version)
R:\test\tools\MPlayer>mplayer -vo direct3d -framedrop -benchmark ..\..\samples\amv\Nostromo_-_Running_Man_720p@60_H.264.mp4
MPlayer Sherpya-MT-SVN-r31878-4.2.5 (C) 2000-2010 MPlayer Team
7 dropped Frames
MPlayer UAU (6 month old version, since nobody has given me better, same command line, no -vo since it defaults to direct3d)
10 dropped frames
Gaming Machine
AMD Phenom II X4 965 Black Edition Deneb 3.4GHz/8 gig ram, ATI 5850 (UVD 2.2)/windows 7 64
VLc software - dropped lots of frames > 50
VLC hardware accel, droped 30 frames, but very playable... no blocks
MPlayer SVN (amd version this time)
zero frames dropped
MPlayer-uau
dropped 3 frames
playback target
Acer Revo 3610 VP3
utter failure all around
need to try linux and vdpau to see if it helps
Lead me not to temptation, for I have deadlines
-
- Joined: Tue Dec 25, 2007 8:26 am
- Status: better than you
- Contact:
Re: AMV Encoders - A/V Sync Test
lolno. The reason 10bit is mostly useless is because most decoders can't handle it. Getting footage in 10bit itself is simple enough.
As for forcing levels, the easiest way is to use --device but I'm not sure which builds have the flag yet. Find a device, say BD (main@4.1 IIRC), and then force your options to that on an appropriate preset. I'm not sure why you want to stress test though when you're guaranteed that main@4.1 will play on everything really, even at 1080p60. Better to just tell people "use this preset/profile/level/container" and leave it at that. I'm sure Zarx could set his GUI to enforce such things as an "AMV Compliance" checkbox or something.
As for forcing levels, the easiest way is to use --device but I'm not sure which builds have the flag yet. Find a device, say BD (main@4.1 IIRC), and then force your options to that on an appropriate preset. I'm not sure why you want to stress test though when you're guaranteed that main@4.1 will play on everything really, even at 1080p60. Better to just tell people "use this preset/profile/level/container" and leave it at that. I'm sure Zarx could set his GUI to enforce such things as an "AMV Compliance" checkbox or something.
- Quu
- Joined: Tue Dec 26, 2000 1:20 pm
- Location: Atlanta, GA
- Contact:
Re: AMV Encoders - A/V Sync Test
Actually, BD is high profile, not main
http://en.wikipedia.org/wiki/Advanced_V ... ing#Levels
level 4.1 allows 720p@60 but 1080p@30... the 4.2 is what allows 1080p@60.
http://en.wikipedia.org/wiki/Blu-ray_Di ... ifications
the BD spec does not follow a specific level, it seams to be a slightly constrained 4.1 ... maybe it is 4.05? (a joke). the only difference between 4.0 and 4.1 is the bitrates allowed, and BD seams to be somewhere in the middle between 4.0 and 4.1
http://en.wikipedia.org/wiki/Advanced_V ... ing#Levels
level 4.1 allows 720p@60 but 1080p@30... the 4.2 is what allows 1080p@60.
http://en.wikipedia.org/wiki/Blu-ray_Di ... ifications
the BD spec does not follow a specific level, it seams to be a slightly constrained 4.1 ... maybe it is 4.05? (a joke). the only difference between 4.0 and 4.1 is the bitrates allowed, and BD seams to be somewhere in the middle between 4.0 and 4.1
Lead me not to temptation, for I have deadlines
- Zarxrax
- Joined: Sun Apr 01, 2001 6:37 pm
- Contact:
Re: AMV Encoders - A/V Sync Test
Wow o.o
I'm really surprised that those machines were dropping frames.
I'm really surprised that those machines were dropping frames.
- Quu
- Joined: Tue Dec 26, 2000 1:20 pm
- Location: Atlanta, GA
- Contact:
Re: AMV Encoders - A/V Sync Test
Yea, i expected it to play better... which is making me evaluate things a bit more. I am going to expand my testing to include MPEG-4 part 2 (probably just the ASP profile)
I can't find a list of levels for MPEG-4 ASP, except that level 5 is pretty much max dvd resolution. I know that the MPEG-4 Layer 2 ASP profile supports up to 2048x2048 (fps is constrained only by bitrate)... but i can't find a nice breakdown of the levels. MPEG-2 can not, while remaining in spec, handle 1080p@60.
So it looks like what I am considering now is
Video
MPEG-2 (H.262) Part 2 MP@HL - 1080p@30/720p@60 max (May go unconstrained)
MPEG-4 (H.263) Part 2 ASP@Unconstrained - 1080p@60 max
MPEG-4 (H.264) Part 10 High@4.2 - 1080p@60 max
Audio
MPEG-2 Part 3 Layer 2 and Layer 3 (mp2 and mp3)
MPEG-4 Part 3 AAC
FLAC
Container
MPEG-2 Part 1 Transport Stream (Program Stream is MPEG-1/2 only so no, TS is used on Blueray discs so yes)
MPEG-4 Part 1/12/14/15 File Format (MP4 files are... confusing)
Matroska
(I am going out of my "safety net" of MPEG with FLAC and MKV, but they are both very mature standards)
Remember... for my purposes, stability, maturity, and consistency is most important. I don't care about file size (Hard Drives are cheap), as so much that file size is not a detriment on the playback, and hardware can handle the streaming (ie no uncompressed video). I don't care about encode time (non con time is cheap), and will be using constant quality instead of constant bit rate when possible, quality over file size. All of the above options will be checked for encoding sync based on VLC and MPlayer as decoding targets. They will then be played back on the reference machine, both in Windows 7 and in Linux for performance metrics.
Based on all of that, I will then see where we go from there and hopefully we come up with a working set of tools. The best solution will be picked based on it passing all tests, and then file size if there are multiple solutions that passed. Total failure options include changing the reference hardware, lowering the maximum resolution/fps, or "other".
MPEG-2 video, within specs, can not handle the ultra high end... so I am not sure if I should just go Unconstrained on it. I really want to know what all levels for MPEG-4 part 2, but i can't find them enumerated anywhere.
since I am basically encoding based on constant quality, instead of constant bit rate, I am going to use file size as a measure of quality. I would like to have an automated test to compare the decoded results vs the original, to make sure the CQ style encoding was true... but not sure how to automate that yet.
I can't find a list of levels for MPEG-4 ASP, except that level 5 is pretty much max dvd resolution. I know that the MPEG-4 Layer 2 ASP profile supports up to 2048x2048 (fps is constrained only by bitrate)... but i can't find a nice breakdown of the levels. MPEG-2 can not, while remaining in spec, handle 1080p@60.
So it looks like what I am considering now is
Video
MPEG-2 (H.262) Part 2 MP@HL - 1080p@30/720p@60 max (May go unconstrained)
MPEG-4 (H.263) Part 2 ASP@Unconstrained - 1080p@60 max
MPEG-4 (H.264) Part 10 High@4.2 - 1080p@60 max
Audio
MPEG-2 Part 3 Layer 2 and Layer 3 (mp2 and mp3)
MPEG-4 Part 3 AAC
FLAC
Container
MPEG-2 Part 1 Transport Stream (Program Stream is MPEG-1/2 only so no, TS is used on Blueray discs so yes)
MPEG-4 Part 1/12/14/15 File Format (MP4 files are... confusing)
Matroska
(I am going out of my "safety net" of MPEG with FLAC and MKV, but they are both very mature standards)
Remember... for my purposes, stability, maturity, and consistency is most important. I don't care about file size (Hard Drives are cheap), as so much that file size is not a detriment on the playback, and hardware can handle the streaming (ie no uncompressed video). I don't care about encode time (non con time is cheap), and will be using constant quality instead of constant bit rate when possible, quality over file size. All of the above options will be checked for encoding sync based on VLC and MPlayer as decoding targets. They will then be played back on the reference machine, both in Windows 7 and in Linux for performance metrics.
Based on all of that, I will then see where we go from there and hopefully we come up with a working set of tools. The best solution will be picked based on it passing all tests, and then file size if there are multiple solutions that passed. Total failure options include changing the reference hardware, lowering the maximum resolution/fps, or "other".
MPEG-2 video, within specs, can not handle the ultra high end... so I am not sure if I should just go Unconstrained on it. I really want to know what all levels for MPEG-4 part 2, but i can't find them enumerated anywhere.
since I am basically encoding based on constant quality, instead of constant bit rate, I am going to use file size as a measure of quality. I would like to have an automated test to compare the decoded results vs the original, to make sure the CQ style encoding was true... but not sure how to automate that yet.
Lead me not to temptation, for I have deadlines
- Quu
- Joined: Tue Dec 26, 2000 1:20 pm
- Location: Atlanta, GA
- Contact:
Re: AMV Encoders - A/V Sync Test
(and yes, i know that MPEG-4 Part 2 ASP is a superset of H.263)
Lead me not to temptation, for I have deadlines
- Zarxrax
- Joined: Sun Apr 01, 2001 6:37 pm
- Contact:
Re: AMV Encoders - A/V Sync Test
You might want to try the "fast decode" tune in x264 just for kicks.
- mirkosp
- The Absolute Mudman
- Joined: Mon Apr 24, 2006 6:24 am
- Status: (」・ワ・)」(⊃・ワ・)⊃
- Location: Gallarate (VA), Italy
- Contact:
Re: AMV Encoders - A/V Sync Test
I'd discard the MPEG-2, honestly. To get good quality 1080p30/720p60 (yes, depending on content, I know) you might have to inflate the bitrate so much that it could become totally unplayable due to that.
I honestly think that 1080p60 ASP isn't too smart of an idea either, that's probably going to require an insane amount of bitrate too. Considering that H.264 (well, with x264 as the encoder, at least) should probably be able to cut down to half the bitrate requirement of most videos, I think that it really is the best solution, not just by pure file size reasoning, but by bitrate peaks too.
As for quality comparison, naked eye comparison is the best thing. No cold number can match the perceived quality to humans during playback.
I honestly think that 1080p60 ASP isn't too smart of an idea either, that's probably going to require an insane amount of bitrate too. Considering that H.264 (well, with x264 as the encoder, at least) should probably be able to cut down to half the bitrate requirement of most videos, I think that it really is the best solution, not just by pure file size reasoning, but by bitrate peaks too.
As for quality comparison, naked eye comparison is the best thing. No cold number can match the perceived quality to humans during playback.
- Quu
- Joined: Tue Dec 26, 2000 1:20 pm
- Location: Atlanta, GA
- Contact:
Re: AMV Encoders - A/V Sync Test
remember... bit rate is only such that a USB 2.0 external hard drive needs to keep up (I consider USB 2.0 Hard drives to be the lowest common denominator... I prefer internal eSATA drives)... MPEG-2 MP@HL maxes at 80 megabits per second... well under the limit.
you have to forget the internet for a bit... this is a totally different target than most people are used to. While 80 megabits per second is insane for anything we would want to do over the internet (My home connection is only 50)... for a hard drive, for local magnetic and FLASH based media, it is small potatoes. And I am not even sure we would reach the full 80... just that 80 megabits per second is the level cap.
For quality... I am going to make each encoder go to max (CQ=1 for mpeg-2 and MPEG-4 ASP, CFR=18 for AVC), which means the resulting file should be near perfect (near... not lossless). From what I understand, at those levels, bitrate is sacrificed for quality... which is what I want.
you have to forget the internet for a bit... this is a totally different target than most people are used to. While 80 megabits per second is insane for anything we would want to do over the internet (My home connection is only 50)... for a hard drive, for local magnetic and FLASH based media, it is small potatoes. And I am not even sure we would reach the full 80... just that 80 megabits per second is the level cap.
For quality... I am going to make each encoder go to max (CQ=1 for mpeg-2 and MPEG-4 ASP, CFR=18 for AVC), which means the resulting file should be near perfect (near... not lossless). From what I understand, at those levels, bitrate is sacrificed for quality... which is what I want.
Lead me not to temptation, for I have deadlines
- mirkosp
- The Absolute Mudman
- Joined: Mon Apr 24, 2006 6:24 am
- Status: (」・ワ・)」(⊃・ワ・)⊃
- Location: Gallarate (VA), Italy
- Contact:
Re: AMV Encoders - A/V Sync Test
It's not just about the transfer rate, but also about the playback intensity. The higher the bitrate, the harder it is for the computer to decode (INB4 Mister Hatt proves me wrong or something).
As for CRF, I'd say go like CRF 10... that's more like it. CRF 18 is far from insane, and is actually common to use, especially for SD. Generally 16 is the lowest one'd go in a common encode, so I'd say 10 is almost lossless already.
As for CRF, I'd say go like CRF 10... that's more like it. CRF 18 is far from insane, and is actually common to use, especially for SD. Generally 16 is the lowest one'd go in a common encode, so I'd say 10 is almost lossless already.