I've been documenting work (and re-using some code from an under-funded project which came to a grinding halt when my last SD card burned out). As part of the documenting process, I've been dubbing audio on OpenOffice presentations. I've automated this process and the workflow is conceptually simple: .odp -> .pdf -> .png -> (quite a few more steps) -> .mp4 container with H.264 video at 10 frames per second and MP3 audio at a maximum of 128kb/s quality.
Software requirements are as follows: Unix type operating system with bash, make and perl on command path, OpenOffice or LibreOffice on command path, pdftocairo or pdftoppm on command path, ffmpeg or avconv on command path.
The directory structure is relatively simple (compared to previous projects). Populate a leaf directory with the given Makefile and an OpenOffice presentation with any name. (Or a PowerPoint presentation, if you really insist.) If multiple presentations exist in a directory, the one which numerically sorts last is chosen. This allows crude versioning to occur within a directory. Anyhow, with these two files present, type:-
make slides
and the directory will be populated with .png files - one for every slide in the presentation. (This workflow specifically doesn't work with animated images or embedded video. Feel free to add features as required. Likewise, script may fail to batch convert .odp to .pdf if OpenOffice or LibreOffice is running in foreground. Feel free to detect or correct this problem.)
With your preferred image viewer, step through slides and record audio for the presentation. Edit audio and place .wav or .mp3 with any name in the same directory. If multiple audio files exist in a directory, the one which numerically sorts last is chosen. This further allows crude versioning to occur within a directory.
Next comes the tricky part: slide transition times defined in a .csv file. The .csv file should be in the following format:-
01,1:06
02,2:33
03,5:04
where the first column is the slide number and the second column is the absolute time within the audio at which the slide should be *discarded*. (So, the last entry should be the duration of the audio plus maybe a small margin of error.) Times may be specified in seconds; minutes and seconds; hours, minutes and seconds; all with or without fractional values. Times are rounded down to the nearest 0.1 second.
Numbers in the first column should follow the numerical format of pdftocairo and therefore some slides may require one or more leading zeros.
With the audio track and transition times present, type:-
make this
and wait for the presentation to be made at 1024×768 pixels, 512×384 pixels, 256×192 pixels and audio only.
If making multiple presentaions, the second optional Makefile provides additional functionality for directory recursion and consistent titling across multiple presentations. Specifically, branch directories form sections and subsections. Each section (and suchlike) may optionally have one slide (plus audio) which prefixes every video and may optionally have one slide (plus audio) which suffixes every video. These "bookends" may be nested such that a video may be of the form:-
However, this configuration is significantly more fiddly and knocks all of the timings in the .csv files.
I'll be using these scripts to process about 800 slides in 60 presentations. However, I've yet to record the accompanying audio. This will require about two minutes of audio per slide and, for me, before audio editing, that requires at least five minutes per slide with a hot microphone plus additional time to practice. So, I've got at least 4000 minutes of talking and I'll require significantly more time to edit and check my work.
Understandably, this task got me thinking about accelerated learning and it is my belief that 400 hours of finished presentations could form the vast bulk of a rigorous degree education.
Script to make one presentation:-
begin 644 Makefile.gz
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
F9WGA'/6[]F1=:.[^9S?8]<CN+[OGNQ^OUVB(&>(O29%TT_H7````
`
end
Optional script to make multiple presentations:-
begin 644 Makefile.gz
M'XL(`#NB'UD"`\U7>5/;1A3_&WV*5R%'DD&'Q6$P<0:2>A*F)702AK9#&"Q+
M*WN#KM%*PN;(9^];R?(%>*"E3&!&N_ONW[ZWN\^KOQ@92XP>#0T2YA#8ET00
M5N$X)N&QYU&'P&$0)X0Q.(G@('-I9)Q2ET3P!Q))F-HIC4+X$(4Y21A.45?Y
MH%IFHPDG`\(9+$I2F@6ZL(H\SC"MA@4LM9-T2F@"LW,R65O6W'IS@;]I;<^O
M-\RY]98YK[_5V%Q8[Y1K)&2,0.2!X9+<8*E+0[!#MUQ>DR3"'1F!3P.:0HQ`
M[![U:3K2!:'SUTGG<Z-MYU00;-]O@>,3.[R@)J0#RH2554B(DR6,Z,)*3!(?
M-`+RU8#Z1'&)1T/B*I(T:+^M&T>XYQ[2WZGJ#2?]8,:W"=$P(K;'1BPE@2(Z
M+L@B_J-4,>X5^0)T+ZIWLB!4(;2$E20`S0,:]+6Z'H?]BH"I].A0EY0R?+6B
ML\R;IY>VIJ@0T*OA*7R6B/A>MOAF.D6%I:!';@QI!'KL>L(*B\H:U;0!L5V?
MEZFFC44UE$(AZ/I(=$'+H5XHWT)J4PR_T87;6_@FK$18ZR]AQZ>]A+R$(<_V
M&>&@HYB?+DSO:+V8!Q2+M42NE7F;M<5M3VW]`.M=6<9AYONH@&RTL41CF3'4
M#_*EWA[G38*=J<:9A'+A(J&<CHLTBF,4QR5HS+%]@ONF#:%AXJ&?$D;0;)K`
MZ8!S_/S))39!^P3-[9UE*#&*\3X7SAR;XBE_#7>3M$ZAHU.$GO,+%7?)SCD'
M-#^*8NZ#%CO6*,0TIY7C/=0;6MOH-<5[#&.FPPLO2&&4Y9N6&8.68%!CG<E)
MKIQ[04SZ_Y/M$M@C\5O_PH?UQ/A?R':5&#?K@<W?.'T&#;V'&DFS"?=\V\'A
MRL[GCAP6`>DG)`99.;.UZ_,S4]L]KY]AU6SOG&NWY4VLRK.UH@5V#":"*2:-
MEKT`K<"`)!N">`.K<X`O$F'IO5M]8<]^7@0]Y#7,XN\)<!;*C-Y+YW^"U=C8
M:NXBK/(I?)G$+#ZK#R;F9T3P<&(>@U,D1NA%T24)7=:J.J!7:Q@JSV7/P'R\
M3XNNX=4"*%V6[HE+T]:T-7E.^_&L%N.);83@4I9>4`M#4C!Z78<W;R"X=&D"
MLJ2\/_C:465L`QV\(N,$ZB#KNE'19U6P7\=6)LP"DE!'BZY"@FN'/^N5&1U%
MY"(L2?GX^_%[=:YFNU6US)MTGJT_O@9X2Y%X"^'VKRGBV"VBFC)*PZ5V#R6L
MY2+#Z^7\-,DFV]IHS=26%R5847[;W,/OVQW^75M3;Y!,;&<`DN2"LG_PY>.I
M>A-G;`#[_75)ZGP^O1&Y#_%.%PU1%^N&.$1-'<7O[L9\OAWB7?M[1$-%!'%]
MOZ_ND2%Q%%%2C@Y^ZZ@PSK*(I[XJ7)!Y8?3E<HR+T6%Y,?*+I9C@U2)78/CO
M!C+D/W.`!]1&X[\>?E$USM4DY>3PJ*.*/''S3ANE_E09E=IB-[YRL289<8$-
M];HQ'(Y7,C-*B]5S@M]R_NA'D@Q#[A:NQRYX+.C#M5,":[6_:T'-U6J?:D>U
0K]T'(C0%X1^4/-2PZ`X`````
`
end
I deleted these Seth Rich submissions and threw them here with some updates.
The Washington Post reports:
The family of slain Democratic National Committee staffer Seth Rich refuted Fox News reports that he had leaked work e-mails to WikiLeaks before he was fatally shot last year in the District.
The reports, which gained traction on social media, said an FBI forensics examination showed Rich transferred 44,053 DNC e-mails and 17,761 attachments to a now-deceased WikiLeaks director.
[...] Several federal and local law enforcement authorities also said Tuesday they were not aware that Rich sent any DNC information to WikiLeaks. "There is nothing that we can find that any of this is accurate," said Dustin Sternbeck, the chief spokesman for D.C police, which is leading the investigation into Rich's death.
[...] The allegations were reported by Fox News, including WTTG-TV, the District's Fox News affiliate. The reports cited a private investigator, Rod Wheeler, who Fox said was hired by the family and had previously worked for D.C. police. He also has been an on-air contributor to the Fox-5 news station. Fox also cited an unnamed federal official who said Rich had transferred thousands of emails to a WikiLeaks director. Fox's source asserts those emails were transferred between January 2015 and May 2016.
Also at MarketWatch, Fox News, and Washingtonian. Original Fox 5 DC story which now includes details of Wheeler backtracking on his claims multiple times during the week:
On Wednesday, just before our newscast, Wheeler responded to our requests via a telephone conversation, where he now backtracks his position and Wheeler characterizes his on-the-record and on-camera statements as "miscommunication."
And here is a reddit thread about some new "evidence".
-----
A federal investigator who reviewed an FBI forensic report -- generated within 96 hours after DNC staffer Seth Rich's murder -- detailing the contents Rich's computer said he made contact with WikiLeaks through Gavin MacFadyen, a now-deceased American investigative reporter, documentary filmmaker, and director of WikiLeaks who was living in London at the time.
"My investigation up to this point shows there was some degree of email exchange between Seth Rich and WikiLeaks."
- Rod Wheeler, former DC homicide investigator
"I have seen and read the emails between Seth Rich and WikiLeaks," the federal investigator told Fox News, confirming the MacFadyen connection. He said the emails are in possession of the FBI, while the stalled case is in the hands of the Washington Police Department.
The revelation is consistent with the findings of Rod Wheeler, a former DC homicide detective and Fox News contributor and whose private investigation firm was hired by a third party on behalf of Rich's family to probe the case.
A report on Monday evening claimed to find links between slain DNC staffer Seth Rich and WikiLeaks. But Rich's family told BuzzFeed News, "[W]e see no facts, we have seen no evidence, we have been approached with no emails."
[...] Wheeler told CNN he had no evidence to suggest Rich had contacted Wikileaks before his death.
Wheeler instead said he only learned about the possible existence of such evidence through the reporter he spoke to for the FoxNews.com story.
[...] Wheeler himself admitted he had "never seen the emails directly." Furthermore, his claims of "evidence" were based on the fact that an unnamed federal investigator had told him he saw the emails between Seth and WikiLeaks but that when he went to the police with concerns, he had been "shut down" and the investigation was being impeded by "a high-ranking official at the DNC."
additional coverage:
previous story:
WikiLeaks Announces $20k Bounty For Murderer(s) of DNC Staffer
-----
I was reading this article and thought it might be a good submission as a follow up to the post about Comey's firing.
I held back, as I thought it might already be referenced in the comments. As such, I went back and, as I was reading through the comments, came across this gem from VLM:
Could someone explain the Russia conspiracy theory?
It seems to be anointed queen in waiting lost because she sucked and the electorate hates her although the elites love her, therefore someone is to blame, and it can't be her and it can't be the D party leadership, so obviously it was gremlins or space aliens or ... I know, Russians!
Is there anything to it beyond "argh matey here be tinfoil internet pirate hats"
This got me thinking about the various ways in which we (Americans) have allowed ourselves to be divided, and discussion has devolved into demonization and wacky conspiracy theories.
I posted the following as a response (with minor changes) to VLM:
Regardless of whether the outcome would have been the same, the Russians continue to use active measures (as they have for decades) to influence public opinion in countries of interest for them. This includes the US, UK, France, much of the former Soviet bloc and FSM (okay, FSB) knows where else.
The rise of social media and the ridiculous conspiracy theories* of the right in the US have primed the public to accept fake news (that is, lies intended to pollute public discourse) as long as it comports with their existing biases. That, and demonizing political opponents has weakened our political system and allowed folks like the Russians to muddy the waters and make it more difficult for us to work together to address the issues we all face.
It's appropriate that we all stand together to identify and understand how our public discourse and political system are being affected by those who wish to weaken, destabilize and/or harm the US.
*Partial list of right-wing conspiracy theories. Feel free to add any left-wing ones you think appropriate.
Pizzagate
Birtherism
Jade Helm
Common Core will turn your kids gay
Agenda 21
Sharia Law coming to your town
Plans for firearms confiscation
FEMA Concentration Camps
Clinton death squads
I posit that by promoting bald-faced lies as truth and attempting to discredit those with whom we disagree, we open ourselves up to just the sort of stuff that Russia has been trying (and with the expansion of news bubbles, aided by social media, being more successful) to do for decades.
I chose not to submit the Reuters article, as it seemed to be more of a piece with the Comey firing article. What's more, even though many sources were cited, the core source(s) were anonymous. I'm sure that if there's truth to the allegations, we'll hear more about it soon.
All the same, it seems appropriate for the US to examine the role of external actors on its political and information ecosystems.
Just because the folks attempting to sway public opinion with lies are doing so at the expense of your political enemies, they are not your friends, and should not be defended or given a pass on their interference in our system.
Such actors are a threat to our national interests and should be treated as such by all of us.
I guess the question becomes, are you an American first, or a [Republican|Democrat|Libertarian|Alt-Right|Communist|Socialist|Whatever] first?
I'm an American. And my fellow Americans (regardless of political stripe) are valued members of my society. Let's work together to make our country successful for all of us. Doing so will benefit society as a whole, socially, economically and politically.
Men-only island set for UNESCO World Heritage status
A Japanese island where women are not allowed to set foot has been recommended for listing as a UNESCO World Heritage site.
Okinoshima in south-western Japan is deemed so sacred that only men are allowed to visit, the Asahi Shimbun newspaper reports. Even then, visitors are not allowed to bring back any souvenirs to the mainland, not even a blade of grass, the paper says. It has been recommended for World Heritage status by an advisory panel, with a final decision to be made at a UNESCO meeting in July.
The home to the Munakata Taisha Okitsumiya shrine, which honours a goddess of the sea, Okinoshima was the site of rituals for the safety of ships, and successful exchanges with the people of the Korean Peninsula and China between the fourth and ninth centuries, the Japan Times says.
wut about the kawaii goddess? Do she count?
New World Order Government cultural organization enforces gender norms on a Japanese island with a for real goddess on it, leading to a disastrous series of events. I'm sure somebody could write a 25 episode anime with that premise.
The FBI translator who went rogue and married an ISIS terrorist
He was Denis Cuspert, a German rapper turned ISIS pitchman, whose growing influence as an online recruiter for violent jihadists had put him on the radar of counter-terrorism authorities on two continents.
In Germany, Cuspert went by the rap name Deso Dogg. In Syria, he was known as Abu Talha al-Almani. He praised Osama bin Laden in a song, threatened former President Barack Obama with a throat-cutting gesture and appeared in propaganda videos, including one in which he was holding a freshly severed human head.
Within weeks of marrying Cuspert, Greene, 38, seemed to realize she had made a terrible mistake. She fled back to the US, where she was immediately arrested and agreed to cooperate with authorities. She pleaded guilty to making false statements involving international terrorism and was sentenced to two years in federal prison. She was released last summer.
FBI employee married ISIS fighter she was asked to investigate
Prosecutors describe her actions as deserving of "severe punishment," but she was sentenced to just two years in prison. According to an analysis by Fordham University, Americans who are prosecuted for ISIS-related cases received on average 13.5 years in prison.
Quick! WRITE THE SCRIPT! Call Lionsgate!
Unblur!
Further to my rant about the speed of current versions of Firefox, I'd like to add one about LibreOffice. At the same time I upgraded Firefox, I upgraded from LibreOffice 4.0.x to 5.2.x and the difference was spectacular.
Now, I have to wait while I watch the buttons on the GUI being repainted.
I think I'll change to Siag Office. Bah!
http://www.nextbigfuture.com/2017/04/fusion-enabled-pluto-orbiter-and-lander.html
The Direct Fusion Drive (DFD) concept provides game-changing propulsion and power capabilities that would revolutionize interplanetary travel. DFD is based on the Princeton Field-Reversed Configuration (PFRC) fusion reactor under development at the Princeton Plasma Physics Laboratory. The mission context we are proposing is delivery of a Pluto orbiter with a lander. DFD provides high thrust to allow for reasonable transit times to Pluto while delivering substantial mass to orbit: 1000 kg delivered in 4 years. Since DFD provides power as well as propulsion in one integrated device, it will also provide as much as 1 MW of power to the payloads upon arrival. This enables high-bandwidth communication, powering of the lander from orbit, and radically expanded options for instrument design. The data acquired by New Horizons’ recent Pluto flyby is just a tiny fraction of the scientific data that could be generated from an orbiter and lander. Engine modeling accomplished during Phase I has shown that we can expect 2.5 to 5 N of thrust per megawatt of fusion power, with an Isp of about 10,000 seconds and 200 kW available as electrical power. We have evaluated the components of the Pluto trajectory including an Earth departure spiral, constant thrust planar transfer, and Pluto insertion using these thrust and Isp levels, and confirmed the plausibility of the proposed mission. In fact, the mission can depart from LEO with about the mass we originally estimated for an interplanetary insertion, widening the range of available launch vehicles and reducing the cost.
Planet Nine in 10-15 years instead of 100:
John Brophy at NASA Jet propulsion laboratory combines a near term 100 megawatt laser beamed power system to enable an ion drive with 70 megawatts of power and 58000 ISP.
They propose a new power/propulsion architecture to enable missions such as a 12-yr flight time to 500 AU—the distance at which solar gravity lensing can be used to image exoplanets—with a conventional (i.e., New Horizons sized) spacecraft. This architecture would also enable orbiter missions to Pluto with the same sized spacecraft in just 3.6 years. Significantly, this same architecture could deliver an 80-metric-ton payload to Jupiter orbit in one year, opening the possibility of human missions to Jupiter. These are just a few examples of high-impact missions that simply cannot be performed today due to limitations in current technology.
Over Christmas, I upgraded my main box to Slackware64-14.2. I put in a pair of new hard disks (Western Digital Blue 3TB) and noticed quite a speed improvement over the Green 2TB ones they replaced.
Slackware64-14.2 still comes with a broken version of vim (it was broken in 14.1 as well) so I rebuilt the vim-7.3 that comes with 14.0. The breakage is that it doesn't redraw the screen properly when run in a terminal window (xterm).
I've been using Firefox as my main web browser for many years, and I know that for a while it's been sub-optimal in a number of ways, technically and politically, but I've been too busy to try anything else. I did look at PaleMoon a few months back, but never went any further. Slackware64-14.2 comes with Firefox 52.x and it's painfully slow. Recent security updates have made it unusable. It's very sluggish when scrolling, and you can see it repainting. When it renders an image or a video, you can see a bright green box behind it! Forget trying to watch a video.
Perhaps I should upgrade my hardware? I've got an AMD Phenom II X6 1045T (2.7GHz, 6 physical cores) on an ASUS M4A 77D motherboard with 4GB of DDR2 RAM. It's five years since I bought the CPU.
In the mean time, I thought I'd try rebuilding firefox. Being very short of time nowadays, I decided to use the Slackware build scripts to do the build rather than trying to do it myself from scratch. I figured rebuilding on my own machine might result in slightly faster binaries if the gcc options were more machine-specific.
I set of a build without looking too much at the build script. The SlackBuild script has to run as root (yuck) which makes me nervous, but I went ahead. I made the mistake of firing up a web browser at the same time to do some googling about firefox performance issues at the same time.
Very soon, the machine was using over 2.5GB of swap. No web browser was usable. After taking several minutes for the browser windows to die, I looked at the build script. It was defaulting to doing seven jobs in parallel (-j7). Obviously, there's not much point in filling up your CPUs if you don't have enough RAM to keep them fed. And Firefox is written in C++ (don't get me started - we have 64GB machines at work that aren't big enough).
It turns out that lots of people are frustrated with the speed of newer versions of Firefox, so I decided to try to rebuild version 45.9.0esr that comes with 14.1 on 14.2. I carefully read the SlackBuild script first, and ensured that it only used a maximum of two cores in parallel. That was a success. In a little over 99 minutes I had a nice mozilla-firefox-45.9.0esr-x86_64-1_slack14.2.txz which installed and is running.
The question is, how much RAM do you need nowadays?
Back to the C++: one of my colleagues is working on a project that runs on 32-bit Linux, and when he was building his C++ which used a lot of template code, it used to run out of memory (address space).
It's amazing how much RAM and CPU cycles (and network bandwidth) you can eat up with C++, Java, Ant and eclipse. There are some particularly perverse ways you can abuse C++ and Ant should be burnt in an incinerator for biological warfare agents.
And who in their right mind designs a build system that depends on an IDE? Eclipse? Argh!