pyTivo Discussion Forum Forum Index pyTivo Discussion Forum
Answers and the development of pyTivo a TiVo transcoding server
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Rdian06's Ffmpeg Builds
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next
 
Post new topic   Reply to topic    pyTivo Discussion Forum Forum Index -> Support
 View previous topic :: View next topic  
Author Message
Iluvatar



Joined: 29 Feb 2008
Posts: 335

PostPosted: Sun Nov 09, 2008 9:19 pm    Post subject: Reply with quote

rdian06 wrote:
I think I know what you're talking about.

Was it something like:

Code:

[NULL @ 016361A0]error, non monotone timestamps 3632 >= 2412
av_interleaved_write_frame(): Error while opening file


I've been getting that error sometimes when I try to convert mkv's to mp4's.

It appears to happen because of the -copyts flag. Apparently the timestamps in the source have discontinuities that ffmpeg is detecting and erroring out on. Encoding to AC3 and libfaac both show the error so I think it's independent of the sound stream format.

None of the patches I applied to the trunk source have anything to do with that code so it must stem from one of the ffmpeg developer changes. I'll go through the ffmpeg trunk change history this weekend and see if I can pin point the change that introduced the problem.


I am still seeing this on many of the mp4/h264 videos that I have been downloading even with your updated build. Have you had any progress in figuring out if this can be dealt with/fixed?

I used a newer build from the Tripp's FFMPEG site you referenced in the first post and was able to get about 15 minutes further into the video than with your build before it died. Maybe something changed or was worked on in the FFMPEG source to modify the behavior.

Also I am uncertain if you have seen this behavior before but I am seeing on your build with a particular mp4 file that when I try to transcode it FFMPEG will gradually spawn multiple processes every 30 seconds or so and lockup my computer in the process. I am unable to obtain an error before the command window starts scrolling really fast. There are no errors in Debug log just lots of transcode request commands (that spawn all the extra ffmpeg processes).
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Mon Nov 10, 2008 4:08 am    Post subject: Reply with quote

Try the build from this post:

http://pytivo.krkeegan.com/post3687.html#3687

I disabled the monotone check completely in that build so that wgw could test with his problem sources and after reading some developer comments that the test they use is incorrect (i.e. presentation timestamps are allowed to be out of order within a block, it's the display timestamps that aren't and the check is not taking that into account.)

As for the spawning multiple ffmpeg's and locking up the computer, I've never had that happen.

Hoping to get some time to put together new builds and finish up the x86 Mac ones this week.
Back to top
View user's profile Send private message
Iluvatar



Joined: 29 Feb 2008
Posts: 335

PostPosted: Mon Nov 10, 2008 11:42 am    Post subject: Reply with quote

That would be the build I have used and am still getting the monotone errors on a few h264 mp4 vids. Although it happens much more rarely now though, as other videos such as mkv's that produced the error are no longer doing it at all. The only thing I can do right now is download a different version of the same video. Thanks for all your efforts in these builds. It is much appreciated.
Back to top
View user's profile Send private message
ercdvs



Joined: 11 Nov 2008
Posts: 8

PostPosted: Tue Nov 11, 2008 3:15 pm    Post subject: Reply with quote

Out of curiosity, since i always build my own ffmpeg.. what is the fix for the channel mapping switch?

Its been driving me nuts with my own manual encoding, but I haven't done any extensive testing on pyTivo transfers to see if its still present. Its almost caused me to abandon ffmpeg for mencoder to remap channels during encoding.
Back to top
View user's profile Send private message
stevetony



Joined: 06 Jun 2008
Posts: 16

PostPosted: Mon Dec 22, 2008 7:17 pm    Post subject: What do I do with this executable? Reply with quote

I'm on Windows, and the zip contains an executable, ffmpeg.exe. However, the C:\Program Files\pyTivo\plugins\video directory has ffmpeg_mp2.exe in it and no ffmpeg.exe. Does it go somewhere else? Does one replace the other, do I just add the new one to the directory? I'm not sure what the procedure is here.

Any help appreciated, thanks!
Back to top
View user's profile Send private message
wmcbrine



Joined: 04 Jan 2008
Posts: 2009
Location: Maryland

PostPosted: Tue Dec 23, 2008 6:36 am    Post subject: Reply with quote

The difference in names is of no import. They're both ffmpeg. Just make sure your pyTivo.conf points to the one you want to use.

I believe the "_mp2" was originally there to indicate that it supported MPEG-I Layer 2 audio, which I guess wasn't (isn't?) standard in ffmpeg builds at one time. (?)

_________________
My pyTivo fork . My page
Back to top
View user's profile Send private message Visit poster's website
lordbah



Joined: 22 Feb 2009
Posts: 1

PostPosted: Mon Feb 23, 2009 2:53 am    Post subject: Reply with quote

Iluvatar wrote:

Also I am uncertain if you have seen this behavior before but I am seeing on your build with a particular mp4 file that when I try to transcode it FFMPEG will gradually spawn multiple processes every 30 seconds or so and lockup my computer in the process. I am unable to obtain an error before the command window starts scrolling really fast. There are no errors in Debug log just lots of transcode request commands (that spawn all the extra ffmpeg processes).


I see this from time to time. Multiple ffmpeg processes are spawned, all trying to transcode the same .mp4 file with the same parameters. It consumes all memory on the system and pretty much locks it up.

This is on Ubuntu 8.04. I'd say what version of pyTivo I'm running, but ... I can't seem to figure out how to determine that ...
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Thu Feb 26, 2009 5:26 am    Post subject: Reply with quote

Thats a process control issue in the pyTivo code I think. When ffmpeg can't handle the video, pyTivo doesn't detect it correctly and keeps trying to restart it without properly killing the previous instance.
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Thu Feb 26, 2009 5:29 am    Post subject: Reply with quote

Trying to build a new ffmpeg using the latest SVN is proving a daunting task. The latest SVNs what a MinGW runtime of 3.15 or higher and Win API 3.12 or higher, meaning I have to upgrade my whole build environment plus recompile a bunch of libraries rather than just using Gianluigi Tiesi pre-built stuff.

At least I'll learn a bunch of stuff in the process...
Back to top
View user's profile Send private message
KevinSartori



Joined: 08 Feb 2009
Posts: 27

PostPosted: Fri Mar 13, 2009 2:31 pm    Post subject: Reply with quote

rdian06, will we be seeing a new build from you based on ffmpeg 0.5? I'm curious, do you still have to implement the 5.1 audio fix or was that fixed on their end?
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Fri Mar 13, 2009 2:55 pm    Post subject: Reply with quote

I'm not sure. I haven't had time to try it.

Also, my wife is rearranging our house so my 5.1 setup is currently in storage so testing is going to take me a while.

Sorry. I'll get to it eventually, but there isn't anything really pressing at the moment since the 96 build from a few posts up seems to work decently.
Back to top
View user's profile Send private message
elsteve



Joined: 28 Mar 2009
Posts: 3

PostPosted: Sat Mar 28, 2009 8:27 am    Post subject: Reply with quote

I there a 96 build for linux (Ubuntu8.1) floating around somewhere? If not, I'd be happy to compile my own if you could point me towards sources...

Thanks!
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Thu Jun 25, 2009 5:19 pm    Post subject: Reply with quote

Archived - Windows

* ffmpeg-SVN-r18820-rdian06-0.97-win32-x86_32.zip (Download below.)
- Compiled 2009-05-15 00:18:12
- Based on ffmpeg trunk
- Drop libvorbis in favor of ffmpeg native Vorbis encoder
- Drop libfaad in favor of ffmpeg native AAC decoder
- Includes my libfaad.c patch (see http://pytivo.krkeegan.com/post6913.html#6913) for 5.1 channel mapping fix when transcoding AAC to AC3
- MKV timestamp improvements that enable smooth playback of certain encodes that resulted in choppy playback in previous versions
- Timestamp precision improvements that seem to fix the non-monotone timestamp fatal error that caused premature end of transfer or no transfer at all for some Xvid encodes

Code:

FFmpeg version SVN-r18820-rdian06-0.97-win32-x86_32, Copyright (c) 2000-2009 Fab
rice Bellard, et al.
  configuration: --enable-memalign-hack --disable-debug --enable-hardcoded-tables --enable-runtime-cpudetect --enable-static --disable-shared --disable-ffserver --disable-ffplay --enable-gpl --enable-pthreads --enable-libmp3lame --enable-libtheora --enable-libspeex --enable-libgsm --enable-libx264 --enable-libschroedinger --enable-avisynth --enable-postproc --enable-avfilter --enable-avfilter-lavf

  libavutil     50. 3. 0 / 50. 3. 0
  libavcodec    52.29. 0 / 52.29. 0
  libavformat   52.32. 0 / 52.32. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libavfilter    0. 5. 0 /  0. 5. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on May 15 2009 00:18:12, gcc: 4.4.0


* ffmpeg-SVN-15216-rdian06-0.95-x86_32.zip (Download below.)
- Compiled 2008-09-11 17:47:55
- Includes changes for pyTivo Push to properly identify ac3 audio inside an mp4 container
- Based on "Tripp's Unofficial FFmpeg Win32 Build" SVN Revision 15216. See http://tripp.arrozcru.com/.
- ogm remux, static pthreads (Tripp)
- uses ffmpeg native AC3 (Dolby Digital) decoder insted of liba52 for AC3 decoding
- AC3 decoder and encoder modified to use same channel ordering as DTS (dca) and AAC 5.1 (libfaad2)
- Includes EAC3 (Dolby Digital Plus) decoder (freshly added to ffmpeg trunk, woohoo!)
- Includes MLP (TrueHD) decoder (freshly added to ffmpeg trunk, woohoo!)
- Can transcode some EVO files taken from HD DVD/Bluray (haven't tested m2ts or AVCHD content yet)
- Still uses libfaad decoder even though initial ffmpeg native AAC decoder was recently added to trunk (native decoder doesn't support all the profiles yet, but it's being worked on)
- If you have a HD camcorder, I need some sample AVCHD files to test with (think home high def movies transferred to your Tivo from pyTivo, you know you want to watch those movies of your kids growing up and ahem... other stuff)
- Added fix for "brain fart cropping" message bug from a later ffmpeg SVN.
- h264 decoder has been cleaned up and some minor optimizations added (or at least that's how I interpret the ffmpeg-devel mailing list threads

Code:

FFmpeg version SVN-r15216-rdian06-0.95-win32-x86_32, Copyright (c) 2000-2008 Fab
rice Bellard, et al.
  configuration: --enable-memalign-hack --enable-postproc --enable-swscale --enable-gpl --enable-libfaac --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --disable-ffserver --disable-vhook --enable-avisynth --enable-pthreads
  libavutil     49.10. 0 / 49.10. 0
  libavcodec    51.71. 0 / 51.71. 0
  libavformat   52.22. 0 / 52.22. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libswscale     0. 6. 1 /  0. 6. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Sep 11 2008 17:47:55, gcc: 4.2.4 [Sherpya]


* ffmpeg-SVN-r14196-rdian06-0.93.zip (Download below.)
- Compiled 2008-07-30 23:12:31
- Same as from the MKV thread, currently the default ffmpeg in wgw and wmcbrine's forks
- Based on "Tripp's Unofficial FFmpeg Win32 Build" SVN Revision 14196. See http://tripp.arrozcru.com/.
- ogm remux, x264 rc equation auto default, static pthreads (Tripp)
- uses ffmpeg native AC3 (Dolby Digital) decoder insted of liba52 for AC3 decoding
- AC3 decoder and encoder modified to use same channel ordering as DTS (dca) and AAC 5.1 (libfaad2)

Code:

FFmpeg version SVN-r14196-rdian06-0.93, Copyright (c) 2000-2008 Fabrice Bellard, et al.
  configuration: --enable-memalign-hack --enable-postproc --enable-swscale --enable-gpl --enable-libfaac --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --disable-ffserver --disable-vhook --enable-avisynth --enable-pthreads
  libavutil version: 49.7.0
  libavcodec version: 51.60.0
  libavformat version: 52.17.0
  libavdevice version: 52.0.0
  built on Jul 30 2008 23:12:31, gcc: 4.2.4 [Sherpya]



ffmpeg-SVN-r18820-rdian06-0.97-win32-x86_32.zip
 Description:

Download
 Filename:  ffmpeg-SVN-r18820-rdian06-0.97-win32-x86_32.zip
 Filesize:  3.02 MB
 Downloaded:  186 Time(s)


ffmpeg-SVN-15216-rdian06-0.95-x86_32.zip
 Description:

Download
 Filename:  ffmpeg-SVN-15216-rdian06-0.95-x86_32.zip
 Filesize:  2.95 MB
 Downloaded:  60 Time(s)


ffmpeg-SVN-14196-rdian06-0.93.zip
 Description:

Download
 Filename:  ffmpeg-SVN-14196-rdian06-0.93.zip
 Filesize:  2.85 MB
 Downloaded:  119 Time(s)



Last edited by rdian06 on Thu Jun 25, 2009 6:01 pm; edited 1 time in total
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Thu Jun 25, 2009 5:45 pm    Post subject: Reply with quote

Ffmpeg Patches

Diff were last created against SVN-r21659 unless otherwise noted.

* patch-libavformat-matroskadec.c-r21659.diff
Fixes "non-monotone timestamps" fatal errors encountered when remuxing AC3 audio from problematic MKVs to VOB. Root cause was the MKV demuxer not bothering to parse the bitrate for AC3 audio tracks. This patch forces the MKV demuxer to parse format headers for AC3 and EAC3. See https://roundup.ffmpeg.org/issue807

* patch-libavcodec-ac3dec.c-r21659.diff
Patches the AC3 decoder to ignore full audio frames when an error is encountered inside one of the constituent audio blocks (audio frames are made up of multiple blocks.) This avoids bad audio blocks throwing off the whole AC3 stream and producing muffled audio when transcoding AC3 to AC3. NOTE: This does NOT fix all muffled audio scenarios with the native fffmpeg AC3 decoder, but since the Matroska remuxing fix above makes the need to transcode AC3 to AC3 less frequent - you're a lot less likely to encounter the remaining muffled audio scenarios.

* patch-ffmpeg.c-r21659.diff
Patched the status output display line to stay less than 80 characters under normal usage and avoid filling the console with status lines.

* patch-libavformat-utils.c-r21659.diff
- Changes the timestamp monotonicity error check to be > instead of >=. Every once in a while I end up with a video that causes ffmpeg to report "error, non monotone timestamps XXX >= XXX" though it will play fine in VLC/Mplayer. This change allows ffmpeg to process the file properly when the timestamps are equal. A fatal error will still be reported if the current timestamp is greater than the next one. This helps with remuxing some MKV to MP4 as well and is still needed despite the matroskadec.c patch.

* patch-libavcodec-libfaad.c-r21659.diff
- Fixes 5.1 channel mapping by converting the AAC output order ( FC, FL, FR, SL, SR, LFE ) to SMPTE aka WAV order ( FL, FR, FC, LFE, SL, SR ) in libavcodec/libfaad.c
- This is a patch to the ffmpeg glue code for libfaad, NOT to libfaad itself.
- To use this patch you must:
    1. Compile libfaad2 and make it available to ffmpeg configure.
    2. Pass --enable-libfaad AND --disable-decoder=aac to ffmpeg configure
If you fail to disable the ffmpeg native AAC decoder, it will be used for AAC decoding effectively bypassing libfaad.

* patch-libavcodec-aac.c-rdian06-0.97.diff
- Fixes 5.1 channel mapping by converting the AAC output order ( FC, FL, FR, SL, SR, LFE ) to SMPTE aka WAV order ( FL, FR, FC, LFE, SL, SR ) in libavcodec/aac.c. Diff created against SVN-r18820.

NOTE: The forum doesn't allow .diff extensions so I've tacked .txt on the end of each of these.



patch-libavformat-matroskadec.c-r21659.diff.txt
 Description:

Download
 Filename:  patch-libavformat-matroskadec.c-r21659.diff.txt
 Filesize:  623 Bytes
 Downloaded:  63 Time(s)


patch-libavcodec-ac3dec.c-r21659.diff.txt
 Description:

Download
 Filename:  patch-libavcodec-ac3dec.c-r21659.diff.txt
 Filesize:  541 Bytes
 Downloaded:  44 Time(s)


patch-ffmpeg.c-r21659.diff.txt
 Description:

Download
 Filename:  patch-ffmpeg.c-r21659.diff.txt
 Filesize:  2.37 KB
 Downloaded:  64 Time(s)


patch-libavcodec-libfaad.c-r21659.diff.txt
 Description:

Download
 Filename:  patch-libavcodec-libfaad.c-r21659.diff.txt
 Filesize:  1.04 KB
 Downloaded:  73 Time(s)


patch-libavformat-utils.c-r21659.diff.txt
 Description:

Download
 Filename:  patch-libavformat-utils.c-r21659.diff.txt
 Filesize:  629 Bytes
 Downloaded:  107 Time(s)


patch-libavcodec-aac.c-rdian06-0.97.diff.txt
 Description:

Download
 Filename:  patch-libavcodec-aac.c-rdian06-0.97.diff.txt
 Filesize:  1.36 KB
 Downloaded:  77 Time(s)



Last edited by rdian06 on Tue Mar 30, 2010 9:22 pm; edited 7 times in total
Back to top
View user's profile Send private message
rdian06



Joined: 12 Apr 2008
Posts: 1420

PostPosted: Thu Jun 25, 2009 6:28 pm    Post subject: Reply with quote

Mac PowerPC G5 and Windows x86_32 builds of ffmpeg 0.98 are up along with the patch that was used to create them (for those who want to roll their own Linux build.)

Working on Mac Intel x86 build. I use MacPorts to build the Mac binaries now so I just need to get my 10.5 Intel environment setup and bring the Portfiles over to complete the compile. Hopefully in a few days...
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    pyTivo Discussion Forum Forum Index -> Support All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next
Page 3 of 10

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
Site is in NO WAY affiliated with TiVo Inc

Powered by phpBB © 2001, 2005 phpBB Group
phpBB SEO

Get pytivo at SourceForge.net. Fast, secure and Free Open Source software downloads
[ Time: 0.1990s ][ Queries: 14 (0.0209s) ][ GZIP on - Debug on ]