Split audiobook on chapters with speech recognition - f#
I'm looking to create a script that:
can take in a single audiobook sound file
find all instances that match the phrase "Chapter ##"
split out the audiofile into multiple chapter files.
Currently, I have a script that is able to parse some of the words in the book, but it produces way too many false positives.
Here is the script that I have come up with:
#r #"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Speech.dll"
open System
open System.IO
open System.Speech.Recognition
open System.Speech.AudioFormat
open System.Linq
open System.Collections.Generic
let recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))
let numbers = ["Zero"; "One"; "Two"; "Three"; "Four"; "Five"; "Six"; "Seven"; "Eight"; "Nine"] |> Seq.map (fun x -> " Chapter " + x + " " ) |> Seq.toArray
let choices = new Choices()
choices.Add(numbers)
let gb = new GrammarBuilder()
gb.Append(choices)
recognizer.LoadGrammar(new Grammar(gb))
recognizer.SetInputToWaveFile(#"c:\temp\temp.wav")
recognizer.InitialSilenceTimeout <- TimeSpan.FromSeconds(3.0)
recognizer.BabbleTimeout <- TimeSpan.FromSeconds(3.0)
recognizer.EndSilenceTimeout <- TimeSpan.FromSeconds(3.0)
recognizer.EndSilenceTimeoutAmbiguous <- TimeSpan.FromSeconds(3.0)
recognizer.RecognizeAsync(RecognizeMode.Multiple)
recognizer.SpeechRecognized.Add(fun args -> printfn "Recognized [%f] '%s' '%s'" args.Result.Confidence args.Result.Text (args.Result.Audio.AudioPosition.ToString("c")))
recognizer.RecognizeCompleted.Add(fun args -> recognizer.Dispose())
Which generates the following output for my test audiobook file:
Recognized [0.768345] 'Chapter One' '00:00:00.6784580'
Recognized [0.875096] 'Chapter One' '00:00:06.0961451'
Recognized [0.924447] 'Chapter Zero' '00:00:12.4018140'
Recognized [0.859189] 'Chapter Two' '00:00:18.5877551'
Recognized [0.664151] 'Chapter Two' '00:00:23.2371882'
Recognized [0.946657] 'Chapter Nine' '00:00:28.4553287'
Recognized [0.955821] 'Chapter Four' '00:00:33.8530612'
Recognized [0.640227] 'Chapter Zero' '00:00:42.8526077'
Recognized [0.931088] 'Chapter Nine' '00:00:47.8911564'
Recognized [0.783337] 'Chapter Six' '00:00:51.7823129'
Recognized [0.653988] 'Chapter Zero' '00:00:55.9727891'
Recognized [0.732726] 'Chapter Five' '00:01:07.9356009'
Recognized [0.935443] 'Chapter Nine' '00:01:12.4253968'
Recognized [0.870314] 'Chapter Four' '00:01:17.9428571'
Recognized [0.651171] 'Chapter Seven' '00:01:27.8303854'
Recognized [0.922714] 'Chapter One' '00:01:37.0294784'
Recognized [0.684078] 'Chapter Seven' '00:01:42.4172335'
Recognized [0.942972] 'Chapter Zero' '00:01:47.8748299'
Recognized [0.829883] 'Chapter Two' '00:01:51.7959183'
Recognized [0.938676] 'Chapter Nine' '00:01:55.7668934'
Recognized [0.791102] 'Chapter Seven' '00:02:02.6213151'
Recognized [0.875539] 'Chapter Six' '00:02:07.1809523'
Recognized [0.639413] 'Chapter Five' '00:02:11.6308390'
Recognized [0.902068] 'Chapter Five' '00:02:22.1070294'
Recognized [0.910636] 'Chapter One' '00:02:26.4172335'
Recognized [0.630831] 'Chapter Six' '00:02:30.7573696'
Recognized [0.923125] 'Chapter Seven' '00:02:35.2172335'
Recognized [0.766578] 'Chapter Zero' '00:02:50.9215419'
Recognized [0.619602] 'Chapter One' '00:02:57.0077097'
Recognized [0.876517] 'Chapter Seven' '00:03:02.2857142'
Recognized [0.826771] 'Chapter Eight' '00:03:08.2222222'
Recognized [0.875892] 'Chapter One' '00:03:13.0911564'
Recognized [0.837238] 'Chapter Zero' '00:03:17.2018140'
Recognized [0.759909] 'Chapter Three' '00:03:22.0308390'
Recognized [0.939185] 'Chapter Five' '00:03:27.2789115'
Recognized [0.843361] 'Chapter Zero' '00:03:32.7265306'
Recognized [0.664468] 'Chapter Seven' '00:03:37.0766439'
Recognized [0.724578] 'Chapter Seven' '00:03:41.8757369'
Recognized [0.907078] 'Chapter Five' '00:03:47.0839002'
Recognized [0.824832] 'Chapter Seven' '00:03:51.1646258'
Recognized [0.823602] 'Chapter Two' '00:03:56.3229024'
Recognized [0.641332] 'Chapter Three' '00:04:00.6730158'
Recognized [0.870558] 'Chapter One' '00:04:06.3301587'
Recognized [0.883838] 'Chapter Seven' '00:04:12.3863945'
Recognized [0.674429] 'Chapter Five' '00:04:17.6843537'
Recognized [0.676834] 'Chapter Zero' '00:04:22.6031746'
Recognized [0.668765] 'Chapter Six' '00:04:28.4399092'
Recognized [0.918949] 'Chapter Four' '00:04:33.4285714'
Recognized [0.770719] 'Chapter Four' '00:04:37.1600907'
Recognized [0.886996] 'Chapter Four' '00:04:42.7573696'
Recognized [0.888173] 'Chapter One' '00:04:46.7582766'
Recognized [0.911851] 'Chapter Five' '00:04:51.6571428'
Recognized [0.640761] 'Chapter Seven' '00:04:57.7931972'
Recognized [0.739840] 'Chapter Three' '00:05:02.8217687'
Recognized [0.682130] 'Chapter Nine' '00:05:17.6081632'
Recognized [0.916081] 'Chapter Seven' '00:05:27.2662131'
Recognized [0.873457] 'Chapter Zero' '00:05:32.3546485'
Recognized [0.690658] 'Chapter Seven' '00:05:44.1877551'
Recognized [0.754081] 'Chapter Zero' '00:05:50.0643990'
Recognized [0.753562] 'Chapter Zero' '00:05:56.0308390'
Recognized [0.817155] 'Chapter Two' '00:06:01.9274376'
Recognized [0.928972] 'Chapter Eight' '00:06:06.5968253'
Recognized [0.767937] 'Chapter One' '00:06:12.3238095'
Recognized [0.944847] 'Chapter One' '00:06:17.0131519'
Recognized [0.684238] 'Chapter Nine' '00:06:34.5632653'
Recognized [0.790749] 'Chapter Six' '00:06:38.3945578'
Recognized [0.620242] 'Chapter Six' '00:06:43.9718820'
Recognized [0.844388] 'Chapter Eight' '00:06:54.0190476'
Recognized [0.731784] 'Chapter Eight' '00:06:58.2893424'
Recognized [0.631801] 'Chapter Zero' '00:07:12.4272108'
Recognized [0.721280] 'Chapter One' '00:07:18.4834467'
Recognized [0.826446] 'Chapter Seven' '00:07:22.8934240'
Recognized [0.704257] 'Chapter Seven' '00:07:27.1437641'
Recognized [0.857281] 'Chapter Zero' '00:07:32.4716553'
Recognized [0.724900] 'Chapter Zero' '00:07:37.8394557'
Recognized [0.706603] 'Chapter Four' '00:07:42.8780045'
Recognized [0.767831] 'Chapter One' '00:07:50.2712018'
Recognized [0.868492] 'Chapter One' '00:07:55.7487528'
Recognized [0.775758] 'Chapter Seven' '00:07:59.7197278'
Recognized [0.911844] 'Chapter One' '00:08:04.8081632'
Recognized [0.828079] 'Chapter Three' '00:08:09.9165532'
Recognized [0.872625] 'Chapter One' '00:08:14.0471655'
Recognized [0.876143] 'Chapter Three' '00:08:17.9383219'
Recognized [0.667334] 'Chapter Three' '00:08:21.7396825'
Recognized [0.835629] 'Chapter Zero' '00:08:30.7591836'
Recognized [0.612127] 'Chapter Zero' '00:08:39.1301587'
Recognized [0.798621] 'Chapter Nine' '00:08:44.2784580'
Recognized [0.835795] 'Chapter Six' '00:08:48.4489795'
Recognized [0.766998] 'Chapter Three' '00:08:53.1682539'
Recognized [0.771680] 'Chapter One' '00:08:57.6081632'
Recognized [0.933043] 'Chapter Four' '00:09:01.3496598'
Recognized [0.766897] 'Chapter Three' '00:09:05.1111111'
Recognized [0.816078] 'Chapter Nine' '00:09:09.4911564'
Recognized [0.746574] 'Chapter Three' '00:09:15.4276643'
Recognized [0.942246] 'Chapter Three' '00:09:19.4585034'
Recognized [0.923526] 'Chapter One' '00:09:24.0480725'
Recognized [0.673100] 'Chapter Zero' '00:09:28.7972789'
Recognized [0.924188] 'Chapter Zero' '00:09:33.5564625'
Recognized [0.862414] 'Chapter Five' '00:09:39.6226757'
Recognized [0.685554] 'Chapter Five' '00:09:56.3446712'
Recognized [0.885203] 'Chapter Seven' '00:10:01.4131519'
Recognized [0.768674] 'Chapter Four' '00:10:08.5668934'
Recognized [0.708105] 'Chapter Four' '00:10:18.1850340'
Recognized [0.811211] 'Chapter Six' '00:10:23.8022675'
Recognized [0.904822] 'Chapter One' '00:10:28.8607709'
Recognized [0.760712] 'Chapter One' '00:10:33.2208616'
Recognized [0.847518] 'Chapter Seven' '00:10:41.3823129'
Recognized [0.922872] 'Chapter Seven' '00:10:47.3188208'
Recognized [0.748338] 'Chapter Seven' '00:10:52.1777777'
Recognized [0.754150] 'Chapter Seven' '00:10:57.1764172'
Recognized [0.779514] 'Chapter Seven' '00:11:02.0353741'
Recognized [0.898698] 'Chapter Zero' '00:11:06.7247165'
Recognized [0.678718] 'Chapter Four' '00:11:12.8807256'
Recognized [0.910037] 'Chapter Three' '00:11:17.5002267'
Recognized [0.676493] 'Chapter Seven' '00:11:22.8580498'
Recognized [0.847810] 'Chapter Zero' '00:11:33.4439909'
Recognized [0.852185] 'Chapter Three' '00:11:37.6943310'
Recognized [0.869880] 'Chapter Seven' '00:11:42.1242630'
Recognized [0.657032] 'Chapter Eight' '00:11:47.7115646'
Recognized [0.610273] 'Chapter Zero' '00:11:52.4807256'
Recognized [0.697250] 'Chapter Five' '00:11:57.4195011'
Recognized [0.829167] 'Chapter Three' '00:12:02.5278911'
Recognized [0.833108] 'Chapter Six' '00:12:08.9233560'
Recognized [0.911786] 'Chapter Four' '00:12:13.8222222'
Recognized [0.688799] 'Chapter Seven' '00:12:17.9229024'
Recognized [0.915079] 'Chapter One' '00:12:22.9714285'
Recognized [0.661166] 'Chapter Seven' '00:12:27.7804988'
Recognized [0.846345] 'Chapter Seven' '00:12:39.5238095'
Recognized [0.859780] 'Chapter Six' '00:12:44.7619047'
Recognized [0.928802] 'Chapter Seven' '00:12:50.6086167'
Recognized [0.684971] 'Chapter Zero' '00:12:55.7868480'
Recognized [0.670632] 'Chapter Zero' '00:13:00.2566893'
Recognized [0.640998] 'Chapter One' '00:13:05.4748299'
Recognized [0.698716] 'Chapter Zero' '00:13:10.5732426'
Recognized [0.823498] 'Chapter Six' '00:13:15.8412698'
Recognized [0.868738] 'Chapter Four' '00:13:21.8176870'
Recognized [0.710738] 'Chapter Four' '00:13:27.1256235'
Recognized [0.913386] 'Chapter One' '00:13:34.3990929'
Recognized [0.743341] 'Chapter Five' '00:13:37.9809523'
Recognized [0.890146] 'Chapter Zero' '00:13:42.9197278'
Recognized [0.675870] 'Chapter Nine' '00:13:47.6090702'
Recognized [0.928774] 'Chapter Seven' '00:13:51.2108843'
Recognized [0.880698] 'Chapter Seven' '00:13:57.2970521'
Recognized [0.837221] 'Chapter Seven' '00:14:04.0317460'
Recognized [0.873171] 'Chapter Five' '00:14:09.9083900'
Recognized [0.861104] 'Chapter Two' '00:14:13.9092970'
Recognized [0.735503] 'Chapter Five' '00:14:21.0630385'
Recognized [0.914970] 'Chapter Two' '00:14:25.7723356'
Recognized [0.737040] 'Chapter Three' '00:14:31.2000000'
Recognized [0.832584] 'Chapter Seven' '00:14:37.3560090'
Recognized [0.770115] 'Chapter Two' '00:14:42.3746031'
Recognized [0.851399] 'Chapter Six' '00:14:48.6403628'
Recognized [0.892431] 'Chapter Five' '00:14:52.8108843'
Recognized [0.767154] 'Chapter Three' '00:14:57.6598639'
Recognized [0.903126] 'Chapter One' '00:15:01.9700680'
Recognized [0.927501] 'Chapter Eight' '00:15:07.5374149'
Recognized [0.775459] 'Chapter Three' '00:15:11.7378684'
Recognized [0.855747] 'Chapter Five' '00:15:17.1156462'
Recognized [0.906138] 'Chapter Six' '00:15:22.1342403'
Recognized [0.821299] 'Chapter Nine' '00:15:26.9832199'
Recognized [0.929456] 'Chapter Five' '00:15:32.4607709'
Recognized [0.874424] 'Chapter Seven' '00:15:36.5814058'
Recognized [0.620315] 'Chapter Seven' '00:15:42.2385487'
Recognized [0.903528] 'Chapter Zero' '00:15:47.5464852'
Recognized [0.795379] 'Chapter Six' '00:15:51.7968253'
Recognized [0.622142] 'Chapter One' '00:15:56.4761904'
Recognized [0.811500] 'Chapter Three' '00:16:01.8839002'
Recognized [0.898530] 'Chapter Six' '00:16:07.1519274'
Recognized [0.942042] 'Chapter Seven' '00:16:12.1306122'
Recognized [0.920825] 'Chapter Nine' '00:16:18.9251700'
Recognized [0.886504] 'Chapter One' '00:16:22.7963718'
Recognized [0.784477] 'Chapter Three' '00:16:28.4734693'
Recognized [0.850595] 'Chapter Eight' '00:16:37.1138321'
Recognized [0.634020] 'Chapter Eight' '00:16:41.6136054'
Recognized [0.648564] 'Chapter Zero' '00:16:46.7619047'
Recognized [0.716741] 'Chapter One' '00:16:51.5510204'
Recognized [0.844194] 'Chapter Nine' '00:16:56.8988662'
Recognized [0.823612] 'Chapter Zero' '00:17:09.1709750'
Recognized [0.804577] 'Chapter Seven' '00:17:14.2494331'
Recognized [0.917299] 'Chapter Five' '00:17:21.9918367'
Recognized [0.903172] 'Chapter Five' '00:17:27.5691609'
Recognized [0.924532] 'Chapter Five' '00:17:32.5977324'
Recognized [0.877819] 'Chapter Zero' '00:17:39.3424036'
Recognized [0.945488] 'Chapter Three' '00:17:46.0870748'
Recognized [0.920278] 'Chapter Zero' '00:17:51.6544217'
Recognized [0.715859] 'Chapter Seven' '00:17:56.0943310'
Recognized [0.891746] 'Chapter Zero' '00:18:01.1428571'
Recognized [0.728244] 'Chapter Zero' '00:18:05.9918367'
Recognized [0.795327] 'Chapter Four' '00:18:11.1501133'
Recognized [0.772625] 'Chapter Seven' '00:18:15.3106575'
Recognized [0.914410] 'Chapter One' '00:18:19.3913832'
Recognized [0.841603] 'Chapter Five' '00:18:23.3723356'
Recognized [0.885254] 'Chapter Eight' '00:18:30.6158730'
Recognized [0.775661] 'Chapter Four' '00:18:41.5210884'
Recognized [0.638765] 'Chapter Zero' '00:18:46.7591836'
Recognized [0.804591] 'Chapter Zero' '00:18:51.9274376'
Recognized [0.906230] 'Chapter Zero' '00:18:57.2453514'
Recognized [0.628863] 'Chapter Six' '00:19:01.3560090'
Recognized [0.694696] 'Chapter Two' '00:19:07.1029478'
Recognized [0.929444] 'Chapter Six' '00:19:11.8721088'
Recognized [0.665487] 'Chapter Eight' '00:19:22.0888888'
Recognized [0.844721] 'Chapter Zero' '00:19:26.4190476'
Recognized [0.726267] 'Chapter Nine' '00:19:37.9727891'
Recognized [0.772948] 'Chapter Eight' '00:19:42.5024943'
Recognized [0.884429] 'Chapter Seven' '00:19:46.8126984'
Recognized [0.914303] 'Chapter Six' '00:19:51.4820861'
Recognized [0.810541] 'Chapter Seven' '00:20:01.0802721'
Recognized [0.831496] 'Chapter Seven' '00:20:06.5777777'
Recognized [0.760354] 'Chapter Four' '00:20:11.2172335'
Recognized [0.765746] 'Chapter One' '00:20:16.0063492'
Recognized [0.828661] 'Chapter Eight' '00:20:19.8775510'
Recognized [0.933618] 'Chapter Eight' '00:20:25.4448979'
Recognized [0.860785] 'Chapter One' '00:20:31.5011337'
Recognized [0.786197] 'Chapter Seven' '00:20:35.3424036'
Recognized [0.920584] 'Chapter Seven' '00:20:39.8621315'
Recognized [0.805903] 'Chapter Three' '00:20:45.9283446'
Recognized [0.933252] 'Chapter Four' '00:20:50.2784580'
Recognized [0.796793] 'Chapter Three' '00:20:55.6562358'
Recognized [0.883440] 'Chapter Seven' '00:21:13.7351473'
Recognized [0.901213] 'Chapter Nine' '00:21:18.3945578'
Recognized [0.710592] 'Chapter Seven' '00:21:23.3333333'
Recognized [0.737947] 'Chapter Three' '00:21:41.3024943'
Recognized [0.917786] 'Chapter Eight' '00:21:45.0539682'
Recognized [0.816457] 'Chapter Four' '00:21:49.4340136'
Recognized [0.904251] 'Chapter Nine' '00:21:54.8816326'
Recognized [0.827680] 'Chapter Zero' '00:22:06.0761904'
Recognized [0.839630] 'Chapter One' '00:22:10.6956916'
Recognized [0.914018] 'Chapter One' '00:22:16.6421768'
Recognized [0.715777] 'Chapter Seven' '00:22:21.4412698'
Recognized [0.733097] 'Chapter Zero' '00:22:27.0585034'
Recognized [0.710224] 'Chapter Three' '00:22:31.2290249'
Recognized [0.872167] 'Chapter Nine' '00:22:35.7886621'
Recognized [0.775699] 'Chapter Zero' '00:22:43.5809523'
Recognized [0.876188] 'Chapter Nine' '00:22:54.5560090'
Recognized [0.915597] 'Chapter Zero' '00:23:06.3791383'
Recognized [0.708735] 'Chapter Five' '00:23:12.8544217'
Recognized [0.946594] 'Chapter Five' '00:23:19.1401360'
Recognized [0.645959] 'Chapter One' '00:23:23.4204081'
Recognized [0.919772] 'Chapter Zero' '00:23:32.5995464'
Recognized [0.779969] 'Chapter Three' '00:23:36.7301587'
Recognized [0.933196] 'Chapter Three' '00:23:41.8984126'
Recognized [0.947368] 'Chapter One' '00:23:47.3959183'
Recognized [0.909682] 'Chapter One' '00:23:55.5972789'
Recognized [0.810724] 'Chapter One' '00:24:02.2022675'
Recognized [0.950602] 'Chapter Nine' '00:24:08.6077097'
Recognized [0.973474] 'Chapter One' '00:24:14.6439909'
Recognized [0.840169] 'Chapter Six' '00:24:20.5705215'
Recognized [0.853712] 'Chapter Four' '00:24:30.4680272'
Recognized [0.752738] 'Chapter Seven' '00:24:35.3369614'
Recognized [0.908675] 'Chapter One' '00:24:39.7569160'
Recognized [0.915611] 'Chapter Six' '00:24:44.6358276'
Recognized [0.911057] 'Chapter Zero' '00:24:49.2453514'
Recognized [0.717390] 'Chapter Seven' '00:24:53.8748299'
Recognized [0.885464] 'Chapter Zero' '00:24:59.1827664'
Recognized [0.939139] 'Chapter Six' '00:25:05.5882086'
Recognized [0.929132] 'Chapter Nine' '00:25:12.6521541'
Recognized [0.789475] 'Chapter One' '00:25:18.2195011'
Recognized [0.866239] 'Chapter Five' '00:25:23.8666666'
Recognized [0.742766] 'Chapter One' '00:25:28.7555555'
Recognized [0.722613] 'Chapter Six' '00:25:37.6154195'
Recognized [0.792798] 'Chapter One' '00:25:42.5442176'
Recognized [0.663454] 'Chapter Five' '00:25:47.7523809'
Recognized [0.681175] 'Chapter Seven' '00:25:52.6312925'
Recognized [0.941754] 'Chapter Six' '00:26:04.5043083'
Recognized [0.926863] 'Chapter Nine' '00:26:13.4539682'
Recognized [0.780279] 'Chapter Seven' '00:26:17.2553287'
Recognized [0.889462] 'Chapter Nine' '00:26:22.1442176'
Recognized [0.710386] 'Chapter Zero' '00:26:27.7714285'
Recognized [0.830702] 'Chapter Six' '00:26:43.4458049'
Recognized [0.905110] 'Chapter Nine' '00:26:47.6063492'
Recognized [0.602287] 'Chapter One' '00:26:56.8553287'
Recognized [0.681035] 'Chapter Five' '00:27:01.1755102'
Recognized [0.940345] 'Chapter One' '00:27:05.2761904'
Recognized [0.676020] 'Chapter Five' '00:27:11.8213151'
Recognized [0.613714] 'Chapter Seven' '00:27:16.4807256'
Recognized [0.750310] 'Chapter One' '00:27:21.4993197'
Recognized [0.723749] 'Chapter Seven' '00:27:28.5433106'
Recognized [0.898270] 'Chapter One' '00:27:33.8213151'
Recognized [0.894368] 'Chapter Three' '00:27:41.6235827'
Recognized [0.665457] 'Chapter Six' '00:27:46.2031746'
Recognized [0.788669] 'Chapter Two' '00:27:51.1918367'
Recognized [0.847941] 'Chapter Four' '00:28:02.2167800'
Recognized [0.808592] 'Chapter Seven' '00:28:06.1478458'
Recognized [0.924393] 'Chapter Zero' '00:28:11.3360544'
Recognized [0.772634] 'Chapter Six' '00:28:19.4875283'
Recognized [0.890229] 'Chapter Four' '00:28:24.6956916'
Recognized [0.718494] 'Chapter Seven' '00:28:28.8263038'
Recognized [0.808105] 'Chapter Three' '00:28:33.3560090'
Recognized [0.712118] 'Chapter Zero' '00:28:37.8458049'
Recognized [0.944408] 'Chapter Six' '00:28:42.6748299'
Recognized [0.889619] 'Chapter Seven' '00:28:48.5814058'
Recognized [0.835841] 'Chapter One' '00:28:54.0190476'
Recognized [0.893045] 'Chapter Eight' '00:28:58.7682539'
Recognized [0.844410] 'Chapter Five' '00:29:09.6335600'
Recognized [0.784058] 'Chapter One' '00:29:14.3827664'
Recognized [0.617414] 'Chapter Nine' '00:29:19.3814058'
Recognized [0.697014] 'Chapter One' '00:29:28.9496598'
Recognized [0.645328] 'Chapter Seven' '00:29:33.5791383'
Recognized [0.918602] 'Chapter One' '00:29:37.7795918'
Recognized [0.606370] 'Chapter Seven' '00:29:43.4666666'
Recognized [0.927960] 'Chapter One' '00:29:59.3904761'
Recognized [0.861881] 'Chapter Seven' '00:30:09.1183673'
Recognized [0.802617] 'Chapter Zero' '00:30:14.6258503'
Recognized [0.890691] 'Chapter One' '00:30:19.8240362'
Recognized [0.898630] 'Chapter Seven' '00:30:24.9523809'
Recognized [0.769664] 'Chapter Nine' '00:30:29.8213151'
Recognized [0.898534] 'Chapter Zero' '00:30:33.7623582'
Recognized [0.934961] 'Chapter One' '00:30:44.7773242'
Recognized [0.625531] 'Chapter Three' '00:30:52.8888888'
Recognized [0.888719] 'Chapter Four' '00:30:59.1247165'
Recognized [0.873550] 'Chapter One' '00:31:03.2453514'
Recognized [0.880971] 'Chapter One' '00:31:07.6453514'
Recognized [0.829944] 'Chapter Zero' '00:31:11.5963718'
Recognized [0.819353] 'Chapter One' '00:31:28.6077097'
Recognized [0.935669] 'Chapter One' '00:31:33.3768707'
Recognized [0.875531] 'Chapter Eight' '00:31:37.6671201'
Recognized [0.817026] 'Chapter Three' '00:31:41.6580498'
Recognized [0.893548] 'Chapter Zero' '00:31:46.3174603'
Recognized [0.662632] 'Chapter One' '00:31:51.0866213'
Recognized [0.845510] 'Chapter One' '00:31:56.2648526'
Recognized [0.740274] 'Chapter One' '00:32:01.8621315'
Recognized [0.897936] 'Chapter Three' '00:32:06.8009070'
Recognized [0.919574] 'Chapter Eight' '00:32:11.3106575'
Recognized [0.700058] 'Chapter Zero' '00:32:15.3614512'
Recognized [0.898780] 'Chapter Nine' '00:32:20.2902494'
Recognized [0.864019] 'Chapter Zero' '00:32:25.8176870'
Recognized [0.795984] 'Chapter One' '00:32:34.6176870'
Recognized [0.853801] 'Chapter Nine' '00:32:39.6263038'
Recognized [0.703184] 'Chapter Seven' '00:32:50.0526077'
Recognized [0.829835] 'Chapter Nine' '00:32:55.7496598'
Recognized [0.737604] 'Chapter Three' '00:33:00.1995464'
Recognized [0.677041] 'Chapter Seven' '00:33:04.9287981'
Recognized [0.873017] 'Chapter Three' '00:33:09.9274376'
Recognized [0.877553] 'Chapter Seven' '00:33:14.9260770'
Recognized [0.946166] 'Chapter Seven' '00:33:20.7628117'
Recognized [0.804708] 'Chapter One' '00:33:26.0208616'
Recognized [0.901493] 'Chapter Zero' '00:33:43.4312925'
Recognized [0.824169] 'Chapter Zero' '00:33:51.1936507'
Recognized [0.871196] 'Chapter Seven' '00:33:57.0204081'
Recognized [0.769965] 'Chapter Zero' '00:34:01.5201814'
Recognized [0.882437] 'Chapter Three' '00:34:11.3777777'
Recognized [0.945319] 'Chapter Nine' '00:34:16.7954648'
Recognized [0.823991] 'Chapter Seven' '00:34:27.6907029'
Recognized [0.849985] 'Chapter Four' '00:34:33.1782312'
Recognized [0.786698] 'Chapter One' '00:34:38.8952380'
Recognized [0.896799] 'Chapter Zero' '00:34:43.3151927'
Recognized [0.928113] 'Chapter One' '00:34:48.5333333'
Recognized [0.940975] 'Chapter Three' '00:34:52.5043083'
Recognized [0.902565] 'Chapter Zero' '00:34:58.1315192'
Recognized [0.894258] 'Chapter One' '00:35:02.7709750'
Recognized [0.894185] 'Chapter Seven' '00:35:07.7995464'
Recognized [0.939630] 'Chapter One' '00:35:13.1573696'
Recognized [0.896020] 'Chapter Seven' '00:35:18.2158730'
Recognized [0.783186] 'Chapter One' '00:35:23.8630385'
Recognized [0.927390] 'Chapter One' '00:35:28.0235827'
Recognized [0.821132] 'Chapter Seven' '00:35:33.8902494'
Recognized [0.921723] 'Chapter Three' '00:35:38.2303854'
Recognized [0.625486] 'Chapter Seven' '00:35:42.3210884'
Recognized [0.927362] 'Chapter Five' '00:35:47.0902494'
Recognized [0.813336] 'Chapter Five' '00:35:51.7596371'
Recognized [0.850605] 'Chapter Nine' '00:35:56.7083900'
Recognized [0.879817] 'Chapter Nine' '00:36:00.6893424'
Recognized [0.767620] 'Chapter Zero' '00:36:04.6303854'
Recognized [0.751701] 'Chapter Seven' '00:36:10.9360544'
Recognized [0.924697] 'Chapter Nine' '00:36:16.0544217'
Recognized [0.910720] 'Chapter Eight' '00:36:21.0730158'
Recognized [0.942171] 'Chapter One' '00:36:24.8145124'
Recognized [0.640849] 'Chapter One' '00:36:29.2544217'
Recognized [0.788366] 'Chapter Three' '00:36:35.2607709'
Recognized [0.921676] 'Chapter One' '00:36:39.0721088'
Recognized [0.903096] 'Chapter Seven' '00:36:45.0984126'
Recognized [0.861046] 'Chapter One' '00:36:49.3687074'
Recognized [0.923926] 'Chapter Eight' '00:36:56.0634920'
Recognized [0.848739] 'Chapter Three' '00:36:59.9446712'
Recognized [0.613532] 'Chapter Four' '00:37:05.0231292'
Recognized [0.748194] 'Chapter Seven' '00:37:10.4507936'
Recognized [0.867573] 'Chapter Nine' '00:37:16.2476190'
Recognized [0.893390] 'Chapter Three' '00:37:25.7460317'
Recognized [0.855499] 'Chapter Nine' '00:37:34.4263038'
Recognized [0.830073] 'Chapter Zero' '00:37:41.5201814'
Recognized [0.673731] 'Chapter Zero' '00:37:49.5419501'
Recognized [0.900220] 'Chapter One' '00:37:55.7678004'
Recognized [0.720431] 'Chapter Nine' '00:38:02.3727891'
Recognized [0.799679] 'Chapter Nine' '00:38:07.6707482'
Recognized [0.750786] 'Chapter Zero' '00:38:13.0385487'
Recognized [0.798787] 'Chapter Zero' '00:38:17.3986394'
Recognized [0.861327] 'Chapter Seven' '00:38:23.8739229'
Recognized [0.882927] 'Chapter Seven' '00:38:28.4435374'
Recognized [0.717402] 'Chapter One' '00:38:33.3424036'
Recognized [0.927742] 'Chapter One' '00:38:38.2811791'
Recognized [0.781828] 'Chapter Seven' '00:38:48.2185941'
Recognized [0.925028] 'Chapter Nine' '00:38:53.2272108'
Recognized [0.602354] 'Chapter Six' '00:38:57.7668934'
Recognized [0.836671] 'Chapter Seven' '00:39:03.1746031'
Recognized [0.943111] 'Chapter Zero' '00:39:08.7319727'
Recognized [0.912576] 'Chapter Zero' '00:39:12.9224489'
Recognized [0.926495] 'Chapter Zero' '00:39:17.4521541'
Recognized [0.916129] 'Chapter Seven' '00:39:23.3287981'
Recognized [0.934193] 'Chapter Two' '00:39:29.7442176'
Recognized [0.942777] 'Chapter Nine' '00:39:34.3637188'
Recognized [0.941664] 'Chapter Eight' '00:39:39.1727891'
I'm not sure how I would be able to optimize the speech recognition to be able to give me meaningful results to parse through.
Related
Shopware 6 Plugin - text snippet not deleted on uninstall plugin - order custom field label
We created custom fields within our plugin for orders and for products. Shopware creates text snippets for the custom fields labels. These should be removed when uninstalling the plugin. It works for the products custom field. ... 'customFields' => [ [ 'name' => 'product_custom_field_name_dummy', 'type' => CustomFieldTypes::BOOL, 'config' => [ 'type' => 'checkbox', 'componentName' => 'sw-field', 'customFieldType' => 'checkbox', 'label' => [ self::GER_ISO => 'Label GER', self::EN_ISO => 'Label EN', Defaults::LANGUAGE_SYSTEM => 'Label EN', ] ], ] ], 'relations' => [ [ 'entityName' => ProductDefinition::ENTITY_NAME, ], ], ... But not for the orders custom fields. ... 'customFields' => [ [ 'name' => 'order_custom_field_name_dummy_one', 'type' => CustomFieldTypes::TEXT, 'config' => [ 'customFieldType' => CustomFieldTypes::TEXT, 'label' => [ self::GER_ISO => 'Order Label GER', self::EN_ISO => 'Order Label EN', Defaults::LANGUAGE_SYSTEM => 'Order Label EN', ] ], ], [ 'name' => 'order_custom_field_name_dummy_two', 'type' => CustomFieldTypes::SELECT, 'config' => [ 'customFieldType' => CustomFieldTypes::SELECT, 'componentName' => 'sw-single-select', 'label' => [ self::GER_ISO => 'Order Label GER 2', self::EN_ISO => 'Order Label EN 2', Defaults::LANGUAGE_SYSTEM => 'Order Label EN 2', ], 'options' => [ ... ] ] ], [ 'name' => 'order_custom_field_name_dummy_three', 'type' => CustomFieldTypes::DATETIME, 'config' => [ 'customFieldType' => CustomFieldTypes::DATETIME, 'label' => [ self::GER_ISO => 'Order Label GER 3', self::EN_ISO => 'Order Label EN 3', Defaults::LANGUAGE_SYSTEM => 'Order Label EN 3', ] ], ], [ 'name' => 'order_custom_field_name_dummy_four', 'type' => CustomFieldTypes::SELECT, 'config' => [ 'customFieldType' => CustomFieldTypes::SELECT, 'componentName' => 'sw-single-select', 'label' => [ self::GER_ISO => 'Order Label GER 4', self::EN_ISO => 'Order Label EN 4', Defaults::LANGUAGE_SYSTEM => 'Order Label EN 4', ], 'options' => [ ... ] ], ], ], 'relations' => [ [ 'entityName' => OrderDefinition::ENTITY_NAME, ], ], ... Is this a problem Shopware has with order custom fields or did we possibly make a mistake when creating the order custom fields? Edit: The custom fields are created on install method und removed on uninstall method inside the plugin via the CustomFieldSetRepository. Edit: This is how we delete the custom fields on uninstall: public function uninstallCustomFieldSet() { $customFieldSet = $this->getCustomFieldSet(self::CUSTOM_FIELD_SET_NAME); if ($customFieldSet instanceof CustomFieldSetEntity) { $this->customFieldSetRepository->delete([['id' => $customFieldSet->getId()]], $this->context); } } protected function getCustomFieldSet(string $customFieldSetName): ?CustomFieldSetEntity { $criteria = new Criteria(); $criteria->addFilter(new EqualsFilter('name', $customFieldSetName)); $criteria->addAssociation('customFields'); $criteria->addAssociation('relations'); $customFieldSet = $this->customFieldSetRepository->search($criteria, $this->context)->first(); if ($customFieldSet instanceof CustomFieldSetEntity) { return $customFieldSet; } else { return null; } }
The author mentions that Shopware 6 confirms that it's a bug. I am creating an answer to this question even though it was already answered in the comments so that it can be accepted & this question resolved.
React Native onStartShouldSetResponder and onResponderRelease?
I've created a button that I want to have call a function on click and then again on release. A normal TouchableOpacity or other will trigger a function upon release of a click only, I need functions on both click AND release. <View style={styles.touchbutton} onStartShouldSetResponder={() => this.clickOn()} onResponderRelease={() => this.clickRelease()}> <Text style={styles.dark}>Button</Text> </View> The above code works on click but not on release. I also tried onResponderReject but that doesn't work either. Hard to find what the command should be.
Had the same problem. onStartShouldSetResponder needs to return true. onStartShouldSetResponder={(e) => { /*do whatever*/; return true }}
Please Try This code For your click event it works for me : clickOn(){ Alert.alert( 'Test Demo', 'Please Enter Valid Data', [ //{text: 'Ask me later', onPress: () => console.log('Ask me later pressed')}, {text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'}, {text: 'OK', onPress: () => console.log('OK Pressed')}, ], { cancelable: false } ) } } Put these two lines it works for me when you release onStartShouldSetResponder={() => true} onResponderRelease={() => this.onRowTap()}
TypeError when trying to join Pandas dataframe by index
I'm trying to join a column from one pandas dataframe to another using its date as the index. However my code produces a TypeError. Please could somebody explain why this error's being produced and what I can do to fix it? Thanks in advance. """Balsjo THg, MeHg, TOC | Q and flux data 2005-2010""" path2 = 'C:\\Users\\Google Drive\\SLU\\Thesis\\Data\\BalsjSite4.xls' df2 = pd.io.excel.read_excel(path2, 'THg', header=0, parse_dates=[1], dayfirst=True, index_col='Date') df3 = pd.io.excel.read_excel(path2, 'MeHg', header=0, parse_dates=[1], dayfirst=True, index_col='Date') df4 = pd.io.excel.read_excel(path2, 'TOC', header=0, parse_dates=[1], dayfirst=True, index_col='Date') print list(df2.columns.values) print list(df3.columns.values) print list(df4.columns.values) cln_df2 = df2[['Q (mm/d)', 'THg (ng/L)', 'Flux']] cln_df22 = cln_df2.append[df3[['MeHg (ng/L)']]] print cln_df22.head() --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-5-4f468a92d5ce> in <module>() 9 print list(df4.columns.values) 10 cln_df2 = df2[['Q (mm/d)', 'THg (ng/L)', 'Flux']] ---> 11 cln_df22 = cln_df2.append[df3[['MeHg (ng/L)']]] 12 print cln_df22.head() TypeError: 'instancemethod' object has no attribute '__getitem__' [u'Q (mm/d)', u'THg (ng/L)', u'RIM THg', u'Flux', u'Rim Flux', u'Error', 'Unnamed: 7', 'Unnamed: 8', 'Unnamed: 9', 'Unnamed: 10', 'Unnamed: 11', 'Unnamed: 12', 'Unnamed: 13', 'Unnamed: 14', 'Unnamed: 15', u'z', u'ae(bz)', u'c0e(fz)'] [u'Q (mm/d)', u'MeHg (ng/L)', u'RIM MeHg', u'Flux', u'Rim Flux', u'Error', 'Unnamed: 7', 'Unnamed: 8', 'Unnamed: 9', 'Unnamed: 10', 'Unnamed: 11', 'Unnamed: 12', 'Unnamed: 13', 'Unnamed: 14', 'Unnamed: 15', u'z', u'ae(bz)', u'c0e(fz)'] [u'Q (mm/d)', u'TOC (mg/l)', u'RIM TOC', u'Flux', u'Rim Flux', u'Error', 'Unnamed: 7', 'Unnamed: 8', 'Unnamed: 9', 'Unnamed: 10', 'Unnamed: 11', 'Unnamed: 12', 'Unnamed: 13', 'Unnamed: 14', 'Unnamed: 15', u'z', u'ae(bz)', u'c0e(fz)']
I think you should have done this instead: cln_df22 = cln_df2.append(df3[['MeHg (ng/L)']]) ^ ^ you need to use brackets/parentheses instead of square brackets
how to sort Array with UnixTime stamp
I want to sort an array by time. But the problem is that the time is in Form UNIX time stamp in the another array (sub array of array). here is the format. Please can any one help me in sorting it . ( group, "The Comic Corner", "" ), ( group, "Home Alone", "" ), ( group, "Romantic Movies", "" ), ( group, "Thriller Movies", "" ), ( group, Badminton, "" ), ( group, "Celebrity Gossip", "" ), ( group, "Dark Night", "" ), ( group, "Graphics Designer", "" ), ( group, "I Just Wanna....", "" ), ( group, Religion, "" ), ( group, "English Movies", "" ), ( group, "Music World", "" ), ( group, "Actions Movies", "" ), ( group, "Bed & Breakfast", "" ), ( group, "Strategic Games", "" ), ( group, "Beer Lovers", "" ), ( group, Hackers, "" ), ( group, "Darkroom-Darkroom", "" ), ( group, "Arcade Games", "" ), ( group, "Hindi Movies", "" ), ( mood, Anxious, 1386749684146 ), ( "profilepic_time", 1386545975408 ), ( "status_msg", " *z32_ hell0", 1386635654457 ), ( Broadcast, 3, 11, 1372945566365 ), ( Broadcast, 3, 11, 3 ), ( Broadcast, 3, 11, 3 ), ( Broadcast, 3, 11, 1372858799160 ), ( Broadcast, 6, 11, 1372920363550 ), ( Broadcast, 6, 30, 1373012360303 ), ( Broadcast, 6, 30, 1373015204935 ), ( Broadcast, 6, 30, 1373018547181 ), ( Broadcast, 6, 30, 1373018768064 ), ( Broadcast, 7, 37, 1373025360112 ), ( Broadcast, 3, 37, 1373031270639 ), ( Broadcast, 3, 42, 1373868972980 ), ( Broadcast, 3, 29, 1372936645430 ), ( Broadcast, 3, 29, 1372935983470 ), ( Broadcast, 3, 101, 1374150527293 ), ( bulletin, "dbxjsbxdijxjdjxichdjdixhdbdjx hdjdbdh", 1382331040766 ), ( bulletin, "aaabbb ccc dddd eee ffff", 1382510132316 ), ( bulletin, "dvxishhxxbbosihdjxibididhxososjshsisos dijfjeosksn osjdjkd", 1382510521856 ), ( bulletin, tsotdo, 1382707279159 ), ( bulletin, 84saurzuzri, 1382707293764 ), ( bulletin, aiaktsktzyodld, 1382707305875 ), ( bulletin, uarsistoso, 1382707326326 ), ( bulletin, 2e58e8etisististi, 1382707335278 ), ( bulletin, ztkzktzgtkktotk, 1382707484453 ), ( bulletin, ztkzktzgtkktotk9e85a4a47a48a37ariz, 1382707491619 ), ( bulletin, "dbxidj didcxj", 1384173984019 ), ( bulletin, "testing testing testing testing", 1384589761276 ), ( bulletin, "testing testing testing testing", 1384589772960 ), ( bulletin, "testing testing testing testing", 1384589788706 ), ( bulletin, "testing testing testing testing", 1384589822861 ), ( bulletin, "testing testing testing testing", 1384589871332 ), ( bulletin, "testing testing testing testing", 1384589875364 ), ( bulletin, "testing testing testing testing", 1384589910927 ), ( bulletin, hey, 1384589984774 ), ( bulletin, "heya ", 1384590016235 ), ( bulletin, ok, 1384597237610 ), ( bulletin, "hey ", 1384605812061 ), ( bulletin, fhjfs, 1384757502287 ), There is timestamp for some array and no timestamp for some array It is very complex for me. Can any one help me with that Thanks
You need to specify a custom comparator block, like this (you'll need to adjust the indices according to your data structure): NSArray *array = #[#[#"a", #456], #[#"b", #123], #[#"c", #""]]; NSArray *sorted = [array sortedArrayUsingComparator:^NSComparisonResult(NSArray *a, NSArray *b) { if ([a.lastObject isKindOfClass:[NSNumber class]] && [b.lastObject isKindOfClass:[NSNumber class]]) { return [a.lastObject compare:b.lastObject]; } return NSOrderedAscending; }]; NSLog(#"%#", sorted); You can change NSOrderedAscending to NSOrderedDescending if you want the non-timestamped records to appear before the timestamped ones. In addition, I recommend you to avoid storing your data in NSArray of NSArrays, and create a proper DTO (that can define it's own sorting function, if needed) for your items.
doctrine-extensions Uploadable, how to use in Zend Framework 2?
I integrated doctrine-extensions in my project. Timestampable is working as example. But how to use the "Uploadable"-behavior? I read this doc. They're writing in the usage-part about using $listener, but how do i get this variable? in my Controller or Service? Where does it come from? thanks for any advice...
Finally, got it...: instead of: 'doctrine' => array( 'eventmanager' => array( 'orm_default' => array( 'subscribers' => array( 'Gedmo\Uploadable\UploadableListener', //... ), ), ), 'driver' => array( // ... ), ), use this: register the uploadable listener through the servicemanager: 'doctrine' => array( 'eventmanager' => array( 'orm_default' => array( 'subscribers' => array( 'doctrine_extensions.uploadable', //... ), ), ), 'driver' => array( // ... ), ), 'service_manager' => array( 'invokables' => array( 'doctrine_extensions.uploadable' => 'Gedmo\Uploadable\UploadableListener' ) ), then in the controller as example, it works like this: $uploadManager = $this->getServiceLocator()->get('doctrine_extensions.uploadable'); foreach($this->getRequest()->getFiles()->toArray() as $file) { $entity = new MyEntity(); $uploadManager->addEntityFileInfo($entity, $file); // persist($entity) ... }