Commit Graph

2637 Commits

Author SHA1 Message Date
Saxon b42510ae22 container/mts: added Clip.SegmentForMeta and accompanying testing.
Added a function to segment a Clip into sub Clips that have a consistent meta key and value.
Also added testing for this method.
2019-06-17 20:05:11 +09:30
Saxon 74992aee19 container/mts: added commenting to SegmentForMeta and accompanying testing 2019-06-17 16:34:22 +09:30
Saxon 3eab25e18b container/mts: added SegmentForMeta func and testing
This func will further segment an MTS segment to each series of packets that
correspond to a given key and val of meta. Testing for this func has also been
written.
2019-06-17 04:30:54 +09:30
Saxon 1a233d8576 container/mts: wrote function TrimToMtsRange and added related testing
This function will return a sub slice of MPEG-TS corresponding to an interval of metadata.
Also wrote testing for this function.
2019-06-16 04:08:41 +09:30
Saxon 513e9d06ff container/mts: moved contents of metaEncode_test.go to encoder_test.go and deleted metaEncode_test.go
The contents within metaEncode_test.go were strongly related to the contents
in encoder.go, so the code was moved and the file was deleted.
2019-06-15 02:13:49 +09:30
Saxon 2bd7a009ce container/mts: BytesForMetaInterval renamed to TrimToMetaRange and now returns Clip for similar reasons to previous commit 2019-06-15 02:12:17 +09:30
Saxon ceee163b74 container/mts: BytesForPTSInterval renamed to TrimToPTSRange, and now returns a Clip
It was concluded that it would be more useful if a function that provided a data segment from
the original clip just provided a new Clip, i.e. useful things like PTS and meta is still
available in the segment. So, BytesForPTSInterval was renamed to TrimToPTSRange and now
provides a Clip. The test for this function was updated accordingly.
2019-06-15 02:04:29 +09:30
Saxon eff69e87ce container/mts: added some commenting 2019-06-14 19:33:40 +09:30
Saxon f0d1b994bf container/mts: wrote test for BytesForMetaInterval and corrected bugs 2019-06-14 19:27:19 +09:30
Saxon 5f78ef8666 container/mts: wrote function BytesForMetaInterval to return media between two points of meta. 2019-06-14 17:41:34 +09:30
Saxon 22079fcb48 container/mts: wrote test for BytesForPTSInterval and corrected bugs 2019-06-14 14:21:45 +09:30
Saxon 70eb8193cb container/mts: wrote BytesForPTSInterval
This function will return the media between two provided PTS. Binary search has been used to
find the corresponding Frames to 'from' and 'to'.
2019-06-14 01:10:00 +09:30
Saxon 12c205d75f container/mts: wrote test for Clip.Bytes and generalised logic for generating frames into genFrames func 2019-06-13 18:12:17 +09:30
Saxon 1323cbcae3 container/mts: filled Clip.Bytes
writing Clip.Bytes required a change to the Clip type. The Clip type now possess a slice that
references the memory in which the Frames should reference for the media. Appropriate changes have
been made to Extract and TestExtract to accomidate this change.
2019-06-13 16:30:39 +09:30
Saxon 8f434e9703 container/mts: added payload_test.go and fixed bugs in Extract 2019-06-13 15:52:25 +09:30
Saxon b473451288 container/mts: added payload.go file with Extract function and types
payload.go has been added which will contain functionality for dealing with MTS
payloads. A function has been added called Extract, which will return a Clip. Clip
is a type representing a sequence of media frames ([]Frame). Type Frame has been
added which represents a media frame. It provides fields to hold the media as
byte slice, PTS to hold the PES timestamp, an ID for identification of codec type
and finally the relevant Meta from the most recent PMT.
2019-06-12 01:17:14 +09:30
Saxon e4bce3bcb3 container/mts: added ExtractMeta function and testing
Added function to extract meta from first PMT found in a mpegts clip. This simply
wraps the logic we've used in vidrecord, i.e. Finding the PMT, converting to a
comcast gots psi.PSIBytesm, using HasDescriptor to get the meta descriptor, and
then mapping metadata. Also added testing.
2019-06-12 01:01:51 +09:30
Saxon 482f5609e5 container/mts/meta: wrote test for GetAllAsMap 2019-06-11 22:15:27 +09:30
Saxon 9af964cfc9 container/mts/meta: added GetAllAsMap function
This function is very similar to GetAll, except that is returns a map[string]string rather
than a [][2]string. It's become apparent that a map[string]string might be more useful in
some circumstances.
2019-06-11 22:07:51 +09:30
Saxon 2640b1b615 Merge branch 'h264-rtp-lexer' 2019-06-07 02:00:41 +09:30
Saxon ce457e1d95 should have been in last commit 2019-06-07 02:00:31 +09:30
Saxon Milton 499a26c09f Merged in h264-rtp-lexer (pull request #202)
codec/h264: added RTPLexer

Approved-by: Alan Noble <anoble@gmail.com>
2019-06-06 16:02:04 +00:00
Saxon fa128d1809 codec/h264: renamed RTPLexer to Extracter
Renamed the RTPLexer to Extracter, renamed NewRTPLexer to NewExtracter and renamed Lex to Extract. Put Extracter and accompanying methods in file extract.go.
Put tests relating to Extracter in extract_test.go.
2019-06-07 01:27:31 +09:30
Saxon Milton 9edf4d5de5 Merged in comment-config (pull request #199)
revid/config.go: better commenting on Config fields.

Approved-by: Alan Noble <anoble@gmail.com>
2019-06-06 03:20:46 +00:00
Saxon 947147b9fd Merge branch 'master' into comment-config 2019-06-06 12:49:52 +09:30
Trek Hopton 0da410166f Merged in adpcm-nonblock (pull request #191)
Changed adpcm to not use blocks

Approved-by: kortschak <dan@kortschak.io>
2019-05-30 11:44:00 +00:00
Saxon aad0c54039 codec/h264/lex_test.go: removed unnecessary conversion 2019-05-30 19:06:50 +09:30
Saxon 20d5f9605f codec/h264/lex.go: checking NAL packet lengths 2019-05-30 19:05:08 +09:30
Saxon 8b7c62602f codec/h264/lex.go: made nalType if statement in RTPLexer.Lex more go like 2019-05-30 18:49:27 +09:30
Trek H 762653b59a adpcm: naming and syntactical changes 2019-05-29 02:57:17 +09:30
Saxon 061b015297 revid/config.go: updated commend for Config's InputCodec field. 2019-05-28 12:37:50 +09:30
Saxon b6e5414c8a revid: fixed merge conflicts 2019-05-27 15:15:26 +09:30
Saxon 1df0d214c9 revid/revid.go: fixed merge conflicts 2019-05-27 15:00:41 +09:30
Saxon Milton 4b74ea3291 Merged in revid-rtsp-camera (pull request #200)
revid: RTSP Camera Input

Approved-by: Alan Noble <anoble@gmail.com>
2019-05-27 05:16:59 +00:00
Saxon 03c45b1bcf protocol/rtcp/parse.go: removed ParseSSRC and checkPacket functions as not required anymore 2019-05-27 14:31:14 +09:30
Saxon 0ee6e86638 codec/h264/lex.go: fixed bug in handleFUA 2019-05-27 14:23:33 +09:30
Saxon 85a5f043c8 codec/h264/lex.go: removed FUIndicatorIdx const in handleFUA 2019-05-27 14:08:44 +09:30
Saxon a39cd31a57 codec/h264/lex.go: added spec link for nal type consts 2019-05-27 14:07:04 +09:30
Saxon 5b970823ef codec/h264/lex_test.go: renamed t to tmp in destination.Write() 2019-05-24 10:41:18 +09:30
Saxon 41f442437d codec/h264/lex_test.go: improve comment for rtpReader struct 2019-05-24 10:40:17 +09:30
Saxon e158101170 codec/h264/lex_test.go: fixed Saxon Nelson-Milton author indentation in file header 2019-05-24 10:38:54 +09:30
Saxon 5dfff61887 codec/h264/lex.go: merge logic for start end packet writing into first if 2019-05-24 10:38:06 +09:30
Saxon 04cd2e66ff codec/h264/lex.go: updated comment for RTPLexer.handleFUA() 2019-05-24 10:36:30 +09:30
Saxon 930c35a154 codec/h264/lex.go: udpated comment for RTPLexer.handleSTAPA 2019-05-24 10:36:00 +09:30
Saxon e1fd6837ef codec/h264/lex.go: updated comment for RTPLexer.Lex() 2019-05-24 10:34:52 +09:30
Saxon b49e65d928 codec/h264/lex.go: commented buffer size consts 2019-05-24 10:33:34 +09:30
Saxon ad241abdfd protocol/rtcp/client.go: fixed missing double quote in comment for Client.SetName() 2019-05-24 10:14:37 +09:30
Saxon 809d904878 revid/revid.go: commented startRTSPCamera 2019-05-23 14:10:09 +09:30
Saxon d7d205a7a9 protocol/rtcp/parse.go: updated comment for ParseTimestamp(...) 2019-05-23 14:07:19 +09:30
Saxon ecc0ab8664 container/mts/encoder.go: updated comment for Encode constants 2019-05-23 14:05:17 +09:30