PDA

View Full Version : AVC on Xbox 360 & PS3


Neillithan
10th May 2010, 19:56
Hi, I have been trying to create an AVC/Surround video that works on both the Xbox 360 and PS3. Before you try to tell me what you *think* the solution is, please allow me to explain what I have attempted so far.

First of all, I have tried the M2TS container, but that only works on the PS3. I then tried the MP4 container, but I quickly discovered that the Xbox 360 does not support multichannel AAC. I attempted to include a 2 channel AAC stream as the default and a 6 channel AAC stream as a secondary. The xbox 360 still complained and would not play the video, however it plays AVC videos with 2 channel AAC just fine.

I am running out of ideas and I have seriously considered stooping to hacking AVC into the AVI container, although I've read that this does not work on most hardware video players. Still, I have thought about trying it if it means I can get AVC/Surround to work on both the PS3 and Xbox 360.

I have not attempted a ts file because I know ts is similar to m2ts in the sense that previewing and seekability are sacrificed. I'm not even sure if you can put AVC into a ts container.

Can anyone tell me what I should do?

Thanks,
-Neil

Edit: I read that you can put AC3 into MP4, but I wasn't able to do it with YAMB. Does this mean the xbox 360 can play MP4 files with AC3 and vice versa with the PS3?

Edit2: I just figured out how to put AC3 into MP4 and I tried playing it on the XBox 360. It gave me an error. This sucks. It seems I am destined to downsample audio to stereo if I want to use the MP4 container, even though it perfectly supports 5.1AAC or AC3. The XBox 360 really does suck at media.

Gser
10th May 2010, 21:15
*sighs* I simple google search would help you. This is all explained quite clearly on Xbox's own site (iDUH!).

- Xbox supports ONLY h.264, max profile 4.1, max bitrate 10mbps with stereo AAC in an MP4 container.

-Xbox supports ONLY mpeg4 part 2 (xvid/divx) with stereo mp3 or multichannel AC3 in a avi/divx container.

-Xbox supports ONLY vc-1, max bitrate 15mbps with Wma pro (stereo/multichannel) in a wmv container.

Nothing in between, no mixing of the codecs, only the ones stated above. So no h.264 with multi-channel audio.

desta
11th May 2010, 12:44
*sighs* I simple google search would help you. This is all explained quite clearly on Xbox's own site (iDUH!).

- Xbox supports ONLY h.264, max profile 4.1, max bitrate 10mbps with stereo AAC in an MP4 container.
While it's true that the 360 doesn't support multichannel AAC, it's a bit conservative to say the max bitrate for the video is 10mbps. I know those are the 'official' specs, but it can go considerably higher.

Neillithan, I don't know what OS you're running, but you could try streaming your video to the 360 using Media Center Extender. With Win7 and DivX 7 Plus you'll be able to stream MKV (with no video transcoding).

Gser
11th May 2010, 14:46
it's a bit conservative to say the max bitrate for the video is 10mbps. I know those are the 'official' specs, but it can go considerably higher.


No it isn't. I have tried and failed. The bitrate was between 10 and 11 mbps.

desta
11th May 2010, 15:51
No it isn't. I have tried and failed. The bitrate was between 10 and 11 mbps.
Then I suggest you try again, because I have played High Profile L4.1 1080/720p encoded video where the max/peak bitrate exceeded 34mbps and the 360 coped just fine.

I think you'll probably find a fair number of people have had success playing various content with more substantial bitrates than what the 'official' MS documentation gives. If I remember correctly they even state that their listed specs aren't exact, but merely what they have tested and know to work.

Neillithan
11th May 2010, 16:05
No it isn't. I have tried and failed. The bitrate was between 10 and 11 mbps.

What was the max bitrate? I can only assume the average bitrate was between 10 and 11mbps unless you clarify.

I've pretty much decided to say screw it to getting multichannel audio to work on the Xbox 360 and so I'm going to just downsample all of my videos with AC3/DTS to 2channel AAC-LC.

Then I suggest you try again, because I have played High Profile L4.1 1080/720p encoded video where the max/peak bitrate exceeded 34mbps and the 360 coped just fine.

This is interesting because I tried to play a 1280x720 24fps AVC video with a max VBR of 40,000. The average bitrate was 4,573Kbps and the Max bitrate was 27.7 Mbps.

For some reason, the Xbox 360 decided to give me an error after playing for about 20 seconds, just when the action picks up. I know for a fact the video is not corrupt or to blame because it plays perfectly on the PS3.

I'm not trying to say he's right and you're wrong, but there is something *very* strange about the Xbox 360. Apparently, it is very finicky about certain AVC videos.

*sighs* I simple google search would help you. This is all explained quite clearly on Xbox's own site (iDUH!).

I am well aware of this. I said in my first post that I was aware that the Xbox 360 does not support AAC 5.1 surround. I was merely asking if there was an alternative method to AAC 5.1 to achieve surround sound with H.264. Maybe you would have noticed that if you weren't too busy being annoyed and actually took the time to read.

Nothing in between, no mixing of the codecs, only the ones stated above. So no h.264 with multi-channel audio.

I'll have to take your word for this.

Thanks for the responses.
-Neil

desta
11th May 2010, 16:37
This is interesting because I tried to play a 1280x720 24fps AVC video with a max VBR of 40,000. The average bitrate was 4,573Kbps and the Max bitrate was 27.7 Mbps.

For some reason, the Xbox 360 decided to give me an error after playing for about 20 seconds, just when the action picks up. I know for a fact the video is not corrupt or to blame because it plays perfectly on the PS3.

I'm not trying to say he's right and you're wrong, but there is something *very* strange about the Xbox 360. Apparently, it is very finicky about certain AVC videos.
For my own sake I just tested again - I demuxed the video from a blu-ray (no re-encoding), and then transcoded the audio to stereo AAC-LC @ 256 kbps. The video had a max bitrate of ~40mbps and an average of 24mbps. I remuxed both to mp4, put it on a usb drive, plugged into the 360 and it played it just fine.... still playing now as I type.

If I'm encoding something specifically to play back directly on my 360 I usually set the maxrate and bufsize to 31250 (though I have had both higher) for L4.1 and I've yet to have a problem with playback *fingers crossed*.


edit: It just occured to me that you 'might' be getting errors because the final filesize is above 4GB?! The 360 does get very finicky about video content (other than WMV) that is larger than 4GB, and will fairly often only playback if the [large] file is split into 4GB chunks.

RunningSkittle
11th May 2010, 16:49
xbox has limit of 4gb per file, unless its wmv

thats probably why your files fail

Neillithan
11th May 2010, 19:35
Negative. The file was only a few hundred megabytes. But then again, I was using the PS3 Media Server to stream the file from my PC to the Xbox 360. Perhaps it is the Media Server's fault for not being more compatible with the Xbox 360. From what I understand, it can stream to the 360, but its main task is communicating with the PS3. Also, the PS3 can playback files of any size when streamed from my PC to the PS3. I remember the PS3 would not display files over 4GB when I used TVersity several months ago. PS3 Media Server is amazing.

desta
11th May 2010, 20:36
Neillithan, what OS are you running? Are you able to try streaming with Windows Media Center [Extender]? Have a look here (http://support.xbox.com/support/en/us/nxe/gamesandmedia/sharingmedia/mediacenter/sharemediafrommediacenterpc.aspx) and here (http://www.microsoft.com/windows/windows-media-center/learn-more/extenders/tutorials/extenders-xbox-config.aspx). For full MKV support you'll also need the DivX Plus codec pack (http://www.divx.com/en/software/divx-plus/codec-pack), which is free.

Dogway
25th September 2010, 06:42
Other than:

- Xbox supports ONLY h.264, max profile 4.1, max bitrate 10mbps with stereo AAC in an MP4 container.

are there any settings 360 dislikes for a --preset slow --tune film? Or directly asking what settings affect the playability of AVC content on Xbox360?

RunningSkittle
25th September 2010, 16:28
xbox also has 4gb limit for files other than wmv. I gave up trying to play stuff on xbox and just got an NMT

Dogway
25th September 2010, 18:17
Well, I have played many many files on xbox360 but misteriously some mp4 work some dont. I want to know if its because b-pyramid, b-frames, GOP, or any other settings. I just want to encode at high quality settings, lowering only the ones 360 doesnt deal nice with.

Trahald
26th September 2010, 01:45
I do my stuff with settings that will work on xbox360 but will also be bluray compatible later on (when i finally pony up for a settop)... I never make anything with a max bitrate higher than 10k. I think microsoft says there isnt a hard limit... but its safest to stop at 10k so I do. (i do 2 second buffer so my max bitrate is usually pretty low ie.. 4200maxbr/8400maxbuffer if 4200 bitrate will make a video be the proper size) I always use b-pyramid (strict) and 3 b-frames. I usually use small gop not for the xbox box but because of bluray.. I also use open-gop. All of my encodes work 100% on the xbox.

Dogway
26th September 2010, 03:22
so I guess that using -preset slow and overriding gop, b-pyramid, and b-frames can get it done. What the heck, Im tired of waiting, Im gonna run a test!! lol

@Trahald:My video is SD, nearly 2000kbps so I guess maxbr buffer can't become a problem here. I never worked with HD content.

desta
28th September 2010, 16:11
I just finished watching a 1080p encode I did of Avatar. These were the settings for my encode:

--level 4.1 --preset veryslow --crf 18 --deblock -3:-2 --psy-rd 1.00:0.20 --no-mbtree --qcomp 0.65 --me esa --keyint 240 --min-keyint 24 --aud --vbv-bufsize 31250 --vbv-maxrate 31250 --sar 1:1 --ssim --fps 24000/1001 --frames 232608 --output G:\avatar.1080p.mkv - --demuxer y4m

.... This resulted in an encode with an abr of 15843 kbps, that sized in at 19.5GB when muxed with DTS audio. It streamed flawlessly to my 360 as an extender for WMC7.

When I transcoded the audio to stereo AAC-LC, and split the encode into 4GB [.mp4] chunks, it also played back flawlessly directly from a usb drive plugged into my 360.

The 360 can handle a lot more than people seem to think. I'm not sure why people insist on staying so conservative when the 360 can play HD DVD's just fine.

Dogway
29th September 2010, 00:18
For 360 I needn't to, but I used --fastdecode for playback on wii and worked great in the last revision of mplayer ce.
I guess --level 4.1 makes it for 360 but I didnt know it could read .mkv files...

Heaud
29th September 2010, 02:08
Done an encode for the 360 with "--level 4.1 --keyint 300 --preset veryslow --crf 14 --bframes 10 --merange 36 --aq-mode 2 --aq-strength 0.75 --psy-rd 1:0.2 --no-dct-decimate --qpmin 1" and it caused fatal errors on certain scenes. Bitrate was not the problem since I checked out the areas that caused the crashing and they were at below 3000kbps. Could it be b-pyramid that is crashing it or perhaps something else?

Will do some more testing with different settings to find out what is causing the crashes.

desta
29th September 2010, 23:44
I guess --level 4.1 makes it for 360 but I didnt know it could read .mkv files...
It can read them for streaming, but not from a usb drive or burnt to disc. If you want that, it needs to be in mp4 container and no more than 4GB final filesize.

Done an encode for the 360 with "--level 4.1 --keyint 300 --preset veryslow --crf 14 --bframes 10 --merange 36 --aq-mode 2 --aq-strength 0.75 --psy-rd 1:0.2 --no-dct-decimate --qpmin 1" and it caused fatal errors on certain scenes. Bitrate was not the problem since I checked out the areas that caused the crashing and they were at below 3000kbps. Could it be b-pyramid that is crashing it or perhaps something else?

Will do some more testing with different settings to find out what is causing the crashes.
Every encode I've ever played on my 360 had b-pyramid enabled and still worked. Have you tried adding values for bufsize and maxrate? I think a few of your settings are pushing the overkill mark though.

Heaud
30th September 2010, 00:11
Don't think maxrate is an issue since the highest peak (around 32000kbps) ran with only a small buffer and didn't cause any crashing to occur. The settings were a bit overkill and the next run will be a bit more toned down. Even with that, perhaps I should try setting the bufsize and maxrate and see if the regurgitation of the video still occurs.

RunningSkittle
30th September 2010, 04:44
xbox does NOT support mkv, nor does it support streaming mp4 or avi greater than 4gb. WMC is reencoding to wmv.

desta
30th September 2010, 14:00
Xbox CAN and DOES support mkv (for Win7 WMC) with a few simple steps. The most obvious and simple step being to install DivX Plus codec pack. This enables MKV streaming for the xbox 360. No transcoding is done whatsoever, and if it is, then my computer must be secretly more efficient than I realised, cos it's doing it with practically no cpu usage!

The Scientist
30th September 2010, 19:59
Xbox CAN and DOES support mkv (for Win7 WMC) with a few simple steps.I think when people refer to a device support a particular format, in this case MKV, they are referring to it natively supporting it.... i.e: direct on the device, of which the XBOX360 and PS3 certainly do not!

As for supporting it via your PC and streaming, hmmm, my PS3 will play loads of stuff via ps3mediaserver that it wouldn't do so 'normally', hardly the same thing...

desta
1st October 2010, 03:35
As for supporting it via your PC and streaming, hmmm, my PS3 will play loads of stuff via ps3mediaserver that it wouldn't do so 'normally', hardly the same thing...
Difference being that ps3mediaserver transcodes, whilst WMC7 streams.