问题描述
我正在制作一个从图库加载和视频的 android 应用程序(使用 Uri),
使用视频的音频数据用于机器学习 1,
并使用视频的静音音频数据用于机器学习 2。
现在我正在尝试拆分引用的数据
https://gist.github.com/ArsalRaza/132a6e99d59aa80b9861ae368bc786d0
但由于未知原因,它似乎不起作用。
我加载视频剪辑的代码是:
vidView?.setVideoURI(uri_vid)
vidView?.setVideoURI(uri_vid)
val Metadata = MediaMetadataRetriever()
Metadata.setDataSource(this,uri_vid)
val vidLength = Metadata.extractMetadata(MediaMetadataRetriever.MetaDATA_KEY_DURATION)
seekbar?.max = vidLength!!.toInt()
set_time(vidLength!!.toInt())
val separator = AudioExtractor()
val extracted_audio = this.filesDir.toString()+"temp_audio.wav"
val extracted_video = this.filesDir.toString()+"temp_video.mp4"
separator.genVideoUsingmuxer(this,uri_vid!!,extracted_audio,true,false)
separator.genVideoUsingmuxer(this,extracted_video,false,true)
//separate_video_and_sound(uri_vid!!)
vidView?.start()
当我加载 2:45 影片剪辑时,日志显示:
V/MediaMetadataRetriever: constructor
V/MediaMetadataRetriever: setDataSource(95,576460752303423487)
V/MediaMetadataRetriever: setDataSource(fd) return(0)
extractMetadata(24)
D/MPEG4Writer: fpathconf _PC_FILESIZEBITS:64
File size limit set to 4503599627370495 bytes implicitly
MP4WtrCtrlHlpLooper Started
I/MPEG4Writer: setStartTimestampus: 0 from Video track
Earliest track starting time: 0
V/MediaMetadataRetriever: destructor
disconnect
V/NuMediaExtractor: NuMediaExtractor destructor
D/AED: Saw input EOS.
D/MPEG4Writer: reset()
V/MediaWriter: Track event err/info msg:101,trackId:1,type:1000,val:-1011
I/MPEG4Writer: normal stop process
D/MPEG4Writer: Video track stopping. Stop source
Video track source stopping
Video track source stopped
I/MPEG4Writer: Received total/0-length (5226/0) buffers and encoded 5226 frames. - Video
D/MPEG4Writer: Video track stopped. Status:0. Stop source
D/MPEG4Writer: 0 chunks are written in the last batch
D/MPEG4Writer: WriterThread stopped. Status:0
I/MPEG4Writer: Adjust the moov start time from 0 us -> 0 us
I/MPEG4Writer: The mp4 file will not be streamable.
MOOV atom was written to the file
D/MPEG4Writer: release()
ftruncate mPreAllocateFileEndOffset:335949544 mOffset:335947773 mMdatEndOffset:335923800 diff:1771
MP4WtrCtrlHlpLooper stopped
Top 5 write durations(microseconds): #1:388 #2:404 #3:510 #4:515 #5:520
reset()
Video track stopping. Stop source
由于日志太长,我只写了一部分。该视频在 VideoView 上播放良好,但我认为分隔符不起作用。我做错了什么吗?还是使用FFMPEG库更聪明?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)