Maddox, I love your work on Wallop and it has caused me to explore ffmpeg and its streaming capabilities. I also had to learn a bit about ruby, home-brew etc. Thanks for the effort you have put into this. The streams I get are usable, but with some issues. Even after letting them line out for a minute or two, I still have issues and am trying to find out what can be done to get smooth HD video (720 p would be OK).
I am using ffmpeg 2.2.2 and have tried different versions of x264.rb as your vendor file does not have a copy. What do you suggest as the best source for x264.rb as the versions do vary greatly?
I get choppy video or stutter and pixilation several times per minute. I am on a desktop Mac with ethernet connection to the HDHomeRun. I am using a quad core i5 running at 3.4 Ghz and 16 GB of Ram.
So my issue seems to be software and not hardware related. Here is a small segment of the ffmpeg log file:
[mpeg2video @ 0x7f9c0a81d200] Invalid frame dimensions 0x0.
Last message repeated 18 times
[mpegts @ 0x7f9c0a017800] Could not find codec parameters for stream 2 (Unknown: none ([134][0][0][0] / 0x0086)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 0x7f9c0a017800] PES packet size mismatch
[ac3 @ 0x7f9c0a81d800] exponent out-of-range
[ac3 @ 0x7f9c0a81d800] error decoding the audio block
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 7 51
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 37 52
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 53
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 10 54
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 55
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 56
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 57
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 58
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 39 59
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 16 60
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 18 61
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 1 62
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 48 63
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 13 65
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 25 66
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 18 49
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 17 23
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 16 25
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 20 26
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 27
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 4 28
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 23 29
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 31 30
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 10 31
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 38 32
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 33
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 12 35
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 36
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 37
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 38
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 39
[mpeg2video @ 0x7f9c0a81d200] slice mismatch
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 41
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 42
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 7 43
[mpeg2video @ 0x7f9c0a81d200] invalid cbp 0 at 8 44
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 24 45
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 3 46
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 47
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 4 48
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 0 49
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 15 50
[mpeg2video @ 0x7f9c0a81d200] Warning MVs not available
[ac3 @ 0x7f9c0a81d800] frame sync error
Error while decoding stream #0:1: Invalid data found when processing input
[mpegts @ 0x7f9c0a017800] PES packet size mismatch
[ac3 @ 0x7f9c0a81d800] bandwidth code = 62 > 60
[ac3 @ 0x7f9c0a81d800] error decoding the audio block
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 34
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 35
[mpeg2video @ 0x7f9c0a81d200] skip with previntra
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 37
[mpeg2video @ 0x7f9c0a81d200] skip with previntra
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 38
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 14 52
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 6 39
[mpeg2video @ 0x7f9c0a81d200] skip with previntra
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 7 40
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 9 54
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 14 41
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 9 55
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 42
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 7 56
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 15 43
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 57
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 33 44
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 28 45
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 59
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in B Frame at 19 46
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in B Frame at 3 61
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 47
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 18 62
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 6 48
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 63
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 12 49
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 6 50
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 7 65
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 25 66
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 87 26
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 11
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 12
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 13
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 14
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 15
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 9 16
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 2 17
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 18
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 19
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 20
[mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 21
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 11 22
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 11 23
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 33 24
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 25
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 26
[mpeg2video @ 0x7f9c0a81d200] mb incr damaged
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 27 28
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 29
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 26 30
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 28 31
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 4 32
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 12 33
[ac3 @ 0x7f9c0a81d800] frame sync error
Error while decoding stream #0:1: Invalid data found when processing input
[mpegts @ 0x7f9c0a017800] PES packet size mismatch
[ac3 @ 0x7f9c0a81d800] frame sync error
Error while decoding stream #0:1: Invalid data found when processing input
[mpeg2video @ 0x7f9c0a81d200] invalid mb type in B Frame at 10 51
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 28 52
[mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 8 53
Maddox, I love your work on Wallop and it has caused me to explore ffmpeg and its streaming capabilities. I also had to learn a bit about ruby, home-brew etc. Thanks for the effort you have put into this. The streams I get are usable, but with some issues. Even after letting them line out for a minute or two, I still have issues and am trying to find out what can be done to get smooth HD video (720 p would be OK).
I am using ffmpeg 2.2.2 and have tried different versions of x264.rb as your vendor file does not have a copy. What do you suggest as the best source for x264.rb as the versions do vary greatly?
I get choppy video or stutter and pixilation several times per minute. I am on a desktop Mac with ethernet connection to the HDHomeRun. I am using a quad core i5 running at 3.4 Ghz and 16 GB of Ram.
So my issue seems to be software and not hardware related. Here is a small segment of the ffmpeg log file:
[mpeg2video @ 0x7f9c0a81d200] Invalid frame dimensions 0x0. Last message repeated 18 times [mpegts @ 0x7f9c0a017800] Could not find codec parameters for stream 2 (Unknown: none ([134][0][0][0] / 0x0086)): unknown codec Consider increasing the value for the 'analyzeduration' and 'probesize' options [mpegts @ 0x7f9c0a017800] PES packet size mismatch [ac3 @ 0x7f9c0a81d800] exponent out-of-range [ac3 @ 0x7f9c0a81d800] error decoding the audio block [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 7 51 [mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 37 52 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 53 [mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 10 54 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 55 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 56 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 57 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 58 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 39 59 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 16 60 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 18 61 [mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 1 62 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 48 63 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 13 65 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 25 66 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 18 49 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 17 23 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 16 25 [mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 20 26 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 27 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 4 28 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 23 29 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 31 30 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 10 31 [mpeg2video @ 0x7f9c0a81d200] invalid mb type in P Frame at 38 32 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 33 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 12 35 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 36 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 37 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 38 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 39 [mpeg2video @ 0x7f9c0a81d200] slice mismatch [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 41 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 42 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 7 43 [mpeg2video @ 0x7f9c0a81d200] invalid cbp 0 at 8 44 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 24 45 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 3 46 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 1 47 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 4 48 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 0 49 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 15 50 [mpeg2video @ 0x7f9c0a81d200] Warning MVs not available [ac3 @ 0x7f9c0a81d800] frame sync error Error while decoding stream #0:1: Invalid data found when processing input [mpegts @ 0x7f9c0a017800] PES packet size mismatch [ac3 @ 0x7f9c0a81d800] bandwidth code = 62 > 60 [ac3 @ 0x7f9c0a81d800] error decoding the audio block [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 34 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 35 [mpeg2video @ 0x7f9c0a81d200] skip with previntra [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 37 [mpeg2video @ 0x7f9c0a81d200] skip with previntra [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 38 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 14 52 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 6 39 [mpeg2video @ 0x7f9c0a81d200] skip with previntra [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 7 40 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 9 54 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 14 41 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 9 55 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 42 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 7 56 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 15 43 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 57 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 33 44 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 28 45 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 59 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] invalid mb type in B Frame at 19 46 [mpeg2video @ 0x7f9c0a81d200] invalid mb type in B Frame at 3 61 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 47 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 18 62 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 6 48 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 63 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 12 49 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 6 50 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 7 65 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 25 66 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 87 26 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 11 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 12 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 5 13 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 14 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 15 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 9 16 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 2 17 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 18 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 19 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 20 [mpeg2video @ 0x7f9c0a81d200] ac-tex damaged at 0 21 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 11 22 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 11 23 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 33 24 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 1 25 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 2 26 [mpeg2video @ 0x7f9c0a81d200] mb incr damaged [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 27 28 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 3 29 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 26 30 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 28 31 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 4 32 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 12 33 [ac3 @ 0x7f9c0a81d800] frame sync error Error while decoding stream #0:1: Invalid data found when processing input [mpegts @ 0x7f9c0a017800] PES packet size mismatch [ac3 @ 0x7f9c0a81d800] frame sync error Error while decoding stream #0:1: Invalid data found when processing input [mpeg2video @ 0x7f9c0a81d200] invalid mb type in B Frame at 10 51 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 28 52 [mpeg2video @ 0x7f9c0a81d200] 00 motion_type at 8 53