Skip to content

Commit

Permalink
Removed global logger and added unknown descriptors instead
Browse files Browse the repository at this point in the history
  • Loading branch information
asticode committed Nov 5, 2020
1 parent fd82a7c commit 3f1550b
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 17 deletions.
3 changes: 0 additions & 3 deletions astits/main.go
Expand Up @@ -40,9 +40,6 @@ func main() {
cmd := astikit.FlagCmd()
flag.Parse()

// Set logger
astits.SetLogger(log.New(log.Writer(), log.Prefix(), log.Flags()))

// Handle signals
handleSignals()

Expand Down
3 changes: 1 addition & 2 deletions data_psi.go
Expand Up @@ -292,9 +292,8 @@ func psiTableType(tableID int) string {
case tableID == 0x73:
return PSITableTypeTOT
default:
logger.Debugf("astits: unlisted PSI table ID %d\n", tableID)
return PSITableTypeUnknown
}
return PSITableTypeUnknown
}

// parsePSISectionSyntax parses a PSI section syntax
Expand Down
34 changes: 32 additions & 2 deletions descriptor.go
Expand Up @@ -112,6 +112,7 @@ type Descriptor struct {
Subtitling *DescriptorSubtitling
Tag uint8 // the tag defines the structure of the contained data following the descriptor length.
Teletext *DescriptorTeletext
Unknown *DescriptorUnknown
UserDefined []byte
VBIData *DescriptorVBIData
VBITeletext *DescriptorTeletext
Expand Down Expand Up @@ -612,6 +613,7 @@ func newDescriptorExtendedEventItem(i *astikit.BytesIterator) (d *DescriptorExte
type DescriptorExtension struct {
SupplementaryAudio *DescriptorExtensionSupplementaryAudio
Tag uint8
Unknown *[]byte
}

func newDescriptorExtension(i *astikit.BytesIterator, offsetEnd int) (d *DescriptorExtension, err error) {
Expand All @@ -633,7 +635,15 @@ func newDescriptorExtension(i *astikit.BytesIterator, offsetEnd int) (d *Descrip
return
}
default:
logger.Debugf("astits: unlisted extension tag 0x%x\n", d.Tag)
// Get next bytes
var b []byte
if b, err = i.NextBytes(offsetEnd - i.Offset()); err != nil {
err = fmt.Errorf("astits: fetching next bytes failed: %w", err)
return
}

// Update unknown
d.Unknown = &b
}
return
}
Expand Down Expand Up @@ -1157,6 +1167,23 @@ func newDescriptorTeletext(i *astikit.BytesIterator, offsetEnd int) (d *Descript
return
}

type DescriptorUnknown struct {
Content []byte
Tag uint8
}

func newDescriptorUnknown(i *astikit.BytesIterator, tag, length uint8) (d *DescriptorUnknown, err error) {
// Create descriptor
d = &DescriptorUnknown{Tag: tag}

// Get next bytes
if d.Content, err = i.NextBytes(int(length)); err != nil {
err = fmt.Errorf("astits: fetching next bytes failed: %w", err)
return
}
return
}

// DescriptorVBIData represents a VBI data descriptor
// Chapter: 6.2.47 | Link: https://www.etsi.org/deliver/etsi_en/300400_300499/300468/01.15.01_60/en_300468v011501p.pdf
type DescriptorVBIData struct {
Expand Down Expand Up @@ -1394,7 +1421,10 @@ func parseDescriptors(i *astikit.BytesIterator) (o []*Descriptor, err error) {
return
}
default:
logger.Debugf("astits: unlisted descriptor tag 0x%x\n", d.Tag)
if d.Unknown, err = newDescriptorUnknown(i, d.Tag, d.Length); err != nil {
err = fmt.Errorf("astits: parsing unknown descriptor failed: %w", err)
return
}
}
}

Expand Down
10 changes: 0 additions & 10 deletions logger.go

This file was deleted.

0 comments on commit 3f1550b

Please sign in to comment.