BrettSheleski / comchap

Commercial detection script to add chapters into video file
MIT License
138 stars 26 forks source link

H.264 bitstream malformed, no startcode found #23

Closed andlo closed 6 years ago

andlo commented 6 years ago

I get error like this when I run comcut. The error comes right after comskip is finished and found com's

/usr/local/bin/comcut --comskip=/usr/local/bin/comskip --comskip-ini=/usr/local/etc/comskip.ini --keep-edl --ffmpeg=/usr/bin/ffmpeg /MEDIA/FILM/The\ Maze\ Runner/The\ Maze\ Runner.mkv

[mpegts @ 0x152c680] H.264 bitstream malformed, no startcode found, use the video bitstream filter 'h264_mp4toannexb' to fix it ('-bsf:v h264_mp4toannexb' option with ffmpeg) av_interleaved_write_frame(): Invalid data found when processing input

Any Idea how to fix that ?

BrettSheleski commented 6 years ago

Sounds like it's an issue with the source video stream. You could try running it through ffmpeg first before putting it through comcut and see if that fixes it.

I could see adding a --ffmpeg-options argument to comcut which would just forward any specified options to ffmpeg. Assuming what ffmpeg spat out at you were correct in fixing your issue (adding -bsf:v h264_mp4toannexb' option) it would give you a way to specify that without needing to do any pre-processing.

I probably won't have time to implement that any time soon, but if someone were to make a pull request for this I would merge it in.

andlo commented 6 years ago

Yes I I run ffmpeg first whith -bsf:v h264_mp4toannexb then comcut goes fine, but takes som time though.

I would if I could add --ffmpeg-options argument to comcut but I am not hat good :(

Bu I would be glad if someone did ;)

mjbrowns commented 6 years ago

Actually you can. No need to have a --ffmpeg-options. Just use --ffmpeg. That allows you to put in the path to a non-default ffmpeg command (like if you were using avconv or something), but you can use it to pass parameters to ffmpeg. For example, comchap --ffmpeg="/usr/bin/ffmpeg -opt1 -opt2"

BrettSheleski commented 6 years ago

Nice call @mjbrowns.

andlo commented 6 years ago

Just tryed, but no luck...

Option bsf:v (A comma-separated list of bitstream filters) cannot be applied to input url /MEDIA/FILM/Tokarev/Tokarev 2018-02-24.mkv -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to.
Error parsing options for input file /MEDIA/FILM/Tokarev/Tokarev 2018-02-24.mkv.
Error opening input files: Invalid argument