[mythtv] FFmpeg plans
Peter Bennett
pb.mythtv at gmail.com
Mon May 14 23:44:11 UTC 2018
On 05/14/2018 04:04 PM, Peter Bennett wrote:
>
>
> On 05/14/2018 02:11 PM, David Engel wrote:
>> Did you try without squash? I know whatever we do will be tedious,
>> but what you describe below with our own, second repository sound more
>> so.
>>
>> David
>>
> I did not. I will create another branch in my repository and try that.
>
> Peter
Tested Without squash and without private repo:
It works fine I am able to merge updates from ffmpeg wiothout conflicts
as well as cherry pick a commit without problem, using the procedure in
https://stackoverflow.com/questions/12978260/how-do-i-go-to-a-specific-commit-using-git-subtree
The log is full of ffmpeg entries. We will need some filtering on "git
log" to make it useful. I have not looked into that. Look at
https://github.com/bennettpeter/mythtv and select the "ffmpeg-subtree"
branch. Notice it has 125000 commits, as opposed to the master branch,
which has 34000.
I think this is a good solution, as long as other developers are not too
unhappy about the log situation.
Below are the steps I used
git remote rename ffmpeg ffmpeg-private
git remote add ffmpeg git at github.com:FFmpeg/FFmpeg.git
git checkout 2403427
git branch ffmpeg-subtree
git checkout ffmpeg-subtree
git clean -xfd
git rm -r mythtv/external/FFmpeg
rm -r mythtv/external/FFmpeg/
git fetch ffmpeg
git subtree add -P mythtv/external/FFmpeg 6dc7963
git apply --directory=mythtv/external/FFmpeg
../patch/20180510_1945_FFmpeg_MythTV_Customization_fixed.patch
git apply --directory=mythtv/external/FFmpeg
../patch/20180511_1537_FFmpeg_compile_errors.patch
git apply ../patch/20180512_1728_additional_ffmpeg_fixes.patch
git apply ../patch/20180512_1158_fix_mythtv_compile_errors.patch --reject
git apply ../patch/20180512_1534_compile_error_and_fix_playback.patch
--reject
git push --set-upstream bennettpeter ffmpeg-subtree
#sync some ffmpeg updates
git fetch ffmpeg
git subtree merge -P mythtv/external/FFmpeg 7db022e
#successful
#cherry-pick a commit from ffmpeg
git checkout 7db022e
git cherry-pick -e -x 42a03e7
git log
#copy the commit hash -> 8a57b2fced942bc1c17ff26cfe8fa36193d95fbb
git checkout ffmpeg-subtree
# you can use HEAD@{1} instead of the hash if you did not do anything in
between
git subtree merge -P mythtv/external/FFmpeg
8a57b2fced942bc1c17ff26cfe8fa36193d95fbb
Peter
More information about the mythtv-dev
mailing list