Skip to content

Commit

Permalink
Merge pull request #296 from Eyevinn/v0.40.2
Browse files Browse the repository at this point in the history
docs: update to v0.40.2
  • Loading branch information
tobbee authored Nov 17, 2023
2 parents 547a03b + af0bbd0 commit 4701899
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 18 deletions.
7 changes: 6 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

- Nothing yet

## [0.40.2] - 2023-11-17

### Fixed

- Test of AVC PicTiming SEI with cbpDbpDelay set
Expand Down Expand Up @@ -508,7 +512,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

- New unique repo name: `mp4ff`

[Unreleased]: https://github.com/Eyevinn/mp4ff/compare/v0.40.1...HEAD
[Unreleased]: https://github.com/Eyevinn/mp4ff/compare/v0.40.2...HEAD
[0.40.2]: https://github.com/Eyevinn/mp4ff/compare/v0.40.1...v0.40.2
[0.40.1]: https://github.com/Eyevinn/mp4ff/compare/v0.40.0...v0.40.1
[0.40.0]: https://github.com/Eyevinn/mp4ff/compare/v0.39.0...v0.40.0
[0.39.0]: https://github.com/Eyevinn/mp4ff/compare/v0.38.0...v0.39.0
Expand Down
29 changes: 14 additions & 15 deletions mp4/doc.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,52 +5,51 @@ Most boxes have their own file named after the box four-letter name in the ISO/I
but in some cases, there may be multiple boxes that have the same content, and the code is then having a
generic name like visualsampleentry.go.
The Box interface is specified in box.go. It decodes box size and type in the box header and
dispatched decode for each individual box depending on its type.
Implement a new box
# Implement a new box
To implement a new box "fooo", the following is needed:
Create a file fooo.go and with struct type FoooBox.
FoooBox should then implement the Box interface methods:
Type()
Size()
Encode()
Info()
Type()
Size()
Encode()
EncodeSW()
Info()
but also its own decode method `DecodeFooo`, and register that method in the `decoders` map in `box.go`.
but also its own decode method DecodeFooo and DecodeFoooSR, and register these
methods in the decoders map in box.go and decodersSR map in boxsr.go.
For a simple example, look at the `prft` box in `prft.go`.
Container Boxes
# Container Boxes
Container boxes like moof, have a list of all their children called Children,
but also direct pointers to the children with appropriate names,
like Mfhd and Traf. This makes it easy to chain box paths to reach an
element like a TfhdBox as
file.Moof.Traf.Tfhd
file.Moof.Traf.Tfhd
When there may be multiple children with the same name, there may be both a
pointer to a slice Trafs with all boxes and Traf that points to the first.
pointer to a slice like Trafs with all boxes and Traf that points to the first.
Media Sample Data Structures
# Media Sample Data Structures
To handle media sample data there are two structures:
1. `Sample` stores the sample information used in trun
2. `FullSample` also carries a slice with the samples binary data as well as decode time
Fragmenting segments
# Fragmenting segments
A MediaSegment can be fragmented into multiple fragments by the method
func (s *MediaSegment) Fragmentify(timescale uint64, trex *TrexBox, duration uint32) ([]*Fragment, error)
func (s *MediaSegment) Fragmentify(timescale uint64, trex *TrexBox, duration uint32) ([]*Fragment, error)
*/
package mp4
4 changes: 2 additions & 2 deletions mp4/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ import (
)

var (
commitVersion string = "v0.40.1" // May be updated using build flags
commitDate string = "1698825496" // commitDate in Epoch seconds (may be overridden using build flags)
commitVersion string = "v0.40.2" // May be updated using build flags
commitDate string = "1700228762" // commitDate in Epoch seconds (may be overridden using build flags)
)

// GetVersion - get version and also commitHash and commitDate if inserted via Makefile
Expand Down

0 comments on commit 4701899

Please sign in to comment.