Modify

Ticket #5836 (closed patch: fixed)

Opened 4 years ago

Last modified 3 years ago

H.264 parser to replace mpeg/h264utils

Reported by: jppoet@… Owned by: janne
Priority: minor Milestone: unknown
Component: mythtv Version: unknown
Severity: medium Keywords: H.264 recording
Cc: Ticket locked: no

Description

Replace h264utils with a new H264parser class. This new class decodes more of the H.264 stream during recording to allow for more accurate detection of fields and I-frames.

Attachments

H264parser-v1.patch (44.0 KB) - added by jppoet@… 4 years ago.
H264parser class
dtvrecorder-fix-h264offset.patch (831 bytes) - added by jppoet@… 4 years ago.
Adjust keyframe offset for dtvrecorder buffering
dtvrecorder-fix-h264offset-v2.patch (521 bytes) - added by jppoet@… 4 years ago.
Safer version
H264parser-v1.1.patch (47.3 KB) - added by jppoet@… 4 years ago.
New version, which includes and supersedes all previous patches on this ticket.
H264parser-v1.2.patch (47.3 KB) - added by janne 4 years ago.
refreshed v.1.2
24_newfix_h264_frame_counting.patch (58.8 KB) - added by jyavenard@… 3 years ago.
Fix of 0.21-fixes

Change History

Changed 4 years ago by jppoet@…

H264parser class

comment:1 Changed 4 years ago by janne

  • Owner changed from ijr to janne
  • Status changed from new to assigned

Thanks John, code looks nice at first glance. I'll test it now.

Changed 4 years ago by jppoet@…

Adjust keyframe offset for dtvrecorder buffering

comment:2 Changed 4 years ago by jppoet@…

Added dtvrecorder-fix-h264offset.patch to account for internal dtvrecorder buffering.

comment:3 Changed 4 years ago by jppoet@…

Attaching a "safer" version of dtvrecorder-fix-h264offset.patch

Changed 4 years ago by jppoet@…

Safer version

comment:4 Changed 4 years ago by mark.kendall@…

Small suggestion. It would probably be quite useful, in the short term at least, to add the ability to debug/log the stream info - numbers of slices, NAL types etc.

Regardless, I'll test on my local HD station.

Changed 4 years ago by jppoet@…

New version, which includes and supersedes all previous patches on this ticket.

comment:5 Changed 4 years ago by jppoet@…

H264parser-v1.1.patch has some minor cleanups. It also will not return the first keyframe until a IDR frame has been seen. It also adds the basic hooks into avformatdecoder, which the first version failed to do.

Changed 4 years ago by janne

refreshed v.1.2

comment:6 Changed 4 years ago by janne

  • Status changed from assigned to closed
  • Resolution set to fixed

(In [18991]) replace H264KeyFrameSequencer with H264Parser. Fixes #5836

patch by John Poet <jppoet gmail com>

comment:7 Changed 4 years ago by janne

(In [19094]) do not wait for an IDR slice for recording. fixes BBC HD records, Refs #5836

comment:8 Changed 4 years ago by janne

(In [19140]) reverts [19094]. Wait for an IDR slice or frame_num == 0 for the first keyframe. Refs #5836

comment:9 Changed 3 years ago by jyavenard@…

this patch is for 0.21-fixes backporting: r18991 r19094 and r19140

Changed 3 years ago by jyavenard@…

Fix of 0.21-fixes

View

Add a comment

Modify Ticket

Action
as closed
The resolution will be deleted. Next status will be 'new'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.