Commit Graph

154 Commits

Author SHA1 Message Date
Saxon 529ca0d547 codec/h264/extract.go: simplified switch 2019-10-23 14:38:18 +10:30
Saxon 38cfad7b67 revid: fixing some more bugs
Fixed H264 RTP extractor. Fine tuned some timing regarding geovision setup. Added some more
logging to geovision setup.
2019-10-23 12:48:22 +10:30
Saxon f336a03d7a revid: general bug fixing
Use http instead of https in gvctrl getLogin request. Gave RTP client a close method so that the conn can
be closed after we're done with the client. Put timeout on reading from the RTP client PacketConn so that
we don't hang on the ReadFrom call if the conn is closed. Closing the RTSP and RTP clients when
startRTSPCamera is returned.
2019-10-22 23:04:33 +10:30
Saxon 9087f727db codec/h264/extract_test.go: fixed testing for extractor 2019-10-07 16:12:30 +10:30
Saxon fc4e88bce6 fixed bugs causing problems with GeoVision H264 RTMP to youtube streaming.
Two fixes were involved, firstly, access unit delimeters were used to denote access units and the Write timeout on rtmpSender's ringBuffer was
increased to stop the 'unable to dump old write' errors. Also made some small changes elsewhere that should fix future issues, particular with
MTS output.
2019-10-07 14:18:20 +10:30
Saxon Milton f8f78947f9 Merged in picture-order-count (pull request #249)
codec/h264/h264dec/decode.go: decoding process for picture order count

Approved-by: Alan Noble <anoble@gmail.com>
2019-09-20 02:37:33 +00:00
Saxon Milton 1fba7556dd Merged in total-coeff-and-trailing-ones (pull request #243)
codec/h264/h264dec: parsing process for TotalCoeff and TrailingOnes

Approved-by: Alan Noble <anoble@gmail.com>
2019-09-20 00:38:58 +00:00
Saxon 4c7f36ee36 codec/h264/h264dec/decode.go: slightly simplified if-else statements regarding BottomField and FieldPic 2019-09-18 19:41:32 +09:30
Saxon 117a75ae55 codec/h264/h264dec: simplified logic where there are things applicable to non-IDRs, which we don't handle yet. 2019-09-16 22:07:57 +09:30
Saxon 89452d55d3 codec/h264/h264dec/cavlc.go: simplified logic in loop to count leading zeros in formCoeffTokenMap 2019-09-13 11:21:00 +09:30
Saxon ecdaab175b codec/h264/parse.go: skip over access unit delimiters when getting nalType 2019-09-11 09:47:37 +09:30
Saxon 5939db6f1b codec/h264/h264dec/decode.go: using if else structures for topFieldOrderCnt/bottomFieldOrderCnt value derivations in decodePicOrderCntType2 2019-09-10 12:12:08 +09:30
Saxon 40fa50d4f0 codec/h264/h264dec/decode.go: using if else structure for derivation of topFieldOrderCnt and bottomFieldOrderCnt in decodePicOrderCntType1 function 2019-09-10 12:06:35 +09:30
Saxon 0df182018a codec/h264/h264dec/decode.go: using else if structure instead of switch to derive value of vid.picOrderCntMsb 2019-09-10 11:32:46 +09:30
Saxon 88857ec5b9 codec/h264/h264dec/cavlc.go: fixed error message that's returned on failure to read coeffTokenTable string 2019-09-10 11:22:25 +09:30
Saxon 445649311b codec/h264/h264dec/cavlc.go: added process to comgine level and run information 2019-09-09 17:05:22 +09:30
Saxon 05e16ec260 codec/h264/h2646dec/cavlc.go: fixed build error caused by rebase 2019-09-09 16:48:10 +09:30
Saxon d78ca2d2d2 codec/h264/h264dec/cavlctab.go: commented const string representation of table 9-5. 2019-09-09 16:41:26 +09:30
Saxon 42a1918c0d codec/h264/h264dec: using const string instead of CSV file to hold table 9-5. Also made some other minor improvements 2019-09-09 16:41:26 +09:30
Saxon 92eb3e85a5 codec/h264/h264dec: created tokenMap type to make things more readable 2019-09-09 16:41:26 +09:30
Saxon 8316a621b9 codec/h264/h264dec/cavlc.go: fix comment inside parseTotalCoeffAndTrailingOnes 2019-09-09 16:41:26 +09:30
Saxon 4aa71e901c codec/h264/h264dec: put function parameters on one line for parseTotalCoeffAndTrailingOnes 2019-09-09 16:41:26 +09:30
Saxon 61a5065556 codec/h264/h264dec: added functions to get TrailingOnes and TotalCoeff as well as testing
The functions firstly derive the value of nC and then read the value of coeff_token from the BitReader. The table read prior and loaded into
a 'map' is then used to get the corresponding values of TrailingOnes and TotalCoef.
2019-09-09 16:41:26 +09:30
Saxon ee9281925e codec/h264/h264dec: added functions for loading table 9-5 CSV into [nColumns]map[int]map[int][2]int with testing 2019-09-09 16:41:26 +09:30
Saxon e614633cbd codec/h264/h264dec: added CSV representation of table 9-5 from H.264 specifications 2019-09-09 16:40:42 +09:30
Saxon 245edafa68 codec/h264/h264dec: added binToInt function and test
This function will convert binary provided as a string and return as int.
2019-09-09 16:40:42 +09:30
Saxon Milton 614f42ec2c Merged in level-information (pull request #245)
codec/h264/h264dec: add function for parsing level information using process in section 9.2.2 of specifications

Approved-by: Alan Noble <anoble@gmail.com>
2019-09-09 06:56:59 +00:00
Saxon 31179205b9 codec/h264/264dec/decode.go: added decodePicOrderCnt to return topFieldOrderCnt and bottomFieldOrderCnt based on picOrderCntType
Also added placeholder for a general 'decode' function.
2019-09-09 16:18:39 +09:30
Saxon c0be9b1910 codec/h264/h264dec/decode.go: added picOrderCntType2 to derive topfieldOrderCnt and bottomFieldOrderCnt for when picOrderCntType == 2 2019-09-09 13:26:46 +09:30
Saxon 43118814fb codec/h264/h264dec/decode.go: added picOrderCntType1 to derive topfieldOrderCnt and bottomFieldOrderCnt for when picOrderCntType == 1 2019-09-09 13:03:11 +09:30
Saxon d92e0bfb5e codec/h264/h264dec/decode.go: wrote function picOrderCntType0 to handle derivation of TopFieldOrderCnt and BottomFieldOrderCnt when pic_order_cnt_type == 0 2019-09-09 11:59:41 +09:30
Saxon fbb98095a0 codec/h264/h264dec: embedded SliceHeader and SliceData into Slice type, and embedded SPS and PPS into VideoStream type 2019-09-09 11:08:48 +09:30
Saxon 46e7f9d303 codec/h264/h264dec/cavlc.go: simplified some logic regarding appending of values onto levelVal based on trailing_ones_sign_flag 2019-09-09 09:11:50 +09:30
Saxon 1eb1d10ac4 codec/h264/h2646dec: added decode.go file to hold slice decoding functionality 2019-09-08 14:09:08 +09:30
Saxon 960d41cb4f codec/h264/h264dec/cavlc.go: removed redundant if checks in parseLevelInformation 2019-09-08 13:31:10 +09:30
Saxon ce803ba488 codec/h264/h264dec: add function for parsing level information using process in section 9.2.2 of specifications 2019-09-06 17:45:23 +09:30
Saxon 838d5dd5d6 codec/h264/h264dec: added level_prefix parsing process and test 2019-08-28 10:09:27 +09:30
Saxon Milton 7f3f1a43f9 Merged in refresh-period (pull request #240)
revid: now have MinPeriod and ClipDuration params

Approved-by: Alan Noble <anoble@gmail.com>
2019-08-28 00:06:03 +00:00
Saxon 132059d26e codec/h264/h264dec/cabac.go: added binarization process for coded block pattern 2019-08-26 16:35:06 +09:30
Saxon d4fe1498f5 codec/h264/h264dec: moved CABAC encoding related stuff to cabacenc.go and cabacenc_test.go and corrected function names 2019-08-26 16:01:48 +09:30
Saxon b9cd6b3f13 container/mts/encoder.go: using NALTypeSPS from h264dec package 2019-08-26 09:24:18 +09:30
Saxon 817cc86a34 revid: now have MinPeriod and ClipDuration params
This change included a rename of IntraRefreshPeriod to MinPeriod, and the addition of the ClipDuration param. PSI are now written before IDR. Clips are no longer outputed
based on PSI but rather a time ClipDuration, where ClipDuration >= MinPeriod, however, PSI must still be at the beginning of each clip. Also created functionality to update
meta time even if we don't have a response to update.
2019-08-25 20:42:01 +09:30
Saxon Milton 7ab8fd9e87 Merged in nalunit-test (pull request #224)
codec/h264/h264dec: added NAL unit parsing tests

Approved-by: Alan Noble <anoble@gmail.com>
2019-08-20 03:23:17 +00:00
Saxon Milton 13490e0145 Merged in slice-testing (pull request #225)
codec/h264/h264dec: added some testing for parsing found in slice.go

Approved-by: Alan Noble <anoble@gmail.com>
2019-08-20 02:53:00 +00:00
Saxon 0f35786d06 codec/h264/h264dec/slice_test.go: added license information to file header 2019-08-20 12:06:11 +09:30
Saxon bdcd340802 codec/h264/h264dec/slice_test.go: removed redundant comment 2019-08-20 12:02:39 +09:30
Saxon 27d8d0992c codec/h264/h264dec/slice.go: made corrections to file header 2019-08-20 11:56:42 +09:30
Saxon dab94f6ae2 codec/h264/h264dec: addressing PR feedback.
Updated comment. Put a space between file header and package declaration. Not dereferencing things
2019-08-20 11:39:12 +09:30
Saxon Milton e7f36162b1 codec/h264/h264dec/cabac_test.go: fixed indentation of Shawn's name in file header 2019-08-19 23:43:28 +00:00
Saxon Milton 2735f99f9c codec/h264/h264dec/cabac.go: fixed indentation of Shawn's name in file header 2019-08-19 23:41:56 +00:00