FAQ  •  Register  •  Login

Xbox 360 Doesn't See MKV Files

<<

qvr

Serviio newbie

Posts: 3

Joined: Sun Nov 15, 2009 7:56 am

Post Sun Nov 15, 2009 7:59 am

Xbox 360 Doesn't See MKV Files

I downloaded serviio and added a few video directories, but the mkv files in those directories are now showing up in the video list when browsing on the xbox 360. I can see and successfully play avi files, and I can browse the folders that would have the mkv files, but in the mkv folders it says "No Videos found." I've tried updating the library, re-adding folders, etc, but no luck. What's wrong?
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17212

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Sun Nov 15, 2009 12:13 pm

Re: Xbox 360 Doesn't See MKV Files

XBox360 does not play/support MKV files.
<<

qvr

Serviio newbie

Posts: 3

Joined: Sun Nov 15, 2009 7:56 am

Post Mon Nov 16, 2009 3:45 am

Re: Xbox 360 Doesn't See MKV Files

I know it doesn't natively support it - I guess I thought serviio would transcode it....any chance transcoding mkv file support will be added to serviio?
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17212

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Mon Nov 16, 2009 9:29 am

Re: Xbox 360 Doesn't See MKV Files

it's a plan - at some point :-)
<<

patters

User avatar

DLNA master

Posts: 1282

Joined: Sat Oct 09, 2010 3:51 pm

Location: London, UK

Post Sat Oct 23, 2010 8:46 pm

Re: Xbox 360 Doesn't See MKV Files

I have just done some testing with my Xbox 360 and the current profile is needlessly transcoding H.264 video to WMV, when it is in fact supported.
I think it's worthwhile getting this right given how inexpensive these consoles are, and how large the user base is too. Serviio could easily become the most popular media server for console users.
Most files people will want to stream will be H.264, and we can't remux that to ASF apparently. We therefore need to remux to MP4 - the only other container the Xbox 360 will support for HD content. The problem is that Serviio will not allow transcoding to an MP4 container, even though FFmpeg can do it. The service fails to start and the log reads:

ERROR [XmlUtils] XML Profiles.xsd didn't pass validation, reason: cvc-enumeration-valid: Value 'mp4' is not facet-valid with respect to enumeration '[asf, mpegvideo, mpeg, mpegts]'. It must be a value from the enumeration.

Can this be added?

The audio is the next issue because the 360 will not play multichannel audio (except WMA9 Pro). We need to transcode to AAC Low Complexity, as stated in Microsoft's official specs.

The snag here is that the FFmpeg project withdrew libfaac from the static builds because its licence is not GPL. This means it cannot be included with Serviio unfortunately, though it can be compiled to link to an external libfaac library which Xbox owning Serviio users would need to download separately. Reading around it seems to be pretty hard to compile FFmpeg on Windows and the older builds which still include it seem to have issues with transcoding mkv files. Fortunately thanks to this page I discovered that the recent SVN FFmpeg binary from here includes the external libfaac support:
http://sourceforge.net/projects/mplayer-win32/files/
The libfaac library can be downloaded here and placed in the same folder as FFmpeg.

Testing transcoding on a sample mkv file yielded an MP4 that was perfectly playable on the 360 from a USB stick. I then went on to test a 1080p m2ts H.264 file, also fine, and I served them both from Serviio. Playback was perfect. This was the command line:

C:\Temp\FFmpeg-svn-25456>ffmpeg.exe -i "g:\video\HD Movies\district9-720p.mkv
-vcodec copy -acodec libfaac -ab 320k -ac 2 -profile aac_low g:\d9test.mp4


FFmpeg version SVN-r25456-Sherpya, Copyright (c) 2000-2010 the FFmpeg developers

built on Oct 14 2010 16:46:15 with gcc 4.2.5 20090330 (prerelease) [Sherpya]
libavutil 50.32. 3 / 50.32. 3
libavcore 0. 9. 1 / 0. 9. 1
libavcodec 52.92. 0 / 52.92. 0
libavformat 52.81. 0 / 52.81. 0
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.51. 1 / 1.51. 1
libswscale 0.12. 0 / 0.12. 0
libpostproc 51. 2. 0 / 51. 2. 0
[matroska,webm @ 002cbe50] max_analyze_duration reached
[matroska,webm @ 002cbe50] Estimating duration from bitrate, this may be inaccur
ate

Seems stream 0 codec frame rate differs from container frame rate: 47.95 (200000
00/417083) -> 23.98 (24000/1001)
Input #0, matroska,webm, from 'g:\video\HD Movies\district9-720p.mkv':
Duration: 01:52:15.72, start: 0.000000, bitrate: 1536 kb/s
Stream #0.0(eng): Video: h264, yuv420p, 1280x688, PAR 1:1 DAR 80:43, 23.98 f
ps, 23.98 tbr, 1k tbn, 47.95 tbc
Stream #0.1(eng): Audio: dca, 48000 Hz, 5.1, s16, 1536 kb/s
Stream #0.2(eng): Subtitle: [0][0][0][0] / 0x0000
Output #0, ipod, to 'g:\d9test.mp4':
Metadata:
encoder : Lavf52.81.0
Stream #0.0(eng): Video: libx264, yuv420p, 1280x688 [PAR 1:1 DAR 80:43], q=2
-31, 10000k tbn, 23.98 tbc
Stream #0.1(eng): Audio: libfaac, 48000 Hz, 2 channels, s16, 320 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 2428 fps= 93 q=-1.0 size= 59137kB time=101.18 bitrate=4787.8kbits/s
frame= 2471 fps= 93 q=-1.0 size= 60405kB time=102.98 bitrate=4805.3kbits/s
frame= 2519 fps= 93 q=-1.0 size= 62533kB time=104.98 bitrate=4879.7kbits/s
frame= 2558 fps= 93 q=-1.0 size= 64748kB time=106.61 bitrate=4975.5kbits/s
frame= 2600 fps= 92 q=-1.0 size= 66120kB time=108.36 bitrate=4998.7kbits/s
...


So really the desired transcoding config would look something like below, but it would need a new aCodec setting (aac-lc?). We also need to transcode MP4 files with vCodec="h264" but which have multichannel aac audio. How would we match that?
  Code:
      <Transcoding>
         <!--
            http://blogs.msdn.com/xboxteam/archive/2007/11/30/december-2007-video-playback-faq.aspx
         -->
         <Video targetContainer="mp4" targetACodec="aac-lc">
            <Matches container="matroska" vCodec="h264" />
            <Matches container="mpegts" vCodec="h264" />
            <Matches container="avi" vCodec="h264" />
         </Video>
         <Video targetContainer="asf" targetVCodec="wmv2" targetACodec="wmav2" maxVBitrate="15360">
            <Matches container="mpeg" />
            <Matches container="mpegvideo" />
            <Matches container="avi" vCodec="msmpeg4" />
         </Video>
      </Transcoding>
Last edited by patters on Sun Oct 24, 2010 11:12 pm, edited 1 time in total.
LG OLED55B8PLA | PS4 Pro | Xbox One S | Synology DS214play
Serviio 2.1 package for Synology NAS - with limited hardware transcoding support!
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17212

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Sun Oct 24, 2010 11:14 am

Re: Xbox 360 Doesn't See MKV Files

Hi there,

thanks for the post. Last time I checked MP4 was not suitable for real-time transcoding as it writes some information at the end of the job. But I'll try to double check again.

https://bitbucket.org/xnejp03/serviio/i ... mp4-target
<<

patters

User avatar

DLNA master

Posts: 1282

Joined: Sat Oct 09, 2010 3:51 pm

Location: London, UK

Post Sun Oct 24, 2010 11:55 am

Re: Xbox 360 Doesn't See MKV Files

Your view is echoed in several places:
http://groups.google.com/group/c-rtmp-s ... 2680847bea
http://forums.boxee.tv/archive/index.php/t-10527.html
http://archives.free.net.ph/message/200 ... 81.pl.html

I notice that the 360 does support the QuickTime mov container for H.264 which may allow live streams where MP4 fails.
Last edited by patters on Sun Oct 24, 2010 12:50 pm, edited 1 time in total.
LG OLED55B8PLA | PS4 Pro | Xbox One S | Synology DS214play
Serviio 2.1 package for Synology NAS - with limited hardware transcoding support!
<<

patters

User avatar

DLNA master

Posts: 1282

Joined: Sat Oct 09, 2010 3:51 pm

Location: London, UK

Post Sun Oct 24, 2010 12:30 pm

Re: Xbox 360 Doesn't See MKV Files

From what I see here it ought to be possible with MP4 - it's all determined by where in the file the moov atom is authored. Great article from Adobe on the subject:
http://www.adobe.com/devnet/video/artic ... _atom.html
and one from the author of qt-faststart, a tool to relocate the moov atom to the start of the file:
http://multimedia.cx/eggs/improving-qt-faststart/

Searching around it seems like FFmpeg isn't able to do this as the stream is being written though...
http://ffmpeg-users.933282.n4.nabble.co ... 50304.html
http://forum.videohelp.com/threads/2749 ... dl-viewing

Surely it would be possible to write a faked moov atom with approximate values.
LG OLED55B8PLA | PS4 Pro | Xbox One S | Synology DS214play
Serviio 2.1 package for Synology NAS - with limited hardware transcoding support!
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17212

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Sun Oct 24, 2010 1:22 pm

Re: Xbox 360 Doesn't See MKV Files

It probably would, you just have to ask the guys at FFmpeg ;-)
<<

patters

User avatar

DLNA master

Posts: 1282

Joined: Sat Oct 09, 2010 3:51 pm

Location: London, UK

Post Sun Oct 24, 2010 10:44 pm

Re: Xbox 360 Doesn't See MKV Files

I think I've read as much as possible about this and got nowhere. I'm surprised at how a task force could come together and engineer a container format with 'streaming' features that can't actually be live streamed. Madness.
LG OLED55B8PLA | PS4 Pro | Xbox One S | Synology DS214play
Serviio 2.1 package for Synology NAS - with limited hardware transcoding support!
<<

oudinmelanie09

Serviio newbie

Posts: 1

Joined: Mon Nov 22, 2010 3:06 am

Post Mon Nov 22, 2010 3:09 am

Re: Xbox 360 Doesn't See MKV Files

The video formats that xbox 360 supports are .wmv, .avi, .divx, H.264, MPEG-4 an so on.

If you got a MKV video file and want to convert and put it to your Xbox 360 for playing, you have to use a MKV decoder to transcode video files to a xbox playable video formats, like WMV, WMV HD.

The program I am using is Aunsoft MKV Converter which is able to convert your video to xbox WMV flawlessly.

More info: http://www.google.com/search?hl=en&q=%6 ... erter&btnI
Hope it is useful.
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17212

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Mon Nov 22, 2010 9:51 am

Re: Xbox 360 Doesn't See MKV Files

Serviio will transcode MKV's to WMV automatically.
<<

rrtn

Serviio newbie

Posts: 2

Joined: Sun Oct 23, 2011 12:35 am

Post Sun Oct 23, 2011 12:50 am

Re: Xbox 360 Doesn't See MKV Files

tvserity plays mkvs on my xbox without transcoding, any chance of serviio doing this?
so why ask @ serviio forums if tversity is better? see below
tversity pros: seems to be the most flexible when it comes to file formats, never a transcode!
tversity cons: gui is ugly & poorly designed. windows only.
<<

zip

User avatar

Serviio developer / Site Admin

Posts: 17212

Joined: Sat Oct 24, 2009 12:24 pm

Location: London, UK

Post Sun Oct 23, 2011 10:22 am

Re: Xbox 360 Doesn't See MKV Files

rrtn wrote:tvserity plays mkvs on my xbox without transcoding, any chance of serviio doing this?

It doesn't seem right, how do you know they're not transcoding?
<<

rrtn

Serviio newbie

Posts: 2

Joined: Sun Oct 23, 2011 12:35 am

Post Sun Oct 23, 2011 12:54 pm

Re: Xbox 360 Doesn't See MKV Files

zip wrote:
rrtn wrote:tvserity plays mkvs on my xbox without transcoding, any chance of serviio doing this?

It doesn't seem right, how do you know they're not transcoding?

hello, zip.
i have been using tversity for my mkvs to be played on me xbox, all others force a transcode, in tversity settings i have transcode set to never. the only difference i see is the load time with any mpeg4 or small mkv file the loading zips by, barely noticeable, but if i put my 1080p rip of full metal jacket in the queue which is 9.7 GiB well then that same loading time takes a minute or two. i came across serviio doin a search for media servers like tversity cause im looking for a osx equal...and the search continues. the other media servers ive tried are vuze & twonky. vuze transcodes em into mp4s and twonky just doesnt see em.
anyway thanks for the support zip and nice work, i like what ive seen of serviio so far. :)
<<

jhb50

DLNA master

Posts: 2843

Joined: Thu Jun 30, 2011 9:32 pm

Post Sun Oct 23, 2011 1:22 pm

Re: Xbox 360 Doesn't See MKV Files

rrtn wrote:tversity pros: seems to be the most flexible when it comes to file formats, never a transcode!

Statements like this just add to the misinformation on the forum, so by way of clarification....

The need to transcode a file has nothing to do with the server software program (Traversity & Serviio). It is based on the ability of the client device(TV) to play that file format (video codec/audio codec/container combination) natively. The valid combos should be defined in your device manual. If the TV cannot play the file format natively then it must be transcoded (note that not all servers support transcoding).

Serviio offers full flexibility to define the transcodes for any file format for any device type via its profiles.

By definition if the XBox cannot play .mkv container files then Traversity or any other server must transcode it. The easy way to check this is touse the device to display the information about the file. This can be done using the menu item or while it is playing. If the file type does not show as video/x-mkv then it is being transcoded to the type shown, probably video/mpeg.

If the file type does show as video/x-mkv while it is playing then the XBox is able to play files with that combination of video codec/audio codec/in a .mkv container, and the Serviio profile for the XBox may easily be changed to reflect that and allow the file to play natively.

The same is true for any device playing any file format (video codec/audio codec/container combination).

As an example, my Samsung cannot play MPEG4/AAC.ts format files, which are the result of remuxing a NASA Hubble online feed with MPEG4/AAC.mp4 files to mpeg-ts (a .ts container) as required for online playback. The solution was to also reencode the video to mpeg2video and the audio to ac3 to create a transcoded MPEG2/AC3.ts format stream which my Samsung can play. This was easily done by adding the following to my <OnlineTranscoding> profile
  Code:
<Video targetContainer="mpegts" targetVCodec="mpeg2video" targetACodec="ac3" aBitrate="384"  >          
            <Matches container="mp4" vCodec="mpeg4" />  <!-- jhb50  Re-encode Nasa MPEG4/AAC.mp4 streams  -->
</Video>
<<

patters

User avatar

DLNA master

Posts: 1282

Joined: Sat Oct 09, 2010 3:51 pm

Location: London, UK

Post Tue Feb 21, 2012 11:03 am

Re: Xbox 360 Doesn't See MKV Files

Resurrecting a long-dead thread, but I thought I'd post this since I remember once spending ages searching the web for it in vain. Here is a tool which can rapidly pre-convert MKV H.264 videos with surround sound to Xbox 360-compliant H.264 in MP4 with two channel AAC audio - XenonMKV:
http://xenonmkv.ev98.net/

It's useful because otherwise Serviio would transcode these files to wmv (since MP4 cannot be live-streamed).
LG OLED55B8PLA | PS4 Pro | Xbox One S | Synology DS214play
Serviio 2.1 package for Synology NAS - with limited hardware transcoding support!
<<

Xmantium

User avatar

DLNA master

Posts: 1396

Joined: Sat Jul 23, 2011 2:12 pm

Location: Manchester, UK

Post Sun Apr 22, 2012 4:27 pm

Re: Xbox 360 Doesn't See MKV Files

Can this method be used in Serviio somehow?
MKV to WMV can have a huge strain on my low powered NAS CPU so I don't bother with mkvs on my Xbox 360
I don't mind audio being down sampled, only limitation could be the 4gb file size

Good specs found in http://blogs.msdn.com/b/xboxteam/archiv ... k-faq.aspx
Sony Bravia 2010 52NX803 - Sony PS3 - Xbox 360
Serviio running on QNAP NAS 639 Pro - 1.6 Intel Dual Core - 2GB RAM and QNAP NAS 121 - 2Ghz ARM Marvell - 1GB RAM
Console using ServiiDroid for Android, ServiiMetro and ServiiWP for Windows Phone and WebUI for iOS

Return to Serviio Support & Help

Who is online

Users browsing this forum: No registered users and 49 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.