My problem:
I captured some flv videos with rtmpdump, an example command is this:
rtmpdump -v -r rtmp://aljazeeraflashlivefs.fplive.net/aljazeeraflashlive-live/aljazeera_ara_high -p http://www.elahmad.com/tv/Webtv/Arabian.htm -B 15 -o foo.flv
I realized that not only this command's capture, but all the captures with rtmpdump fails to show the duration when I play the video on a website with flowplayer. This eventually results on failing of streaming, I can not change the playing time.
I did: I tried to open it with Movie Player in Linux and the duration is seen in there.
I also put the video with flvtool2, it failed: flvtool2 -U foo.flv
ERROR: undefined local variable or method 'level' for #
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:102:in read__AMF_object'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:132:in
eval'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:102:in read__AMF_object'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:132:in
read__AMF_data'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:112:in read__AMF_array'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:110:in
step'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:110:in read__AMF_array'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:136:in
read__AMF_data'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:102:in read__AMF_object'
ERROR: /usr/lib/ruby/1.8/flv/amf_string_buffer.rb:132:in
read__AMF_data'
ERROR: /usr/lib/ruby/1.8/flv/meta_tag.rb:40:in after_initialize'
ERROR: /usr/lib/ruby/1.8/flv/tag.rb:56:in
initialize'
ERROR: /usr/lib/ruby/1.8/flv/stream.rb:451:in new'
ERROR: /usr/lib/ruby/1.8/flv/stream.rb:451:in
read_tags'
ERROR: /usr/lib/ruby/1.8/flv/stream.rb:58:in initialize'
ERROR: /usr/lib/ruby/1.8/flvtool2/base.rb:272:in
new'
ERROR: /usr/lib/ruby/1.8/flvtool2/base.rb:272:in open_stream'
ERROR: /usr/lib/ruby/1.8/flvtool2/base.rb:238:in
process_files'
ERROR: /usr/lib/ruby/1.8/flvtool2/base.rb:225:in each'
ERROR: /usr/lib/ruby/1.8/flvtool2/base.rb:225:in
process_files'
ERROR: /usr/lib/ruby/1.8/flvtool2/base.rb:44:in execute!'
ERROR: /usr/lib/ruby/1.8/flvtool2.rb:168:in
execute!'
ERROR: /usr/lib/ruby/1.8/flvtool2.rb:228
ERROR: /usr/bin/flvtool2:2:in `require'
ERROR: /usr/bin/flvtool2:2
Even the metadata seems corrupt. What should I do to fix this duration?
Thanks.
EDIT:
I gave the video to ffmpeg and it recovered:
ffmpeg -i foo.flv bar.flv
However this is only a workaround and i dont get my real answer.