Opened 11 years ago

Closed 10 years ago

#7659 closed enhancement (Won't Fix)

Determine audio properties from recorded file instead of schedule data

Reported by: doug@… Owned by: danielk
Priority: minor Milestone: 0.25
Component: MythTV - Recording Version: Master Head
Severity: medium Keywords:
Cc: Ticket locked: no


Hi All,

I found that the audio properties (e.g. Dolby, Stereo, etc) in my schedule data were often different from the actual content of my recorded files. This is a patch to update the audio properties after a recording finishes with the values that are in the file as opposed to the ones passed from the listings source.

The patch includes a new class called AudioPropsGenerator? which works similarly to PreviewGenerator?. It takes a ProgramInfo? and will then determine the AudioProperties? in the current thread or a new thread. I've also updated tv_rec.cpp to call this Generator after a recording ends. Finally, each decoder (avformatdecoder, nuppeldecoder, etc) is responsible for doing the actual work of determining the audio properties. The generator then takes the new value and updates the db.

There are a few open issues (mainly around my ignorance):

  1. I don't know too much about audio processing, so I guessed that the speaker layout is a good proxy for determining the audio props. This seems to prove true for my test cases, but I don't know if this applies to everyone.

  1. I don't know too much about the hard hearing properties so I guessed on that too.

  1. I don't know what the visual impair property is so I ignored it

  1. I don't have any recorders that use the nuppledecoder so I wrote the code, but I couldn't test it.



Attachments (2)

audioprops.patch (18.7 KB) - added by doug@… 11 years ago.
audioprops.100526.patch (19.5 KB) - added by Doug Haber <doug@…> 11 years ago.
This patch should apply against 24875 (post hdaudio merge)

Download all attachments as: .zip

Change History (14)

Changed 11 years ago by doug@…

Attachment: audioprops.patch added

comment:1 Changed 11 years ago by robertm

Component: MythTV - GeneralMythTV - Recording
Owner: changed from Isaac Richards to danielk

comment:2 Changed 11 years ago by danielk

Type: patchenhancement

Doug, this is an interesting enhancement. Can you update it to apply against jya's branch (or trunk if you see this after the merge of that branch to trunk) ?

comment:3 Changed 11 years ago by doug@…


I'm a little scared of moving to the hdaudio branch, but I've been keeping this patch up to date locally so when the hdaudio branch is merged with trunk I'll be sure to post here with my changes.



Changed 11 years ago by Doug Haber <doug@…>

Attachment: audioprops.100526.patch added

This patch should apply against 24875 (post hdaudio merge)

comment:4 Changed 11 years ago by Doug Haber <doug@…>


I attached a new patch that applies against 24875 (post hdaudio merge). There's lots of room for improvement (e.g. I didn't improve on 1-4 above, and the AudioGenerator? is basically a copy of the PreviewGenerator? - they should probably share a common base class). But hopefully this can be a start.



comment:5 Changed 11 years ago by robertm

Status: newassigned

comment:6 Changed 11 years ago by danielk

Owner: changed from danielk to JYA

comment:7 Changed 11 years ago by JYA

Owner: JYA deleted
Status: assignednew

I don't think I'm the best one to handle this one..

comment:8 Changed 11 years ago by robertm

Owner: set to stuartm
Status: newassigned

Hot Potato

comment:9 Changed 11 years ago by stuartm

Milestone: unknown0.25
Status: assignedaccepted
Version: headTrunk Head

comment:10 Changed 11 years ago by stuartm

Milestone: 0.25

Milestone 0.25 deleted

comment:11 Changed 10 years ago by stuartm

Owner: changed from stuartm to danielk
Status: acceptedassigned

comment:12 Changed 10 years ago by danielk

Resolution: Won't Fix
Status: assignedclosed

Doug, while interesting I don't think it makes sense as is. The audio properties of a recording can change during the recording. To do this properly I think we need to note the audio properties in the entire file during something like the commflag run and then determine the static audio properties based on those properties in effect through most of the recording.

Note: See TracTickets for help on using tickets.