PDA

View Full Version : Corrupt file trying to stream specific MP4 to PS3



whilke
10-11-2013, 02:41 PM
I have an MP4 file that plays off USB fine, and will stream via TVersity fine without transcode.

I modified my PS3 profile to support my MP4 files, and all of them work fine without transcode, expect for this specific file. I'm not sure why it's coming back corrupt.

Here is the FFmpeg info for the bad file


ffmpeg version N-50460-g393dcbf Copyright (c) 2000-2013 the FFmpeg developers
built on Jun 27 2013 17:20:20 with gcc 4.6.2 (GCC)
configuration: --enable-memalign-hack --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --enable-static --disable-shared --enable-zlib --disable-postproc --prefix=/home/peter/ffmpeg/build/gpl64 --enable-libmp3lame --enable-libx264 --enable-gpl --extra-libs='-lx264 -lpthread' --enable-runtime-cpudetect --extra-cflags=-I/home/peter/cc64/include --extra-ldflags=-L/home/peter/cc64/lib --pkg-config=pkg-config --disable-w32threads --enable-zlib
libavutil 52. 17.103 / 52. 17.103
libavcodec 54. 92.100 / 54. 92.100
libavformat 54. 63.102 / 54. 63.102
libavdevice 54. 3.103 / 54. 3.103
libavfilter 3. 41.100 / 3. 41.100
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '\\ASGARD\Movies\test1.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isomavc1
creation_time : 2013-10-10 14:27:20
encoder : HandBrake 0.9.6 2012022800
Duration: 02:32:59.63, start: 0.000000, bitrate: 2217 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 1765 kb/s, 23.98 fps, 23.92 tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 2013-10-10 14:27:20
Stream #0:1(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 448 kb/s
Metadata:
creation_time : 2013-10-10 14:27:20
Stream #0:2(und): Subtitle: mov_text (text / 0x74786574)
Metadata:
creation_time : 2013-10-10 14:27:20
At least one output file must be specified

<MEZZMO>: Child process ended with code: 109, ExitCode=1


---> DB Level Info: 40, 100
---> Frame rate: 23.98
---> Aspect ratio: 16:9 PAR=1:1


Here is a file that works, and was encoded with the same handbrake profile (plus blackborder cropping)


ffmpeg version N-50460-g393dcbf Copyright (c) 2000-2013 the FFmpeg developers
built on Jun 27 2013 17:20:20 with gcc 4.6.2 (GCC)
configuration: --enable-memalign-hack --arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --enable-static --disable-shared --enable-zlib --disable-postproc --prefix=/home/peter/ffmpeg/build/gpl64 --enable-libmp3lame --enable-libx264 --enable-gpl --extra-libs='-lx264 -lpthread' --enable-runtime-cpudetect --extra-cflags=-I/home/peter/cc64/include --extra-ldflags=-L/home/peter/cc64/lib --pkg-config=pkg-config --disable-w32threads --enable-zlib
libavutil 52. 17.103 / 52. 17.103
libavcodec 54. 92.100 / 54. 92.100
libavformat 54. 63.102 / 54. 63.102
libavdevice 54. 3.103 / 54. 3.103
libavfilter 3. 41.100 / 3. 41.100
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '\\ASGARD\Movies\test2.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isomavc1
creation_time : 2013-10-09 17:03:57
encoder : HandBrake 0.9.6 2012022800
Duration: 01:51:43.74, start: 0.000000, bitrate: 2421 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x544, 1969 kb/s, 23.98 fps, 23.83 tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 2013-10-09 17:03:57
Stream #0:1(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 448 kb/s
Metadata:
creation_time : 2013-10-09 17:03:57
Stream #0:2(und): Subtitle: mov_text (text / 0x74786574)
Metadata:
creation_time : 2013-10-09 17:03:57
At least one output file must be specified

<MEZZMO>: Child process ended with code: 109, ExitCode=1


---> DB Level Info: 31, 100
---> Frame rate: 23.98
---> Aspect ratio:


Here is how I modified my PS3 profile:


<avcontainer id="mov,mp4,m4a,3gp,3g2,mj2" name="h264aac" mimetype="video/mp4" encode="0" supportschunked="1">
<video>
<format id="mpeg2video" encode="0">
</format>
<format id="mpeg4" encode="0">
</format>
<format id="h264" encode="0">
</format>

</video>
<audio>
<format id="mp2" encode="0">
</format>
<format id="s16be" encode="0">
</format>
<format id="aac" encode="0">
</format>
<format id="ac3" encode="0">
</format>
<format id="pcm_bluray" encode="0">
</format>
</audio>
</avcontainer>


Do you guys need to see logs?

Thanks

Paul
10-11-2013, 04:12 PM
Try changing the supportschunked="1" attribute in your device profile to supportschunked="0". Restart your Mezzmo server and try streaming now. When streaming MP4 files to your PS3, your PS3 will seek through the MP4 file to find the MOOV atom (index) in order to begin playing the file. You can optimize your MP4 files by placing the MOOV atom at the start of the MP4 file. Check if handbrake can do this.

whilke
10-12-2013, 04:15 AM
I've tried supportschunked on and off, but I get the same results.

whilke
10-12-2013, 04:21 AM
I'm currently re-encoding my file so that the MOOV atom is at the start of the MP4 file, instead of the back. Hopefully that is the issue.

Paul
10-14-2013, 11:04 AM
OK - let us know how you go & we'll help further.

whilke
10-15-2013, 01:44 AM
moving the MOOV atom to the start of the file did the trick.

Paul
10-15-2013, 08:13 AM
Great news. Thanks for posting back.