Repository navigation
Conversation
H.264 High Profile — Runtime Verification ResultsThe proposed source-level change has been tested successfully on Intel HD Graphics 4600 using the Test 1 — Source-built libopenshot
Test 2 — Experimental OpenShot 4.0.1 AppImage
Build status: The source library and Python SWIG binding built successfully. The full default build encountered an unrelated unresolved linking failure in an optional example target. Scope clarification: The GUI test validates the experimental AppImage binary patch and Python export integration. It does not constitute a GUI integration test of the newly compiled source library. Latest source commit: |
Final Regression Verification — PASSEDThe H.264 High Profile enhancement has now passed both positive and backward-compatibility regression tests. Environment
Test 1 — Explicit High Profile
Test 2 — Default Constrained Baseline
Additional GUI validation An experimental OpenShot 4.0.1 AppImage with the corresponding binary patch and Python export setting successfully produced a 96.4-second, 2,892-frame H.264 High Profile video. Full FFmpeg decoding completed without errors. The GUI test used the experimental binary patch, not the newly source-built library. Conclusion The source patch correctly honors an explicitly requested H.264 High Profile while preserving the existing Constrained Baseline default. Latest commit: All reported runtime regression tests passed. The full default build's optional-example linking issue remains unresolved. |
Summary
This pull request proposes a fix for H.264 hardware encoding in
FFmpegWriter.cpp, where the encoder initialization unconditionally forcesAV_PROFILE_H264_CONSTRAINED_BASELINE, overriding an explicitly requested High Profile.The proposed change honors
AV_PROFILE_H264_HIGHwhen explicitly selected, while retaining Constrained Baseline as the legacy default.Changes
vprofileoption consistently.Environment
i965h264_vaapiRoot cause
The H.264 hardware-encoding branch in
src/FFmpegWriter.cppcontains:video_codec_ctx->profile = AV_PROFILE_H264_CONSTRAINED_BASELINE;This overrides a High Profile request made through:
Experimental verification
A local experimental binary modification changed the H.264 profile assignment from 578 (Constrained Baseline) to 100 (High Profile).
The resulting OpenShot VAAPI export was verified using
ffprobe:This demonstrates successful H.264 High Profile output on the tested Intel hardware.
Testing status
Request for review
I would appreciate feedback from the OpenShot maintainers on the proposed profile-selection logic and hardware compatibility.
This pull request is submitted as a draft because the source-level implementation still requires compilation and regression testing.
Thank you for maintaining OpenShot and supporting open-source video editing.