Commit graph

1973 commits

Author SHA1 Message Date
Olivier Crete
7efc94bc12 [MOVED FROM GST-P-FARSIGHT] Implement stopping in a nice thread safe way
20070914042042-3e2dc-1fe257ff4b72aca4b0eb5f285a14650b8df268c3.gz
2009-02-21 17:48:02 +01:00
Olivier Crete
f518316253 [MOVED FROM GST-P-FARSIGHT] Remove get_times (Wim says its only good for really fake sources)
20070914041834-3e2dc-fff4d5da2a145f19e7b610a1027d2c4d4bc5eae0.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
264d6779ab [MOVED FROM GST-P-FARSIGHT] using the unlock method of basesrc
20070913212145-4f0f6-0e438a681bf1651c0cc0d8fa3269aed3f1668b6b.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
52d99a398c [MOVED FROM GST-P-FARSIGHT] more debug
20070913211226-4f0f6-bc32b5828fc8e0323c8a6eee779a38145aacd593.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
a88f8d3310 [MOVED FROM GST-P-FARSIGHT] added debugs
20070913204614-4f0f6-68c2a69ae7a1efca6e13c116dbad7f9b686f0242.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
4a11ad9df0 [MOVED FROM GST-P-FARSIGHT] Make sure to unlock the thread when going to ready and to flush the queue when moving to paused or playing
20070913192053-4f0f6-76c3925380d1a30988286170535a65dea64a5583.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
854773d724 [MOVED FROM GST-P-FARSIGHT] Changed dtmfsrc into a subclass of GstBaseSrc
20070913175520-4f0f6-16ca4bf93690072f3e836d1c8a5b52cf7a421916.gz
2009-02-21 17:48:02 +01:00
Youness Alaoui
4eab02230d [MOVED FROM GST-P-FARSIGHT] Add another fix for a possible race condition
20070904225753-4f0f6-5ba8c4260c002bb27eb98e9faba3c15799357b57.gz
2009-02-21 17:48:02 +01:00
Olivier Crete
9c5331b747 [MOVED FROM GST-P-FARSIGHT] Add comment to explain push back
20070904215224-3e2dc-d92ac1f403dcf571546a7c53f18809f840eea51d.gz
2009-02-21 17:48:01 +01:00
Olivier Crete
695cecd229 [MOVED FROM GST-P-FARSIGHT] Properly do the locking to avoid race conditions with clock unscheduling
20070904205509-3e2dc-da19900b51af6aedb6547f4f392bef4d1061dec2.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
483a557e93 [MOVED FROM GST-P-FARSIGHT] oups, I did it again...
20070901000324-4f0f6-3d8b46691ee520537b06c511a5e732f5b812b844.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
e8f12dce64 [MOVED FROM GST-P-FARSIGHT] oups, sorry.. DTMF, not RTP_DTMF for this file...
20070831235428-4f0f6-00b606bfb4892e4f217c440b611cc794ab0de55a.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
886a695daa [MOVED FROM GST-P-FARSIGHT] Fixes the deadlock when pausing the dtmfsrc and rtpdtmfsrc. Had to push something on the async queue to release the blocking async_queue_pop(). Thanks to Olivier for the solution.
20070831234413-4f0f6-793cf35fc43636e7275258cc7063fc068f5efa0a.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
102570fe4d [MOVED FROM GST-P-FARSIGHT] ClockID when waiting for buffer is now unscheduled when stopping the task. Various fixes to avoid bugs (thanks to -Wall -Werror). Fixes to allow the merge of the branch.
20070828221534-4f0f6-b0d6a4fe48c4e2a16b9ff69cb310087c970ce48e.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
608175845d [MOVED FROM GST-P-FARSIGHT] Cleaned up the code a bit, no use of GST_* and return value verification from gst_*
20070828171546-4f0f6-bdeb4b1b7f99f9464aabe5c43bd4a4d2025262b6.gz
2009-02-21 17:48:01 +01:00
Olivier Crete
a0beb104de [MOVED FROM GST-P-FARSIGHT] Fix overly long lines and tabs
20070827195610-3e2dc-396a3fa01e16f184e4109c71fe2deb6e516bdf0d.gz
2009-02-21 17:48:01 +01:00
Youness Alaoui
58ec497deb [MOVED FROM GST-P-FARSIGHT] untabbified dtmfsrc
20070827192618-4f0f6-77d68070464f1b5f9a46cb6eec2d922340143c04.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
87c552ae2b [MOVED FROM GST-P-FARSIGHT] Fix RTP timestamps by sending a new_segment event to the payloader
20070827172424-4f0f6-d20907e3d436d50bfe74eb4fc3d2d6d7b6b6dbc5.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
b8550c20c0 [MOVED FROM GST-P-FARSIGHT] Better handling of packets, we send the same duration for all packets to avoid huge packets when min duration defines are modified.
20070827172339-4f0f6-cc93304437ea376fff6458c74c46c19f6920d329.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
b65d589469 [MOVED FROM GST-P-FARSIGHT] Changing minimum values to work better on some gateways
20070827172322-4f0f6-5bf2bffa59a8244538dced795fa7d7649452ca91.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
71b9b27c29 [MOVED FROM GST-P-FARSIGHT] The DTMF tone generator now respects the volume argument passed in the event
20070822201653-4f0f6-8b7ff874006e11f5a74d0fd91e5a9a43cd082ada.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
aae79855ca [MOVED FROM GST-P-FARSIGHT] don't know why I did that...
20070822180133-4f0f6-6a7382f6c7d3630f91da384e1904763c7ea6fa1a.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
459f5c944e [MOVED FROM GST-P-FARSIGHT] Ported the event queue work from dtmfsrc to rtpdtmfsrc
Added a queue based system for the rtpdtmfsrc. Now it waits for start/stop messages on the queue, and makes sure that the minimum duty cycle (120ms) is respected between each
tone, including inter-digit silence.

20070822175533-4f0f6-f27414c406f1f7b00c9a9084a988cf3a7930fe5c.gz
2009-02-21 17:48:00 +01:00
Youness Alaoui
ca2f737659 [MOVED FROM GST-P-FARSIGHT] ouch, printing with arguments but without %s.. that made it segfault a few times...
20070822175444-4f0f6-445ea6ce7a9668d04cf999af772a504ec74fb67a.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
7e0aec2c94 [MOVED FROM GST-P-FARSIGHT] Moved the timestamp from the event to dtmfsrc structure since we have only one event at a time, so let's keep it stored in the dtmfsrc struct
20070822175126-4f0f6-53bcda2bd8ae8c56d29e62e69ac19a30e08ad350.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
7b9a2fd4ff [MOVED FROM GST-P-FARSIGHT] Added a queue based system for the dtmfsrc. Now it waits for start/stop messages on the queue, and makes sure that the minimum duty cycle (120ms) is respected between each tone, including inter-digit silence.
20070820203826-4f0f6-750a22b612a5e495e767666934465c34fe32074b.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
2a45c1b9d4 [MOVED FROM GST-P-FARSIGHT] Added dtmfsrc, a DTMF Tone Generator, and made it part of the 'dtmf' plugin.
20070820184852-4f0f6-a0d85e67708290aebafa89ab79d3cedd5815b620.gz
2009-02-21 17:47:59 +01:00
Youness Alaoui
0127d7b6e5 [MOVED FROM GST-P-FARSIGHT] Moved rtpdtmf to dtmf directory
20070820184800-4f0f6-fa33ea974510161de8c9951c39087af3613b65a4.gz
2009-02-21 17:47:59 +01:00
Olivier Crete
7a887a5187 [MOVED FROM GST-P-FARSIGHT] Send all packet from the streaming thread, including the last one
20070712195715-3e2dc-6848c70a7f0137c91fa882a8efb6dbf83891ae13.gz
2009-02-21 17:47:59 +01:00
Olivier Crete
074189363e [MOVED FROM GST-P-FARSIGHT] Put non-zero duration in first packet and put a minimum duration of 50ms
20070712195528-3e2dc-d46edeaab84fb55e74842bdcf4f8792dfcdb0457.gz
2009-02-21 17:47:59 +01:00
Olivier Crete
230ee96a32 [MOVED FROM GST-P-FARSIGHT] Fix RTP timestamp on dtmf packets
20070712162328-3e2dc-98c1303f4a52b891ce59bf88e07d29f4e2dfc974.gz
2009-02-21 17:47:59 +01:00
Olivier Crete
6a6a0b0755 [MOVED FROM GST-P-FARSIGHT] Only set marker on very first packet of an event
20070711155202-3e2dc-f7ea3abd2cb0ca2937ea4508e6e301baaa6e2154.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
3905482b3f [MOVED FROM GST-P-FARSIGHT] Send on packet start time
20070711155157-3e2dc-ee0e9fc13d35296593005267a2417dd65e790d29.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
2c955bfad3 [MOVED FROM GST-P-FARSIGHT] RTP timestamp is the time of the beginning of the dtmf event
20070711155056-3e2dc-cb5cda73fbf7df1c545cb0321b0e339914c5897f.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
9fe41ae280 [MOVED FROM GST-P-FARSIGHT] 80 column is enough for everyone
20070424200252-3e2dc-d1bc17266afff2599129a25d44338062372f7ea3.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
2a8042fa72 [MOVED FROM GST-P-FARSIGHT] Add redundancy and interval properties to rtpdtmfsrc (patch by SP GLE <spglegle@yahoo.fr>)
20070424193155-3e2dc-66688001e7b529c46f108633cd9520347c3c8c3e.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
eb74905991 [MOVED FROM GST-P-FARSIGHT] Only send dtmf if the method is unspecified or is 1
20070504195251-3e2dc-b95b4b8e8dad87962cf39ec2ee67b6f1b619e9bd.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
18344ae7b2 [MOVED FROM GST-P-FARSIGHT] Make documentation consistent with itself
20070308223559-3e2dc-cc20fe571370bc51bf963cc3df1b8ab4a3ddc20b.gz
2009-02-21 17:47:58 +01:00
Olivier Crete
516f1cb727 [MOVED FROM GST-P-FARSIGHT] Use segment to calculate dtmfsrc rtp timestamp
20070412200435-3e2dc-b5cc26b12b6e8b89f131fd27f0e4627746e85697.gz
2009-02-21 17:47:58 +01:00
zeeshan.ali@nokia.com
50dbdcc4e1 [MOVED FROM GST-P-FARSIGHT] Clean-up and refactorize dtmfsrc code
20070402124635-65035-3d13244461c1dd1fcc96b74124ad7a74d2ff0144.gz
2009-02-21 17:47:57 +01:00
Olivier Crete
f7d6d695aa [MOVED FROM GST-P-FARSIGHT] Ooops, little typo
20070330154303-3e2dc-9f6edcde24d30caea8ea876b24a3a680d40b2ea1.gz
2009-02-21 17:47:57 +01:00
Olivier Crete
e32fcbe2b0 [MOVED FROM GST-P-FARSIGHT] Make it generate the proper rtp timestamps in sync with the live source
20070330001700-3e2dc-bbf954e4edec0615c4eee603fbc6ab8a7d89436f.gz
2009-02-21 17:47:57 +01:00
zeeshan.ali@nokia.com
44328d3355 [MOVED FROM GST-P-FARSIGHT] Increment the ts after setting the buffer's ts
20070329114257-65035-c8686ab4ce20b1f36f3dac120485ade5cd90aac9.gz
2009-02-21 17:47:57 +01:00
zeeshan.ali@nokia.com
f1609fe6e2 [MOVED FROM GST-P-FARSIGHT] Calculate the rtp ts before gst ts get incremented
20070329103946-65035-f74e3a0140c57e941444bb837d6053ad1c3cf567.gz
2009-02-21 17:47:57 +01:00
zeeshan.ali@nokia.com
e158fabe85 [MOVED FROM GST-P-FARSIGHT] Some code-cleanup
20070329103904-65035-db08cc7c3098b60a556d3809de912cd0e1a545c1.gz
2009-02-21 17:47:57 +01:00
zeeshan.ali@nokia.com
e8c927e9f5 [MOVED FROM GST-P-FARSIGHT] Initialize the GstSegment at the right time
20070329103824-65035-9ab3a0a03c5f9329cd4625ae6567c2c1fd4a73d8.gz
2009-02-21 17:47:57 +01:00
zeeshan.ali@nokia.com
109b232e55 [MOVED FROM GST-P-FARSIGHT] Call set_caps when we have all the params
20070326105712-65035-3e3dfce0b50d61eafda846bee0a6d66c3541c6ed.gz
2009-02-21 17:47:57 +01:00
zeeshan.ali@nokia.com
ffe20dee18 [MOVED FROM GST-P-FARSIGHT] Set caps on the buffer before pushing it
20070323162922-65035-9e4be5449c79c0a459965ee07adb4a8143c4c1d5.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
19e3f39751 [MOVED FROM GST-P-FARSIGHT] Request for stream lock when generating DTMF packets
20070314171756-65035-0b497dfac203ff4f579525485d5804e5f5093b3f.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
8806b93151 [MOVED FROM GST-P-FARSIGHT] Correct caps printout
20070307114109-65035-124202884918a9c8a803080d6967234539d24b97.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
b6c3f86355 [MOVED FROM GST-P-FARSIGHT] Add doc-section comments
20070216120606-65035-6e7d28721dc0872f3f55ba7ccd4fed3d66f8175f.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
24659a3131 [MOVED FROM GST-P-FARSIGHT] Add copyrights
20070215134853-65035-50fe5f8e999ae86a1e3ba0dbdece4911eb9dcca0.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
2be160c741 [MOVED FROM GST-P-FARSIGHT] No need to handle downstream events
20070215133536-65035-648b791d404bf06900bd2698d925117c89743db9.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
221be0ea06 [MOVED FROM GST-P-FARSIGHT] Attempt to correct event handling
20070215122655-65035-47070d9a28c08d9353b04d2d9301e29b7ee72b83.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
04413fffc2 [MOVED FROM GST-P-FARSIGHT] Use pause_task instead of stop_task to avoid any possible deadlocks
20070215102629-65035-a48c773661e385a91e022e0ac1da0862c4206f85.gz
2009-02-21 17:47:56 +01:00
zeeshan.ali@nokia.com
b392c5041d [MOVED FROM GST-P-FARSIGHT] Put correct seq and timestamps on the packets
20070215101030-65035-7146a3c4a8d0feab513d13a207b2cdc5de311f03.gz
2009-02-21 17:47:55 +01:00
zeeshan.ali@nokia.com
1ae11d7b6f [MOVED FROM GST-P-FARSIGHT] Fix the copyright notice
20070214135501-65035-e90753b1f6525f7b9c0ac2eb7e40cef7ca673e68.gz
2009-02-21 17:47:55 +01:00
zeeshan.ali@nokia.com
c48a4e1734 [MOVED FROM GST-P-FARSIGHT] Add RTP DTMF event packet generator element and test app for it
20070214131352-65035-3c14a1047c3cd6696f3a716a62b21d3f4b9da62b.gz
2009-02-21 17:47:55 +01:00
Sebastian Dröge
b7f617ad58 mxfdemux: Add read-only property to get the structural metadata 2009-02-21 17:45:09 +01:00
Sebastian Dröge
a0951a630b mxfdemux: Add MPEG video bitrate to the tags if available 2009-02-21 17:40:01 +01:00
Sebastian Dröge
acc6a316ce mxfdemux: Post structural metadata tree as tag on the bus
This will later be used to keep the structural metadata when
remuxing an MXF file and can also be used in Pitivi for example
to know the file structure and to select what should be used
and played.
2009-02-21 17:38:49 +01:00
Sebastian Dröge
a9461b9818 mxfdemux: Fix calculation of AES3 bitrate tag 2009-02-21 16:16:32 +01:00
Sebastian Dröge
636b535e4a mxfdemux: Add helper function to convert MXFraction to gdouble and use it 2009-02-21 16:16:32 +01:00
Sebastian Dröge
8172830d47 mxfdemux: Only store the main descriptor in source packages
For the tracks we still resolve the descriptors but the
source package only contains the descriptor it really references
instead of all subdescriptors of multiple descriptors.

This makes it easier later to serialize the structural metadata
again.
2009-02-21 16:16:32 +01:00
Sebastian Dröge
e11f0be161 mxfdemux: Set free'd memory to NULL to prevent a double free later in some cases 2009-02-21 16:16:32 +01:00
Sebastian Dröge
2a93712ea1 mxfdemux: Don't use generic metadata parsers for unknown metadata, the results are useless anyway 2009-02-21 16:16:32 +01:00
Zaheer Merali
571d51ac92 mpegtsdemux: s/fluts/mpegts
Change all definitions from fluts to mpegts.
2009-02-19 11:36:45 +00:00
Olivier Crête
a4ed8c5d96 Document the GstValve 2009-02-17 19:29:59 +01:00
Olivier Crête
f00727f39a Rename fsvalve to valve 2009-02-17 19:29:59 +01:00
Olivier Crête
d1c9b30ada Re-indent valve in gst style 2009-02-17 19:29:59 +01:00
Olivier Crête
06b1c78ade [MOVED FROM GST-P-FARSIGHT] Ignore errors if dropping is set to true 2009-02-17 19:29:59 +01:00
Olivier Crête
baa5d1eacf [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2009-02-17 19:29:59 +01:00
Olivier Crête
1367a3a3bc [MOVED FROM GST-P-FARSIGHT] Add getcaps proxying to the valve 2009-02-17 19:29:59 +01:00
Olivier Crête
907a660cdc [MOVED FROM GST-P-FARSIGHT] Rebase valve onto gstelement instead of basetransform 2009-02-17 19:29:59 +01:00
Olivier Crête
e97d7d9b04 [MOVED FROM GST-P-FARSIGHT] Revert "Fix refcounting issues in prepare_output_buffer"
This reverts commit 65dd460f0a3a9c4882e638c86208f74ef62c3460.
2009-02-17 19:29:59 +01:00
sjoerd@luon.net
d2a43636b9 [MOVED FROM GST-P-FARSIGHT] Fix refcounting issues in prepare_output_buffer
20080805113057-be0f2-9dc270781f0a0f21c616ed11dbd1f198fd1b326e.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
c7d7a158cb [MOVED FROM GST-P-FARSIGHT] Remove unused dispose method in valve
20080409163221-3e2dc-92ccb2db874e46e0d92c15520577c1be0e2bc617.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
6891140340 [MOVED FROM GST-P-FARSIGHT] Dont hold the object lock while calling base alloc function
20071219203230-3e2dc-6519175d8d81496515b2d9060ac316650560f691.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
ecc7dbcc77 [MOVED FROM GST-P-FARSIGHT] Set the DISCONT flag after dropping buffers
20071219203218-3e2dc-bc5f03d88ff5837040b9214de016cc142776dfc2.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
ee9906672b [MOVED FROM GST-P-FARSIGHT] Use do the alloc_buffer function in the valve
20071219005739-3e2dc-2a0fdfa2f38f03ab4791fe5c4ab85e8790113683.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
8d8c9adf30 [MOVED FROM GST-P-FARSIGHT] Only set passthrough to TRUE on newer versions of gst
20071121200858-3e2dc-b16cdeabbc3c0562c6fc7b11b9b9792c910f569e.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
f6fb98f627 [MOVED FROM GST-P-FARSIGHT] Compare minor, not major
20071121181729-3e2dc-a5997c3b7f5c86966370969714facf8ee242659d.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
17639a3e82 [MOVED FROM GST-P-FARSIGHT] Make the valve element work with gst < 0.10.13
20071026223749-3e2dc-18f685a4e45fbdce677ac777586876fc719d7222.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
a37867ecf0 [MOVED FROM GST-P-FARSIGHT] Rename valve to fsvalve
20071024224246-3e2dc-c54216af2ef0ef3f1a2206d723e87be2a23ab8ed.gz
2009-02-17 19:29:59 +01:00
Olivier Crete
5f1e214592 [MOVED FROM GST-P-FARSIGHT] Add valve element
20071024224147-3e2dc-f28ab0c073e283894b65c22c4f44397c897dec01.gz
2009-02-17 19:29:59 +01:00
Olivier Crête
d73cc21017 Add some documentation to the siren enc/dec plugins 2009-02-17 19:29:40 +01:00
Olivier Crête
11328ad67f Re-indent the siren stuff to be gst style 2009-02-17 19:29:40 +01:00
Olivier Crête
ce558ab988 Move siren rtp pay/depay to good 2009-02-17 19:29:40 +01:00
Olivier Crête
158e8692c5 [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2009-02-17 19:29:40 +01:00
Olivier Crête
9905d54965 [MOVED FROM GST-P-FARSIGHT] Add underscore to make the encoder like the decoder 2009-02-17 19:29:40 +01:00
Olivier Crête
4d3e6501d9 [MOVED FROM GST-P-FARSIGHT] Rename offset to out_offset to make its meaning clearer 2009-02-17 19:29:40 +01:00
Olivier Crête
72c979d84b [MOVED FROM GST-P-FARSIGHT] Check the size of the input buffer, not the output buffer 2009-02-17 19:29:40 +01:00
Olivier Crête
a67aa17c6d [MOVED FROM GST-P-FARSIGHT] Preserve timestamp 2009-02-17 19:29:40 +01:00
Olivier Crete
8fcd95267d [MOVED FROM GST-P-FARSIGHT] Remove useless checks, document locking
20080704222103-3e2dc-47a7f49c414f98a188ffc42b07189daf5147483b.gz
2009-02-17 19:29:40 +01:00
Olivier Crete
ae01ec1980 [MOVED FROM GST-P-FARSIGHT] make sirenenc thread safe
20080704221743-3e2dc-f93da86438f753e14be25166aee45f8802f7d100.gz
2009-02-17 19:29:40 +01:00
Olivier Crete
1c3fa06a8f [MOVED FROM GST-P-FARSIGHT] Replace use GST_DEBUG_OBJECT in sirenenc
20080704201830-3e2dc-8f3e401aaa594c8cc5853b73f41ca5cb047ee2d3.gz
2009-02-17 19:29:40 +01:00
Olivier Crete
bda906038d [MOVED FROM GST-P-FARSIGHT] Port sirendec to Gstelement
20080704201744-3e2dc-99bf7b86e42da363d8c826449d84b43751572d5e.gz
2009-02-17 19:29:40 +01:00
Olivier Crete
84a188ff73 [MOVED FROM GST-P-FARSIGHT] Release ref at the end of chain
20080704200454-3e2dc-386f2685882a74d01ce503f91396ea37506dbe83.gz
2009-02-17 19:29:40 +01:00
Olivier Crete
ba15441117 [MOVED FROM GST-P-FARSIGHT] Remove useless call to peek_parent
20080704200315-3e2dc-6b30efd2d32b6ca96609f4bdc0c3e286f4441746.gz
2009-02-17 19:29:40 +01:00
Olivier Crete
1d94ecf2fd [MOVED FROM GST-P-FARSIGHT] Make GstSirenEnc use GST_*_OBJECT appropriately
20080704200029-3e2dc-f68fdaaa8929039fd8413ff0bf8ff514f6e4fbe1.gz
2009-02-17 19:29:39 +01:00
Olivier Crete
8722c6e6f5 [MOVED FROM GST-P-FARSIGHT] Port sirenenc to gstelement
20080704195102-3e2dc-cd7687512ac560faaf15f53e1e262d1874a36cdf.gz
2009-02-17 19:29:39 +01:00
Olivier Crete
b696a8dd6c [MOVED FROM GST-P-FARSIGHT] Link modules with libm where required
20080428222237-3e2dc-b1e9120c1e9ca1a510bfd7c27e2d45f0d4a12504.gz
2009-02-17 19:29:39 +01:00
Youness Alaoui
c931b38ad6 [MOVED FROM GST-P-FARSIGHT] Removed debug output
20080412234325-4f0f6-36b946a7ca3ab4e5802917b8930f036c50a93a29.gz
2009-02-17 19:29:39 +01:00
Youness Alaoui
9636cecbd6 [MOVED FROM GST-P-FARSIGHT] Oups, typo
20080410234328-4f0f6-962e375e78da05eab52892a57d3226fdd2ffc86d.gz
2009-02-17 19:29:39 +01:00
Youness Alaoui
b9ea3bbe4f [MOVED FROM GST-P-FARSIGHT] Added Siren encoder/decoder/payloader/depayloader
20080410070116-4f0f6-72ffbdbb262f07bfabd1e469973a01b3359bee45.gz
2009-02-17 19:29:39 +01:00
Olivier Crête
79ebcb8fe5 Add liveadder to the docs 2009-02-17 19:29:06 +01:00
Olivier Crête
cf21405a7f Document the liveadder 2009-02-17 19:29:06 +01:00
Olivier Crête
6edfec64ee Moved liveadder from gst-plugins-farsight to -bad
Re-indent liveadder in gst style and add it to configure
2009-02-17 19:29:06 +01:00
Olivier Crête
4b33d319fc [MOVED FROM GST-P-FARSIGHT] Use log for message thats on every buffer 2009-02-17 19:29:06 +01:00
Olivier Crête
e7da8d9ac6 [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2009-02-17 19:29:06 +01:00
Edward Hervey
8a533c4282 [MOVED FROM GST-P-FARSIGHT] liveadder : Handle jitter in incoming buffers
Incoming buffers (especially those from an RTP connection) might have slight timestamp jitter. This is normally handled by audiosink (accepting up to 500ms of jitter).
Here we accept a maximum jitter of 10ms. If a buffer is within 10ms of the expected time, we correct its timestamp.
2009-02-17 19:29:06 +01:00
Olivier Crete
28d1fc48a6 [MOVED FROM GST-P-FARSIGHT] Add handling of position query to liveadder
20080704185721-3e2dc-7a687e346e74b44fa847c5e5b6eb64c3e0949764.gz
2009-02-17 19:29:06 +01:00
Olivier Crete
9e6d4708f8 [MOVED FROM GST-P-FARSIGHT] Replace C99 llabs with C89 code
20080521172005-3e2dc-8e637d1daa0e27cc2edae1fdfd0dbf23896fb5bc.gz
2009-02-17 19:29:06 +01:00
Olivier Crete
91dcd54ae5 [MOVED FROM GST-P-FARSIGHT] Reset vars before restarting thread on flush stop
20080515012257-3e2dc-e3521752cf3eaf2b8767f4c620eadfc24a8e8e31.gz
2009-02-17 19:29:06 +01:00
Olivier Crete
4d44cf5fe2 [MOVED FROM GST-P-FARSIGHT] Implement first version of seeking
20080515012227-3e2dc-7f53f78d1c3dfdcdb6e7ad53e6c7f16d5e998a05.gz
2009-02-17 19:29:06 +01:00
Olivier Crete
72ca8467eb [MOVED FROM GST-P-FARSIGHT] Add duration query from adder
20080515012142-3e2dc-2768199183bfb9d569be1389e382bedc02e3e95e.gz
2009-02-17 19:29:06 +01:00
Olivier Crete
3c835d5536 [MOVED FROM GST-P-FARSIGHT] Move flush stop inside where it belongs
20080515000214-3e2dc-cda5cddd1ead5c48a554e9e9bc75ae68437bcdfb.gz
2009-02-17 19:29:06 +01:00
Olivier Crete
703b3326cc [MOVED FROM GST-P-FARSIGHT] Have the liveadder remember if its playing or not
20080514234948-3e2dc-9064a27a54aef598444aa6ad6463345979120828.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
75edc07516 [MOVED FROM GST-P-FARSIGHT] Push out buffer if we're not playing while there is no clock
20080514234910-3e2dc-1096eb7dc3fada19afc81dcd536d9edc821d0da9.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
5f37d95613 [MOVED FROM GST-P-FARSIGHT] Empty the queue on flush start
20080514232643-3e2dc-5a3f52a3fd3771164dea95bd14410d76b4fce2aa.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
c653d0ac38 [MOVED FROM GST-P-FARSIGHT] Reset pad private on flush stop
20080514231752-3e2dc-113fec2faafc2dc11c1eaa818cb488b71e601f9b.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
df72e5ca58 [MOVED FROM GST-P-FARSIGHT] Pass pad as pad to reset_pad_private
20080514231643-3e2dc-006960b9cdc3ce8e1f890dc6d194778cbc7c9736.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
263a914b08 [MOVED FROM GST-P-FARSIGHT] Print debug message if we return non-ok from chain
20080502191004-3e2dc-f1f7237c06c1158cf27e29d32a69de06f7112506.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
8a2f376f04 [MOVED FROM GST-P-FARSIGHT] Don't return EOS if we have no pads
20080502190954-3e2dc-41351225e909e6d0837a6a60e187d33ab186ad76.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
e23efd9e81 [MOVED FROM GST-P-FARSIGHT] Check that the format is NOT time
20080501203154-3e2dc-780e46b1f0fe76a66e2d79a2eb85d764ff5f182f.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
095636bfd2 [MOVED FROM GST-P-FARSIGHT] Don't use g_queue_clear()
20080428221737-3e2dc-bb8e4748751c29e0857313a09f85067ab12c3fe4.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
dbeab8d0b8 [MOVED FROM GST-P-FARSIGHT] Pad push event after the lock has been unlocked
20080501200940-3e2dc-ae5fec5f79f32777bba649d0d700d49f7bedff40.gz
2009-02-17 19:29:05 +01:00
Olivier Crete
312b4156c1 [MOVED FROM GST-P-FARSIGHT] Create generic segment is none received and refuse non-time segments
20080501182554-3e2dc-ace5ca000414428d6d94478adc5927c9f91975df.gz
2009-02-17 19:29:05 +01:00
Simon McVittie
c6df5201b0 [MOVED FROM GST-P-FARSIGHT] Add missing semicolon (did anyone test this?!)
20080429140802-53eee-41fdb4391eddb125b7e34019427cfa5dc8afd6c0.gz
2009-02-17 19:29:05 +01:00
Youness Alaoui
1c57d2d70c [MOVED FROM GST-P-FARSIGHT] Robustness check, make sure the queue is not empty before using the head element
20080429003600-4f0f6-708c654b65812caeb3612248dbe0b2e62567c250.gz
2009-02-17 19:29:05 +01:00
Youness Alaoui
7a4034db44 [MOVED FROM GST-P-FARSIGHT] Remove useless condition
20080429003412-4f0f6-9e890ad0ac442791a8b22650a75cb754d7f2d723.gz
2009-02-17 19:29:05 +01:00
Youness Alaoui
cd3f191dab [MOVED FROM GST-P-FARSIGHT] check against audio_buffer_clip which can return NULL if the buffer is outside the clipping segment
20080429000339-4f0f6-7e4e31f066b87e29265ddb3978929e51efbff47d.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
b4ac5eabc9 [MOVED FROM GST-P-FARSIGHT] Fix object locking in setcaps
20080428234948-4f0f6-4586434b4308e114f495e926996fc19483c1056f.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
806f8e05c6 [MOVED FROM GST-P-FARSIGHT] Use g_cond_broadcast instead of g_cond_signal
20080428234935-4f0f6-e51fab31772b32f2fb080ad70c6bedefc5c26dc6.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
2f5fd70ad8 [MOVED FROM GST-P-FARSIGHT] Max latency should also be increased by our own latency
20080428232851-4f0f6-05f9a89403cd54211f2f4a6595704270eab9616f.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
89566bfc8a [MOVED FROM GST-P-FARSIGHT] Fix deadlock on invalid timestamp error
20080428223606-3e2dc-963e48b33efaf84c16d4ec4b789a6dfb2d9358ad.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
72efe4c3d7 [MOVED FROM GST-P-FARSIGHT] Added comment for clarity
20080428161958-4f0f6-cbaa166fbde99013b555c69ab48d964d75773a7f.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
a3ad3be905 [MOVED FROM GST-P-FARSIGHT] added TODO comments
20080428161235-4f0f6-fbc78533d29d37b65add6f6046fec17ce5e30cae.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
5cc67e45c5 [MOVED FROM GST-P-FARSIGHT] check_eos will always return FALSE here..
20080428155927-4f0f6-1a93e295d3df68a96367b75060a89a947efa8944.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
2f17739998 [MOVED FROM GST-P-FARSIGHT] added comment on the no clock error
20080428154956-4f0f6-7e24ed31f9c822e4323b681a54bc23f03c1a325e.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
2a2d21a1f2 [MOVED FROM GST-P-FARSIGHT] error if no clock is available
20080428154850-4f0f6-38fdc4134835c457d0054301579d8cd4cbd4989a.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
c9450ad8e2 [MOVED FROM GST-P-FARSIGHT] renaming unused arg
20080425210456-4f0f6-ab1cdc944c9bcd779504292b21dc1787d6cb62a1.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
5cceb99ad2 [MOVED FROM GST-P-FARSIGHT] removed unused user_data and commented line
20080425203938-4f0f6-787778475b646461da40f3e0000a10bc96e142bc.gz
2009-02-17 19:29:04 +01:00
Youness Alaoui
39d4e1ea60 [MOVED FROM GST-P-FARSIGHT] remove unused cases and empty switch
20080425203735-4f0f6-c0442fcf57e3f08b81bc1be3d69f5cfa0257b52a.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
1dc81fa5e3 [MOVED FROM GST-P-FARSIGHT] Explicit the discont flag mangling
20080428183409-3e2dc-4db2505eeca033a634253b6c2d2f4f1398e9fcca.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
e7413eb0cb [MOVED FROM GST-P-FARSIGHT] Unref events when they are dropped
20080428180711-3e2dc-eb659787f179562f15402c819f188de398deef2d.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
f92c1b9234 [MOVED FROM GST-P-FARSIGHT] Use Glib G_{MAX,MIN}{U,}INT{8,16,32} macros
20080424224627-3e2dc-1036bc58b6b4db2f9f12831cdbae3bc613facbbf.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
341a88cd04 [MOVED FROM GST-P-FARSIGHT] Unlock liveadder empty buffer gcond on flush
20080421032614-3e2dc-4ed29e1583ff684338ba5d7611f60b1a7eaff563.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
244bf6f250 [MOVED FROM GST-P-FARSIGHT] Unref event instead of leaking it
20080418192941-3e2dc-352e25f6ab291612be1dc139790303a1333f65d7.gz
2009-02-17 19:29:04 +01:00
Olivier Crete
696a8dc188 [MOVED FROM GST-P-FARSIGHT] non-perfect stream isnt an error, lets just log it
20080403170956-3e2dc-663f6af8ce067f44ca251a89aebf262d4b8a2869.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
29991c984a [MOVED FROM GST-P-FARSIGHT] We retimestamp to the running time, starting the segments from 0 should therefore work
20080403165431-3e2dc-d981ac2f9ea7fd3c8d2be4d22f1817cf78c614e4.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
0e625b097b [MOVED FROM GST-P-FARSIGHT] Do the min/max of the latencies correctly
20080403165415-3e2dc-c1124bd84e67cf8a911a14bb123b8731da9f4fc4.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
a5e2d805e6 [MOVED FROM GST-P-FARSIGHT] Fix indentation
20080403021425-3e2dc-efd73a6eed0676e158af70484d4e5c42ea75de74.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
3a53d39191 [MOVED FROM GST-P-FARSIGHT] Activate pads before adding them in case we're already playing
20080403020318-3e2dc-afd58f992c0b3057221b91034b2fcd91f296e52d.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
5a48de94d7 [MOVED FROM GST-P-FARSIGHT] For latencies, use the min of the max and the max of the min (and the min wins if they cross)
20080403020253-3e2dc-dda7e471073ee75a6f60e845c3c546af9be19675.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
1e7eeda115 [MOVED FROM GST-P-FARSIGHT] Rename next_ts into expected_ts, make sure all buffers have a duration
20080403005728-3e2dc-8245ce1bfeebebfb8f75073253b3c0e3c4b5f596.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
56757b3ae2 [MOVED FROM GST-P-FARSIGHT] Don't try to set the discont flag if the duration of the previous incoming buffer was not valid
20080403004012-3e2dc-6f95520c928c347508bdf6188c873ed724ad2dd7.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
dc27b8f569 [MOVED FROM GST-P-FARSIGHT] Reset buffers offsets to none
20080402224627-3e2dc-d3ee8c7d0c14131017842d8159f7f684d0ccef6d.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
9b1a57442e [MOVED FROM GST-P-FARSIGHT] Import adder src event handling
20080402224612-3e2dc-21a682b18fe18782bf7fa48983c13c1ad86dc5a1.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
59d6b57d52 [MOVED FROM GST-P-FARSIGHT] Push out a simple newsegment event
20080331184421-3e2dc-69544b5b03ae3bb8c1e3f967974fd250d04056b5.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
ffa0065ab3 [MOVED FROM GST-P-FARSIGHT] Don't return EOS if there is no sink pad
20080331184404-3e2dc-482a134b47eadcd9f1f9d144c02ab1145028fa07.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
6458bc43a4 [MOVED FROM GST-P-FARSIGHT] Reduce locking a bit and cleanup code a bit
20080331171116-3e2dc-5ddfb0e459004780d3f7a660c64f58243936a844.gz
2009-02-17 19:29:03 +01:00
Olivier Crete
2a4e341b5d [MOVED FROM GST-P-FARSIGHT] Add liveadder element
20080329004518-3e2dc-40e4746fe82bbc5a871f03fe6ff6048f436c9f85.gz
2009-02-17 19:29:03 +01:00
Michael Smith
a6320f13f1 scaletempo: Do not use void pointer arithmetic. 2009-02-13 12:18:48 -08:00
Julien Moutte
8ad4f28d67 Make the demuxer reusable in READY->PLAYING->READY->PLAYING cycles by
flushing adapters correctly.
2009-02-12 22:40:48 +01:00
Sebastian Dröge
e8efc4d020 mxfdemux: Also include the picture/sound/data essence coding in the unknown caps 2009-02-12 11:00:07 +01:00
Sebastian Dröge
25e84ff223 mxfdemux: Update TODO, we should support the drop-frame property of timecode tracks 2009-02-12 11:00:07 +01:00
Sebastian Dröge
eb78f9c8f7 mxfdemux: Fix resolval of identifications from the preface 2009-02-12 11:00:07 +01:00
Sebastian Dröge
61b284de0d mxfdemux: Parse MXFTimestamp's milliseconds and add _to_string() function 2009-02-12 11:00:07 +01:00
Sebastian Dröge
144466e2cd mxfdemux: Update TODO 2009-02-12 11:00:07 +01:00
Sebastian Dröge
48dea2af6e inputselector: Fix compilation, activate_sinkpad() has no notify parameter 2009-02-11 17:21:20 +01:00
Michael Smith
b4c2d8c1bb input-selector: Activate and notify pad before processing events.
Events should trigger pad selection if we don't already have an
explicitly selected pad, so that events prior to first buffer don't get
lost.
2009-02-10 16:23:54 -08:00
René Stadler
ff2d0621f7 camerabin: Sanitize constants used for element factory names. 2009-02-11 01:59:39 +02:00
René Stadler
6675318107 camerabin: Use v4l2src as default source. 2009-02-11 01:59:39 +02:00
René Stadler
7207ef163b camerabin: Add .gitignore to hide generated signal marshaller files. 2009-02-11 01:59:27 +02:00
René Stadler
d821246de6 camerabin: Fix plugin details to use GST_PACKAGE_* values. 2009-02-11 00:19:22 +02:00
René Stadler
8f1d41637c aacparse: Fix license specified in plugin details. 2009-02-11 00:15:43 +02:00
Sebastian Dröge
08aadd31dc mxfdemux: After pulling the footer metadata reset essence track positions to 0 2009-02-09 18:14:14 +01:00
Sebastian Dröge
1229f0a149 mxfdemux: When trying to find an essence track position try to find position+1 too
By searching for the following position we will add the complete
generic container (i.e. all tracks) at the same position to the
index which should make finding positions for more than one track
a bit faster.
2009-02-09 17:55:05 +01:00
Sebastian Dröge
df0dd0b378 mxfdemux: For new essence tracks only set the position to 0 if it starts in the current partition 2009-02-09 17:48:38 +01:00
Sebastian Dröge
1ae9334355 mxfdemux: Check if the length of the src/essence track arrays are 0, not the array itself 2009-02-09 17:44:43 +01:00
Sebastian Dröge
32dc77f853 mxfdemux: Make sure that the srcpad and essence track arrays always exist 2009-02-09 17:25:35 +01:00
Sebastian Dröge
ae4b0fcb7c mxfdemux: Change some GST_ERRORs to something less critical 2009-02-09 16:40:44 +01:00
Sebastian Dröge
3f9400d968 mxfdemux: Only go into EOS and send segment-done after all tracks are finished 2009-02-09 16:40:44 +01:00
Sebastian Dröge
15c0db9c38 mxfdemux: Update TODO 2009-02-09 16:40:44 +01:00
Julien Moutte
fe54254bd9 Fix build for camerabin. 2009-02-09 15:48:20 +01:00
Nokia Corporation
3751eaeb79 Add camerabin element. 2009-02-09 10:22:09 +02:00
Sebastian Dröge
dc408bb28b mxfdemux: Fix seeking to the end of file
When seeking to a position where no new offset can be
found or after the end of a track don't set the EOS flag
to TRUE as we don't (and can't) push EOS downstream then.
Instead set the current essence track position to then
end of the essence track and let the loop or chain function
set everything to EOS and push EOS downstream.

Also restart the pad's task if resolving metadata failed
(playback will continue as before) and return FALSE from
the seek if no new offset could be found.
2009-02-09 07:33:41 +01:00
Sebastian Dröge
f169201c24 mxfdemux: Fix last_stop calculation when seeking 2009-02-08 21:52:03 +01:00
Sebastian Dröge
33baa707a2 mxfdemux: Resolve source package before accessing it's members 2009-02-08 21:31:40 +01:00
Sebastian Dröge
2b566be795 mxfdemux: Correctly implement timestamping in all cases
When the material package track and source package track
edit rate are different the source package track edit
rate applies to the stored essence and the material track
edit rate only applies to the values in the track's sequence
and components.
2009-02-08 21:23:03 +01:00
Sebastian Dröge
3cc77d4dd6 mxfdemux: Correctly handle DURATION queries with a negative duration 2009-02-08 21:22:17 +01:00
Sebastian Dröge
81fb90748f mxfdemux: When changing to the component after the last component update the essence track position 2009-02-08 21:17:11 +01:00
Sebastian Dröge
c33678dab3 mxfdemux: Small cleanup and an additional check
Update TODO list, reduce size of a stack allocated string
and don't allow essence tracks with an invalid edit rate
2009-02-08 21:12:21 +01:00
Sebastian Dröge
658066d085 mxfdemux: For material packages make sure that tracks resolve to source tracks 2009-02-08 07:33:33 +01:00
Sebastian Dröge
8dc9f2ea4d mxfdemux: Add support for non-standard Avid MXF files containing DNxHD essence
Avid uses a custom essence container UL and custom essence element keys
that are fortunately compatible with the generic container essence
elements. Partially fixes bug #561922.
2009-02-07 10:38:26 +01:00
Sebastian Dröge
3c3dff6869 mxfdemux: Make essence track creation a bit more robust against broken files
Some files contain multiple tracks with the same track number but different
track id inside the same source package. This is invalid and we simply ignore
the second and following of such traacks now instead of overwriting the
information of the first one.
2009-02-07 10:13:54 +01:00
Sebastian Dröge
410681f8b5 mxfdemux: Don't include multiple descriptors in the track's descriptors 2009-02-07 10:03:24 +01:00
Sebastian Dröge
6e392318c0 mxfdemux: Add support for non-standard Avid MXF files containing DV essence
Avid usually uses a custom essence container label for the essence
descriptors and stores the actual codec that is used inside the
picture essence coding field (and for sound probably in the sound
essence coding field but I have no sample files with sound).
Partially fixes bug #561922.
2009-02-07 09:27:13 +01:00
Sebastian Dröge
1822dc99d3 mxfdemux: Add data definition for Avid vendor specific picture essence 2009-02-06 11:57:46 +01:00
Sebastian Dröge
86088f92be mxfdemux: For tracks with no known mapping use dummy caps 2009-02-06 11:55:45 +01:00
Sebastian Dröge
6eef7983fb mxfdemux: Don't remove invalid new essence track twice from the GPtrArray 2009-02-06 11:21:00 +01:00
Sebastian Dröge
f529a4c6b3 mxfdemux: Implement keyframe detection for MPEG4 video streams 2009-02-06 11:09:11 +01:00
Sebastian Dröge
0d8099685d mxfdemux: Handle some more special cases when setting the position when seeking 2009-02-06 10:46:47 +01:00
Sebastian Dröge
bb11522f1d mxfdemux: Adjust last_stop to the last keyframe when seeking 2009-02-06 10:46:09 +01:00
Sebastian Dröge
22cb259f19 mxfdemux: Fix logic for finding the previous keyframe 2009-02-06 10:06:59 +01:00
Sebastian Dröge
6208795598 mxfdemux: Add keyframe detection for MPEG2 video streams
This is useful for seeking as we usually want to seek to the previous
keyframe. The keyframe detection is done by parsing the MPEG2
elementary stream and if a GOP or I-frame packet is found we
assume a keyframe in this edit unit.
2009-02-06 09:53:13 +01:00
Sebastian Dröge
c9f6a8b586 mxfdemux: Protect the metadata with a lock against concurrent access 2009-02-05 21:29:29 +01:00
Josep Torra
e3fcf51e2c mpegpsdemux: fixes clossing segment generation.
Ensure that the clossing segment is generated correctly and being
properly pushed.
Added some GST_DEBUG to check it.
Ensure that last_stop is updated in stream time.
Calculate duration as delta of PTS as it seems more correct than delta
of SCR in some clips that I tested.
2009-02-04 22:50:30 +01:00
Josep Torra
f44b64ce92 mpegpsdemux: several fixes on the seeking function in pul mode.
Removed a line wrongly copy pasted in my previous commit.
Avoid an unsigned integer overflow.
Seek last_stop in stream time.
Clamp last_stop in stream time between first and last SCR.
Fixed a typo in the GST_DEBUG line and added some more info.
2009-02-04 22:17:36 +01:00
Josep Torra
77bc3a162c Moved var declarations to the begin of function 2009-02-04 16:20:40 +01:00
Josep Torra
b7198258f2 Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-02-04 16:18:27 +01:00
Josep Torra
5d1abdbe2c Improved seeking in pull mode. Some refactoring and small fixes 2009-02-04 16:11:23 +01:00
Sebastian Dröge
ad2a64870c Update TODO 2009-02-04 11:12:14 +01:00
Sebastian Dröge
3e2a880c6b Post an UMID tag with the current package's UMID 2009-02-04 11:12:14 +01:00
Sebastian Dröge
c0557df34d Reset the current partition after seeking and NEWSEGMENT events 2009-02-04 11:12:13 +01:00
Sebastian Dröge
2ee7e7768d In push mode play all remaining parts of the file on EOS if there are any 2009-02-04 11:12:13 +01:00
Sebastian Dröge
cc5699340d Add property to set the maximum allowed time difference between tracks 2009-02-04 11:12:13 +01:00
Sebastian Dröge
fd72ef34f6 Always set the current package, not only when it was changed
This is necessary as the current package link will be set to NULL
when updated metadata is parsed and should be set here again.
2009-02-04 11:12:13 +01:00
Sebastian Dröge
a79c4e0314 Try to resolve all synchronization issues, not only the first 2009-02-04 11:12:13 +01:00
Sebastian Dröge
c4a0bc9887 Remove some checks that will always be TRUE 2009-02-04 11:12:13 +01:00
Josep Torra
9e2dc060a4 Also flush parser when a newsegment is received. Fixes loop in reverse mode. 2009-02-02 23:29:24 +01:00
Josep Torra
c8eb591688 Add pull mode to mpegpsdemux and report duration reading first and last PTS. Some random cleanups. 2009-02-02 23:12:07 +01:00
Sebastian Dröge
18e2ffa484 Cleanup playback package selection and notify about the current package 2009-02-02 17:48:47 +01:00
Sebastian Dröge
5277650a20 Update tags properly, especially on component switch 2009-02-02 16:23:30 +01:00
Sebastian Dröge
0c756199c0 Error out if no pads could be created 2009-02-02 16:05:14 +01:00
Sebastian Dröge
ee131d8af7 Resolve metadata and update tracks if necessary before seeking 2009-02-02 15:54:23 +01:00
Sebastian Dröge
5e57a0a052 Don't go after the last component of a track 2009-02-02 15:54:00 +01:00
Sebastian Dröge
92f372ba30 Return an error if updating an already existing pad fails 2009-02-02 15:53:32 +01:00
Sebastian Dröge
60f5c6f03f Fix seeking if the source clip duration is unknown 2009-02-02 07:44:12 +01:00
Sebastian Dröge
0ac0645de6 Add initial support for seeking in push mode 2009-02-01 17:00:33 +01:00
Sebastian Dröge
99298da3d5 Fix deadlocks when seeking in pull mode failed and check new offset before using it 2009-02-01 17:00:33 +01:00
Sebastian Dröge
43ade6cf71 Update offset in push mode and handle events properly 2009-02-01 17:00:23 +01:00
Sebastian Dröge
58a3220dde Implement initial seeking support (pull mode only) 2009-02-01 15:07:09 +01:00
Sebastian Dröge
6a09f5f4fe Don't use GLib 2.16 API unconditionally 2009-01-31 11:29:20 +01:00
Sebastian Dröge
93a2b5c9ea Check for EOS on all pads after adjusting the essence track durations 2009-01-31 11:02:26 +01:00
Sebastian Dröge
ebd8b8dbaf Fix duration calculation for essence tracks 2009-01-31 11:02:26 +01:00
Sebastian Dröge
f638caef57 Implement GstElement::query/get_query_types vfuncs 2009-01-31 11:02:26 +01:00
Sebastian Dröge
061a96fa94 Reset all internal state in finalize 2009-01-31 11:02:26 +01:00
Sebastian Dröge
02769b4a4d Improve EOS detection and fix push mode for the last pushed in buffer 2009-01-31 11:02:26 +01:00
Sebastian Dröge
707136fe5d Keep track of essence track position when playing source packages
This ensures that the correct essence elements are played and
that we seek to the correct essence elements.
2009-01-31 11:02:26 +01:00
Sebastian Dröge
dfa0e43848 Compensate for timestamp/duration rounding errors 2009-01-31 11:02:25 +01:00
Sebastian Dröge
a930b36adc Improve EOS logic to check all pads when pulling a packet returned EOS
This makes sure that we finish all pads that are at EOS now instead of
just finishing one and returning to this point over and over again.
2009-01-31 11:02:25 +01:00
Sebastian Dröge
2dbe706330 Only push buffers for pads that are not more than 500ms before other pads 2009-01-31 11:02:25 +01:00
Sebastian Dröge
91ed2ef166 Improve EOS logic to only go into EOS after all tracks are finished 2009-01-31 11:02:25 +01:00
Sebastian Dröge
b783f38813 Update TODO list 2009-01-31 11:02:25 +01:00
Sebastian Dröge
20c92a4db3 Try to keep the timestamp difference between tracks lower than 500ms 2009-01-31 11:02:25 +01:00
Sebastian Dröge
742fc4e80d Fix playback of atom files 2009-01-31 11:02:25 +01:00
Sebastian Dröge
f404262adf Keep track of current playback position 2009-01-31 11:02:25 +01:00
Sebastian Dröge
556e3c46e4 Set essence track positions to 0 if we're at the start partition 2009-01-31 11:02:24 +01:00