Audio/video stream recording forums (http://stream-recorder.com/forum/index.php)
-   rtmpdump (http://stream-recorder.com/forum/forumdisplay.php?f=54)
-   -  

FLV fixer script

(http://stream-recorder.com/forum/showthread.php?t=12722)

PayNow 07-24-2012 05:43 AM

Re: FLV fixer script


 
KSV do u have any script for fix live stream audio is not sync for video.

Elgero 07-24-2012 08:30 AM

Re: FLV fixer script


 
Quote:

Originally Posted by KSV (Post 49731)
IMO trying to add editing capabilities (sort of) to this script is out of scope for it's intended purpose though you are free to play around with your copy.

I can modify the script to extract the parts I need, that's not the problem, but I don't know how to modify the timestamps. The timestamps of the first part are fixed correctly, but the start time of the second part does not 'connect' to the end time of the first part.

If the first part is one minute long, then the timestamp of the last video frame is 1:00.724, this is correct, but the timestamp of the first video frame of the second part starts with 5:37.141.

I don't know if there's a fairly easy fix for that or if a large part of the script needs to be rewritten, which is not worth it.

KSV 07-24-2012 12:16 PM

Re: FLV fixer script


 
Quote:

Originally Posted by Elgero (Post 49752)
I don't know if there's a fairly easy fix for that or if a large part of the script needs to be rewritten, which is not worth it.

without actually trying to make it do so i can't say for sure but it may be a bit tricky. $baseTS value should be updated with new starting timestamp for correct rebasing.

Bahman 08-07-2012 12:49 PM

Re: FLV fixer script


 
KSV, Can you please add trim option in this script?

KSV 08-08-2012 07:42 AM

Re: FLV fixer script


 
Quote:

Originally Posted by Bahman (Post 50807)
KSV, Can you please add trim option in this script?

trimming what?

Bahman 08-08-2012 10:01 AM

Re: FLV fixer script


 
Trimming Video! For example, I give it a duration or imputing a value that trim from a time to another time! like start and stop of rtmpdump!

Elgero 12-18-2012 02:24 PM

Re: FLV fixer script


 
KSV is there any way you can modify the script to fix the videos from MyFreeCams.com, Naked.com and Cams.com?

These websites deliberately put a random wrong timestamp in the video after 2/10th of a second, so most video players are not able to play the recorded videos properly. VLC can play them, but most other video players play only those first 2/10th of a second.

The only frames with the correct timestamp are the keyframes.


svnpenn2 12-18-2012 06:03 PM

Re: FLV fixer script


 
Quote:

Originally Posted by Elgero
These websites deliberately put a random wrong timestamp in the video after 2/10th of a second, so most video players are not able to play the recorded videos properly. VLC can play them, but most other video players play only those first 2/10th of a second.

Upload sample video, I may have answer.

Elgero 12-18-2012 06:29 PM

Re: FLV fixer script


 
Here's a small sample video.

<sample video deleted>

svnpenn2 12-18-2012 07:41 PM

Re: FLV fixer script


 
I could be wrong but it appears you can fix this by simply remuxing with FFmpeg

Code:

$ ffmpeg -i sample.flv -c copy a.flv
ffmpeg version N-47062-g26c531c Copyright (c) 2000-2012 the FFmpeg developers
  built on Nov 25 2012 12:25:21 with gcc 4.7.2 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-pthreads --enable-runt
ime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libass -
-enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libfreetype --enab
le-libgsm --enable-libmp3lame --enable-libnut --enable-libopenjpeg --enable-libo
pus --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheo
ra --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-li
bvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --ena
ble-zlib
  libavutil      52.  9.100 / 52.  9.100
  libavcodec    54. 77.100 / 54. 77.100
  libavformat    54. 37.100 / 54. 37.100
  libavdevice    54.  3.100 / 54.  3.100
  libavfilter    3. 23.102 /  3. 23.102
  libswscale      2.  1.102 /  2.  1.102
  libswresample  0. 17.101 /  0. 17.101
  libpostproc    52.  2.100 / 52.  2.100
[flv @ 000000000032dd60] DTS discontinuity in stream 0: packet 6 with DTS 129, p
acket 7 with DTS 420679
Input #0, flv, from 'sample.flv':
  Duration: 00:08:38.21, start: 0.000000, bitrate: 282 kb/s
    Stream #0:0: Video: flv1, yuv420p, 480x360, 1k tbr, 1k tbn, 1k tbc
    Stream #0:1: Audio: nellymoser, 22050 Hz, mono, flt
Output #0, flv, to 'a.flv':
  Metadata:
    encoder        : Lavf54.37.100
    Stream #0:0: Video: flv1 ([2][0][0][0] / 0x0002), yuv420p, 480x360, q=2-31,
1k tbn, 1k tbc
    Stream #0:1: Audio: nellymoser ([6][0][0][0] / 0x0006), 22050 Hz, mono
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[flv @ 0000000003f102e0] st:0 PTS: 743 DTS: 743 < 421128 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 1757 DTS: 1757 < 422167 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 2784 DTS: 2784 < 423187 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 3803 DTS: 3803 < 424206 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 4791 DTS: 4791 < 425197 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 5806 DTS: 5806 < 426210 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 6828 DTS: 6828 < 427229 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 7862 DTS: 7862 < 428260 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 8883 DTS: 8883 < 429289 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 9902 DTS: 9902 < 430284 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 10896 DTS: 10896 < 431298 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 11914 DTS: 11914 < 432317 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 12936 DTS: 12936 < 433337 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 13928 DTS: 13928 < 434333 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 14962 DTS: 14962 < 435351 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 15985 DTS: 15985 < 436374 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 17002 DTS: 17002 < 437407 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 18030 DTS: 18030 < 438434 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 19045 DTS: 19045 < 439451 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 20064 DTS: 20064 < 440469 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 21054 DTS: 21054 < 441456 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 22122 DTS: 22122 < 442511 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 23114 DTS: 23114 < 443502 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 24165 DTS: 24165 < 444540 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 25149 DTS: 25149 < 445562 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 26145 DTS: 26145 < 446549 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 27165 DTS: 27165 < 447569 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 28186 DTS: 28186 < 448591 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 29233 DTS: 29233 < 449577 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 30194 DTS: 30194 < 450632 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 31256 DTS: 31256 < 451636 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 32244 DTS: 32244 < 452656 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 33271 DTS: 33271 < 453675 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 34283 DTS: 34283 < 454689 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 35275 DTS: 35275 < 455675 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 36297 DTS: 36297 < 456700 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 37315 DTS: 37315 < 457718 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 38349 DTS: 38349 < 458714 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 39343 DTS: 39343 < 459747 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 40360 DTS: 40360 < 460767 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 41387 DTS: 41387 < 461791 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 42411 DTS: 42411 < 462846 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 43430 DTS: 43430 < 463834 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 44445 DTS: 44445 < 464823 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 45436 DTS: 45436 < 465840 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 46473 DTS: 46473 < 466878 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 47490 DTS: 47490 < 467917 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 48521 DTS: 48521 < 468965 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 49536 DTS: 49536 < 469938 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 50527 DTS: 50527 < 470928 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 51548 DTS: 51548 < 471961 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 52641 DTS: 52641 < 473061 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 53664 DTS: 53664 < 474068 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 54655 DTS: 54655 < 475061 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 55672 DTS: 55672 < 476074 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 56700 DTS: 56700 < 477101 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 57717 DTS: 57717 < 478119 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 58769 DTS: 58769 < 479113 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 59735 DTS: 59735 < 480123 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 60733 DTS: 60733 < 481119 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 61780 DTS: 61780 < 482163 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 62765 DTS: 62765 < 483180 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 63795 DTS: 63795 < 484196 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 64840 DTS: 64840 < 485245 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 65806 DTS: 65806 < 486209 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 66819 DTS: 66819 < 487225 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 67812 DTS: 67812 < 488217 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 68844 DTS: 68844 < 489246 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 69863 DTS: 69863 < 490298 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 70920 DTS: 70920 < 491294 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 71908 DTS: 71908 < 492314 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 72900 DTS: 72900 < 493305 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 73922 DTS: 73922 < 494325 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 74943 DTS: 74943 < 495345 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 75971 DTS: 75971 < 496361 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 76960 DTS: 76960 < 497350 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 77982 DTS: 77982 < 498419 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 79002 DTS: 79002 < 499380 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 79992 DTS: 79992 < 500428 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 81046 DTS: 81046 < 501456 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 82062 DTS: 82062 < 502441 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 83052 DTS: 83052 < 503464 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 84097 DTS: 84097 < 504499 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 85116 DTS: 85116 < 505518 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 86133 DTS: 86133 < 506534 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 87157 DTS: 87157 < 507555 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 88144 DTS: 88144 < 508578 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 89134 DTS: 89134 < 509539 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 90145 DTS: 90145 < 510560 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 91189 DTS: 91189 < 511605 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 92210 DTS: 92210 < 512614 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 93222 DTS: 93222 < 513626 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 94221 DTS: 94221 < 514625 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 95233 DTS: 95233 < 515637 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 96288 DTS: 96288 < 516692 invalid, clipping
[flv @ 0000000003f102e0] st:0 PTS: 97282 DTS: 97282 < 517685 invalid, clipping
frame= 1448 fps=0.0 q=-1.0 Lsize=  17887kB time=00:08:38.22 bitrate= 282.8kbits
/s
video:17305kB audio:526kB subtitle:0 global headers:0kB muxing overhead 0.313095
%



All times are GMT -6. The time now is 10:23 AM.