Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#5645 closed patch (fixed)

H264 ffmpeg resync for release-0-21-fixes

Reported by: laga+mythtv@… Owned by: Janne Grunau
Priority: minor Milestone: unknown
Component: mythtv Version: 0.21-fixes
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Hello,

attached is a series of patches which will resync h264.c against ffmpeg revision 14732.

In order to apply the patches, extract the tarball into libs/ and run "quilt push -a". Inside the patches/ subdirectory, you will find some *.interdiff files which describe the differences between the ffmpeg commits and this patch. Not all patches are applied, please see patches/series for details.

The patch series consists of all changesets which touch h264.c since the last ffmpeg resync plus some ffmpeg commits to make the whole thing compile again.

Attachments (4)

h264-resync-fixes.tar.gz (250.6 KB) - added by anonymous 11 years ago.
revert-defines.diff.gz (27.0 KB) - added by laga+mythtv@… 11 years ago.
Revert define changes
340.patch (1.6 KB) - added by laga+mythtv@… 11 years ago.
Import new commits to h264.c
341.patch (694 bytes) - added by anonymous 11 years ago.

Download all attachments as: .zip

Change History (13)

Changed 11 years ago by anonymous

Attachment: h264-resync-fixes.tar.gz added

comment:1 Changed 11 years ago by elkin@…

do I need to recompile mythvideo after building with this patch?

comment:2 Changed 11 years ago by anonymous

no

comment:3 Changed 11 years ago by taco_mel@…

Thank you for posting this - it applied cleanly against 18199, 0.21 fixes branch. I have a bunch of h.264 content (including some recordings from HD-PVR created outside Myth) and everything seems to play correctly.

I am still unable to use "mythcommflag --rebuild..." to build the seek table for h.264 files because then it seems to get very confused. It didn't work right before and it doesn't work right now. (The determined length of the recording is drastically wrong and skipping ahead for what is supposed to be 30 seconds actually skips ahead several minutes.) So for my transcoded recordings I must delete the seek table entries and let it fall back to the ffmpeg libraries. Seeking within the HD-PVR files is now faster than before with these patches applied.

comment:4 Changed 11 years ago by Paul Kendall <paul@…>

I am maintaining a full copy of ffmpeg trunk with all the patches that MythTV has applied. And keep them synced daily. I also provide an Ubuntu PPA build of mythtv-0.21-fixes with these included. My set of patches also includes an LATM parser for NZ and Norwegian DVB-T streams.

Check http://pkendall.homeip.net for more details.

comment:5 Changed 11 years ago by Janne Grunau

Owner: changed from Isaac Richards to Janne Grunau
Status: newassigned

Changed 11 years ago by laga+mythtv@…

Attachment: revert-defines.diff.gz added

Revert define changes

comment:6 Changed 11 years ago by laga+mythtv@…

I've attached a patch which applies on top of the other ones. It reverts some define changes, eg FF_I_TYPE -> I_TYPE.

Also remove 339.patch from patches/series, it's not needed anymore. Note: run quilt pop before to make sure it's unapplied properly.

Changed 11 years ago by laga+mythtv@…

Attachment: 340.patch added

Import new commits to h264.c

Changed 11 years ago by anonymous

Attachment: 341.patch added

comment:7 Changed 11 years ago by laga+mythtv@…

340.patch and 341.patch bring the patch up to date with ffmpeg trunk, adding two new commits for h264.c. Use 'quilt import <name of patch>" and "quilt push" to apply them.

comment:8 Changed 11 years ago by Janne Grunau

Resolution: fixed
Status: assignedclosed

(In [18372]) syncs ffmpeg H264 decoder to r15194.

fixes segfaults and decoding errors with interlaced H264 video streams closes #5645

comment:9 Changed 11 years ago by Janne Grunau

(In [18373]) sync libavcodec/h264.c to revision 15385

Refs #5645

Note: See TracTickets for help on using tickets.