ActionScript rm.callAS("multimedia_seek") Seeks to scene-change, rather than timepoint - BUG?
- February 26, 2020
- 1 reply
- 5040 views
Here's a real head-scratcher.
In the attached files, one notes ActionScript calls to seek a timepoint in an RMA, then Play.
A Seek does, indeed, occur. But in many trials, with many different video recordings, the buggy behavior is [to its credit] entirely, uniformly, consistent. Follows my 'Findings of Fact':
- With certain compliant video files, Acrobat's 'Seek' command operates in this manner: The Seek lands on the first frame of a scene-cut [in the original source footage] immediately preceding the Seek timepoint, rather than the timepoint stipulated by the <rm.callAS("multimedia_seek")> command.
The first attachment utilizes encoded/compiled-in/enclosed video files [as well as two, secondary, networked examples], for their precise operation is most fully insured, being free of network entanglement and uncertainties. The two compiled-in, Flash-dependent clips are identified by the default Flash Play icon being seen in lower-left of each. A Seek is executed as follows:
/* A variant of Joel_Geraci1 at Forum, 2-2-18 - and also from D. P. Story */
var aRM = this.getAnnotsRichMedia(0); // var used to ID any Clip on first page (PDF document page# minus 1)
var rm = aRM[3]; // get rich media annot for The Clip [RM List Position# minus 1]
if ( !rm.activated ) rm.activated=true; // activate the Clip-annot
rm.callAS("multimedia_seek", (12));
rm.callAS("multimedia_play"); // play The Clip
//
I don't aim to rattle the community, with rancor and hubbub concerning Adobe's upcoming End of Support for Flash Player. I am a stalwart, 27-year company shareholder, customer, and developer, more interested in finding solutions to abundant, progressive, combined, forms of expression. I am, with positive anticipation, initiating expertise with InDesign, and with Animate. With regards to the company attending to my posted (presumable) bug, at this moment, Adobe "remain[s] fully committed to working with partners, including Apple, Facebook, Google, Microsoft and Mozilla to maintain the security and compatibility of Flash content."
That first attachment speaks to 'Flash content', for which support remains committed.
But, furthermore, the company explicitly states that moving beyond the year 2020, in re Acrobat, and Reader:
- Playback of non-Flash media (excluding *.flv and *.swf) content in PDFs will continue to be supported.
- Converting Office or HTML to PDF with embedded rich media (non-Flash content) will continue to be supported.
- Inserting or embedding rich media (non-Flash content) in PDFs will continue to be supported.
My second attachment speaks to 'non-Flash media', and 'non-Flash content'.
The second attachment utilizes network-referenced video files, subject to network entanglement and uncertainties, which usually compromise performance and, invariably, compromise temporal precision –– my audiences include playwrights, comedians, musicians, dancers, and singers, not to mention film and video actors, directors, camera operators, editors, reviewers, and producers –– in short, media choreography. "Cue" is the word; timing is everything. A Seek is executed as follows:
/* A variant of Joel_Geraci1 at Forum, 2-2-18 - and also from D. P. Story */
var aRM = this.getAnnotsRichMedia(0); // var used to ID any Clip on first page (PDF document page# minus 1)
var rm = aRM[3]; // get rich media annot for The Clip [RM List Position# minus 1]
if ( !rm.activated ) rm.activated=true; // activate the Clip-annot
rm.callAS("multimedia_seek", (12));
rm.callAS("multimedia_play"); // play The Clip
//
In either of the attached files, it is the case that Seek appears to function as an inaccurate operator.
I am not wedded to Acrobat, nor the PDF format. But I am steadfastly devoted to universal, low-cost, platform-independent and, above all, network-independent, dissemination of human expressive forms.
Next follows an engineering hint: I shall presently post an example that differentiates [consistently] irregular behavior by Acrobat, re ActionScript calls, using two different sources of H.264, .mp4 files. From one of those H.264 encoders, the result is as expected, per Adobe documentation. It can be found by a search on ActionScript rm.callAS("multimedia_seek").
Stay in touch.
