

# ChronometricaとSIÁNを比較：TikTokの既存字幕か、新たな音声文字起こしか

研究でTikTokの既存の公開字幕トラックが必要で、その字幕がない場合も明確に記録する必要があるなら、Chronometricaを選びます。話された音声から新たに作るテキストを研究で認めるなら、SIÁNを選びます。主な判断点は、分析する言葉の取得元です。どちらかの方法で、より正確な言葉が得られると主張するものではありません。[Chronometrica](https://apify.com/chronometrica/tiktok-transcript-scraper)、[SIÁN](https://apify.com/sian.agency/best-tiktok-ai-transcript-extractor)

文字起こしの表を作る前に、この選択が重要になります。字幕の研究は、プラットフォームですでに公開されているテキストを調べます。発話の研究では、音声から作ったテキストが必要になることがあります。同じ動画でも、これらの取得元は異なる研究課題に対応し得ます。

ここでいう既存字幕とは、TikTokですでに公開されている字幕トラックです。人が書いた字幕という意味ではありません。TikTokの字幕も、自動生成されている場合があります。音声文字起こしとは、ソフトウェアが音声から言葉をテキストにすることです。

研究上の必要性は具体的です。定量的な内容分析に使うTikTokの文字起こしについて質問した研究者は、組み込み字幕を取得できるのか、それとも音声文字起こしツールが必要なのかも尋ねていました。この問いは、最初にテキストの取得元を選ぶ必要性を示しています。ただし、特定の研究における正確性、網羅性、利用許可を裏付けるものではありません。[研究上の質問](https://www.reddit.com/r/CompSocial/comments/1h1zijh/help_needed_scraping_tiktok_video_transcripts_for/)

用意すべきものは、取得元に関する文書化した規則、取得元にひも付いた記録の一覧、そして既存字幕、字幕なし、新規生成テキストを区別する状態です。

## 研究に含める言葉を決める

まず、研究対象を定めます。研究対象とは、その研究で調べようとするものです。次に、それを表すために使えるテキストの取得元を明記します。

プラットフォームの字幕そのものを研究する場合、既存の字幕トラックは証拠の一部です。その表現、言語、字幕の有無が重要になります。新たな文字起こしは動画の理解に役立つことがあります。ただし、その分析で、欠けている字幕トラックの代わりにはなりません。

話された言葉を研究する場合は、新たな音声文字起こしを取得元として認められることがあります。それでも、研究全体で生成テキストを使うのか、特定の事例だけに使うのかを決める必要があります。どの動画に字幕がないかを確認する前に、その規則を書いておきます。

翻訳は別の判断です。翻訳すると、コーディングするテキストの言語が変わります。新たな文字起こしを認める規則でも、翻訳まで認める必要はありません。同様に、英語の字幕トラックを求めることは、別の字幕トラックを英語に翻訳するよう求めることではありません。

次の4つの問いに答える短い方針を書きます。

1. 研究するのは既存字幕か、それとも話された音声か。
2. ソフトウェアで新たな文字起こしを作ってよいか。
3. どの言語を対象とし、翻訳を認めるか。
4. 利用できるテキストがない場合、何を報告するか。

この方針を研究記録と一緒に保管します。その後の各判断に、明確な根拠を与えます。また、収集上の都合によって、記録を残さず研究課題を変えてしまうことを防ぎます。

対象を絞った規則が役立つ場合もあります。既存の英語字幕を必須とする研究では、テキスト分析に使える動画が少なくなることがあります。それでも、その研究課題にとっては正しい結果になり得ます。利用できるテキストを増やすことに意味があるのは、明示した規則の下で、そのテキストが有効な証拠であり続ける場合だけです。

## 確認できた適合性で2つのActorを比較する

Actorは、サーバー上で動くデータ収集プログラムです。この2つのActorは、動画のテキストを得るために異なる方法を提供します。ここで使う公開製品仕様は、2026年10月20日に確認しました。単語の正確性、時刻の正確性、費用、処理規模、信頼性について、条件をそろえた比較テストは行っていません。

| 判断項目 | Chronometrica | SIÁN |
| --- | --- | --- |
| テキストの取得元 | 既存の公開字幕トラック | AIによる新たな音声文字起こし |
| 動画の入力 | `startUrls`に、1–100件の公開リンク、短縮リンク、または動画IDを指定 | 単一の`tiktokUrl`、または`bulkUrls`のリスト |
| 時刻情報 | 開始時刻と終了時刻を持つ字幕セグメント | 単語単位のタイムスタンプ |
| 文書に記載されたその他の機能 | 字幕と言語についての明示的な結果状態 | 話者ラベル、SRT/VTT出力、任意の英語翻訳 |

この表は、文書に記載された仕様を示します。文書にない機能が存在しないと示すものではありません。[Chronometricaの仕様](https://apify.com/chronometrica/tiktok-transcript-scraper)、[Chronometricaの入力](https://apify.com/chronometrica/tiktok-transcript-scraper/input-schema)、[SIÁNの仕様](https://apify.com/sian.agency/best-tiktok-ai-transcript-extractor)、[SIÁNの入力](https://apify.com/sian.agency/best-tiktok-ai-transcript-extractor/input-schema)

プラットフォームの字幕を使う研究方法を維持することが目的なら、Chronometricaはよく適合します。既存の公開字幕トラックを読み取り、字幕や指定言語を取得できない場合は、その結果を明示します。音声文字起こしの生成、文字起こし用の音声ダウンロード、テキストの翻訳は行いません。これが、推奨する選択を変える主な制約です。[Chronometricaの仕様](https://apify.com/chronometrica/tiktok-transcript-scraper)

まず研究の規則に基づいて選びます。ファイル形式や、その後の表の準備は、その選択の後に考えます。

## サンプルを定義し、取得元の台帳を作る

サンプルとは、研究のために選んだ動画の集合です。台帳とは、入力した動画と、それぞれの処理結果を記録する表です。

収集前にサンプルを定義します。各動画を含める理由を記録します。利用できる場合は、変わらない動画識別子を使い、送信したリンクも残します。これにより、履歴を失わずに入力の重複を検出しやすくなります。

言語の規則も同時に決めます。英語だけを扱う研究には、多言語研究とは異なる規則が必要です。多言語研究では、対象とする原文の言語と、研究者がそれらを確認する方法を明記します。短い入力例の言語を、意図せず研究方針にしてしまわないようにします。

各テキスト記録には、原文、言語、取得元URL、観測時刻を残します。不明な値は不明なままにします。長さ、言語、その他の値が欠けていても、ゼロに置き換えません。

研究台帳に、`text_source`のような自分で管理するフィールドを追加します。値には`platform_caption`や`new_speech_to_text`などを使います。このフィールドは自分の台帳用です。Chronometricaが標準で出力するフィールドではありません。

テキストがない記録では、結果の状態と理由を残します。実際に収集していないテキストの取得元を割り当ててはいけません。後から生成した文字起こしを追加する場合は、その取得元と収集記録を、先に得た字幕なしの結果と分けて保管します。

翻訳も原文のテキストと分けて保管します。収集した言葉、音声から生成した言葉、翻訳した言葉を、研究者が区別できるようにします。

この構造なら、認められた収集手順を変更しても、証拠の履歴を書き換えずに済みます。また、確認者はコーディング済みの一節から、元の動画とテキストの取得元をたどれます。

## サンプル全体を収集する前に少数の動画を含むリストで確認する

内容を把握している少数の動画をリストにまとめ、入力と出力が方針に合うかを確認します。研究に関連し、利用が認められた動画を含めます。目的は、全体の収集に進む前に、実際の結果状態とテキストを確認することです。

Chronometricaでは、`preferredLanguages`で希望する言語を指定できます。指定言語を取得できない場合は、別の字幕トラックへの置き換えや翻訳を行わず、状態を返します。[入力スキーマ](https://apify.com/chronometrica/tiktok-transcript-scraper/input-schema)

次の入力は、公開入力スキーマに照らして確認しました。実行はしていません。この公開動画は、スキーマの例と保存済みTaskに登場します。現在の字幕の有無は不明です。研究に関連し、利用が認められた動画に置き換えてください。

```json
{
  "startUrls": [
    "https://www.tiktok.com/@hankgreen1/video/7047596209028074758"
  ],
  "preferredLanguages": [
    "en"
  ]
}
```

サンプル全体を収集する前に少数の動画を含むリストで確認する

この入力は英語字幕を要求します。英語への翻訳を要求するものではありません。指定した字幕言語を取得できない場合は、`language_unavailable`をそのまま残します。[入力スキーマ](https://apify.com/chronometrica/tiktok-transcript-scraper/input-schema)

Taskは、保存済みの入力設定です。公開されている[内容分析用データセットのTask](https://apify.com/chronometrica/tiktok-transcript-scraper/examples/tiktok-transcript-content-analysis-dataset)を、この方法の出発点として使えます。このTaskが存在することは、特定の動画に現在字幕があることを裏付けるものではありません。

最初の結果を、文書化した規則に照らして確認します。取得できなかった事例を残せること、入力の重複を識別できること、利用できるテキストを取得元にひも付けられることを確認します。収集を拡大する前に、台帳の設計で合わない点を解決します。対象とするテキストの定義が曖昧なままでは、処理件数を増やしても解決しません。

## 利用可能率を計算する前にすべての結果を照合する

Chronometricaは、送信した動画入力ごとに結果を1行返します。その行には、入力の参照情報、動画の詳細、言語、テキスト、字幕セグメント、状態、状態の理由、課金状態、収集時刻が含まれます。バッチ全体の集計は`OUTPUT`という名前です。[Actorの仕様](https://apify.com/chronometrica/tiktok-transcript-scraper)

`inputIndex`と`inputUrl`を使って、結果の行を送信リストにひも付けます。取得できた場合は、`videoId`と`videoUrl`を残します。テキストと一緒に`languageCode`と`scrapedAt`を保管します。成功した`segments`には、`startSeconds`、`endSeconds`、`text`が含まれます。これらのフィールドは、報告された字幕の時間区間を保持します。[Actorの仕様](https://apify.com/chronometrica/tiktok-transcript-scraper)

行を利用可能なテキストとして扱う前に、`status`と`statusReason`を読みます。関連する明示的な状態には、`succeeded`、`no_public_captions`、`language_unavailable`、`duplicate_input`があります。その他のアクセス不能や失敗の結果も、区別したままにします。[Actorの仕様](https://apify.com/chronometrica/tiktok-transcript-scraper)

次の簡単な確認を行います。

1. 各結果行を、送信した入力と照合します。
2. 状態別に結果を数え、`OUTPUT`と比較します。
3. 重複した送信と、それらが参照する個別の動画を特定します。
4. 明示した言語とテキスト取得元の規則を適用します。
5. 未解決の事例をすべて、実際の理由と一緒に残します。
6. 明示した重複を除く動画数を使って、利用可能率を計算します。

分母は、分数の下側に置く全体の数です。テキストの利用可能率には、定義したサンプルに含まれる、重複を除く動画数を使います。利用できるテキストが返った動画だけに分母を減らしてはいけません。

重複した送信は慎重に扱います。収集の確認用にその行を残します。ただし、研究の単位が個別の動画1本である場合、同じ動画を2回数えてはいけません。

字幕なしの行は、正常に取得した空の文字起こしではありません。単語数の計算やテーマのコーディングを行う前に、この違いを保ちます。そうしないと、取得できないテキストを、何も語っていない動画と誤解するおそれがあります。

## 動画8本を対象とする架空の研究で手順を確認する

以下は架空の研究例です。これらの件数は、収集結果、ベンチマーク、顧客の成果ではありません。

この研究では、重複のない8本の動画を入力対象とします。最初の規則では、プラットフォームに既存の英語字幕があることを必須とします。5本には、条件に合う利用可能な字幕があります。2本は動画を確認できますが、公開字幕トラックがありません。1本には別の言語の字幕しかありません。

この規則での既存字幕の利用可能率は、次のとおりです。

5 / 8 × 100 = 62.5%。

3本には、条件を満たすテキストがありません。理由を分けて残します。2本には公開字幕トラックがなく、1本には指定言語の字幕がありません。取得不能を1つの件数にまとめると総数の把握には役立ちますが、異なる結果の説明にはなりません。

ここで、字幕のない2本について、新たな英語の音声文字起こしを研究で認めるとします。別言語の字幕しかない事例は、この方針でも未解決のままです。7本のテキストがそろうため、取得方法を組み合わせた場合の利用可能率は次のようになります。

7 / 8 × 100 = 87.5%。

テキストの利用可能率の変化は、次のとおりです。

87.5 − 62.5 = 25パーセントポイント。

既存字幕の利用可能率は62.5%のままです。生成した2本の文字起こしが、プラットフォームの字幕になったわけではありません。25ポイントの変化は、対象とする方法を広げた場合のテキストの利用可能率を示します。正確性の向上を示すものではありません。

台帳では、5件の字幕記録を`platform_caption`と記します。生成した2件の記録は`new_speech_to_text`と記します。先に得た字幕なしの結果も残し、生成を使った理由が引き続き記録から分かるようにします。

プラットフォームの字幕を調べる研究なら、条件を満たす5件の既存字幕を分析し、取得できなかった3件を報告します。話された言葉を調べ、生成を認める研究なら、追加の文字起こし段階にSIÁNが適している可能性があります。[SIÁNの仕様](https://apify.com/sian.agency/best-tiktok-ai-transcript-extractor)

どちらを選んでも、字幕のない動画に共通の政治的見解やその他の特性があると証明することにはなりません。この例は、どちらの方法にも偏りがないと示すものでもありません。元のサンプルを固定したまま、取得元の規則によって対象となるテキストがどう変わるかを示しています。

## 内容分析の前に言葉を点検する

内容分析では、明示した規則を使ってテキストを分類します。研究者は、この手順をコーディングと呼ぶことがよくあります。コーディングの前に、選んだ箇所を動画と照合します。

該当箇所を聞き、その言葉をテキスト記録と比較します。名前、数字、否定表現、予定した分類に影響する用語を確認します。例えば、「not」という語が抜けると、文の意味が逆になることがあります。

選んだ時刻も確認します。記録された時間区間が、該当箇所を指していることを確かめます。データを正常に読み取れたことは、すべての言葉や時刻が正しいことの証明にはなりません。

認められた各テキスト取得元に、明示した確認手順を適用します。確認した箇所と、修正の扱いを記録します。テキストを修正する場合は、収集した版を残し、コーディングに使った修正版を識別できるようにします。これにより、確認時に取得元の記録を参照できます。

翻訳テキストについては、原文を残し、翻訳版を識別できるようにします。区別を示さずに1つのテキストフィールドへまとめてはいけません。コーディングした言葉をどの版から取ったか、報告で明確にします。

その後、分析用の表を準備します。次の段階は、[論文向けTikTok文字起こしガイド](/ja/articles/tiktok-%E5%86%85%E5%AE%B9%E5%88%86%E6%9E%90%E7%94%A8%E6%96%87%E5%AD%97%E8%B5%B7%E3%81%93%E3%81%97%E3%83%87%E3%83%BC%E3%82%BF/)で扱っています。この比較で取り上げた選択が先です。分析用に整理する前に、研究に含めるテキストを決めます。

報告では、サンプルの定義、言語方針、認めた取得元、取得できなかった事例の扱いを明記します。条件を満たす件数を、明示した分母の全数と対比して示します。取得方法を組み合わせた場合は、既存字幕の利用可能率と、テキスト全体の利用可能率を分けて報告します。

未解決の事例も報告に含めます。どこでテキストを取得できず、それが分析をどう制限するのかを、読者が分かるようにします。欠けている証拠を明確に説明することも、結果の一部です。

## 研究に関連する動画1本で選択を確かめる

まず、研究で使うテキスト取得元の規則を書きます。次に、研究に関連し、利用が認められた動画1本を、その規則に従って確認します。実際の結果状態、取得元リンク、言語、観測時刻を残します。テキストをコーディングに使う前に、選んだ言葉と時刻を確認します。

規則がプラットフォームの既存の公開字幕を必須とする場合は、[Chronometrica TikTok Transcript Scraper](https://apify.com/chronometrica/tiktok-transcript-scraper)を使います。確認できた適合性は明確です。取得可能な字幕トラックを収集し、字幕なしや指定言語なしの結果を明示して残せます。研究で新たに生成したテキストが必要な場合は、取得元の方針を明示したうえで、文字起こしの方法を選びます。

## 出典と参考資料

- [Chronometrica TikTok Transcript Scraper](https://apify.com/chronometrica/tiktok-transcript-scraper)
- [Chronometricaの入力スキーマ](https://apify.com/chronometrica/tiktok-transcript-scraper/input-schema)
- [SIÁN Actorの文書](https://apify.com/sian.agency/best-tiktok-ai-transcript-extractor)
- [SIÁNの入力スキーマ](https://apify.com/sian.agency/best-tiktok-ai-transcript-extractor/input-schema)
- [内容分析用データセットのTask](https://apify.com/chronometrica/tiktok-transcript-scraper/examples/tiktok-transcript-content-analysis-dataset)
- [TikTokの文字起こしに関する研究上の質問](https://www.reddit.com/r/CompSocial/comments/1h1zijh/help_needed_scraping_tiktok_video_transcripts_for/)