Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ffmpeg compilation for mpegh 3d audio support #8

Open
mormegil6 opened this issue Apr 20, 2024 · 1 comment
Open

ffmpeg compilation for mpegh 3d audio support #8

mormegil6 opened this issue Apr 20, 2024 · 1 comment

Comments

@mormegil6
Copy link

Hello,
I can't wrap my head around ffmpeg compilation for Windows. I spent a few hours trying to achieve the plugin integration, to no avail. I am able to build the dll file, but no matter how I compile the ffmpeg (with MSYS2, or directly in min-gw64) I receive either missing dll files (libewinpthread-1.dll, libbz2-1.dll, libiconv-2.dll, liblzma-5.dll), or, when I run ./configure --disable-autodetect, I did compile ffmpeg successfully, but there was no mpegh functionality - as if it was not compiled.

After many attempts, I finally got some success: I compiled the ffmpeg with the plugin. However, I had to use the following parameters:
./configure --disable-iconv --disable-bzlib --disable-zlib --disable-lzma
Also, when I tried to "ffprobe" my Sony 360RA mp4 encoded file (which I just created with Sony software) I received the following error:

Could not find codec parameters for stream 0 (Audio: mpegh_3d_audio (mha1 / 0x3161686D), 48000 Hz, 0 channels, 333 kb/s): unspecified number of channels
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options

As a comparison, here's the regular ffmpeg output:

Could not find codec parameters for stream 0 (Audio: none (mha1 / 0x3161686D), 48000 Hz, 0 channels, 333 kb/s): unknown codec
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options

So the compiled ffmpeg detected the codec, but still did not detect the channel number. At this point I can't tell if this is an error in my compilation, or in the plugin itself. Please advise what else should I check in order to get this to work. My main goal is to combine mpeg-h level 3 mp4 audio file with h264 video file.

Could you please provide a more detailed ffmpeg compilation instructions, preferably - without pointing to ffmpeg steps? They seem to be the most inaccurate and confusing...
Or, maybe even more ideally - could you share your compilation of ffmpeg.exe?

@sandeshvenkatesh
Copy link
Collaborator

Hi,

Please refer to libmpeghe/ffmpeg_plugin/ffmpeg/docs/ITT_FFMPEG_MPEGH_ENC_UG.docx for details about compiling the MPEGH encoder library for FFMPEG plugin.
The patch file to generate the DLL needed for FFMPEG is shared as libmpeghe/ffmpeg_plugin/windows_mpegh_enc_lib.patch
The patch file for integration of MPEGH encoder to FFMPEG framework is shared as libmpeghe/ffmpeg_plugin/ffmpeg_mpegh_enc.patch.
The steps for building and integrating MPEGH encoder to FFMPEG framework is documented and is validated. The GIT commands for downloading the ffmpeg code (5.1 release), applying patch are also provided in user guide. The only dependency is that MSYS2 UCRT needs to be installed in Windows PC.

Can you try the steps defined in user guide and check?

Also, note that this would be MPEGH encoder plugin. This takes wave file as input and generate encoded MHAS file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants