Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: Tolwyn on May 01, 2011, 03:11:09 pm
-
I've run into an annoying issue with theora cutscenes lately and it has been driving me nuts - most of my cutscenes develop a sound syncing issue during playback. Sometimes after a few seconds, sometimes after a minute - sound disappears for a second or two and then restart a few seconds before the interruption occurred. Needless to say that every movie file works flawlessly in VLC (albeit length is displayed incorrectly, which seems to be a rather common issue for theora movies & vlc).
I experimented with the command line tool (and different command line parameters) as well as two front ends for ffmpeg2theora. No luck thus far. Any ideas?
(Tested with 3.6.12 stable.)
-
Are you talking within FSO? Because, yes, there seems to be a playback issue of large cutscene files in FSO.
-
Well, I even have issues with short cutscenes, 30 seconds in length. I do not see any pattern. The issue comes and goes.
-
What kind of resolution are you using for your videos?
-
1024*576, so that can hardly be an issue.
What I've also noticed is that the audio playback is set back depending on the duration of the interuption (usually 1-2 seconds, sometimes smaller, depending on the settings and theora encoder I used (ffmpeg2theora command line, Miro Video Converter, Exelon Media converter. The last two are just front ends using outdated versions of ffmpeg2theora, I believe).
-
We not too long ago updated the version of the Ogg libraries in the SVN repository. I believe this was after 3.6.12. You might want to try a nightly build if possible to see if the issue still persists.
-
Already did (latest nightly). No luck.
-
I did a bit more digging, here's theora encoder output:
Firstly I encoded a file with medium quality settings (-v 7 -a 7). It seems to work just fine ingame
S:\CGI\trunk\premiere\Encoded Files>ffmpeg2theora_2 06_briefing_poser.avi -v 7 -a 7
Input #0, avi, from '06_briefing_poser.avi':
Metadata:
ICRD : 2011-04-30T10:32:45.00039+02:00
Duration: 00:00:35.60, start: 0.000000, bitrate: 355460 kb/s
Stream #0.0: Video: rawvideo, bgr24, 1024x576, 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
0:00:09.91 audio: 271kbps video: 2176kbps, ET: 00:00:33, est. size: 10.4 MB
0:00:10.48 audio: 274kbps video: 2258kbps, ET: 00:00:33, est. size: 10.7 MB
0:00:11.00 audio: 273kbps video: 2349kbps, ET: 00:00:33, est. size: 11.1 MB
0:00:11.51 audio: 271kbps video: 2505kbps, ET: 00:00:31, est. size: 11.8 MB
0:00:12.03 audio: 279kbps video: 2656kbps, ET: 00:00:31, est. size: 12.5 MB
0:00:12.56 audio: 278kbps video: 2837kbps, ET: 00:00:31, est. size: 13.2 MB
0:00:13.07 audio: 274kbps video: 3052kbps, ET: 00:00:31, est. size: 14.1 MB
0:00:13.66 audio: 275kbps video: 3165kbps, ET: 00:00:30, est. size: 14.5 MB
0:00:14.26 audio: 272kbps video: 3187kbps, ET: 00:00:28, est. size: 14.5 MB
0:00:14.78 audio: 270kbps video: 3233kbps, ET: 00:00:28, est. size: 14.8 MB
0:00:15.32 audio: 272kbps video: 3378kbps, ET: 00:00:27, est. size: 15.5 MB
0:00:15.82 audio: 272kbps video: 3515kbps, ET: 00:00:27, est. size: 16.0 MB
0:00:16.38 audio: 271kbps video: 3618kbps, ET: 00:00:26, est. size: 16.4 MB
0:00:16.92 audio: 274kbps video: 3705kbps, ET: 00:00:25, est. size: 16.9 MB
0:00:17.51 audio: 273kbps video: 3726kbps, ET: 00:00:24, est. size: 17.0 MB
0:00:18.07 audio: 270kbps video: 3742kbps, ET: 00:00:24, est. size: 17.0 MB
0:00:18.60 audio: 269kbps video: 3733kbps, ET: 00:00:23, est. size: 17.0 MB
0:00:19.14 audio: 269kbps video: 3737kbps, ET: 00:00:23, est. size: 16.9 MB
0:00:19.67 audio: 268kbps video: 3713kbps, ET: 00:00:21, est. size: 16.9 MB
0:00:20.19 audio: 268kbps video: 3654kbps, ET: 00:00:21, est. size: 16.6 MB
0:00:20.85 audio: 267kbps video: 3599kbps, ET: 00:00:20, est. size: 16.2 MB
0:00:21.36 audio: 267kbps video: 3467kbps, ET: 00:00:19, est. size: 15.8 MB
0:00:21.93 audio: 270kbps video: 3431kbps, ET: 00:00:18, est. size: 15.5 MB
0:00:22.54 audio: 269kbps video: 3337kbps, ET: 00:00:17, est. size: 15.1 MB
0:00:23.09 audio: 268kbps video: 3248kbps, ET: 00:00:16, est. size: 14.8 MB
0:00:23.63 audio: 268kbps video: 3163kbps, ET: 00:00:16, est. size: 14.5 MB
0:00:24.15 audio: 268kbps video: 3122kbps, ET: 00:00:15, est. size: 14.2 MB
0:00:24.71 audio: 270kbps video: 3057kbps, ET: 00:00:14, est. size: 14.0 MB
0:00:25.37 audio: 270kbps video: 2983kbps, ET: 00:00:13, est. size: 13.7 MB
0:00:25.94 audio: 273kbps video: 2913kbps, ET: 00:00:12, est. size: 13.5 MB
0:00:26.52 audio: 275kbps video: 2846kbps, ET: 00:00:11, est. size: 13.2 MB
0:00:27.09 audio: 275kbps video: 2822kbps, ET: 00:00:11, est. size: 13.0 MB
0:00:27.72 audio: 274kbps video: 2758kbps, ET: 00:00:10, est. size: 12.7 MB
0:00:28.23 audio: 274kbps video: 2688kbps, ET: 00:00:09, est. size: 12.5 MB
0:00:28.76 audio: 273kbps video: 2688kbps, ET: 00:00:08, est. size: 12.3 MB
0:00:29.28 audio: 272kbps video: 2593kbps, ET: 00:00:08, est. size: 12.2 MB
0:00:29.79 audio: 270kbps video: 2593kbps, ET: 00:00:07, est. size: 12.0 MB
0:00:30.33 audio: 270kbps video: 2535kbps, ET: 00:00:06, est. size: 11.8 MB
0:00:30.87 audio: 269kbps video: 2474kbps, ET: 00:00:06, est. size: 11.6 MB
0:00:31.44 audio: 270kbps video: 2418kbps, ET: 00:00:05, est. size: 11.4 MB
0:00:31.96 audio: 269kbps video: 2397kbps, ET: 00:00:04, est. size: 11.3 MB
0:00:32.49 audio: 269kbps video: 2358kbps, ET: 00:00:04, est. size: 11.1 MB
0:00:33.01 audio: 269kbps video: 2328kbps, ET: 00:00:03, est. size: 11.0 MB
0:00:33.52 audio: 268kbps video: 2286kbps, ET: 00:00:02, est. size: 10.8 MB
0:00:34.12 audio: 267kbps video: 2273kbps, ET: 00:00:01, est. size: 10.7 MB
0:00:35.07 audio: 266kbps video: 2198kbps, ET: 00:00:00, est. size: 10.4 MB
0:00:35.60 audio: 259kbps video: 2165kbps, time elapsed: 00:00:44
0:00:35.60 audio: 259kbps video: 2165kbps, time elapsed: 00:00:44
Then I increased the video quality to "9". Sound syncing issue occurs around 06:??.
S:\CGI\trunk\premiere\Encoded Files>ffmpeg2theora_2 06_briefing_poser.avi -v 9 -a 7
Input #0, avi, from '06_briefing_poser.avi':
Metadata:
ICRD : 2011-04-30T10:32:45.00039+02:00
Duration: 00:00:35.60, start: 0.000000, bitrate: 355460 kb/s
Stream #0.0: Video: rawvideo, bgr24, 1024x576, 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
0:00:05.63 audio: 258kbps video: 2158kbps, ET: 00:00:37, est. size: 10.2 MB
0:00:06.13 audio: 265kbps video: 2416kbps, ET: 00:00:38, est. size: 11.3 MB
0:00:06.63 audio: 262kbps video: 2760kbps, ET: 00:00:39, est. size: 12.8 MB
0:00:07.20 audio: 269kbps video: 2979kbps, ET: 00:00:39, est. size: 13.8 MB
0:00:07.75 audio: 271kbps video: 3166kbps, ET: 00:00:39, est. size: 14.6 MB
0:00:08.27 audio: 275kbps video: 3281kbps, ET: 00:00:36, est. size: 15.1 MB
0:00:08.82 audio: 274kbps video: 3458kbps, ET: 00:00:36, est. size: 15.7 MB
0:00:09.32 audio: 274kbps video: 3600kbps, ET: 00:00:36, est. size: 16.4 MB
0:00:09.83 audio: 271kbps video: 3766kbps, ET: 00:00:36, est. size: 17.1 MB
0:00:10.40 audio: 274kbps video: 3914kbps, ET: 00:00:36, est. size: 17.8 MB
0:00:10.96 audio: 273kbps video: 4093kbps, ET: 00:00:35, est. size: 18.5 MB
0:00:11.47 audio: 271kbps video: 4301kbps, ET: 00:00:33, est. size: 19.3 MB
0:00:12.00 audio: 279kbps video: 4563kbps, ET: 00:00:33, est. size: 20.5 MB
0:00:12.51 audio: 278kbps video: 4790kbps, ET: 00:00:33, est. size: 21.5 MB
0:00:13.03 audio: 275kbps video: 5079kbps, ET: 00:00:32, est. size: 22.7 MB
0:00:13.56 audio: 275kbps video: 5230kbps, ET: 00:00:32, est. size: 23.4 MB
0:00:14.10 audio: 273kbps video: 5288kbps, ET: 00:00:31, est. size: 23.4 MB
0:00:14.63 audio: 270kbps video: 5335kbps, ET: 00:00:30, est. size: 23.7 MB
0:00:15.16 audio: 271kbps video: 5502kbps, ET: 00:00:29, est. size: 24.5 MB
0:00:15.72 audio: 273kbps video: 5704kbps, ET: 00:00:29, est. size: 25.4 MB
0:00:16.22 audio: 271kbps video: 5792kbps, ET: 00:00:28, est. size: 25.7 MB
0:00:16.75 audio: 273kbps video: 5955kbps, ET: 00:00:28, est. size: 26.4 MB
0:00:17.31 audio: 272kbps video: 6017kbps, ET: 00:00:27, est. size: 26.6 MB
0:00:17.83 audio: 271kbps video: 6078kbps, ET: 00:00:25, est. size: 26.9 MB
0:00:18.35 audio: 270kbps video: 6104kbps, ET: 00:00:25, est. size: 27.0 MB
0:00:18.86 audio: 268kbps video: 6100kbps, ET: 00:00:24, est. size: 26.9 MB
0:00:19.44 audio: 269kbps video: 6113kbps, ET: 00:00:24, est. size: 27.1 MB
0:00:19.97 audio: 269kbps video: 6096kbps, ET: 00:00:23, est. size: 26.9 MB
0:00:20.55 audio: 268kbps video: 5917kbps, ET: 00:00:21, est. size: 26.2 MB
0:00:21.11 audio: 267kbps video: 5828kbps, ET: 00:00:21, est. size: 25.6 MB
0:00:21.62 audio: 269kbps video: 5660kbps, ET: 00:00:20, est. size: 25.0 MB
0:00:22.18 audio: 270kbps video: 5573kbps, ET: 00:00:19, est. size: 24.6 MB
0:00:22.79 audio: 269kbps video: 5422kbps, ET: 00:00:18, est. size: 24.0 MB
0:00:23.33 audio: 268kbps video: 5279kbps, ET: 00:00:17, est. size: 23.5 MB
0:00:23.87 audio: 268kbps video: 5144kbps, ET: 00:00:16, est. size: 23.0 MB
0:00:24.39 audio: 270kbps video: 5114kbps, ET: 00:00:16, est. size: 22.6 MB
0:00:24.90 audio: 269kbps video: 4991kbps, ET: 00:00:15, est. size: 22.2 MB
0:00:25.50 audio: 270kbps video: 4871kbps, ET: 00:00:14, est. size: 21.7 MB
0:00:26.03 audio: 273kbps video: 4757kbps, ET: 00:00:13, est. size: 21.3 MB
0:00:26.71 audio: 275kbps video: 4657kbps, ET: 00:00:12, est. size: 20.9 MB
0:00:27.25 audio: 275kbps video: 4590kbps, ET: 00:00:11, est. size: 20.5 MB
0:00:27.91 audio: 274kbps video: 4524kbps, ET: 00:00:10, est. size: 20.1 MB
0:00:28.43 audio: 273kbps video: 4448kbps, ET: 00:00:09, est. size: 19.8 MB
0:00:29.00 audio: 273kbps video: 4297kbps, ET: 00:00:09, est. size: 19.4 MB
0:00:29.62 audio: 271kbps video: 4266kbps, ET: 00:00:08, est. size: 19.1 MB
0:00:30.17 audio: 270kbps video: 4210kbps, ET: 00:00:07, est. size: 18.7 MB
0:00:30.68 audio: 269kbps video: 4086kbps, ET: 00:00:06, est. size: 18.5 MB
0:00:31.28 audio: 270kbps video: 4029kbps, ET: 00:00:05, est. size: 18.1 MB
0:00:31.87 audio: 270kbps video: 3944kbps, ET: 00:00:05, est. size: 17.9 MB
0:00:32.49 audio: 269kbps video: 3892kbps, ET: 00:00:04, est. size: 17.6 MB
0:00:33.01 audio: 269kbps video: 3828kbps, ET: 00:00:03, est. size: 17.4 MB
0:00:33.54 audio: 269kbps video: 3794kbps, ET: 00:00:02, est. size: 17.1 MB
0:00:34.07 audio: 268kbps video: 3733kbps, ET: 00:00:02, est. size: 17.0 MB
0:00:35.00 audio: 266kbps video: 3635kbps, ET: 00:00:00, est. size: 16.5 MB
0:00:35.53 audio: 259kbps video: 3635kbps, ET: 00:00:00, est. size: 16.3 MB
0:00:35.60 audio: 259kbps video: 3574kbps, time elapsed: 00:00:47
0:00:35.60 audio: 259kbps video: 3574kbps, time elapsed: 00:00:47
Could it be related to video stream bitrate? That's the only thing that makes sense to me.
0:00:05.63 audio: 258kbps video: 2158kbps, ET: 00:00:37, est. size: 10.2 MB
0:00:06.13 audio: 265kbps video: 2416kbps, ET: 00:00:38, est. size: 11.3 MB
0:00:07.20 audio: 269kbps video: 2979kbps, ET: 00:00:39, est. size: 13.8 MB
0:00:07.75 audio: 271kbps video: 3166kbps, ET: 00:00:39, est. size: 14.6 MB
EDIT:
With video quality set to 10, syncing issue occurs at 05:??, which agains seems to correlate with the alteration of the video (or audio) bitrate.
S:\CGI\trunk\premiere\Encoded Files>ffmpeg2theora_2 06_briefing_poser.avi -v 10
-a 7
Input #0, avi, from '06_briefing_poser.avi':
Metadata:
ICRD : 2011-04-30T10:32:45.00039+02:00
Duration: 00:00:35.60, start: 0.000000, bitrate: 355460 kb/s
Stream #0.0: Video: rawvideo, bgr24, 1024x576, 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
0:00:05.24 audio: 252kbps video: 2563kbps, ET: 00:00:34, est. size: 11.9 MB
0:00:05.75 audio: 261kbps video: 3055kbps, ET: 00:00:36, est. size: 14.1 MB
0:00:06.28 audio: 265kbps video: 3465kbps, ET: 00:00:37, est. size: 15.8 MB
0:00:06.83 audio: 267kbps video: 3867kbps, ET: 00:00:37, est. size: 17.5 MB
0:00:07.36 audio: 268kbps video: 4160kbps, ET: 00:00:38, est. size: 18.8 MB
0:00:07.88 audio: 272kbps video: 4370kbps, ET: 00:00:38, est. size: 19.6 MB
0:00:08.43 audio: 274kbps video: 4553kbps, ET: 00:00:35, est. size: 20.5 MB
0:00:08.96 audio: 274kbps video: 4812kbps, ET: 00:00:35, est. size: 21.6 MB
0:00:09.48 audio: 274kbps video: 5043kbps, ET: 00:00:35, est. size: 22.5 MB
0:00:10.00 audio: 270kbps video: 5302kbps, ET: 00:00:35, est. size: 23.6 MB
0:00:10.53 audio: 274kbps video: 5507kbps, ET: 00:00:35, est. size: 24.4 MB
0:00:11.03 audio: 273kbps video: 5700kbps, ET: 00:00:35, est. size: 25.3 MB
0:00:11.54 audio: 272kbps video: 5960kbps, ET: 00:00:33, est. size: 26.4 MB
0:00:12.07 audio: 280kbps video: 6309kbps, ET: 00:00:33, est. size: 27.9 MB
0:00:12.57 audio: 277kbps video: 6587kbps, ET: 00:00:32, est. size: 29.1 MB
0:00:13.08 audio: 274kbps video: 6964kbps, ET: 00:00:32, est. size: 30.7 MB
0:00:13.64 audio: 275kbps video: 7136kbps, ET: 00:00:32, est. size: 31.4 MB
0:00:14.19 audio: 273kbps video: 7185kbps, ET: 00:00:31, est. size: 31.6 MB
0:00:14.72 audio: 270kbps video: 7285kbps, ET: 00:00:31, est. size: 32.1 MB
0:00:15.24 audio: 272kbps video: 7515kbps, ET: 00:00:29, est. size: 33.0 MB
0:00:15.80 audio: 273kbps video: 7744kbps, ET: 00:00:28, est. size: 34.0 MB
0:00:16.32 audio: 271kbps video: 7913kbps, ET: 00:00:28, est. size: 34.7 MB
0:00:16.83 audio: 273kbps video: 8071kbps, ET: 00:00:27, est. size: 35.4 MB
0:00:17.35 audio: 272kbps video: 8130kbps, ET: 00:00:27, est. size: 35.7 MB
0:00:17.92 audio: 271kbps video: 8196kbps, ET: 00:00:26, est. size: 35.9 MB
0:00:18.44 audio: 269kbps video: 8247kbps, ET: 00:00:26, est. size: 36.1 MB
0:00:18.96 audio: 268kbps video: 8268kbps, ET: 00:00:25, est. size: 36.2 MB
0:00:19.48 audio: 269kbps video: 8288kbps, ET: 00:00:23, est. size: 36.3 MB
0:00:20.14 audio: 268kbps video: 8279kbps, ET: 00:00:23, est. size: 35.8 MB
0:00:20.69 audio: 268kbps video: 8042kbps, ET: 00:00:22, est. size: 35.0 MB
0:00:21.26 audio: 267kbps video: 7805kbps, ET: 00:00:21, est. size: 34.1 MB
0:00:21.83 audio: 269kbps video: 7688kbps, ET: 00:00:20, est. size: 33.4 MB
0:00:22.36 audio: 269kbps video: 7476kbps, ET: 00:00:19, est. size: 32.6 MB
0:00:22.96 audio: 268kbps video: 7276kbps, ET: 00:00:18, est. size: 31.9 MB
0:00:23.46 audio: 268kbps video: 7179kbps, ET: 00:00:17, est. size: 31.2 MB
0:00:24.05 audio: 268kbps video: 6995kbps, ET: 00:00:16, est. size: 30.5 MB
0:00:24.56 audio: 270kbps video: 6843kbps, ET: 00:00:15, est. size: 30.0 MB
0:00:25.07 audio: 269kbps video: 6676kbps, ET: 00:00:15, est. size: 29.5 MB
0:00:25.64 audio: 271kbps video: 6596kbps, ET: 00:00:13, est. size: 28.9 MB
0:00:26.16 audio: 273kbps video: 6442kbps, ET: 00:00:13, est. size: 28.4 MB
0:00:26.67 audio: 275kbps video: 6293kbps, ET: 00:00:12, est. size: 27.9 MB
0:00:27.25 audio: 275kbps video: 6237kbps, ET: 00:00:11, est. size: 27.4 MB
0:00:27.91 audio: 274kbps video: 6095kbps, ET: 00:00:10, est. size: 26.8 MB
0:00:28.43 audio: 273kbps video: 5943kbps, ET: 00:00:10, est. size: 26.3 MB
0:00:29.07 audio: 273kbps video: 5799kbps, ET: 00:00:08, est. size: 25.8 MB
0:00:29.62 audio: 271kbps video: 5753kbps, ET: 00:00:08, est. size: 25.4 MB
0:00:30.17 audio: 270kbps video: 5632kbps, ET: 00:00:07, est. size: 24.9 MB
0:00:30.67 audio: 270kbps video: 5517kbps, ET: 00:00:06, est. size: 24.6 MB
0:00:31.28 audio: 270kbps video: 5461kbps, ET: 00:00:05, est. size: 24.1 MB
0:00:31.96 audio: 270kbps video: 5315kbps, ET: 00:00:04, est. size: 23.7 MB
0:00:32.49 audio: 269kbps video: 5264kbps, ET: 00:00:04, est. size: 23.3 MB
0:00:33.01 audio: 269kbps video: 5175kbps, ET: 00:00:03, est. size: 23.0 MB
0:00:33.54 audio: 269kbps video: 5129kbps, ET: 00:00:02, est. size: 22.7 MB
0:00:34.12 audio: 267kbps video: 5066kbps, ET: 00:00:01, est. size: 22.5 MB
0:00:35.11 audio: 266kbps video: 4892kbps, ET: 00:00:00, est. size: 21.9 MB
0:00:35.60 audio: 259kbps video: 4826kbps, time elapsed: 00:00:47
0:00:35.60 audio: 259kbps video: 4826kbps, time elapsed: 00:00:47
Two-pass encoding shows the same picture, sound syncing problem around 05:00-06:00
S:\CGI\trunk\premiere\Encoded Files>ffmpeg2theora 06_briefing_poser.avi --two-pass --videobitrate 6000 --audiobitrate 128 --optimize
Input #0, avi, from '06_briefing_poser.avi':
Metadata:
date : 2011-04-30T10:32:45.00039+02:00
Duration: 00:00:35.60, start: 0.000000, bitrate: 355460 kb/s
Stream #0.0: Video: rawvideo, bgr24, 1024x576, 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
0:00:05.79 audio: 131kbps video: 2963kbps, ET: 00:04:52, est. size: -0.0 MB
0:00:35.60 audio: 126kbps video: 4950kbps, time elapsed: 00:01:45
0:00:35.60 audio: 126kbps video: 4950kbps, time elapsed: 00:01:45
-
Part of this is individual computer speed. Where most people run my 720p cutscenes perfectly, some will encounter this issue and have to step down to the 480p versions. But I don't disagree that there is certainly a problem related to FSO and bitrate.
-
I think you misunderstood my problem slightly. ;)
It doesn't matter which version I use - 720/480p or even lower. I always run into this issue. Sound just disappears for a second or two always on the same spot.
-
Hmm.
I don't know much about those encoders, can you set them up so that they use a constant bitrate for both audio and video?
-
In theory, yes, Theora should be able to handle CBR. However, the only thing I can set for the encoding process is the target bitrate, emphasis on the target. The resulting video file is still encoded with VBR.
The other issue which might be a factor is that I encoded the cutscene with 3000 kbps and 6000 kbps. The first one worked, the second one did not.
Sometimes it depends on the video encoder I use - ffmpeg2theora or one of the two windows tools mentioned above.
VLC doesn't have any issues with the files. Then again, VLC can play virtually anything.
If anybody would like to take a closer look (or just try to reproduce the issue so that we all know what we are talking about) I'd be more than happy to provide a few avi/ogg files for testing.
-
VLC uses ffmpeg's libavcodec, which has a native implementation of the Theora/Vorbis decoders. This is different than what FSO uses I believe, since we're using the reference implementations of the decoders. As ffmpeg is LGPL though, I wonder why we're not just using it instead :P
-
It shouldn't be that hard to do. Of course, I believe that that would necessitate adding a dependency on libavcodec.dll.
-
I am just curious why this is the first time anybody's ran into this problem. Is this related to the encoders I use (I tried various versions of ffmpeg2theora)? The operating system (all my workstations run Win 7 x64)? FSO video streaming / encoding?
-
As mjn mentioned, we're already aware that there are problems with libogg, especially when using high-bitrate material. I am not sure if anyone of us ever did some profiling on that to determine where the problems are.
-
Interesting. I've tried out his lovely ANI creation suite earlier today. Thing is: his batch files are using highest possible setting for video quality (-v 10), if I use this one on my files I end up with the sound bug.
-
The_E, I'm not suggesting adding a dependency, so much as replacing one. We could statically link libavcodec like we already do with the existing Ogg stuff couldn't we? Then we could just use the ffmpeg libs instead of the Ogg foundation reference ones. The ffmpeg ones are generally much more optimized anyway, and I think better suited for production software.
-
We could, but libavcodec is much heavier than libogg in terms of code, increasing exe size.
Also, if we link it statically, can we still use the multithreaded decoding libavc does for h264? I mean, the big advantage of using it would be to allow modders to use a variety of video/audio formats. Wouldn't be good to add unnecessary bottlenecks, I believe.
Also, I am not entirely sure if we could get libavc to compile on something that isn't gcc....
-
I'm not sure if it would help, but you might also try updating your computer's ogg codecs. Some older versions do not decode theora video very efficiently.
-
It wouldn't. FSO uses a statically linked version of the libogg reference implementation; system codecs are never used.
-
Oh. Nevermind then. I just ran into the issue with my system codecs a while back when trying to play that 1080 version of the new Endgame cutscene to see if someone else was right about there being a problem with it. It was worth a shot to mention it.
-
I'm not sure if it would help, but you might also try updating your computer's ogg codecs. Some older versions do not decode theora video very efficiently.
It has nothing to do with my theora codecs - I am using latest version of ffmpeg2theora. In my estimation, the engine does not buffer enough audio data thus resulting in occasional playback hickups.
-
We already established it's not a system codec issue, Tolwyn. FS2Open doesn't use the system codecs.
-
That was actually the reason why AVI playback support was ditched a few years ago.
-
Why doesn't FS2 Open use the system codecs?
Is it cross-platform compatibility issues, or just that nobody ever tried to do it?
-
It's because it opens us up to a bunch of PITA tech support problems caused by systems with bad codecs! :p
Far better to handle the format internally as that narrows down the cause of any problem by quite a bit.
-
Not to mention that each of the operating systems we support have different ways of accessing system codecs.