MCPcopy Index your code

hub / github.com/Key-CN/ViewRecord / functions

Functions258 in github.com/Key-CN/ViewRecord

↓ 55 callersMethodi
lib-view-record/src/main/java/io/keyss/view_record/utils/VRLogger.kt:23
↓ 25 callersMethode
lib-view-record/src/main/java/io/keyss/view_record/utils/VRLogger.kt:37
↓ 19 callersMethodd
lib-view-record/src/main/java/io/keyss/view_record/utils/VRLogger.kt:16
↓ 13 callersMethodrelease
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioPostProcessEffect.kt:87
↓ 11 callersMethodgetFormatCodec
()
lib-view-record/src/main/java/io/keyss/view_record/video/FormatVideoEncoder.java:47
↓ 11 callersMethodv
lib-view-record/src/main/java/io/keyss/view_record/utils/VRLogger.kt:9
↓ 8 callersMethodw
lib-view-record/src/main/java/io/keyss/view_record/utils/VRLogger.kt:30
↓ 7 callersMethodonStatusChange
(Status status)
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:47
↓ 7 callersMethodstart
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:79
↓ 6 callersMethodstop
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:132
↓ 5 callersMethodgetBitmapFromView
* @param width 指定宽度,等比例缩放高度 */
lib-view-record/src/main/java/io/keyss/view_record/utils/RecordViewUtil.kt:31
↓ 5 callersMethodstart
lib-view-record/src/main/java/io/keyss/view_record/RecordEncoder.kt:139
↓ 4 callersMethodgetAllEncoders
choose encoder by mime.
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:268
↓ 4 callersMethodgetAllHardwareEncoders
(String mime, boolean cbrPriority)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:198
↓ 4 callersMethodgetAllSoftwareEncoders
(String mime, boolean cbrPriority)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:231
↓ 4 callersMethodinit
()
lib-view-record/src/main/java/io/keyss/view_record/recording/AndroidMuxerRecordController.java:128
↓ 4 callersMethodstop
* 此处stop只是为了停止循环,真正的结束需要在循环的末尾,写入end标识到文件 */
lib-view-record/src/main/java/io/keyss/view_record/RecordEncoder.kt:240
↓ 4 callersMethodtoString
()
lib-view-record/src/main/java/io/keyss/view_record/video/FormatVideoEncoder.java:71
↓ 3 callersMethodgetAllCodecs
(boolean filterBroken)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:182
↓ 3 callersMethodgetPixels
lib-view-record/src/main/java/io/keyss/view_record/utils/EncoderTools.kt:49
↓ 3 callersMethodisCBRModeSupported
(MediaCodecInfo mediaCodecInfo, String mime)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:367
↓ 3 callersMethodisHardwareAccelerated
(MediaCodecInfo codecInfo)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:335
↓ 3 callersMethodisSoftwareOnly
(MediaCodecInfo mediaCodecInfo)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:347
↓ 3 callersMethodsetCallback
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:89
↓ 3 callersMethodtoString
lib-view-record/src/main/java/io/keyss/view_record/base/Frame.kt:44
↓ 2 callersMethoddestroy
lib-view-record/src/main/java/io/keyss/view_record/VideoRecordConfig.kt:51
↓ 2 callersMethodfixTimeStamp
(MediaCodec.BufferInfo info)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:112
↓ 2 callersMethodgetAllDecoders
choose decoder by mime.
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:304
↓ 2 callersMethodgetColorFormat
* 从我打印的capabilitiesForType.colorFormats来看,确实全部都支持:2135033992,另外出现的较多的是COLOR_FormatSurface * 从测试结果看 全部采用COLOR_FormatYUV420Flexible在某些机型上会导致花屏
lib-view-record/src/main/java/io/keyss/view_record/utils/EncoderTools.kt:18
↓ 2 callersMethodgetInputFrame
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:179
↓ 2 callersMethodinitCodec
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:97
↓ 2 callersMethodisKeyFrame
(ByteBuffer videoBuffer)
lib-view-record/src/main/java/io/keyss/view_record/recording/BaseRecordController.java:76
↓ 2 callersMethodnext
lib-view-record/src/main/java/io/keyss/view_record/RecordEncoder.kt:203
↓ 2 callersMethodnext
lib-view-record/src/main/java/io/keyss/view_record/RecordAsyncEncoder.kt:164
↓ 2 callersMethodprepareAudioEncoder
Prepare encoder with custom parameters
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioEncoder.java:55
↓ 2 callersMethodprepareVideoEncoder
(int width, int height, int fps, int bitRate, int iFrameInterval, FormatVideoEncoder formatVideoEncoder)
lib-view-record/src/main/java/io/keyss/view_record/video/VideoEncoder.java:64
↓ 2 callersMethodread
@return Object with size and PCM buffer data
lib-view-record/src/main/java/io/keyss/view_record/audio/MicrophoneManager.java:155
↓ 2 callersMethodreloadCodec
(IllegalStateException e)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:120
↓ 2 callersMethodrestart
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:74
↓ 2 callersMethodsetLastFrameTime
(long lastFrameTime)
lib-view-record/src/main/java/io/keyss/view_record/video/FpsLimiter.java:47
↓ 2 callersMethodstart
lib-view-record/src/main/java/io/keyss/view_record/RecordAsyncEncoder.kt:122
↓ 2 callersMethodstartRecord
(@NonNull String path, @Nullable Listener listener)
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:30
↓ 2 callersMethodstop
Stop and release microphone
lib-view-record/src/main/java/io/keyss/view_record/audio/MicrophoneManager.java:168
↓ 2 callersMethodstopRecord
()
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:34
↓ 2 callersMethodupdateFormat
(MediaCodec.BufferInfo newInfo, MediaCodec.BufferInfo oldInfo)
lib-view-record/src/main/java/io/keyss/view_record/recording/BaseRecordController.java:89
↓ 2 callersMethodwrite
(int track, ByteBuffer byteBuffer, MediaCodec.BufferInfo info)
lib-view-record/src/main/java/io/keyss/view_record/recording/AndroidMuxerRecordController.java:135
↓ 1 callersMethodcalculatePts
(Frame frame, long presentTimeUs)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:181
↓ 1 callersMethodcheckBuffer
(@NonNull ByteBuffer byteBuffer, @NonNull MediaCodec.BufferInfo bufferInfo)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:214
↓ 1 callersMethodcheckCodecPriority
Few devices have codecs that is not working properly in few cases like using AWS MediaLive or YouTube but it is still usable in most of cases. @retur
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:434
↓ 1 callersMethodchooseColorDynamically
mediaCodecList: [2135033992, 19, 21, 20, 39, 2130708361(COLOR_FormatSurface)] 一般2135033992(COLOR_FormatYUV420Flexible)都是支持的,但我目前没有找到合适的转换方法 21对应的是{@li
lib-view-record/src/main/java/io/keyss/view_record/video/VideoEncoder.java:189
↓ 1 callersMethodchooseEncoder
(String mime)
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioEncoder.java:145
↓ 1 callersMethodchooseEncoder
choose the video encoder by mime.
lib-view-record/src/main/java/io/keyss/view_record/video/VideoEncoder.java:273
↓ 1 callersMethodconvertBitmapToYUVByteArray
(Bitmap bitmap, int colorFormat)
lib-view-record/src/main/java/io/keyss/view_record/utils/yuv/ConvertUtil.java:59
↓ 1 callersMethodconvertToYUV420PackedPlanar
Packed先V再U,和非Packed相反 (20)YV12:YYYYYYYYYYYY...VVVVVVVVV...UUUUUUU....
lib-view-record/src/main/java/io/keyss/view_record/utils/yuv/ConvertUtil.java:184
↓ 1 callersMethodconvertToYUV420PackedSemiPlanar
(39)NV21格式,YYYYYYYYY, VU交替存储(VUVUVU...)
lib-view-record/src/main/java/io/keyss/view_record/utils/yuv/ConvertUtil.java:114
↓ 1 callersMethodconvertToYUV420Planar
(19)YV21格式,YUV分量顺序分开存储: YYYYYYYYYYYYYYYY...UUUU...VVVV...
lib-view-record/src/main/java/io/keyss/view_record/utils/yuv/ConvertUtil.java:148
↓ 1 callersMethodconvertToYUV420SemiPlanar
(21)NV12格式,YYYYYYYYY, UV交替存储(UVUVUV...)
lib-view-record/src/main/java/io/keyss/view_record/utils/yuv/ConvertUtil.java:80
↓ 1 callersMethodcreateAsyncCallback
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:251
↓ 1 callersMethodcreateMicrophone
Create audio record
lib-view-record/src/main/java/io/keyss/view_record/audio/MicrophoneManager.java:66
↓ 1 callersMethodenableEchoCanceler
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioPostProcessEffect.kt:51
↓ 1 callersMethodenableNoiseSuppressor
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioPostProcessEffect.kt:69
↓ 1 callersMethodencodeYUV420P
lib-view-record/src/main/java/io/keyss/view_record/utils/ColorFormatUtil.kt:33
↓ 1 callersMethodencodeYUV420PP
lib-view-record/src/main/java/io/keyss/view_record/utils/ColorFormatUtil.kt:83
↓ 1 callersMethodencodeYUV420PSP
lib-view-record/src/main/java/io/keyss/view_record/utils/ColorFormatUtil.kt:58
↓ 1 callersMethodencodeYUV420SP
lib-view-record/src/main/java/io/keyss/view_record/utils/ColorFormatUtil.kt:9
↓ 1 callersMethodfilterBrokenCodecs
Filter broken codecs by name and device model. <p> Note: There is no way to know broken encoders so we will check by name and device. Please add your
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:389
↓ 1 callersMethodformatChanged
(@NonNull MediaCodec mediaCodec, @NonNull MediaFormat mediaFormat)
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioEncoder.java:166
↓ 1 callersMethodgetAacData
lib-view-record/src/main/java/io/keyss/view_record/audio/GetAacData.kt:26
↓ 1 callersMethodgetAllHardwareDecoders
(String mime)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:220
↓ 1 callersMethodgetAllSoftwareDecoders
(String mime)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:254
↓ 1 callersMethodgetFrameData
lib-view-record/src/main/java/io/keyss/view_record/video/IFrameDataGetter.kt:12
↓ 1 callersMethodgetHeight
()
lib-view-record/src/main/java/io/keyss/view_record/video/VideoEncoder.java:242
↓ 1 callersMethodgetInputBufferSize
()
lib-view-record/src/main/java/io/keyss/view_record/audio/MicrophoneManager.java:195
↓ 1 callersMethodgetVideoData
lib-view-record/src/main/java/io/keyss/view_record/video/GetVideoData.kt:26
↓ 1 callersMethodgetWidth
()
lib-view-record/src/main/java/io/keyss/view_record/video/VideoEncoder.java:238
↓ 1 callersMethodinit
()
lib-view-record/src/main/java/io/keyss/view_record/audio/MicrophoneManager.java:130
↓ 1 callersMethodinputAvailable
(@NonNull MediaCodec mediaCodec, int inBufferIndex)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:233
↓ 1 callersMethodinputPCMData
Set custom PCM data. Use it after prepareAudioEncoder(int sampleRate, int channel). Used too with microphone.
lib-view-record/src/main/java/io/keyss/view_record/audio/AudioEncoder.java:139
↓ 1 callersMethodisRunning
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:229
↓ 1 callersMethodisVBRModeSupported
(MediaCodecInfo mediaCodecInfo, String mime)
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:373
↓ 1 callersMethodisValid
For now, none broken codec reported.
lib-view-record/src/main/java/io/keyss/view_record/utils/CodecUtil.java:418
↓ 1 callersMethodlimitFPS
大于0表示需要等待,小于等于0表示不需要等待 @return 返回需要等待的时间
lib-view-record/src/main/java/io/keyss/view_record/video/FpsLimiter.java:37
↓ 1 callersMethodonAudioFormat
lib-view-record/src/main/java/io/keyss/view_record/audio/GetAacData.kt:27
↓ 1 callersMethodonCodecError
lib-view-record/src/main/java/io/keyss/view_record/video/EncoderErrorCallback.kt:25
↓ 1 callersMethodonEncodeError
* @return indicate if should try reset encoder, 编码过程中 input 和 output 报的错 */
lib-view-record/src/main/java/io/keyss/view_record/video/EncoderErrorCallback.kt:30
↓ 1 callersMethodonVideoFormat
lib-view-record/src/main/java/io/keyss/view_record/video/GetVideoData.kt:27
↓ 1 callersMethodoutputAvailable
(@NonNull MediaCodec mediaCodec, int outBufferIndex, @NonNull MediaCodec.Buffe
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:244
↓ 1 callersMethodprocess
lib-view-record/src/main/java/io/keyss/view_record/audio/NoAudioEffect.kt:19
↓ 1 callersMethodprocessInput
这个方法里多处耗时的地方,都要处理终止状态,否则会报个不大不小,毫无影响的异常,就是这个byteBuffer已经不可用了
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:186
↓ 1 callersMethodprocessOutput
(@NonNull ByteBuffer byteBuffer, @NonNull MediaCodec mediaCodec, int outBufferI
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:218
↓ 1 callersMethodrecordAudio
(ByteBuffer audioBuffer, MediaCodec.BufferInfo audioInfo)
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:38
↓ 1 callersMethodrecordVideo
(ByteBuffer videoBuffer, MediaCodec.BufferInfo videoInfo)
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:36
↓ 1 callersMethodreset
()
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:106
↓ 1 callersMethodresetFormats
()
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:44
↓ 1 callersMethodsendBuffer
(@NonNull ByteBuffer byteBuffer, @NonNull MediaCodec.BufferInfo bufferInfo)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:216
↓ 1 callersMethodsetAudioFormat
(MediaFormat audioFormat, boolean isOnlyAudio)
lib-view-record/src/main/java/io/keyss/view_record/recording/RecordController.java:42
↓ 1 callersMethodsetCurrentFrameTime
()
lib-view-record/src/main/java/io/keyss/view_record/video/FpsLimiter.java:43
↓ 1 callersMethodsetEncoderErrorCallback
(EncoderErrorCallback encoderErrorCallback)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:61
↓ 1 callersMethodsetFPS
(int fps)
lib-view-record/src/main/java/io/keyss/view_record/video/FpsLimiter.java:27
↓ 1 callersMethodsetFrameDataGetter
(IFrameDataGetter iFrameDataGetter)
lib-view-record/src/main/java/io/keyss/view_record/base/BaseEncoder.java:65
next →1–100 of 258, ranked by callers