Is there a way to mux away from Microsoft MPEG-4 v2 (pre-standard) to something else or to a standard video type?
I was able to go from V_MS/VFW/FOURCC/H264 to V_MPEG4/ISO/AVC by loading it in Virtualdubmod then direct stream copy then "save as" then the codec id is changed to H264 then open resulting avi file in Mkvtoolnix and mux to mkv file then codec id is changed to V_MPEG4/ISO/AVC.
It seemed like it was a mux instead of a transcode.
I needed to change it because V_MS/VFW/FOURCC/H264 does not play on Sony bluray player and V_MPEG4/ISO/AVC does.
I was looking for a solution like that to convert away from Microsoft MPEG-4 v2 (pre-standard).
Are there converters that actually tell you before hand if it is going to mux or transcode?
I prefer not to transcode.
+ Reply to Thread
Results 1 to 9 of 9
Last edited by dfm0; 31st Dec 2015 at 23:27.
Does the new mkv work on your blu-ray player? With the new codec id??? Maybe remux it to a mp4 with mkvtomp4.
And you must manually choose if you want to just copy/mux the video streams in all video converters like ffmpeg, virtualdub, etc. mkvtoolnix is just a multiplexer so it can't convert/transcode.
Yes the new MKV played in the Sony Bluray player. When I made the MKV I also made it 16:9 and for some reason I wanted .mp4 so I used mkvtomp4 and it kept the 16:9 which is what I wanted.
I was only using the V_MPEG4/ISO/AVC example to show a muxing conversion that worked and looking for a similar muxing conversion to work for converting away
from MPEG-4 v2 (pre-standard) to a standard video which would play on the bluray player.
When I tried the same thing with MPEG-4 v2 (pre-standard) it did not work. It kept the MPEG-4 v2 (pre-standard) no matter what I did.
MPEG-4 v2 (pre-standard) doesn't play on any device except for the computer.
Transcoding works but results in a much lower quality video and takes very long.
I figured if I could mux it it would not get any worse quality.
Thanks for your replies.
When I try ffmpeg I get:
ffmpeg -i sample_MPEG-4v2(pre-standard)AC-3cut.AVI -c copy -shortest -movflags faststart test.mp4
ffmpeg version N-66618-ge079d43 Copyright (c) 2000-2014 the FFmpeg developers
built on Oct 4 2014 22:01:58 with gcc 4.9.1 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 54. 9.100 / 54. 9.100
libavcodec 56. 2.101 / 56. 2.101
libavformat 56. 7.104 / 56. 7.104
libavdevice 56. 1.100 / 56. 1.100
libavfilter 5. 1.102 / 5. 1.102
libswscale 3. 1.100 / 3. 1.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 1.100 / 53. 1.100
Input #0, avi, from 'sample_MPEG-4v2(pre-standard)AC-3cut.AVI':
Duration: 00:01:36.70, start: 0.000000, bitrate: 766 kb/s
Stream #0:0: Video: msmpeg4v2 (MP42 / 0x3234504D), yuv420p, 688x480, 602 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc
Stream #0:1: Audio: ac3 (  / 0x2000), 48000 Hz, stereo, fltp, 128 kb/s
[mp4 @ 02ac9860] Could not find tag for codec msmpeg4v2 in stream #0, codec not currently supported in container
Output #0, mp4, to 'test.mp4':
encoder : Lavf56.7.104
Stream #0:0: Video: msmpeg4v2 (MP42 / 0x3234504D), yuv420p, 688x480, q=2-31, 602 kb/s, 30 fps, 30 tbn, 30 tbc
Stream #0:1: Audio: ac3 ( / 0x00A5), 48000 Hz, stereo, 128 kb/s
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Could not write header for output file #0 (incorrect codec parameters ?): Error number -22 occurred
Mediainfo of resulting test.mp4:
Complete name : test.mp4
Format : MPEG-4
Format profile : Base Media
Codec ID : isom (isom/iso2/mp41)
File size : 28.0 Bytes
Ok then sorry, was not aware that mp4 will not support MP42... perhaps other container support MP42? Try Matroska maybe - have no MP42 video to check.
Consider to recode video with more modern H.264 - you should be able to keep similar quality with probably lower file size.
@SET x264opts="crf=21:vbv_maxrate=20000:vbv_bufsize=20000:level=4.0:keyint=250:cabac=1:threads=auto:no_psnr=1:no_ssim=1:bluray_compat=1:pic_struct=1:aud=1:nal-hrd=vbr:force-cfr=1:open_gop=0" @ffmpeg -i %1 -c:v libx264 -preset medium -tune film -profile:v high -x264opts %x264opts% -x264-params %x264opts% -c:a aac -strict experimental -b:a 160k -af "aformat=sample_fmts=fltp,aresample=resampler=soxr:osr=48000:dither_method=3" -movflags faststart -f mp4 %1.mp4
Last edited by pandy; 2nd Jan 2016 at 07:42.
Thanks pandy. The transcode worked but since the source file is already low quality I end up with lower quality.
MP42 is Microsoft's early experimental MPEG 4 Part 2 (ASP) codec. It's not compatible with other MPEG 4 Part 2 decoders like Divx and Xvid (ffmpeg does include and MP42 decoder though). I've never heard of a TV, Blu-ray, or standalone media player that can play it. Don't confuse this with MPEG 4 Part 10 (AVC, h.264) codecs.
ffmpeg (but not only) dedicated to improve perceived quality.