itsmattkc
60a27961c2
cache frames alongside the frame index
...
Decoder will now pre-render/decode frames in advance of needing
them
2019-11-17 12:29:53 +09:00
itsmattkc
a9660201f1
miscellaneous other changes to make audio rendering work
...
Many changes were made throughout the codebase to support audio, these are
most of the small changes necessary.
The audio support still is not perfect. I still need to write in resampling
support. After that it should work correctly with all audio types.
2019-11-15 13:57:49 +09:00
itsmattkc
336b3a8e05
added support for returning audio in the FFmpegDecoder
...
FFmpeg decoder now indexes and returns audio as expected
2019-11-15 13:53:58 +09:00
itsmattkc
9a44e656b5
added simple wave classes
...
To assist the input/output of PCM data, we use the fairly straight-forward
WAVE format. These classes simplify the input and output of such data.
2019-11-15 13:49:40 +09:00
itsmattkc
663ae56ac4
more coherent render threading for now
...
Once again, conceptually this system should work, however it does not seem to
be the most efficient and it wouldn't surprise me if the multithreading was
eventually upgraded to an even more coherent system one day. However for
"core principles" this should be fairly decent.
2019-11-03 04:05:43 +11:00
itsmattkc
133dab1666
some code cleanup
...
Removal of translations around debug messages since these waste cycles and are
likely not useful
2019-10-31 21:45:53 +11:00
itsmattkc
77bcb70dac
started porting renderer to new portable form
2019-10-31 19:14:58 +11:00
itsmattkc
3fb53586d4
updated decoder debug messages
2019-10-26 15:33:25 +11:00
itsmattkc
076f2699c5
implemented audio decoder and some of the audio node functionality
2019-10-24 21:33:46 +11:00
itsmattkc
af702835da
forked MediaInput into two derived classes for video and audio
...
Rather than convoluting the MediaInput node, te MediaInput is now an abstract
base class that provides access to a Decoder and derived classes are
responsible for handling it
2019-10-24 17:03:33 +11:00
itsmattkc
2fdf78df4a
implemented preliminary pre-cacher for audio
...
FFmpegDecoder now implements an "indexer" for audio, which actually just
extracts the raw PCM audio from an audio codec and saves it to disk
2019-10-24 16:36:26 +11:00
itsmattkc
ce20dc159e
correct duration/rate in project explorer
2019-09-26 16:00:21 +10:00
itsmattkc
9fa22938b9
work towards making timeline actions all undoable
2019-09-23 23:00:15 +10:00
itsmattkc
1207e180ec
fix for transport streams with no duration
2019-09-17 13:40:23 +10:00
itsmattkc
197cf86382
don't allow ffmpeg through oiio
2019-09-14 02:52:33 +10:00
itsmattkc
69ca2b2a50
fixed bug where an unindexed video would cache a blank first frame
2019-09-10 19:12:19 +10:00
itsmattkc
4c40475a6c
fixed flicker issue when previewing some media
2019-09-10 15:55:59 +10:00
itsmattkc
ba7a10177f
fixed various caching issues when rapidly changing values
2019-09-09 04:07:51 +10:00
itsmattkc
faa7f798ff
more or less completed OIIO decoder
2019-09-05 01:15:50 +10:00
itsmattkc
695adea562
added OIIO decoder
2019-09-05 00:03:26 +10:00
itsmattkc
e87ed9dd3d
finished hashing algorithm for cache
2019-09-02 19:51:31 +10:00
itsmattkc
b563b9e783
began node hashing for improved cache
2019-09-02 12:06:24 +10:00
itsmattkc
b9ce02a0ec
separated setting time and processing node functions
2019-08-27 23:38:24 +10:00
itsmattkc
46ea071b99
mild decoder adjustment
2019-08-26 15:15:20 +10:00
itsmattkc
438e7081f9
foundations for background caching
2019-08-24 22:16:01 +10:00
itsmattkc
c0f6ee534a
minor code cleanups
2019-08-09 10:43:14 +10:00
itsmattkc
f26eea1620
moved more objects to shared ptrs
2019-08-09 08:21:54 +10:00
itsmattkc
dfd33310a2
use qvector instead of raw array
2019-08-09 07:49:17 +10:00
itsmattkc
7a858aeca3
moved decoders to shared ptrs
2019-08-09 07:46:53 +10:00
itsmattkc
6833b18829
merged probe functions into decoder class
2019-08-08 17:22:26 +10:00
itsmattkc
c6dfab4caf
use decoder ID in media node
2019-08-08 15:52:53 +10:00
itsmattkc
f3b60369aa
use IDs for multiple decoders
2019-08-08 15:38:58 +10:00
itsmattkc
8730da4b43
improved decoder documentation and fixed error with >8bppc media
2019-08-08 14:02:12 +10:00
itsmattkc
6708eca0c1
renamed ffmpeg decoder function names
2019-08-08 13:13:01 +10:00
itsmattkc
410c1ff06c
cache frame indexes to disk
2019-08-07 12:14:48 +10:00
itsmattkc
1138600f37
indexing prototype
2019-08-06 09:34:37 +10:00
itsmattkc
73a32ad9cd
use node graph time to get frame
2019-08-06 08:41:27 +10:00
itsmattkc
360328ccbb
more work towards loading media into the node graph
2019-08-06 08:26:25 +10:00
itsmattkc
f55094c5df
media now plays in node graph
2019-08-04 19:45:06 +10:00
itsmattkc
298ae2f36c
mocked up a prototype of decoding data into the node graph
2019-08-04 14:45:17 +10:00
itsmattkc
fb8d5df24b
created widget bridge
2019-08-04 10:00:29 +10:00
itsmattkc
2e41f6d8f0
minor comment conformance
2019-07-23 10:22:58 -07:00
itsmattkc
9f6d0f9dc7
documented new node classes
2019-07-17 03:05:25 -04:00
itsmattkc
837d43fe07
moved various classes from root to common folder
2019-07-15 03:58:39 -04:00
itsmattkc
d76691a9ef
began draft of internal node rendering structure
2019-07-10 23:06:09 -04:00
itsmattkc
5e3c2fb7e4
documented (nearly) ever class
2019-07-06 23:32:01 -05:00
itsmattkc
a6971b3fde
more work on project management
2019-07-06 09:46:55 -05:00
itsmattkc
0f7192fc33
work towards project explorer navigation bar
2019-07-02 16:46:09 -07:00
itsmattkc
85b5bbd5d6
documentation and folded item delegates from old code back in
2019-07-02 03:01:46 -07:00
itsmattkc
0966b62f29
various improvements to import process and project management
2019-07-01 15:40:09 -07:00