Sebastian Dröge
|
31f0f163bd
|
Try to handle format changes more gracefully
And make stop() faster and more robust
|
2012-10-15 16:28:43 +02:00 |
|
Sebastian Dröge
|
b0b642d8ab
|
Add workaround for Google MP3 decoder outputting garbage in first output buffer
And assume one decoded input frame per output buffer to fix timestamp
handling by the base class.
|
2012-10-15 16:28:43 +02:00 |
|
Sebastian Dröge
|
2f3b2c586f
|
Also add some more output format checks to the audio decoder
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
a870e6a5c3
|
Check output format metadata some more
And implement workaround for NVidia Tegra 3 not setting the slice_height.
Thanks to Josep Torra for debugging this issue.
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
7341ed62fa
|
Add some more default channel layouts, these should be good for AAC at least
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
6ed3ea7cad
|
Don't set timestamps, the baseclass handles this for us anyway
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
86176bd2a2
|
List profiles in reverse to minimize caps
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
fc5a18c091
|
Iterate levels in reverse order to minimize caps
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
0b0255ed12
|
Merge structures into caps instead of appending them
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
9f7ed3f180
|
Use orc_memcpy() instead of memcpy() as it should be faster for larger memory areas
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
7a53743bfd
|
Add support for audio/mpeg-L2 for the Nexus 7
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
3159b7b5dd
|
Add support for MPEG1/2 video
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
41862dff59
|
Ignore the *law and Vorbis decoders
They are broken unfortunately.
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
f098ae6b88
|
Add FIXME comment for not handling odd widths/height with the TI hardware decoders
Must likely an issue with the codec itself though.
|
2012-10-15 16:28:42 +02:00 |
|
Sebastian Dröge
|
42d11e8c1b
|
Fix handling of I420 buffers with odd width
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
cb6f703669
|
Only mpegversion=4 is supported for AAC
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
742816df69
|
Remove some obsolete FIXMEs
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
f839a615a0
|
Fix flushing logic to unbreak handling of flushing seeks
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
bc7d2006e3
|
Fix chroma stride for I420 stride/crop conversion
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
7dbef6415f
|
Fix Vorbis decoding
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
562b033872
|
Wait at most 100ms for dequeueing a buffer, and retry after that
Some codecs don't fail the dequeueing if the codec is flushed,
causing deadlocks when shutting down the element.
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
9a034f2beb
|
Release output buffers a bit earlier
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
4c3617f7f0
|
Keep another reference of the input buffer in handle_frame()
It might be unreffed in the meantime by the other thread due
to finish_frame().
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
613a75ad92
|
Pass -1 as number of frames to the base class
This will automatically do the right thing if timestamps are good enough
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
0143418e0c
|
Use correct buffer variable
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
bb8e53d4b8
|
Always pass 1 as number of frames to finish_frame()
|
2012-10-15 16:28:41 +02:00 |
|
Sebastian Dröge
|
99e287b86b
|
Correctly remember number of channels and samplerate
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
efac01d096
|
Don't unref input buffer from handle_frame(), it's owned by the baseclass
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
3c40a9ca56
|
Remove invalid GST_ERROR() call
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
b07cd212ac
|
Only try to get the channel-mask if it is set
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
afbc23ceed
|
Add support for FLAC
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
b64e57ce42
|
Fix src template caps
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
6cc535581f
|
Fix plugin initialization
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
77fbaae250
|
Add support for audio decoders, completely untested so far
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
de5375da81
|
Only set the SYNC_FRAME flag on the first buffer if we need to split the input
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
290d6f61c5
|
Ignore codecs with unknown color formats for stability purposes
They can be registered nonetheless if an environment variable
or compile-time #define is set.
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
65448a3790
|
Implement cropping and correctly handle the different color formats
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
3acc776dd6
|
Really implement stride conversion for NV12 too
|
2012-10-15 16:28:40 +02:00 |
|
Sebastian Dröge
|
266bc5bf69
|
Implement stride-conversion for I420 and NV12
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
024ac3560d
|
Fix typo in previous commit
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
f2c5afd031
|
Don't allow using non-Google codecs if we started the Java VM ourselves
Hardware codecs, e.g. the TI ones, only work in processes that had their
Java VM started via the non-public AndroidRuntime class.
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
6feb6433d5
|
Rename to amc from androidmediacodec everywhere
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
2de542373b
|
Improve debug output
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
0df00d68b5
|
Print the MediaFormats we get in the debug logs
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
11b8d33666
|
Improve debug output
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
d06af02637
|
Improve level/profile handling
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
2eff8bf82d
|
Allow registering as static plugin with the GStreamer SDK API
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
b7a923234c
|
If the buffer sizes are the same, just memcpy() to the output buffers
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
cb262e2465
|
Correctly convert timestamps between us and ns
|
2012-10-15 16:28:39 +02:00 |
|
Sebastian Dröge
|
2fe74efc04
|
Set SYNC_FRAME flag on buffers if required
|
2012-10-15 16:28:39 +02:00 |
|